脚本生成助手和模板的集合。
项目描述
脚本生成器
脚本生成助手和模板的集合。
安装
pip install scriptgen
用法
from scriptgen import StringBuilder
if __name__ == "__main__":
# Create a StringBuilder instance.
sb = StringBuilder()
sb.wt("Hello ") # write text "Hello "
sb.wl("World!") # write line "World!\n"
print(str(sb))
Hello World!
from scriptgen import StringBuilder
from scriptgen.templates.csharp import \
csharp_usings, \
csharp_namespace, \
csharp_class, \
csharp_method
if __name__ == "__main__":
# Create a StringBuilder instance.
sb = StringBuilder()
# Write using statements.
sb.wb(csharp_usings(
"System"
))
# Add a new line after the using statements.
sb.nl()
# Create a namespace StringBuilder instance.
ns = csharp_namespace("Sample")
# Create a class StringBuilder instance.
c = csharp_class(
class_name="Program",
access_modifier="public"
)
# Create a method StringBuilder instance.
m = csharp_method(
method_name="Main",
access_modifier="public static",
return_type="int"
)
# Write the following lines inside the method.
m.wl('Console.WriteLine("Hello World!");')
m.wl("return 0;")
c.wb(m) # Write the method inside the class.
ns.wb(c) # Write the class inside the namespace.
sb.wb(ns) # Write the namespace.
print(str(sb))
using System;
namespace Sample
{
public class Program
{
public static int Main()
{
Console.WriteLine("Hello World!");
return 0;
}
}
}
from scriptgen import StringBuilder
from scriptgen.templates.csharp import \
csharp_autogen, \
csharp_namespace, \
csharp_class, \
csharp_region
if __name__ == "__main__":
# Get version from arguments..
# i.e. python script.py -major 0 -minor 0 -patch 1
major: int = 0
minor: int = 0
patch: int = 1
# Create a StringBuilder instance.
sb = StringBuilder()
# Write timestamp.
sb.wb(csharp_autogen())
# Add a new line after the using statements.
sb.nl()
# Create a namespace StringBuilder instance.
ns = csharp_namespace("Sample")
# Create a class StringBuilder instance.
c = csharp_class(
class_name="BuildInfo",
access_modifier="public static partial"
)
# Create a "Constants" region StringBuilder instance.
r = csharp_region("Constants")
# Write the following lines inside the "Constants" region.
r.wl(f"public const int MAJOR = {major};")
r.nl()
r.wl(f"public const int MINOR = {minor};")
r.nl()
r.wl(f"public const int PATCH = {patch};")
c.wb(r) # Write the region inside the class.
ns.wb(c) # Write the class inside the namespace.
sb.wb(ns) # Write the namespace.
print(str(sb))
// Auto-generated: 2020-03-15T04:20:47.909851
namespace Sample
{
public static partial class BuildInfo
{
#region Constants
public const int MAJOR = 0;
public const int MINOR = 0;
public const int PATCH = 1;
#endregion Constants
}
}
查看此脚本以了解其实际用例。
贡献
建议和贡献总是受欢迎的。在提交. _pull request
执照
scriptgen
是在 MIT 许可下发布的。有关详细信息,请参阅许可证文件。
变更日志
v0.0.5
- 修复了 Windows 中的多个新行。
- 添加了更多 C# 模板。
v0.0.4
- 添加了 XML 模板。
v0.0.3
- 在 filter_func 中添加了 index 参数。
gen_docs.py
在脚本中从当前工作路径更改为文件目录路径。
v0.0.2
- 为构建器类添加了默认值。
- 添加了可选参数。
- 包中的公开
CSharpBlockBuilder
类scriptgen.templates.csharp
。 - Bug修复。
v0.0.1
- 添加了
IndentType
、StringBuilder
和BlockBuilder
类。 - 添加了
diff_lines
、diff_text
、interpolate_text
、timestamp
和write_text_file
实用方法。 - 添加了 C# 和 Markdown 模板。
- 为实用程序方法、C# 模板和 Markdown 模板添加了测试。
- 添加了
gen_docs.py
脚本和模板文件。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源分布
scriptgen-0.0.5.tar.gz
(12.7 kB
查看哈希)
内置分布
scriptgen-0.0.5-py3-none-any.whl
(11.0 kB
查看哈希)