← All posts tagged Vim

Self-Perfection
Vim syntax Почему в vim может не работать подсветка синтаксиса? Дано Debian 7.5

vim.basic --version показывает +syntax

$ grep filetype ~/.vimrc
"http://vimdoc.sourceforge.net/htmldoc/usr_05.html#vimrc-filetype
filetype plugin indent on

$ dpkg -S /usr/share/vim/vim72/syntax/sh.vim
vim-runtime: /usr/share/vim/vim72/syntax/sh.vim

После запуска vim.basic ~/.bashrc
Оказывается, что выставлен filetype=sh. syntax автоматически не выставляется, в отличие от другие моих машин. Сделать вручную set syntax=sh подсветку не включает.
~/.vimrc совпадает с другими моими машинами, где подсветка работает.

Ну чего ему не хватает?!
Self-Perfection
Vim colorscheme Гуру vim'а, подскажите мне плиз, почему он у меня цветовую схему через ssh искажает? Скриншот self-perfection.homeip.net
Сверху: vim .bashrc
Снизу: ssh -t 127.1 vim .bashrc

Сейчас когда на удалённых хостах запускаю vim, делаю :colo elflord, чтоб было лучше видно , но задалбывает.
Self-Perfection
Vim backup code vimrc
А хотите немного .vimrc магии? Сейчас мы сделаем настроим vim, чтобы он правильно делал бэкапы редактируемых файлов. Дописываем в .vimrc следующее:

"Включаем. Вроде автоматически включается при задании backupdir, но пусть будет
set backup
"Задаём директорию куда писать бэкапы. Использовать просто ~/.vim/backup несекурно
"т.к. sudo -E vim ЧТОТО сохранит бэкап текущему пользователю, а не руту
let &backupdir=system("getent passwd $USER | cut -d: -f6")[:-2] . '/.vim/backup'
"Пусть vim создаёт директорию для бэкапа при запуске. Можно руками сделать один раз.
call system('mkdir -pv ' . &backupdir)
"Каждый раз пишем бэкап в новый файл с суффиксом -дата_время
au BufWritePre * let &backupext = '-' . strftime("%F_%T")

ЗЫ: две последние команды под вендой работать не должны.