構文をdiff使用してバッファをフィルタリングすることもでき%!ます。
:%! diff -au "%" -
これにより、バッファがディスクに書き込まれるのではなく、差分で埋められます。readonly誤ってオリジナルを上書きしないように設定することもできます(OTOH、ファイルがバージョン管理されているため、深刻な問題になることはありませんか?)。もちろん、逆コマンドを使用すると役立ちます。
:%! patch -o - "%"
これにより、差分が変更されたファイルに変換されます。