Vim 和带方括号/大括号的缩进

2024-01-26

在编辑 JavaScript 时,我通常必须这样做:

function myFunc() {
  // func body here
}

我尝试过一些括号关闭插件,例如 AutoClose 和 vrackets,但是当我使用上面的代码时,它们都会这样做:

function myFunc() {<CR>
|}

当我转到新行时,如何让 Vim 在括号前插入 a ,并正确缩进光标,如下所示:

function myFunc() {<CR>
  |<CR>
}

有类似插件或其他东西可以做到这一点吗?


我将此映射与 AutoClose 结合使用:

inoremap {<CR> {<CR>}<C-o>O

不需要特殊的组合键。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Vim 和带方括号/大括号的缩进 的相关文章

  • vim 中项目列表的智能硬包装

    我喜欢 vim 而且我真的很喜欢在写文字时将它们硬包装起来 Tim Pope 的 markdown 插件很棒 并且构建得当我尝试硬包装项目列表时它可以正确完成工作 好吧 这就是我所说的正确完成工作的意思 here I write a lon
  • Windows 在 PATH 中搜索可执行文件的相对顺序是什么?

    如果我有a com a cmd a bat and a exe我的文件中的 PATH 如果我只调用该命令 Windows 会选择哪一个a 这是微软官方指定的吗 我只是想包裹我的gvim exe可执行文件 n 但是我的gvim bat似乎既不
  • 使用 cscope 在头文件和实现文件之间切换的 Vim 脚本

    我目前使用的是A vim http vim wikia com wiki Easily switch between source and header file在头文件和实现文件之间交换的插件 该脚本的局限性在于 它仅在两者位于同一文件夹
  • Vim 中每行末尾的美元符号(“$”)是什么

    我对 Vim 还比较陌生 每当我启动 Vim 时使用vim LearnRuby rb 每行都会出现一个美元符号 Why set nolist 将关闭当前缓冲区的特殊字符 例如制表符显示为 I和行尾字符显示为 然而 如果它在你跑步时始终如一地
  • 如何让 git 在 vi​​m 中显示更改,就像 hg 使用 hgeditor 脚本那样?

    Mercurial 的一个有趣的功能是能够查看将在 vim split 中提交的更改 请参阅VIM 中的 DiffsInCommitMessage https www mercurial scm org wiki DiffsInCommit
  • vim:无法加载库 libpython

    我不让 vim 与 python 支持一起工作 我使用以下配置编译 vim 7 4 972 configure enable shared with features huge enable multibyte enable cscope
  • 在插入模式下移至行首

    我知道我可以使用 Home in insert mode Esc i to exit insert mode and enter it again effectively going to the beginning of line But
  • 如何更改每种语言的 vim 设置?

    我将 vim 与许多不同的语言 C C Java shell 等 一起使用 我知道 vim 已经为每种语言预设了设置 但我想根据我个人的喜好更改每种语言的设置 我已经有一个带有设置的 vimrc 文件 但我想要更多文件来根据我使用的语言声明
  • 如何在会话自动加载的同时在 vim 中打开文件?

    我在 vimrc 中有以下代码 可以在 vim 启动时自动保存 加载会话 Session saving Automatically save rewrite the session when leaving Vim augroup leav
  • 如何在vim中将菜单键(“应用程序键”)映射到Escape键?

    我认为使用菜单键退出 vim 的插入模式将是一件很棒的事情 使用 Super 键也很好 但我不确定是否可能 因为 Super 键是一个修饰符 无论如何 我找不到任何与此相关的内容 寻求您的帮助并提前致谢 我认为没有任何方法可以配置 Vim
  • 有没有办法用 Vim 自动重新格式化大括号?

    我想重新格式化一些代码 如下所示 if cond foo to if cond foo 由于这是C代码 所以我一直在看cindent cinoptions与使用 但它似乎不处理多行规则 我一直在看formatoptions与使用gq 而且似
  • 如何在 Vim 中转置文件中的行和列的内容?

    我知道我可以使用 Awk 但我使用的是 Windows 机器 并且我正在为可能没有 Awk 的其他人创建一个函数 我也知道我可以编写 C 程序 但我不希望我正在制作的 Vim 实用程序需要编译和维护 原始文件可能是 THE DAY WAS
  • Foldmethod=同时标记和语法?

    同一文件是否可以根据标记和语法使用折叠 Since foldmethod一次只能设置为一个 我认为您真正可以做到这一点的唯一方法是使用 set foldmethod expr并与foldexpr 即使如此 我也不确定它是否能够完全按照您的要
  • 以 Vim 的 -o - 模式打开 Grep 输出中的文件

    如何将文件列表放入 Vim 的 o 模式 我有一个文件列表作为 Grep 的输出 我运行失败 1 grep il sid vim o 2 grep il sid xargs vim o 3 grep il sid xargs vim 4 v
  • 如何使用 tmuxinator 在 tmux 中拆分水平窗格内的两个垂直窗格

    目前我的 tmuxinator yml 文件中有这个 windows editor layout main horizontal panes vim server rails s 这给了我两个窗口 一个用于编辑器 另一个用于服务器 在编辑器
  • 在键盘快捷键上插入预定义文本

    我经常插入binding pry当我调试我的 ruby 文件时 当我使用 Vim 时 我希望将其自动化 以避免每次都重新输入 我怎样才能做到呢 我想要映射的确切顺序是 插入新行 Insert binding pry到新创建的行 返回正常模式
  • 禁用 VIM 中的警告?

    有没有办法禁用 VIM 中的警告 特别是 当文件从只读变为可写时 我想禁用警告 12 我有一个脚本可以打开文件进行编辑 但 vim 认为文件已更改并发出警告 Thanks 我的 vimrc 中有以下内容 你应该只需要第二个 它将消息回显到状
  • svn:使用vim合并冲突

    我正在尝试看看如何使 svn 中的合并变得容易 This page http svnbook red bean com en 1 7 svn advanced externaldifftools html提到可以使用外部工具进行合并 vim
  • 在后台从 gVim 运行 :make

    我在 Windows 中使用 gVim 来编辑我的代码 主要是 C 我在 gVim 中使用 make 来编译项目 但这是一个阻塞操作 在编译完成之前我无法使用 gVim 我怎样才能异步执行 make 并仍然获得将错误读回 Vim 并跳转到源
  • 使 'n' 始终向前搜索,无论是否 / 或 ?用于搜索

    我几乎总是在 Vim 中搜索 然后继续向前搜索n并向后N 然而 有时我会使用 跳转到我当前所在行上方几行的项目 在这种情况下 如果我想向前搜索同一项目 我必须使用N代替n 令人烦恼的心理减速带 所以我的问题是 是否有可能使n永远向前走 并且

随机推荐

  • 命名空间“卡住”为终止,我如何删除它

    我有一个 卡住 的命名空间 我删除了它 显示在这个永恒的 终止 状态中 假设您已经尝试强制删除资源 例如 Pod 停留在终止状态 https stackoverflow com q 35453792 而你却束手无策地试图恢复名称空间 您可以
  • 命令行从 TFS“获取最新”,无需映射工作区等

    我假设 tf exe get project recursive 需要这个奇怪的工作区映射 已知的 TFS 服务器等 有什么办法可以做这个最简单的事情 连接到thisTFS 服务器使用this一组凭据 获取最新的源代码this项目并把它he
  • 如何从程序窗口外部获取鼠标事件

    我想拖动这个角色 图像 所以我使用这个方法来获取鼠标位置 WndProc HWND hWnd UINT message WPARAM wParam LPARAM lParam switch message case WM LBUTTONDO
  • 具有白色轮廓的 OpenGL 彩色位图字体

    我有一个 libgdx 游戏 我想在其中使用带有轮廓的位图字体 我希望能够使用 setColor 设置字体颜色 但是 我总是希望轮廓保持白色 对我来说实现这一目标的最佳方法是什么 我假设我应该使用片段着色器进行所需的颜色操作 我创建了一个位
  • 在finally块中抛出异常

    有没有一种优雅的方式来处理抛出的异常finally block 例如 try Use the resource catch Exception ex Problem with the resource finally try resourc
  • 找不到方法 android java.lang.NoClassDefFoundError 引用的类

    我正在调用一个单独的类 我已经在与我的包相同的包中编写了MainActivity类已保存 但是当我运行该应用程序时它给了我java lang NoClassDefFoundError 我不明白为什么无法识别同一包中定义的另一个类 我尝试过很
  • 在使用关联类型的情况下,如何为通用容器实现 Borrow?

    我想实施Borrow for UserFriendlyDataStructure提供对internal data函数内的字段应该与数据提供者无关 的类型internal data字段由与特征相关的类型决定TraitA 请注意 Sealed特
  • X500主要杰出姓名顺序

    我使用 Bouncycastle 库通过 X509v3CertificateBuilder 类从 PKCS10 请求生成证书 它返回构建一个包含生成的证书的 X509CertificateHolder 对象 如果我在持有者上调用 getIs
  • SoundCloud 自动在其移动网站上播放下一首歌曲如何?

    好的 我知道 iOS 不允许自动播放 但是 SoundCloud 如何在其移动网站上自动播放下一首歌曲呢 我可以获得我想要填充 iframe src 的下一首歌曲 并且小部件会重新加载以显示该曲目 我尝试了很多解决方法 即使我在下一首曲目准
  • Python 脚本的桌面启动器以错误的路径启动程序

    我无法从 Linux Mint 17 1 Cinnamon 上创建的 desktop 启动器启动 python 脚本 问题是脚本将在错误的路径中启动 即主文件夹而不是它所在的目录 因此 它无法在其文件夹中找到伴随它的其他重要文件 因此无法工
  • 检查列表是否由 X 的 N 个实例组成(重复 X N 次)

    给定一个查询 例如 containsN 4 2 Z 我应该得到 Z 2 2 2 2 or containsN 4 W 3 3 3 3 我应该得到 W 3 换句话说 对于第一个示例 我需要绑定到 Z 的列表中 2 的 4 个实例 对于第二个示
  • 使用 Python 从法语 Word 文档中提取 XML 时出现问题:生成非法字符

    在过去的几天里 我一直在尝试创建一个脚本 该脚本将 1 从 Word 文档中提取 XML 2 修改该 XML 3 使用新的 XML 创建并保存新的 Word 文档 在许多 stackoverflow 用户的帮助下 我最终找到了看起来非常有前
  • 如何在 iPadOS15 safari 中禁用放大镜

    我想禁用当我们长按任何 html 元素时出现的文本放大镜 它开始再次出现在 iOS 15 中 我尝试了以下方法 但在 iOS 15 上不起作用 在 iOS html 应用程序中禁用放大镜 https stackoverflow com qu
  • OSGi 配置管理服务的现有实现?

    我们正在考虑使用配置管理服务作为主要 API 用于配置基于 OSGi 的应用程序中的组件 如果我们可以重用一些现有的实现 那就太好了 所以我正在尝试调查和评估最受欢迎的实现 我知道有 Apache Felix 配置管理 http felix
  • UIPageViewController/TextKit 在分页上回流文本

    我正在开发一个由 TextKit 支持的多页阅读应用程序 该应用程序基于 WWDC 2013 的 Advanced Text Layouts and Effects with Text Kit 会议 但有些代码是根据不完整的示例重建的 基本
  • 为什么我应该更喜欢 `Option::ok_or_else` 而不是 `Option::ok_or`?

    我刚刚在拉取请求中看到以下更改 ok or Error new ErrorKind Other Decode error ok or else Error new ErrorKind Other Decode error 我知道的唯一区别是
  • 使 ASP.Net 中的 URL 对用户友好

    我正在尝试使用 Web 窗体在 ASP Net 中开发我的第一个网站 我有一个带有一些控件和一个 TextBox 控件的表单 虽然现在我用GET要求 当用户提交表单时 他的浏览器期望获得长 URL 例如 http mysite com se
  • 如何使用 Gradle 创建具有实现依赖项的可执行 fat JAR?

    我在 Gradle 4 6 中有一个简单的项目 想为其制作一个可执行的 JAR 我试过了shadow gradle fatjar plugin gradle one jar spring boot gradle plugin插件 但它们都没
  • 关于域对象的存储库及其保存方法的问题

    我有一个关于 DDD 存储库模式和 ORM 的有点荒谬的问题 在这个例子中 我有 3 个类 Address Company and Person 个人是公司的成员并拥有地址 公司也有地址 这些类反映了数据库模型 我删除了模型的所有依赖项 因
  • Vim 和带方括号/大括号的缩进

    在编辑 JavaScript 时 我通常必须这样做 function myFunc func body here 我尝试过一些括号关闭插件 例如 AutoClose 和 vrackets 但是当我使用上面的代码时 它们都会这样做 funct