2024-06-11 15:20:29 发布
网友
一个应用程序希望将文本shell输出到vim,并实时知道正在进行哪些编辑。在
swp文件提供了这些信息。有谁能提供关于如何使用Python读取这个二进制文件的指导吗?在
谢谢所有回复的人。在
我希望.swp会被记录下来,甚至可能连访问它的代码都没有。在
建议用Python编写一个插件可能是最有意义的,我敢打赌它是有可能钩住类似“onéu keystroke”并维护一个我能理解的镜像。在
“shell out”如“将此文本块写入临时文件,在vim中打开该文件,当vim退出时,将临时文件内容写入替换文本块”
附言:100美元太贵了,买不起那些票
当我编写查看.swp内容的ls.swp工具时,我对.swp文件格式做了自己的研究(这是一个perl脚本,里面有很多文档)。在
.swp
我感兴趣的主要来源是:
解析这个需要一些逆向工程,我只能提取某些数据。我只想从中得到一些关于编辑文件状态的基本信息。我的结果如下:
$ ls.swp .ls.swp.sw* .ls.swp.swo:adamhotep@tabasco:~/git/misc-scripts/ls.swp (running) 85d ago .ls.swp.swp:adamhotep@tabasco:~/git/misc-scripts/ls.swp 85d ago
我很确定您不会得到任何实时数据,因为这将是vim需要维护的一大堆磁盘I/O。在
我不会依赖交换文件的内容来获得实时更新。它的格式是针对Vim的用途而设计的,它的格式除了由它的实现之外不会被记录下来。您将不得不复制算法的大部分内容,并在内部格式发生变化时(无需事先通知)进行维护。在
或者,我将使用一种嵌入式语言(例如Python)与希望获得实时更新的外部程序接口。例如,Python函数可以周期性地在套接字上发送整个缓冲区内容。在
谢谢所有回复的人。在
我希望.swp会被记录下来,甚至可能连访问它的代码都没有。在
建议用Python编写一个插件可能是最有意义的,我敢打赌它是有可能钩住类似“onéu keystroke”并维护一个我能理解的镜像。在
“shell out”如“将此文本块写入临时文件,在vim中打开该文件,当vim退出时,将临时文件内容写入替换文本块”
附言:100美元太贵了,买不起那些票
当我编写查看
.swp
内容的ls.swp工具时,我对.swp
文件格式做了自己的研究(这是一个perl脚本,里面有很多文档)。在我感兴趣的主要来源是:
解析这个需要一些逆向工程,我只能提取某些数据。我只想从中得到一些关于编辑文件状态的基本信息。我的结果如下:
我很确定您不会得到任何实时数据,因为这将是vim需要维护的一大堆磁盘I/O。在
我不会依赖交换文件的内容来获得实时更新。它的格式是针对Vim的用途而设计的,它的格式除了由它的实现之外不会被记录下来。您将不得不复制算法的大部分内容,并在内部格式发生变化时(无需事先通知)进行维护。在
或者,我将使用一种嵌入式语言(例如Python)与希望获得实时更新的外部程序接口。例如,Python函数可以周期性地在套接字上发送整个缓冲区内容。在
相关问题 更多 >
编程相关推荐