Slackware

Difftastic

ページ作成日 2023/12/31

Difftasticは構文を理解する構造的な差分ツールです。
30以上のプログラミング言語をサポートしています。
なかなか見やすいです。

公式サイト

Difftastic, a structural diff

環境設定

特にありません。

Make it by yourself!

まずは、自分のホームディレクトリにソースを落とし、展開します。


$ cd ~/Downloads
$ wget https://github.com/Wilfred/difftastic/archive/refs/tags/0.53.1.tar.gz
$ tar xvf 0.53.1.tar.gz

Rustで書かれているプログラムなので、cargoでビルドしてインストールします。


$ cd ./difftastic-0.53.1
$ cargo install --locked --path . --root /tmp/difftasitc-0.53.1/usr difftastic

--lockedというオプションは、Cargo.lockファイルに記載されている依存関係のバージョンを使用してビルドを行います。
つまり、プロジェクトが最後に確認した時点での依存関係の状態でビルドされることを保証します。
これにより、依存関係の更新によって生じる予期しないビルドの失敗や動作の変更を防ぐことができます。

--path .は現在のディレクトリにあるCargoプロジェクトを指します。

make install DESTDIRに相当するのが、--rootというオプションです。
このオプションで、パッケージ作成用のテンポラリディレクトリを指定できます。

パッケージを作成します。


$ cd /tmp/difftastic-0.53.1
$ sudo makepkg --linkadd y --chown y ../difftastic-0.53.1-x86_64-1.txz

[画面出力を省略]

Slackware package ../difftastic-0.53.1-x86_64-1.txz created.

あとは、パッケージをインストールすればOK♪


$ cd ..
$ sudo installpkg difftastic-0.53.1-x86_64-1.txz

こんな感じ

お試しで、/etcの設定ファイルなんかで差分を見ると良いでしょう。
コマンドは、difftになります。
difftasticではないので、注意。


$ cd /etc
$ difft sddm.conf sddm.conf.orig
difftasticの実行結果の例