Есть ли способ отключить строку состояния для определенных окон? - PullRequest
3 голосов
/ 22 августа 2011

Используемый мной плагин буфера создает отдельное окно со списком буферов. Это излишне имеет свою собственную строку состояния, которая занимает место. Есть ли способ отключить строку состояния для определенных буферов / окон?

Ответы [ 4 ]

3 голосов
/ 22 августа 2011

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

Возможно, вас заинтересует плагин buftabs , отображающий список буферы в строке состояния, сохраняющие вертикальное пространство экрана для редактирования.

1 голос
/ 23 августа 2011

Вместо этого попробуйте эмулировать отсутствие строки состояния:

let &l:statusline='%{getline(line("w$")+1)}'

.Также почти возможно поставить правильное выделение там, но реализация должна быть медленной.

0 голосов
/ 22 августа 2011

На самом деле вы можете написать небольшую функцию и поместить ее в автокоманды, которые отключат и включат параметр laststatus в зависимости от текущего имени буфера.Примерно так:

au BufEnter,BufWinEnter,WinEnter,CmdwinEnter *
                       \ call s:disable_statusline('buffer name')
fun! s:disable_statusline(bn)
   if a:bn == bufname('%')
       set laststatus=1
   else
       set laststatus=2
   endif
endfunction
0 голосов
/ 22 августа 2011

Вы можете установить его локально:

setlocal statusline=
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...