使用if语句的Vim gui键映射

时间:2013-03-12 05:05:25

标签: vim

我是vim并喜欢它的新手!只想与我的.vimrc文件联系并获得一些帮助。

我正在尝试设置F11以使我的gvim窗口更大。这是相关的代码:

if has("gui_running")
  set guioptions-=m
  set guioptions-=r
  set lines=32 columns=132
  nnoremap <F11> :set lines=39 columns=169 <Enter>
  vnoremap <F11> :set lines=39 columns=169 <Enter>
  autocmd FocusLost * silent! :wa
endif

一旦我点击F11,它就会变得更大(我的机器几乎全屏)但是当我再次击中F11时没有任何反应......显然:)

我想让F11切换到尺寸较小的较大尺寸。我不确定这样做的正确方法,我非常擅长编写vim脚本。

谢谢!

1 个答案:

答案 0 :(得分:2)

您可以编写自定义切换功能并将F11映射到该功能。我不使用gvim并且没有测试这个,但我很确定它应该可以工作:

function! ToggleGvimSize()
    if g:gvim_large
        set lines=32 columns=132
        let g:gvim_large = 0
    else
        set lines=39 columns=169
        let g:gvim_large = 1
    endif
endfunction

let g:gvim_large = 0
nnoremap <F11> :call ToggleGvimSize()

将上述内容放入.vimrc。现在按F11应切换窗口大小。根据您的需要更改参数和逻辑。