HCL for vim
Jan. 31st, 2023 01:10 pmvim syntax highlighting for HashiCorp Configuration Language (HCL) used by Consul, Nomad, Packer, Terraform, and Vault
vim syntax highlighting for HashiCorp Configuration Language (HCL) used by Consul, Nomad, Packer, Terraform, and Vault
Если вставляешь текст из системного буфера обмена в консольный vim, жди неприятных спецэффектов: могут появиться лишние отступы, покорежиться комментарии, и вообще весь autoindent в исходном тексте поломается. Происходит это оттого, что при вставке текста из буфера обмена в консольное приложение ОС эмулирует ввод с клавиатуры. С точки зрения vim - это пользователь печатает текст, поэтому после прихода <enter>
надо сделать отступ или вставить символ комментария, и пофиг что в буфере обмена он уже есть.
Но vim можно явно сообщить, что сейчас пойдет вставка из буфера, переключив в специальный режим:
:set paste
:set nopaste
:set pastetoggle=<F2>
gvim естественно в этом не нуждается, так как имеет возможность определить, что вставляют из буфера обмена, а не печатают на клавиатуре.
Можно отключить alternate screen в vim в ~/.vimrc
set t_ti= t_te=
или в less установкой переменной среды:
setenv LESS "-X"
но если хочется отключить глобально - приходится делать это настройкой в программе-эмуляторе терминала. PuTTY умеет ("Disable switching to the alternate screen"), xterm умеет ("XTerm*titeInhibit: true"
в ~/.Xresources), а Xfce Terminal и прочие производные от Gnome Terminal - не умеют.
Радикальное решение - запускать внутри такого терминала tmux, а в ~/.tmux.conf прописать
set-window-option -g alternate-screen off
XTerm*VT100.translations: #override \n\Home: string(0x1b) string("[1~") \n \ End: string(0x1b) string("[4~") \n
XTerm*keyboardType: vt220