2012-11-10 20 views
3

我在寫一段vimscript來管理會話。我想,讓他們願意會議哪個目錄用戶配置要保存,即:Vimrc在cmap中使用變量

let g:sessions_dir = "~/.vim/sessions" 

我有一個數字,讓用戶創建命令和負載會話。但我還想提供一個cmap,讓用戶選項卡通過該目錄中的會話。

cmap GSo :wa<CR> :source ~/.vim/sessions 

這是有效的,用戶可以按TAB循環瀏覽其會話文件。但是,我想在cmap中使用該變量。

回答

3

您可以將cmap置於execute之內。例如,

exe "cmap Gso :wa<CR> :so ".g:sessions_dir 
2

您可以使用<C-r>=這裏:

cnoremap GSo :wa<CR> :source <C-r>=g:sessions_dir<CR> 

(最後<CR><C-r>=,它不會啓動命令)。