You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Vim中取消已添加的删除线效果?

取消Vim中已添加的删除线

你当前的配置是通过给每个非控制字符追加Unicode组合字符U+0336(删除线标记)来实现删除线效果。要取消这些行的删除线,只需移除文本中的U+0336字符即可,具体配置如下:

新增取消删除线的命令和函数

在你的.vimrc中添加以下内容:

command! -range -nargs=0 Unstrikethrough   call s:RemoveStrikethrough(<line1>, <line2>)

function! s:RemoveStrikethrough(line1, line2)
    execute a:line1.','.a:line2.'s/\%V\u0336//ge'
endfunction

使用说明

  • 选中需要取消删除线的行(或直接将光标定位在目标行),执行:Unstrikethrough命令即可移除该行的删除线效果。
  • 若想简化命令名,可将Unstrikethrough改为Unstrike这类短名称,只需同步修改命令定义和调用时的名称即可。

原代码逻辑说明

你现有的Strikethrough命令通过调用s:CombineSelection函数,在选中范围(\%V)内的每个非控制字符后插入U+0336字符,以此实现视觉上的删除线效果。新增的Unstrikethrough命令则是反向操作,直接删除选中范围内所有的U+0336字符,恢复文本原貌。

内容的提问来源于stack exchange,提问作者Mark Scheck

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 12:35:21