主要观点:作者某天尝试对涉及 100 多个文件的重构,想将整个仓库中pytest
固件的database
重命名为db
,但编辑器无法魔法般重构,于是尝试更复杂方法。通过tree-sitter
解析节点找到database
标识符位置,处理装饰函数时需额外努力,再用Jedi
根据位置重命名标识符,最后虽未合并该更改但这是有趣学习过程,觉得jedi
和tree-sitter
易学习会放入工具带,也希望tree-sitter
有直接操作 AST 的机制,且提到脚本有多次重新解析可优化。还提供了视频展示其运行情况。
关键信息:重构涉及 100 多个文件,用tree-sitter
和Jedi
进行操作,未合并更改但有学习收获,希望tree-sitter
改进等。
重要细节:tree-sitter
相关代码如定义语言、解析文件、处理装饰函数等,Jedi
用于根据位置重命名标识符,以及视频展示等。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。