この記事では、Vim / neovim でプラグインなしで使えるファイラ Netrw で「ファイルを圧縮・解凍する方法」について、ご紹介します。
[解答] mz
Netrwでは、ディレクトリ/フォルダをブラウジング(探索)した後、ファイルを開くのが主な使い方となります。開く対象のファイルが圧縮ファイルの場合には、ファイルを解凍して開くことができます。また逆に、ファイルを圧縮することも可能です。
Netrw ファイルを圧縮・解凍する
次の操作で、ファイルの圧縮・解凍ができます。
キー操作 | 実行する内容 |
---|---|
mf | 対象ファイルを選ぶ(マークする) |
mz | 対象となるファイルを圧縮、または解凍する * 圧縮ファイルであれば解凍する * 通常ファイルであれば圧縮する |
なお、Vimのヘルプファイルなどでは「解凍」ではなく、「伸長」と翻訳されています。
「伸長」の方が正確だとは思いますが、Windowsなどで「解凍」の方が馴染みがあるユーザーも多いと感じます。そのため、本サイトでは「解凍」と呼ぶ点は、ご了承ください。
解凍/圧縮の仕様
標準状態での圧縮形式は “GZIP” です。こちらは、下記の設定値で変更可能です。
let g:netrw_compress = "gzip"
なお、標準状態での解凍できる形式は、以下の通りに設定されています。
let g:netrw_decompress = { ".gz" : "gunzip" , ".bz2" : "bunzip2" , ".zip" : "unzip" , ".tar" : "tar -xf"}
7zip や rar など他の圧縮形式も追加できそうですが、そこまでして利用するものかは微妙ですよね。あくまで圧縮ファイルも扱えるくらいに留めておく方が無難でしょう。
このVimコマンドの補足情報
- 利用頻度
- 便利さ
- 覚え易さ
関連するVimヘルプ
Vim のヘルプでは、下記のように解説されています。
マークファイル: 圧縮と伸長 netrw-mz {{{2
(マークの設定方法は netrw-mf と netrw-mr を参照)
(ローカルマークファイルリスト使用)マークされたファイルが圧縮されている場合、”mz” はファイルを伸長します。
マークされたファイルが圧縮されていない場合、”mz” はファイルを圧縮します。
圧縮コマンドは g:netrw_compress で設定できます。初期設定は “gzip” です。伸長には、拡張子と伸長コマンドを関連付けた Dictionary が使われます。
g:netrw_decompress 参照。正規表現で複数ファイルをマークできることを思い出してください (netrw-mr参照)。
これはたくさんのファイルを圧縮・解凍するのに便利です。関連設定: g:netrw_compress g:netrw_decompress
pi_netrw – Vim日本語ドキュメント
g:netrw_compress =”gzip”
pi_netrw – Vim日本語ドキュメント
ファイル圧縮コマンド
g:netrw_decompress = { “.gz” : “gunzip” ,
pi_netrw – Vim日本語ドキュメント
“.bz2” : “bunzip2” ,
“.zip” : “unzip” ,
“.tar” : “tar -xf”}
拡張子と伸長プログラムを関連付ける辞書
こちらは、Vim上では下記のコマンドでヘルプを確認できます。
:help netrw-mz :help g:netrw_compress :help g:netrw_decompress
ヘルプで検索するときは、通常は大文字小文字は識別されませんので、どちらでも構いません。
Vim操作の参考書籍
こちらの書籍が、Vimレベルアップの参考になります。
Vim/neovim関連の書籍で、もっとも評判が良くてバイブルと呼んでる人もいる一冊です。Vim/neovimのバージョンに依存しない沢山のTips形式で、その表題通りに「思考のスピードで編集」できるようになるノウハウが詰まっています。その高い評価は Amazon のレビューからも分かる通りです。Vimmer なら必ず一度は読んでおいて間違いありません。
こちらもVim関連の書籍で評価が高い書籍の一冊です。vim-jpで見かける上級Vimmer(Vimサポーターズ)の皆様による、Vimを実践で使ったノウハウからプラグイン関連の情報が詰まっています。日本の Vim界隈を知る上でも是非一読しておきたい一冊です。
Vim/neovim の設定ファイルやプラグインなど、Vim script に関するノウハウがいくつも詰まった一冊です。日本で Vim Script をここまで深く解説している唯一の書籍と言えます。Vim力を伸ばしたいと考えるなら、絶対に避けては通れない書籍でしょう。