Приветствую. Я осознал, что мне крайне необходим фолдинг. Хочу такое: если в текущей директории (та что :pwd) находится ./vimview, то при закрытии/открытии окна в нее сохраняется/загружается выхлоп :mkview для сохранении инфы о фолдинге. Если по пунктам, то:
- Проверяем существование ./vimview
- Получаем полный путь к файлу, заменяем в нем все ‘/’ на ‘_’ например.
- Сохраняем/загружаем образ.
В теории все понятно, но всем же надо обязательно придумать свой особенный язык вместо заюзывания всем понятного си подобного, в общем застрял. Пока такая заготовка:
function Load_fold()
if isdirectory("./vimview")
endif
endfunction
function Save_fold()
if isdirectory("./vimview")
let name = expand('%:t')
let qq = "kjkjk" . "kjjjjk"
mkview! expand(qq)
endif
endfunction
augroup Remember_folds
autocmd!
autocmd BufWinLeave * call Save_fold()
autocmd BufWinEnter * call Load_fold()
augroup END
Я там по всякому пытался раскрыть значение qq для mkview!, никак не выходит. В общем надо взять выхлоп expand(‘%:e’), заменить / на _, слепить «./vimview» с этим выхлопом, отдать это mkview. Очевидно, что там какая-нибудь subst() + немного магии, и вообще это нубвопрос, но хочется сделать быстро, а не к вечеру.