GNU Readline
表示
開発元 | Brian Fox, Chet Ramey |
---|---|
最新版 |
8.1 / 2020年12月7日[1] |
リポジトリ | |
プログラミング 言語 | C言語 |
対応OS | 各種 |
ライセンス | GNU General Public License |
公式サイト | 公式サイト |
GNU Readline︵グニュー・リードライン︶は、GNUプロジェクトが開発・保守しているライブラリの1つ。GPLでライセンスされ、bashなどのプロジェクトで使われている。
Readlineを使ったアプリケーションでは、CTRL-B押下でカーソルを1文字ぶん戻し、CTRL-F押下で1文字ぶん進め、CTRL-Rでコマンド履歴を検索できる。これらのショートカットキー︵前述はデフォルトであり、vi風のバインディングも可能︶はGNUの最も有名なプロジェクトであるテキストエディタのGNU Emacsに倣ったものである。Readlineには他にも、キルリング︵コピー・アンド・ペーストをより柔軟にしたもの︶、コマンド行補完といった基本機能がある。クロスプラットフォームのライブラリであるため、アプリケーションの行編集動作を各種システムで同一にすることができる。
Readlineは設定ファイルでカスタマイズでき、設定ファイルの位置はデフォルト (~/.inputrc) もあるが、アプリケーションで指定したパスでもよい。このファイルでキーバインディングなどをカスタマイズできる。
問題点[編集]
既知のバグと制限がある。一部機能は文書通りには動作せず︵例えば、ローカルエコーをディセーブルできない︶、キーバインディングの削除ができない。ライセンス[編集]
GPLv3で配布されている。同様のライブラリにNetBSDのeditlineがあり、NetBSDライセンスで配布されている。 GPLv3と非互換のライセンスで配布されているプログラムの中には、Readlineをオプション機能としているものがある。その場合ユーザーがビルドするときにreadlineを使うか使わないかを指定する。リチャード・ストールマンと Bruno Haible の間で交わされた電子メール[2]で、﹁プログラムを自由にするまでは︵GPLv3互換なライセンスにするまでは︶、Readlineの利用を停止する必要がある﹂と述べている。脚注・出典[編集]
外部リンク[編集]
- GNU readline ホームページ
- The Tecla command-line editing library - MIT系ライセンスによるReadlineの置換
- Editline Library (libedit) - BSDライセンスによるReadlineの置換
- Haskeline - HaskellによるReadline実装。BSDライセンス
- rlwrap - Readlineの機能を持たないコマンドにReadline機能を提供するツール