Как добавить отображение имени хоста в строку состояния VIM в Linux?

Вы можете использовать Docker для создания контейнера CentOS 6. Затем используйте yumdownloader для загрузки пакетов и зависимых от них RPM.

4
01.03.2018, 23:45
2 ответа

vim имеет функцию hostname () (см. : h hostname () ), поэтому вы можете использовать

:set statusline=%{hostname()}
4
27.01.2020, 20:50

Строка состояния по умолчанию может быть более или менее эмулирована таким образом:

:set statusline=%f\ %h%w%m%r%=%-14.(%l,%c%V%)\ %P

где

%f - buffer name (path to a file, or something)
%h - help flag
%w - preview flag
%m - modified flag
%r - readonly flag
%= - separater between the left (buffer name) and the right (ruler) parts
%-14.(...%) - minimum field width == 14
%l - line
%c - column
%V - virtual column
%P - percentage

Один из способов добавить имя хоста — использовать функциюhostname():

:set statusline=%#CursorColumn#\ %{hostname()}\ %*\ %f\ %h%w%m%r%=%-14.(%l,%c%V%)\ %P

где

%#CursorColumn# - sets highlight group
%{...} - embeds arbitrary expression
%* - resets highlight group

Вы можете запустить следующий сценарий, чтобы увидеть список доступных групп и их внешний вид:

:so $VIMRUNTIME/syntax/hitest.vim

Или вы можете просто заключить имя хоста в скобки:

:set statusline=[%{hostname()}]\ %f\ %h%w%m%r%=%-14.(%l,%c%V%)\ %P

См. мой другой ответ , если вы хотите приблизиться к тому, как линия состояния рисуется по умолчанию.

1
27.01.2020, 20:50

Теги

Похожие вопросы