Открытие новой вкладки отменяет свертывание кода в Vim - PullRequest
0 голосов
/ 30 января 2012

У меня есть HTML-файл с CSS в голове. Обычно я открываю файл в 2 вкладках, чтобы легко переключаться между HTML и CSS, но я также хотел бы сложить большую часть кода (особенно объявления font-face.) К сожалению, каждый раз, когда я открываю вторую вкладку, каждый один фолд отменен.

После этого я могу просто все сложить, но если я открою другую вкладку, все снова будет отменено.

В моем .vimrc:

настроено сворачивание кода
 set foldmethod=indent " fold based on indent                          
 set nofoldenable " don't fold by default                            
 set foldlevel=1 " only close/open one foldlevel at a time             
 au BufWinLeave * silent! mkview " save view when closing buffer       
 au BufWinEnter * silent! loadview " load view when opening buffer

1 Ответ

0 голосов
/ 31 января 2012

Попробуйте сделать :mkview в исходном буфере, затем перейдите в тот же буфер в другой вкладке и выполните :loadview.Это должно сделать сгибы одинаковыми, что указывает на то, что BufWinLeave и BufWinEnter не те события, которые вы хотите.,,,Возможно, это также связано с тем, что сгибаемость зависит от окна, и в этом случае вам также необходимо включить сгибы в окне на новой вкладке.,.

Кроме того, вам даже не нужно беспокоиться о mkview / loadview, если вы просто разбили (:split или :vsplit) окно на текущей вкладке.Это должно дать вам два вида одного и того же буфера с одинаковыми настройками сгиба.После разделения складки в каждом окне будут работать независимо.(:set winwidth=999; :set winminwidth=1 при использовании вертикальных разбиений текущее окно автоматически заполнит ширину экрана Vim.).

...