NYAGOS、かんたん設定

NYAGOS、かんたん設定 Windows向け拡張コマンドラインシェル:NYAGOS (Nihongo Yet Another GOing Shell) の個人設定はホームディレクトリに .nyagos というテキストファイル(Luaスクリプト)を作成して行います。

Windows の場合ホームディレクトリは一般に C:\Users\(ユーザ名) というフォルダーです。環境変数 HOME に別のフォルダーを定義しておけば、そちらへ変更することも可能です。

なお、メモ帳などで .nyagos という名前で保存しようとすると、勝手に .nyagos.txt という名前に変えられてしまいます。一旦、.nyagos.txt で保存してから、後からエクスプローラーで .nyagos. 等とわざと末尾に余分の . をつけた形にリネームしてください。末尾の .エクスプローラーに対して「拡張子が無い」ということを明示するためのものです。リネーム後に再表示させると、末尾の . が取れているのが分かると思います。

環境変数の設定

環境変数は設定ファイル .nyagos の中で、nyagos.env.変数名 という名前の変数に定義を代入することで設定できます。

たとえば PATH に C:\bin を加えたい時は

nyagos.env.path = nyagos.env.path .. ";C:\\bin"

と .nyagos に記入してください。Lua言語では「..」(ピリオド二つ)が文字列の連結の演算子です。\ は文字列の中なので \ とエスケープします。

なお、NYAGOS の紹介記事で set { ... } という記法を紹介しているものがありますが、これも間違いではありません。set は nyagos.exe と隣接したフォルダー nyagos.d の中の aliasandset.luaというアドオンファイルの中で定義されている便利関数です。

エイリアス(別名)の定義

エイリアス.nyagos の中でnyagos.alias.エイリアス名 という名前の変数に定義を代入することで設定できます。

たとえば「ls -l」を「ll」でも実行できるようにするには

nyagos.alias.ll = 'ls -l $*'

などと .nyagos の中に記載します。$*エイリアスに渡された引数を全て引用するという意味です。他に第一引数の $1,第二引数の $2 …などもあります。(これらのマクロがない場合は自動で勝手に末尾に $* があるとみなされます)

エイリアスは文字列で設定するだけでなく、Lua の関数にリンクさせることもできます。

nyagos.alias.printarg = function(args)
    for i=1,#args do
        print(args[i])
    end
end
% printarg x y a d
x
y
a
d

NYAGOS にはいろいろな機能がありますが、とりあえず環境変数の変更やエイリアスなどが使えれば、必要最小限のカスタマイズはできると思います。