ターミナルヒント

ターミナルで Pygments をより効果的に活用するためのヒントをいくつか紹介します。

使用しているシェルを判別するには?

以下のコマンドを実行してください

$ echo $SHELL

私の出力は/usr/bin/fishです。これは実行ファイルの場所を示しています。つまり、私のコンピュータは fish シェルを使用しています。neofetch(または同様のユーティリティ)もその情報を提供できます。

ほとんどのシェルは POSIX に準拠しています。

エイリアス (POSIX)

POSIX 準拠シェルにはbashzsh、そしてほとんどのシェルが含まれます。

エイリアスを使用すると、異なる名前で関数を呼び出すことができます。この場合、異なる名前でpygmentizeを呼び出します。最も単純なのは、cathというエイリアスを作成することです。

$ alias cath="pygmentize"

pygmentizecatのように動作するわけではないことに注意してください。しかし、ファイルを表示するというcatの用途と同様のコマンドを使用できます。

必要に応じて追加のフラグを追加できます。monokai スタイルは暗い背景に適しているので、このオプションの追加方法を示します。

$ alias cath="pygmentize -O style=monokai"

構文ハイライト付きのlessのバージョンを以下に示します。環境変数LESSOPENを使用して入力ファイルの前処理を行うため、少し複雑です。

$ alias lessh='LESSOPEN="| pygmentize -O style=monokai %s" less -M -R '

これらのエイリアスコマンドは、新しいターミナルを開く(またはコンピュータを再起動する)際に機能させるために、設定に追加する必要があります。

上記のcommandをあなたの設定ファイルに追加してください

  • bash - ~/.bash_aliases(存在する場合)または~/.bashrcファイルを編集します。

  • csh(C シェル)、~/.cshrcファイルを編集します。

  • ksh(Korn シェル)、~/.kshrcファイルを編集します。

  • tcsh~/.tcshrcファイルを編集します。

  • zsh~/.zshrcファイルを編集します。

現在のシェル環境システムに変更を適用するには、編集したファイル名に対してsourceを実行します。

$ source [~/.filenamerc]

エイリアス (fish シェル)

上記の POSIX 用エイリアスは問題なく動作しますが、fish シェルでエイリアスを永続的に保存する方法は少し異なります。永続的なエイリアスを作成するには関数を使用します。funced [command]を使用して関数を作り、funcsave [command]で関数を環境に保存します。

funced cathを実行すると、デフォルトのエディタが開き、以下のコードを関数に追加します。

function cath
        # 'cath' alias will highlight source code as cat does.
        alias cath="pygmentize"
end

追加の引数を含むcath関数の例を以下に示します。

function cath
        alias cath="pygmentize -O style=monokai"
end

注:POSIX シェルと同様に、コマンドラインでalias cath="pygmentize -O style=monokai"を実行して、事前にエイリアスを試すことができます。

cath関数をテストします。関数を保存するにはfuncsave cathを実行します。これにより、将来のセッションでも関数が保存されます。

funced lesshは、環境変数LESSOPENを使用して入力ファイルの前処理を行うため、少し複雑です。

function lessh
        LESSOPEN="| pygmentize -O style=native %s" less -M -R $argv
end

lessh関数をテストします。関数を保存するにはfuncsave lesshを実行します。