vim为常用命令创建别名

Vih*_*rma 5 python vim wsh waf

可能重复:
在vim中混淆命令

所以我必须编辑waf wscript文件.每次我执行此命令来设置文件类型

set filetype=python
Run Code Online (Sandbox Code Playgroud)

有没有办法为上面的命令设置一个小别名?所以,我可以进入EX模式并输入"py",它做同样的事情.

Xav*_* T. 6

如果我已正确理解您的问题,以下内容会增加您的.vimrc工作

autocmd BufRead,BufNewFile *.waf set filetype=python
Run Code Online (Sandbox Code Playgroud)

如果它是一个特定的文件名wscript,这也适用:

autocmd BufRead,BufNewFile wscript set filetype=python
Run Code Online (Sandbox Code Playgroud)

如果您不能依赖扩展名或文件名,则可以在文件的顶部或底部添加模式行

# vim: set filetype=python :
Run Code Online (Sandbox Code Playgroud)

有关:help modeline更多信息,请参阅

但它有点难看,因为你必须修改文件,如果你在团队中工作,它可能会有问题.

  • @VihaanVerma:您可以通过键入"q:",然后按向上/向下箭头或j/q来选择项目来访问命令历史记录. (2认同)

rom*_*inl 6

您不希望进入Ex模式.你想要的是命令行模式.

command! Py set filetype=python
Run Code Online (Sandbox Code Playgroud)

完全符合您的要求:键入:Py<CR>以将文件类型更改为python.

您还可以使用普通模式映射使其更快:

nnoremap <F11> :set filetype=python<CR>
Run Code Online (Sandbox Code Playgroud)