如何在VSCode及VSCodeVim中执行Vim命令删除所有空行?
解决VSCodeVim映射删除所有空行的问题
原配置的问题:直接在
commands字段中写入带<Enter>的Vim命令会触发“trailing spaces”格式错误;移除<Enter>后,命令仅会显示在命令行但不会自动执行,还会出现焦点切换异常的问题。正确的按键映射配置:
使用VSCodeVim提供的vim.command来执行Vim替换指令,无需手动添加<Enter>,配置代码如下:
{ "before": ["<Leader>", "q"], "after": [], "commands": [ { "command": "vim.command", "args": [":%s/^\\s*\\n//g"] } ] }
- 配置说明:
:%s/^\\s*\\n//g是Vim全局替换命令:%指定作用范围为整个文件,^\\s*\\n匹配包含零或多个空白字符的空行,替换为空即可实现删除所有空行的效果。vim.command是VSCodeVim专门用于触发Vim命令执行的接口,能自动完成命令的执行流程,避免原配置中的格式和执行异常问题。
内容的提问来源于stack exchange,提问作者Varity Colgate
相关产品推荐
相关产品推荐

