Vimで.odt、.doc、.docx、.rtf、およびその他の非テキスト形式を簡単に操作できますか?


14

時折誰かが私に送信し.odt.doc、および.docxファイル。OpenOfficeでそれらを開くのは常に苦痛です。

現在、さまざまなコマンドラインツール(などodt2txt)を使用してこれらのファイルをプレーンテキストに変換し、プレーンテキストを一時ファイルに保存してから、Vimで表示(および編集)します。

これをもっと簡単にできますか?おそらくオートグループで何か?それとももっと良い方法がありますか?私はただやりたい:

$ vim file.odt

そして、Vimは私のために変換を処理してくれましたか?

さらに良い(ボーナスポイント)は、ファイルを(にfile.txt)保存することができた場合ですが、書き込みを行うまでこれは作成されません ...

回答:


13

次のようなものをvimrcに追加できるはずです。

autocmd BufReadPost *.odt :%!odt2txt %

これはodt2txt、vimが読み込んだ後、ファイル名がで終わる場合にのみ、プログラム全体にバッファ全体を送信し.odtます。

textutil.vimプラグインもあり、これらのファイルタイプのいくつかについてあなたが話していることを実行できると言っています(ただし、私は個人的には使用していません)。

マークダウンなど、プレーンテキストよりも少し構造化されたもので編集する場合は、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 markdownVIMウィンドウ上に表示する前に、?
alpha_989

1
@ alpha_989はい。
xthrd
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.