跳转到主要内容
你行网

Main navigation

  • 首页
  • 文章
  • 教程
  • 视频
  • 下载
  • 社区
  • 网站导航
User account menu
  • 登录

面包屑

  1. 首页

vim surround 插件的使用方法和操作快捷键

由 hrs, 26 二月, 2022

surround 插件可以快速编辑围绕在内容两端的字符(pairs of things surrounding things),比如成对出现的括号、引号,甚至HTML/XML标签等。

安装配置
推荐您使用vim-plug或Vundle等插件管理器,来安装GitHub上的surround插件。

以下将利用实例来介绍surround插件的主要功能,请注意:

在“原始文本”列中,高亮文字表示光标所在位置;
在“命令”列中,为顺序执行的命令序列。
在“更改效果”列中,为命令执行之后的结果。请参考实例文件并自行测试。
新增环绕字符
在常规模式、插入模式和可视化模式下,可以分别使用ys和S命令来新增环绕字符:

surround00.jpg

请注意:

插入模式下的操作:
首先同时按下CTRL-g键;
然后松开CTRL键;
最后点击s或S键,并输入环绕字符或标签。
可视化模式下的操作:
首先使用快捷键进入不同类型的可视化模式。
比如在Windows下,使用CTRL-Q键进入块视化模式;
然后使用j等移动命令来选中文本;
最后点击S键,并输入环绕字符或标签。
修改环绕字符
使用cs命令可以修改环绕字符:

surround01_0.jpg
删除环绕字符
使用ds命令可以删除环绕字符:

surround02_0.jpg
surround插件主要提供以下命令:

 

ys添加环绕字符
yS添加环绕字符并拆分新行
yss为整行添加环绕字符
ySS为整行添加环绕字符并拆分新行
cs修改环绕字符
cS修改环绕字符并拆分新行
ds删除环绕字符
surround插件可以识别并处理以下目标实体:

( )
{ }
[ ]
< >
`
"
'
t(标签)
w(单词)
自定义快捷键
如果查看surround插件的源码,将会发现快捷键逐一定义在surround.vim文件中:

surround03_0.jpg
也就是说,我们可以直接在vimrc配置文件中,重置或取消插件预定义的快捷键:

" 不定义任何快捷键
let g:surround_no_mappings = 1
" 从plugin/surround.vim复制快捷键定义
” 并按需要进行修改
nmap ds <Plug>Dsurround
nmap cs <Plug>Csurround
nmap cS <Plug>CSurround
nmap ys <Plug>Ysurround
nmap yS <Plug>YSurround
nmap yss <Plug>Yssurround
nmap ySs <Plug>YSsurround
nmap ySS <Plug>YSsurround
" 取消不需要的快捷键
"xmap S   <Plug>VSurround
"xmap gS  <Plug>VgSurround
"imap   <C-S> <Plug>Isurround
imap    <C-G>s <Plug>Isurround
imap    <C-G>S <Plug>ISurround
假设需要输入以下包含多个环绕字符的文本:

{{ nginx_root }}
由于surround插件并不支持.重复命令,如果想要新增多个成对字符,那么需要安装额外的repeat.vim插件。而死板繁琐的替代方案是,自定义快捷键来重复执行命令:

nmap <C-J> ysiw}lysiw{
使用以下命令,可以查看插件的帮助文件:

:help surround

标签

  • surround
  • 登录或注册以发表评论

评论

相关文章

文章标签

CSS
Excel
ubuntu
php
五笔
vim
Linux
HTML
command
drupal 7
composer
centos
Mysql
drupal 8
模块(module)
VPN
drush
JavaSrcipt
apache
drupal 9
英语
Drupal
SEO
nerdtree
network
果树种植
surround
drupal10
主题(theme)
phpmyadmin
ssh
权限
yum
二进制
声音
ssl
selinux
HTML5
用户
password
Dreamweaver
flameshot
颜色
翻译
uploadprogress
DDEV
视图(views)
firewalld
gzip
快捷键
kernel
xdebug
错误
ckeditor
mbstring
C语言
源地址
简介
php扩展
电脑基础
certbot
git
apt
压缩解压
表单
电子秤
httpd
WireGuard
邮件验证
breadcrumb
AI
superfish
diff
重定向
网站备份
摄影
tagclouds
docker
java
csharp
短信验证
adsense
drupal9
电脑技巧
simple_adsense
算法
RSS
youtube
版本号
JavaScript
badblocks
端口
cookie
VUE
网站运营
计算机基础
gimp
form
mod_expires 模块
nginx
zip
http验证
重定向,301
curl
netstat
input
赚钱
ip
dns
RFID
标签优化
drupal11
maven
drupal 11
npm
哈希值
字段
更多
RSS源
本站由阿里云强力驱动,幸运券优惠链接
Copyright © 2019 - 2021 你行网 版权所有  粤ICP备19072650号