Как открыть текстовые файлы gzip в Gvim без распаковки?


Как открыть gzipped текстовые файлы (*.ГЗ) в Гвим, не распаковывая их предварительно ?

4 17

4 ответа:

Решение, упомянутое в VimDocs как отвеченное оттуда

augroup gzip
 autocmd!
 autocmd BufReadPre,FileReadPre *.gz set bin
 autocmd BufReadPost,FileReadPost   *.gz '[,']!gunzip
 autocmd BufReadPost,FileReadPost   *.gz set nobin
 autocmd BufReadPost,FileReadPost   *.gz execute ":doautocmd BufReadPost " . expand("%:r")
 autocmd BufWritePost,FileWritePost *.gz !mv <afile> <afile>:r
 autocmd BufWritePost,FileWritePost *.gz !gzip <afile>:r
 autocmd FileAppendPre      *.gz !gunzip <afile>
 autocmd FileAppendPre      *.gz !mv <afile>:r <afile>
 autocmd FileAppendPost     *.gz !mv <afile> <afile>:r
 autocmd FileAppendPost     *.gz !gzip <afile>:r
augroup END

Vim должен сделать это за вас автоматически. По крайней мере, это делает для меня. Есть еще zless. Я посмотрю, смогу ли я найти ресурс, который рассказывает о том, как vim делает это.

В vim docs есть пример, как заставить это работать: http://vimdoc.sourceforge.net/htmldoc/autocmd.html#gzip-example

Как бы то ни было, мне не нужно было делать это на Ubuntu 10.04 (vim v7.2), это сработало из коробки.

Открывая их напрямую, вы просто получите необработанные двоичные сжатые данные. Есть инструменты для всего, но их нужно использовать соответствующим образом. Кувалды здесь не для того, чтобы разбивать яйца на завтрак, а текстовые редакторы не для того, чтобы распаковывать файлы.