我正在从Textmate切换到VIM,我想知道我的.vimrc中应该包含什么来获得类似的行为:
<tab>将产生一个共同的'for'用途谢谢.
rom*_*inl 11
首先要注意的是,你无法将Vim变成TextMate.第二,是你甚至不应该尝试.
相反,请集中精力学习Vim,逐步增加/缩小您的设置和插件集合.使用Janus或其他一些"发行版"只会让Vim隐藏在其他人的任意选择之后.
那说,
"自动关闭括号,paranthesis等"
可以通过将此行添加到您的"哑"方式来完成~/.vimrc:
inoremap ( ()<Left>
Run Code Online (Sandbox Code Playgroud)
inoremap用于在插入模式下映射(注意i)
( 是你要按的键,这是你的触发器
()<Left> 表示输入一对括号,然后返回括号之间的一个字符
如果你需要一种"更聪明"的方式,有很多插件可供选择.
您可能想尝试环绕,这本身就是我从TextMate切换的一个非常令人信服的理由.
"当我打开支架并选择回车时,开放式支架位于第1行,第2行的光标缩进,第3行的结束支架"
也可以通过多种方式完成,例如:
inoremap <C-Return> <CR><CR><C-o>k<Tab>
Run Code Online (Sandbox Code Playgroud)
inoremap再一次
<C-Return>意思是Ctrl+Return,这是你的触发器
<CR><CR> 意味着2个回车推动闭合支架2线以下
<C-o>仅对一个命令保留插入模式
k 上一行
<Tab> 将插入光标放在正确的位置
Vim中的映射就是这样:按键序列或更严重的脚本的快捷方式.
"按下<Tab>将会产生一个共同''用'"
括号,paranthesis等自动关闭
这个功能有很多插件:autoclose,closepairs,simplepairs
括号后自动标签
通过这个,我相信你的意思是自动缩进.当您处理支持的文件类型时,这是默认的Vim行为.如果您刚开始使用某个文件并且尚未保存它,则可以手动设置文件类型,:set ft=<whatever filetype you want>并且您将获得缩进和语法突出显示.
当我打开一个支架并选择回车时,开放式支架位于第一行,第二行的光标缩进,第三行的结束括号
这将通过上述自动关闭插件来处理.
按下tab将产生一个共同的'for'用途
这些在TextMate中称为"片段".Snipmate是一个常用的片段Vim插件.其他人更喜欢xptemplate.
如果您从TextMate转移到Vim,我会尝试安装Janus并彻底阅读文档.
Janus是Vim,gVim和MacVim的插件和映射的首选发行版.它具有理智的默认设置,旨在使用最流行的插件和最常见的映射提供最小的工作环境.它由Carl Lerche和前TextMate用户Yehuda Katz开发并维护.
我个人的经验/建议是,你真的可以疯狂地试图模仿你最喜欢的编辑器的每个功能.你试图复制的每个功能可能只是你习惯通过肌肉记忆的一个怪癖.如果你只是开始"接受"Vim,学习它并重新训练你的肌肉记忆,你将会更有效率.