2201-环境变量编辑器
设计思想
最近遇到了这么一个问题:我们在编辑环境变量的时候,往往会有一些定制化的需求,如何方便的编辑环境变量是一个比较难的问题。
变量类别:
- 路径变量
- 路径组变量
- IP地址变量
- 字符串变量
分类别进行“检测分类”和“编辑”
检测:字符串检测
编辑:整合操作序列,软件退出并且确认保存之后才会被执行一系列的export指令
需要解决的问题:
- [ ] 操作流程
- [ ] cli用户界面设计
- [ ] ranger读取器(todo?)
- [ ] env的编辑逻辑
开发笔记
实现变量类型的识别
首先 ipv4 和 ipv6 的形式非常简单,有特定的识别方法。
1 |
|
下一步思考路径。路径有两种可能:
- 合法路径
- 不合法路径(可能因为某种原因被删除了)
那么如何设计合法的路径名呢?
这里我考虑了一些情况:
- 路径名中可能包含其他环境变量,但是根据规范 环境变量名只能是大小写字母、数字、下划线构成
- 路径名可能会有多个/重复,但是这个不影响他作为一个合法路径
这样就构成了一个简单的路径名称合法判断正则(顺便得到了一个可以用来检测环境变量名称是否合法的正则)
01/29/2022 21:35
我想骂人
问题的性质已经变了。对于环境变量的解读其实工作应该是shell处理的,而不是我自己去复现一个parse工具
因为Linux的文件命名过于随意,文件名可以有:`、
$` 所以路径名没法很好的解析出来
不过我也受够了,不管别的了,直接开搞吧,姑且认为这个美好的世界上还是人类居多吧
01/31/2022 20:43
好吧,莫名其妙就做完了
github.com/Chivier/enview
功能不做过多赘述啦,我们直接在github里面看效果啦
2201-环境变量编辑器
http://blog.chivier.site/2022-01-31/f83f7631012f/