注释
|
一种选择是在 .ini 文件中使用#include 命令。 2016-09-10 10:46 GMT-03:00 Carlo notifications@github.com:
|
|
我正在尝试在 Linux 中的 ~/.config/bCNC/ 目录下或 Windows 中的 $User/%AppData%/bCNC 中实现模块化配置目录。 但是由于加载配置相当简单,您将文件名放在读取配置文件的行中,最后读取的配置变量就是它所使用的。 为了保存,似乎所有配置都保存在 .bCNC 文件中。 我试图从代码中猜测如何从不同的文件加载 Buttons Machine 和 Tools 配置,并在执行保存时或在程序关闭时自动将它们保存在同一个文件中。 |
|
在查看 bCNC 的代码后,修改 ini 文件 .bCNC 以拆分为不同的文件将是一项困难的练习,无需与@vlachoudis很难集成到bCNC的结构中。 |
|
@onekk模块化的方法肯定更好。乞讨的时候没想到会膨胀这么多。我将不得不考虑如何是最简单的方法,并提供一些读取旧文件的兼容性。 |
|
我做了一个方法,对于我开始编写但现在被放弃的 CAM 程序来说很容易。 我已经定义了一个 python 模块,它保存名为 glb.py 的全局变量并定义了一些空字典。 另外,对于每个文件,我都编写了规则来检查文件的存在并声明两个预定义的位置,这些位置在基于 os 标识符的程序的 init 例程中定义。 Linux 将数据保存在 .config 隐藏目录中 Windows 可能在 $user 目录中我不记得它是否在 %APPDATA% 或类似目录中
此函数读取工具表并填充
必要时,字典会用这个例程转储到文件中,甚至还有一个更新例程,可以写入工具表并在必要时重新读取。
使用这种方法,每个变量都用一个名称定义,并且在代码中寻址更紧凑 在 glb.py 中
变量保存每个工具项下的字段:
但也许还有另一种更好的方法。 以这种方式导入和“传播”字典,仅导入 glb 模块(全局变量模块)。 但我不是专业程序员。 问候 |


维护 .bCNC 与跨版本更改的自定义同步变得越来越困难。
在 1.0 版本的预演中,建议使 .bCNC 文件仅包含界面自定义,并将通行费、材料和其他设置放在外部文件中,可能在单独的目录中,名称(bCNC 设置?)
可能有一个 toll.ini 和 material.ini,也许还有一个 machine.ini
以这种方式,相关定制将在 bCNC 版本更改中保留,并且可以制作一个脚本来在版本之间转换表格
我在我的一个项目中成功地使用了这种方法,它对我很有帮助,如果程序在第一次启动时找不到合适的目录,它会创建它们,否则它会利用目录中存在的文件。
问候