Vim-NERDTree: заказывать закладки?
Есть ли способ заказать закладки, которые я вижу с помощью плагина NERDTree vim?
Я чувствую, что это должно быть просто, но я не знаю, как это сделать. Я vim'ed ~/.NERDTreeBookmarks
и увидел, что в этом файле закладки находятся в правильном порядке, но, похоже, они постоянно реорганизуют закладки в соответствии с порядком, который я им использую, - это не то, что я хочу. Я также сделал команду :ReadBookmarks
и, похоже, не изменил порядок.
Ответы
Ответ 1
У меня была такая же проблема, и мне удалось отключить сортировку NERDTree wacky. Откройте файл плагина NERD_tree.vim
(обычно ~/.vim/plugin/NERD_tree.vim
). Найдите эту строку:
call s:Bookmark.Sort()
Должны быть два экземпляра строки (в версии NERDTree версии 4.2.0 они находятся в строках 209 и 286). Прокомментируйте обе строки, добавив "
перед ними следующим образом:
"call s:Bookmark.Sort()
Теперь вы можете редактировать ~/.NERDTreeBookmarks
, и ваши закладки будут отображаться в NERDTree в том же порядке, что и в файле. Вы можете использовать :ReadBookmarks
, чтобы обновить список закладок после редактирования файла.
Ответ 2
Как обновление для alxm превосходного ответа выше, строки (-ы) были перенесены в новый файл. На моем жестком диске это в ~/.vim/bundle/nerdtree/lib/nerdtree/bookmark.vim
(я использую vundle). В установке vimon vim она, скорее всего, будет в ~/.vim/plugin/nerdtree/lib/nerdtree/bookmark.vim
.
1. Измените файл bookmark.vim
Я прокомментировал строку, начинающуюся с call sort...
(строка 246), например:
" This is in ~/.vim/<PLUGINDIR>/nerdtree/lib/nerdtree/bookmark.vim
" FUNCTION: Bookmark.Sort() {{{1
" Class method that sorts all bookmarks
function! s:Bookmark.Sort()
let CompareFunc = function("nerdtree#compareBookmarks")
"call sort(s:Bookmark.Bookmarks(), CompareFunc)
endfunction
2. Выход из vim
Выход из vim, потому что вы хотите перезагрузить плагины, в частности NERDTree.
3. Измените файл ~/.NERDTreeBookmarks.
Поместите их в том порядке, в котором вы хотите. NERDTree теперь уважает ваши пожелания. Ваша торжественная, сердечная закладка, сортирующая пожелания.
4. Запустите vim снова
Конечно, все это уже знают, но я подумал, что для этого ответа нужен четвертый шаг.
Ответ 3
Не уверен, что, хотя вы теперь можете установить NERDTreeBookmarksSort
.
let g:NERDTreeBookmarksSort=0
Затем отредактируйте ~/.NERDTreeBookmarks
, как вы хотите заказать.
Проверьте :help NERDTreeBookmarksSort
для более подробной информации.