This web page is also available in English.
このプログラムは C 言語 (C99: ISO/IEC 9899:1999, JIS X 3010:2003) で書いた Unix 系 OS 用コマンドライン端末シェルです。Yash は世界で最も正確な POSIX 規格準拠を目指しながらも、対話シェルおよびシェルスクリプト実行プログラムとして便利な機能を備えています。
このプログラムは GNU General Public License (Version 2) の元で自由に再配布・変更などができます。 その代わり、プログラムの利用は全て各自の自己責任の下で行っていただくことに なります。作者はプログラムの瑕疵に対して一切責任を取りません。
なお、yash という名前のシェルは他にも存在するかもしれませんが、特に関係はありません。
ソースコードは Git レポジトリーで管理されています。
Yash は既に POSIX.1-2008 (IEEE Std 1003.1, 2016 Edition) を全てサポートしています (ただし制限事項を除く)。
Yash は安定しています。新しいバージョンは一年に一度か二度リリースされます。(更新履歴)
Software Development Utilities オプションと C-Language Development Utilities オプションを備えた任意の POSIX.1-2001 環境でビルド・実行できるはずです。 Yash は主に Fedora でテストされています。
プログラムのソースコードはリリースページ からダウンロード可能です。 (古いバージョンはリリース一覧から)
Yash は様々なシステムのパッケージマネージャーで提供されており、以下のコマンドでインストールできます。
パッケージマネージャー | システム | コマンド |
---|---|---|
DNF | Fedora | dnf install yash |
APT | Debian / Ubuntu | apt install yash |
MacPorts | macOS | port install yash |
Homebrew | macOS | brew install yash |
pkg | FreeBSD | pkg install yash |
pkgin | NetBSD | pkgin install yash |
pkg_add | OpenBSD | pkg_add yash |
Portage | Gentoo | emerge --ask app-shells/yash |
その他のパッケージについては Repology にリストされています。
マニュアルは man yash で参照できます。
Yash がログインシェルとして起動されたとき、~/.yash_profile を読み込みます。 このファイルはシェルスクリプトとして実行されます。この中で export コマンドを使うことで環境変数を設定できます。
Yash が対話シェルとして起動されたとき、(~/.yash_profile も読み込む場合はその後で) ~/.yashrc を読み込みます。この中でエイリアス、プロンプト、コマンド行編集のキーバインド設定、コマンドが見付からないときのハンドラー等を設定します。サンプルの yashrc を参考に自分用の ~/.yashrc を設定してください。
多くの Unix 系 OS では、ログインシェルとして使用可能なシェルは /etc/shells ファイルに名前が挙げられている必要があります。このファイルを編集し、yash へのパスがファイルに含まれているようにしてください。
その後、端末で chsh コマンドを実行してログインシェルを yash に変更してください。環境によってはこれ以外の方法でログインシェルを設定するようになっているかもしれません。詳しくはお使いの環境のマニュアルを参照ください。