【问题标题】:How to disable automatic line break when inserting two curly braces in vim?在vim中插入两个花括号时如何禁用自动换行符?
【发布时间】:2011-05-31 14:56:40
【问题描述】:

每当我输入两个花括号 ({{) 时,我都会得到类似的结果:

{
|
}

|用于描述光标的位置。

这种行为非常烦人,例如当使用为变量保留此语法的不同模板引擎时。

我怎样才能找出这种行为的来源?以及如何关闭它?

谢谢

【问题讨论】:

  • 除了您键入的{{ 之外,是否还有其他可能触发映射的内容(例如,<Enter>?)

标签: vim curly-braces line-breaks


【解决方案1】:

要找出它的来源:

:verbose imap {{
:verbose map {{

查找带有“i”的映射(插入模式映射)并查看它的定义位置

如果不是这样,可能是缩写:

:verbose abbrev

【讨论】:

  • 我得到no mapping found{{{。 :-(
  • 用不同的:verbose 调用的输出更新了我的问题。没有什么能引起我的注意。 (除了我可能应该删除该死的导轨包;-))
  • 你为什么插入斜线(:verbose map \{而不是:verbose map {)?
  • 我只是猜想我需要摆脱那些大括号。没有斜线,我得到no mapping found
  • @sehe,我也没有意识到这一点,但:map 不显示 imap。自己试一试,你会发现没有i开头的那一行。 Vim 帮助 map.txt 在它的第一章,更准确地说是在第 112 行,介绍了 :{x}map 命令来列出可用的地图。请注意,:map 本身设置为仅显示 nvo 地图。同样重要的是要指出v 模式实际上是双地图模式。映射到v 意味着映射到xs(分别为可视模式和选择模式),这就是为什么一些xs 映射出现在:map 列表中的原因。
【解决方案2】:

如果你使用和我一样的插件AutoClose,那么你可以输入<leader>a(我是,a,这取决于你的<leader>键)。

<leader>a 开启或关闭自动关闭。

【讨论】:

  • 是的,autoclose 插件确实是问题所在。但我更感兴趣的是找出如何找出原因。 ;)
猜你喜欢
  • 1970-01-01
  • 2011-05-30
  • 2018-07-31
  • 1970-01-01
  • 2023-03-06
  • 2020-05-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多