“ mo”以使用默认应用程序打开文件,

时间:2018-12-13 01:21:09

标签: vim

当我碰巧在NERDTree中发出“ mo”时,它会在默认应用程序中打开文件

棒极了,但是,我不能不参考此类操作的文档。

在哪里可以找到“ mo”的定义?

它不在“帮助”中。

这是我的vimrc

> execute pathogen#infect()
nnoremap <silent> <F5> :NERDTree<CR>
"syntax enable
set background=dark
filetype plugin indent on
syntax on

"NERDTree Config
autocmd vimenter * NERDTree

autocmd StdinReadPre * let s:std_in=1
autocmd VimEnter * if argc() == 0 && !exists("s:std_in") | NERDTree | endif

autocmd StdinReadPre * let s:std_in=1
autocmd VimEnter * if argc() == 1 && isdirectory(argv()[0]) && !exists("s:std_in") | exe 'NERDTree' argv()[0] | wincmd p | ene | endif

map <leader>r :NERDTreeFind<cr>

"Edit process
set number

"set ignorecase
"set smartcase

set spell spelllang=en_us

"Switch between the tabs
map  <C-l> :tabn<CR>
map  <C-h> :tabp<CR>
map  <C-n> :tabnew<CR>

1 个答案:

答案 0 :(得分:1)

似乎m已映射到菜单:

call s:initVariable("g:NERDTreeMapMenu", "m")

这似乎不是默认的菜单项,因为NERDTree文档指出以下内容:

  
      
  • 提供了可编程菜单系统(模拟鼠标右键单击     节点)      
        
    • 提供了一个默认菜单插件来执行基本文件系统     操作(创建/删除/移动/复制文件/目录)
    •   
  •   
  • 有一个用于添加自己的键映射的API
  •   

最后一项是您的密钥,这里有一个API,可让您和其他插件扩展菜单:

call NERDTreeAddMenuItem({
      \ 'text': 'e(x)ecute',
      \ 'shortcut': 'x',
      \ 'callback': 'NERDTreeExecute' })

这是此插件的示例: https://github.com/ivalkeen/nerdtree-execute/blob/master/nerdtree_plugin/execute_menuitem.vim

所以我敢打赌,您安装了另一个插件,该插件将o映射为NERDTreeMenu中的快捷方式。