.odt
,.doc
和.docx
文件;在OpenOffice中打开它们总是很痛苦,因为OpenOffice。现在,我使用各种命令行工具(例如
odt2txt
)将这些文件转换为纯文本,并将纯文本保存为临时文件,然后在Vim中查看(甚至可以编辑)。可以简化吗?也许与自动组有关?或者也许有更好的方法?我只想做:
$ vim file.odt
Vim帮我转换了吗?
更好(奖励积分)会更好吗?是否还可以保存文件(到
file.txt
),但是直到我执行写操作才能创建该文件... #1 楼
您应该能够在vimrc中添加以下内容:autocmd BufReadPost *.odt :%!odt2txt %
在vim读取
odt2txt
程序后,它将通过.odt
程序发送整个缓冲区,但仅当该文件名以q4312079q结尾。 。如果您想要编辑比纯文本稍微结构化的内容(例如markdown),也可以使用pandoc进行转换:
autocmd BufReadPost *.docx :%!pandoc -f docx -t markdown
autocmd BufWritePost *.docx :!pandoc -f markdown -t docx % > tmp.docx
我尚未实际测试这些转换,但它们应该可以工作。根据文件格式,您可能需要使用其他工具。
评论
autocmd BufReadPost * .docx:%!pandoc -f docx -t markdown的基本意思是,如果我在vim中打开.docx文件,它将在显示之前通过:%!pandoc -f docx -t markdown传递该文件。在VIM窗口上?
–alpha_989
17年12月19日在16:50
@ alpha_989是的。
–xthrd
17年12月20日在20:27