Linuxに安定したツール(既存のツールのオプション/プラグイン:vimdiff、diffなど)があり、2つのテキストファイルを文字通りに差分できますか?
2つのファイル間の最長共通部分列を強調表示したいと思います。そのための古典的な多項式時間 algorithm がありますが、標準ツールは行ごとにしか機能しないようです。
古き良きcmp
は文字ごとの差分を行います。それは約40年間UNIXの一部です。 https://www.freebsd.org/cgi/man.cgi?query=cmp&apropos=0&sektion=0&manpath=Unix+Seventh+Edition&Arch=default&format=html
残念ながら、最初の異なる文字で止まるので、この答えがあなたに役立つかどうかはわかりません。
インストール diffchar
( Githubリンク プラグインオートローダーを使用している場合)。プラグインが有効になっているv4.7以降、Vimはより正確な違いを自動的に表示します。
あなたは押すことができます F7 (デフォルトのキーマップ)通常とプラグインを切り替えます。再割り当て:
nmap <silent> <key> <Plug>ToggleDiffCharAllLines
<key>
を適切なキーコードに置き換えます。
より多くの色を使用できます:
let g:DiffColors=100
残念ながら、これはラインを越えて機能しません。ただし、一般的な領域はun-強調表示されたままになっている(長くなりすぎる場合は折りたたまれている)ため、それを利用できる可能性があります。
私のViとVim Stack Exchangeの投稿 からコピーされました。