Vim中gq格式化文本换行:现有操作能否简化?
Vim 排版优化:更短的操作路径
需求
将这段文本:
* - P2P.32-1 - Identification des retards de rotoemant par rapport aux conditions de huitmots (calculé sur la base de la date de pièce) * - P2P.32-2 - Identification des rotoemants réalisés en retard par rapport aux conditions de huitmots (calculé sur la base de la date de saisie) * - P2P.33
格式化为:
* - P2P.32-1 - Identification des retards de rotoemant par rapport aux conditions de huitmots (calculé sur la base de la date de pièce) * - P2P.32-2 - Identification des rotoemants réalisés en retard par rapport aux conditions de huitmots (calculé sur la base de la date de saisie) * - P2P.33
当前使用的快捷键序列是A<return><escape>kgqjdd,且已设置:set tw=88,求更简短的操作方式。
优化方案
单条行快速处理
把光标移到(的前一个字符位置,直接按gq(:
- 这个命令会自动以
tw=88为宽度基准,将括号及内部内容换行,并自动对齐到当前列表项的缩进层级,一步完成排版,比原操作少了至少4个步骤。
批量处理所有目标行
如果要一次性搞定所有带括号的行,执行全局命令:
:g/(/norm gq(
- 这条命令会遍历所有包含
(的行,自动在每行执行gq(操作,无需逐行手动处理。
另一种单步快捷键
光标定位到(前,按gql:
l表示对光标到行尾的内容进行排版,同样能实现拆分换行+自动对齐,操作更简洁。
内容的提问来源于stack exchange,提问作者user3313834
相关产品推荐
相关产品推荐

