prettyetc项目核心库

prettyetc的Python项目详细描述


项目分为两个包:

  • prettytetc qt(一个基于qt的prettytetc图形界面)
  • prettyetc(API的核心)

prettyetc夸脱

通过一个漂亮而通用的界面,以可视化的方式浏览配置文件。在

Prettyetc允许您在多任务窗口中编辑配置, 每个配置都显示为一个没有难看的括号的可折叠树, 引用或任何其他可能是特定语言的东西。在

例如,可以使用相同的视图和结构读取JSON和INI文件。在

官方GUI由Qt框架提供支持,使用官方Python绑定。在

漂亮等

使用基于树的高级数据结构编辑配置文件并将其转换为其他语言。在

安装

注释: 如果系统中同时安装了python2和python3, 您可能需要使用pip3而不是pip。在

使用UI进行完全安装:pip install prettyetc-qt。在

或者,如果您只想要核心:pip install prettyetc[all]。在

有关安装过程的更多信息,请访问: https://prettyetc.gitlab.io/prettyetc/developing/userguide/installation.html

示例(使用核心API)

让我们看看prettyetc能做些什么。在

fromprettyetc.etccoreimportConfigFileFactory,DictField# create the factoryfactory=ConfigFileFactory(enable_logger=True)# create the file, this can be used to read and write the filefile=factory.create_file("colors.json")# read the file and save it in a RootFieldroot=file.read()# add a new colorcolor={"color":"aqua","code":{"rgba":[0,255,255,1],"hex":"#0FF"},"web_safe":True,}root["colors"].add(DictField.from_primitives(color))# change red color namered_color=root["colors"][2]red_color["color"].data="light-red"# change red color codesred_color["code"]["rgba"][0].data=204red_color["code"]["hex"].data="#c00"# change red color web_safe fieldred_color["web_safe"].data=False# write the RootField to file (beautified json)file.write(root,language="json",beautify=True)

看到了吗 getting started 关于如何使用prettyetc的快速入门。在

支持的语言

由于语言性质或使用的后端, 解析器/序列化程序并不实现所有字段规范, 只是其中的一部分。在

Here is a detailed table explaining what feature are supported by language.
Language
- Type
JSON
Parser
JSON
Serializer
INI
Parser
INI
Serializer
XML
Parser
XML
Serializer
YAML
Parser
YAML
Serializer
Etc 1
Parser
Etc 1
Serializer
Field
name
V 2V 2VVVVV 2V 2VV
Field
description
(comment)
IIVV
Field
readonly
IIVV
Field
attributes
IIVV
Indexable
fields
VVV 3V 3VVVV
Typed
field
VVE 4E 4PPVVVV

*后端需要外部库

Legend

空白:尚不支持
I:由于语言规范,不可能
E:强制支持
P:部分支持
V:完全支持

1:etc语言分为若干子语言, 因此某些功能在特定的子语言中是不可用的。
2:对于数组,名称可以设置为None或整数索引。
3:限于一个级别。
4:INI规范不支持键入, 所以任何键和值都是字符串。

文件

对于核心特性、Prettyetc字段含义的详细解释, API参考和其他,我们建议查看Prettyetc的文档。在

API文档: https://prettyetc.gitlab.io/prettyetc/index.html

etc语言的解释

etc配置语言是微语言的集合, 所有这些文件的结构都类似于INI文件(没有节)。在

此名称的来源是包含系统的*nix/etc文件夹 或者很多程序的默认配置,还有内核设置。在

除了以INI或JSON格式的文件外, 此文件夹中的文件具有未定义的简单语法; 由空格组成的“:”字符或“=”字符(某处) 和“#”字符作为注释开头,它记住sh/bash语法。在

这些文件的示例包括: ^{cd3}。在

我们的解析器的目标是处理其中的大部分,使用字段表示它 以普遍的观点来看。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何从tester类访问/更改ArrayList?   java如何在Android中以编程方式更改菜单标题   spring boot在Kafka Java中为同一主题创建多个消费者组   java JVM字节码表示法,注释语法。调用动力学   java活动在旋转后泄漏了窗口PopupWindow   java允许Nashorn运行用户代码   Java Joda Time实现一个日期范围迭代器   当字符串长度为奇数时使用递归打印字符串的java基本情况   java无法从JSONArray获取JSONObject   java有没有一种方法可以使用单个示例文件进行所有测试?   java My bufferedReader读取整个文件,而不仅仅是一行。为什么?   当已有用户输入时,java变量为null   java如何将正则表达式与阿拉伯语文本一起使用   java Selenium WebDriver“单击”和JavascriptExecutor单击之间有什么区别   java在运行代码时,排序方法会在第二个数组应该按升序或降序排序时打印相同的精确数组号   java如何在HashMap中添加多个具有相同键的相同类型的对象   java有人知道为什么菜单栏在使用系统gtk主题时会显示白色文本吗?   在tomcat中用java方法访问JavaScript文件