Я хочу создать файл для tarball, без явного открытия/извлечения его, но напрямую с помощью Vim. Это возможно?
$ vim file.tgz
:e someNewfile
:w! # how can I create here a file?
Я хочу создать файл для tarball, без явного открытия/извлечения его, но напрямую с помощью Vim. Это возможно?
$ vim file.tgz
:e someNewfile
:w! # how can I create here a file?
Vim обрабатывает деготь и полученные файлы (в том числе .tgz) с помощью vimscript называется tar.vim
. Вы можете посмотреть документацию tar.vim
, набрав :help tar<CR>
внутри vim. В соответствии с этой документацией:
При редактировании файла * .tar этот плагин обрабатывает отображение страницы содержимого . Выберите файл для редактирования, перемещая курсор на нужный файл , затем нажмите клавишу. После редактирования можно также написать . В настоящее время невозможно создать новый файл в tar архивов через плагин.
Таким образом, вы можете редактировать файл, который уже находится в tar, но теперь вы не можете добавлять новые файлы с помощью ванильной установки vim.
Это работает для gzipped tarballs? Потому что это то, что я пытался, а также то, что спросил ОП. Когда я попробовал (по Linux), это не сработало. – sehe
Интересно. Он * работает * для меня на OSX, используя vanilla vim, установленный через homebrew и никакие другие дополнения. Может быть, ваш vim-пакет дистрибутива Linux не включает tar.vim-скрипт? Для меня сценарий находится в /usr/share/vim/vim73/autoload/tar.vim. Если ваш дистрибутив не имеет его по умолчанию, вы можете получить tar.vim вручную здесь: http://www.vim.org/scripts/script.php?script_id=522 –
Ну, покрасьте меня глупо, я просто испытал снова, начиная с raw .tar, затем .tar.gz и, наконец, .tgz и, угадайте, что сработало. Я, должно быть, вчера сделал что-то слабое :) – sehe
Я не уверен, что я понимаю ваш вопрос: вы хотите добавить новый файл в существующий архив tar? – evnu
@evnu: да, здесь внутри vim. – hhh