基于文本游戏的远程工具。
项目描述
远程工具
基于文本游戏的远程工具。
这个包主要用于格式化用于MUDs和MOOs等文本游戏的社会字符串。
一个社会字符串可能看起来像
%1N smile%1s at %2n.
快速入门
首先准备一个工厂。你可以使用基本的SocialsFactory
类或者方便使用的PopulatedSocialsFactory
。
第二个类包含有用的英语语法后缀,用于正确地将单词如are转换为is,以及正确使用e和s作为单词末尾。
from emote_utils import PopulatedSocialsFactory
f = PopulatedSocialsFactory()
@f.suffix('n', 'name')
def get_name(obj, suffix):
return ('you', obj.name)
接下来,让我们创建一个测试类。
class Person:
def __init__(self, name):
self.name = name
p1 = Person('Jack')
p2 = Person('Jill')
现在我们将获取可以发送给Jack、Jill和其他应该看到消息的人的字符串。
jack_string, jill_string, others_string = f.get_strings('%1N smile%1s at %2n.', [p1, p2])
print(jack_string)
你对Jill微笑。
print(jill_string)
Jack向你微笑。
print(others_string)
Jack向Jill微笑。
更高级的用法
社交格式化程序
每个社交格式化程序由三部分组成
- 一个百分号(%)表示社交格式化程序的开始。
- 一个可选的数字,表示你希望引用的对象列表中的索引。
- 一个可选的筛选器名称,前面有一个竖线(
|
)。
默认值
- 如果没有提供索引,则使用
SocialsFactory.default_index
。 - 如果没有提供后缀,则使用
SocialsFactory.default_suffix
。 - 如果没有提供筛选器,则可能发生以下三种情况之一。
以下列表中,后缀指的是作为社会字符串一部分提供或SocialsFactory
实例的default_suffix
属性上的后缀名称。
属性名称指的是调用get_strings
时SocialsFactory
的属性。
- 如果后缀是标题大小写,则使用title_case_filter属性。
- 如果后缀全部为大写,则使用upper_case_filter属性。
- 如果这两个都不成立,则假设后缀是小写,并使用lower_case_filter。
当然,任何这些名称都可能是None
,在这种情况下不会应用筛选。
筛选器
这是一个自定义过滤器的示例。
f.filters['strong'] = lambda string: f'<strong>{string}</strong>'
如果您要将社会字符串打印到HTML中,可以使用此过滤器使文本的某些部分突出显示。
创建此过滤器后,您可以这样做:
%1N punch%1e %2n|strong.
字符串可能看起来像这样:
约翰打 杰克。
结论
要查看所有其他配置选项,请参阅包中的docstrings。
项目详情
下载文件
下载适用于您的平台文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分布
emote_utils-2.0.1.tar.gz (14.3 kB 查看哈希值)
构建分布
emote_utils-2.0.1-py3-none-any.whl (12.2 kB 查看哈希值)
关闭
emote_utils-2.0.1.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 173929e93edce70a8a62a1645d56b487c97f2a18cb3a84e350bc037ca5d18433 |
|
MD5 | 603bc76cd9ebbdcb9509f5569859b087 |
|
BLAKE2b-256 | a83473c8e7b0d736cc3b5ca0ca7754c608d4273de2f51f37e77ef2ad49f67f1e |
关闭
emote_utils-2.0.1-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 6ac92db91273d9cc5da36731fc4ad92943d7b45193a330f5a1a436959ec0703e |
|
MD5 | 86b52a890c7e8ef1100b4307f2236ed7 |
|
BLAKE2b-256 | 96dbfbd4d5ff741835c71414de8ecfaffb3c8bf8606e1ab7425238c8609400e8 |