作者ViewMoon (阳春白雪)
看板Editor
标题Re: [vim ] vimdiff by patience 演算法
时间Wed Nov 27 23:20:08 2019
vim 8.1.0360 开始, vim 原生支援 patience algorithm
可以在 .vimrc 加上这段後支援
if has("patch-8.1.0360")
set diffopt+=internal,algorithm:patience,indent-heuristic
endif
相关 links:
https://github.com/chrisbra/vim-diff-enhanced
https://vimways.org/2018/the-power-of-diff/
※ 引述《ViewMoon (阳春白雪)》之铭言:
: 在看了 #1L06ggBF [vim ] EnhancedDiff 套件
: https://webptt.com/cn.aspx?n=bbs/Editor/M.1426090666.A.2CF.html
: 之後找的相关资料
: * diff 的 output format 是 ed
: * git diff 的 output format 不同, 不能直接用 diffexpr 呼叫
: git diff --patience --no-index
: 而是需要呼叫後再转换它的 output format
: * 2009 Bram Cohen 提出 patience algorithm
: * 2015/2/25 EnhancedDiff 套件 release, 需 vim version >= 7.4
: * 2014/7/8 Takaaki Kasai 写了 ruby script 去转换 output format
: https://github.com/neovim/neovim/issues/1466
: 不限 vim version
: * 除了 git 有实作 patience algorithm
: 还有 patdiff library (goole 找 haskell patience)
: 但找不到其它 patience diff 的 standalone 程式
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.134.104.66 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Editor/M.1574868013.A.E55.html
1F:推 Bellkna: 感谢告知XD 这样又可以少装一个script 11/29 19:39
2F:推 Bschord: 推 11/30 01:37
3F:推 goldie: 推 12/01 20:35
5F:推 mars90226: 查了一下,neovim 0.4.3 有实做此功能 12/07 17:30
6F:→ mars90226: neovim user 直接更新到目前最新 stable 就能用了 12/07 17:30