vim指令diffopt:Vimdiff比较文本时自定义差异上下文要显示的行数
Vim相关指令:
在 Vim窗口执行 set diffopt=filler,context:10
或 set diffopt=filler,context:0
命令即可(其中10为上下文的行数,设置为0即仅显示差异文本,不显示任何相当的行。);
快捷封装函数:
vimdiff10() {
#设置vim显示参数:调用vimdiff时显示差异文本处上下文的10行文本;
#See Also:https://unix.stackexchange.com/questions/352199/vimdiff-vim-d-how-to-show-only-the-differences-and-fold-all-identical-line
#See Also2:https://stackoverflow.com/questions/47471821/vimdiff-how-to-hide-all-same-lines-in-both-files-and-show-only-different-ones
#仅显示差异文本,不显示任何上下文:vim -c "set diffopt=filler,context:0" -d
vim -c "set diffopt=filler,context:10" -d "$@"
}
vimdiffline() {
#设置vimdiff展示差异时要显示的上下文行数
local lines=5 #默认展示5行上下文
expr $1 + 0 &>/dev/null
[ $? -eq 0 -o "$1" = "0" ] && lines="$1" && shift
vim -c "set diffopt+=context:${lines}" -d "$@"
}
操作截图:
本文来自博客园,作者:晴云孤魂,转载请注明原文链接:https://www.cnblogs.com/cnhack/p/16852183.html