2012-03-05 64 views
1

我从TextMate的制作切换到VIM,我想知道什么应该被包括在我的.vimrc得到了类似的行为:.vimrc表现得像Textmate?

  • 自动关闭在支架,paranthesis等
  • 一个托架
  • 当我打开支架和选择输入,打开支架上第一行,对第二行的光标缩进后自动跳格,并在第3行
  • 闭合托架按压为<tab>将生成一个普通的'for'使用

谢谢。

+1

对于我们这些没有使用的TextMate,但与Vim的一些经验,你可能要展开功能列表位(更好的形容),以增加获得功能注销的机会列表... – Rook 2012-03-05 22:25:21

+0

“支架后的自动切换”例如 - 那是什么? – Rook 2012-03-05 22:25:40

回答

7

自动关闭在支架,paranthesis等

有许多用于此功能的插件:autocloseclosepairs,支架后simplepairs

自动黏合

通过这种方式,我相信你的意思是自动缩进。这是您在处理受支持的文件类型时的默认Vim行为。如果您刚开始使用某个文件并且尚未保存该文件,则可以使用:set ft=<whatever filetype you want>手动设置文件类型,然后您将获得缩进和语法高亮显示。

当我打开支架和选择输入,打开支架上第一行,对第二行的光标缩进,并在第3行的右括号

这将被照顾与上述自动关闭插件。在TextMate中

按上会产生一个共同的 '对' 标签使用

这些被称为 “片断”。 Snipmate是一个常用的片段插件Vim插件。其他人更喜欢xptemplate

如果你从TextMate的移动Vim的,我会尝试安装Janus彻底阅读文档。

剑锋是插件和映射的Vim,gVim的,和的MacVim的一个很好的入门分布。它具有理智的默认设置,旨在通过使用最流行的插件和最常见的映射来提供最低限度的工作环境。它由Carl Lerche和前TextMate用户Yehuda Katz开发并维护。

我个人的经历/建议是,你真的可以疯狂地试图模仿你喜欢的编辑器的每一个功能,就像它一样。您试图复制的每个功能可能只是您通过肌肉记忆习惯的一种怪癖。如果你开始“接受”Vim,学习它,并重新训练你的肌肉记忆,你会更有成效。

11

首先要注意的是你不能把Vim变成TextMate。第二,是你甚至不应该尝试

相反,集中你的努力学习Vim的,渐进和增长/收缩你的设置和插件集,因为你需要。使用Janus或其他“发行版”只会隐藏Vim背后的其他人的任意选择。

这就是说,

  • “自动关闭在支架,paranthesis,等等。”

    可以在 “哑巴” 的方式加入这一行到您的~/.vimrc进行:

    inoremap (()<Left> 
    
    • inoremap是映射插入模式(注意i

    • (是你想要按的键,那是你的触发器

    • ()<Left>意味着输入一对括号然后再返回一个字符,括号

    之间。如果你需要一个“聪明”的方式,也有many plugins选择。

    你可能想尝试surround这是在其本身和一个非常令人信服的理由,我从TextMate的切换。

  • “当我打开支架和选择输入,打开支架上第一行,对第二行的光标缩进,并在第3行的右括号”

    可以在完成多种方式为好,例如:

    inoremap <C-Return> <CR><CR><C-o>k<Tab> 
    
    • inoremap,再次

    • <C-Return>意味着Ctrl+Return,那是你的触发

    • <CR><CR>意味着2回车推右括号2线下方

    • <C-o>离开插入模式仅适用于一个命令

    • k去向上一行

    • <Tab>将插入光标置于r ight place

    Vim中的映射可以是这样的:按键序列或更严重脚本的快捷键。

  • “上会产生一个共同的‘对’按<Tab>使用”

    可以用专用插件像SnipMate完成。有others