GNU readline

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索
GNU readline
開発元 Brian Fox, Chet Ramey
最新版 6.1 / 2010年1月3日(4年前) (2010-01-03[1]
プログラミング言語 C言語
対応OS 各種
ライセンス GNU General Public License
公式サイト 公式サイト
テンプレートを表示

GNU readline(グニュー・リードライン)は、GNUプロジェクトが開発・保守しているライブラリの1つ。GPLでライセンスされ、bashなどのプロジェクトで使われている。

readline を使ったアプリケーションでは、CTRL-B押下でカーソルを1文字ぶん戻し、CTRL-F押下で1文字ぶん進め、CTRL-Rでコマンド履歴を検索できる。これらのショートカットキー(前述はデフォルトであり、vi風のバインディングも可能)はGNUの最も有名なプロジェクトであるテキストエディタ Emacs に倣ったものである。readline には他にも、キルリング(コピー・アンド・ペーストをより柔軟にしたもの)、コマンド行補完といった基本機能がある。クロスプラットフォームのライブラリであるため、アプリケーションの行編集動作を各種システムで同一にすることができる。

readline は設定ファイルでカスタマイズでき、設定ファイルの位置はデフォルト(~/.inputrc)もあるが、アプリケーションで指定したパスでもよい。このファイルでキーバインディングなどをカスタマイズできる。

批判[編集]

既知のバグと制限があり、サードパーティのアプリケーションでの採用が難しい[要出典]。一部機能は文書通りには動作せず(例えば、ローカルエコーをディセーブルできない)、キーバインディングの削除ができない。manページには、「大きすぎ、遅すぎる」とある。[2]

GPLと非互換のライセンスで配布されているプログラムの中には、readline をオプション機能としているものがある。その場合ユーザーがビルドするときにreadlineを使うか使わないかを指定する。しかし、リチャード・ストールマンと Bruno Haible の間で交わされた電子メールによれば[3]、そのような手間をかけてもGPLでないライセンスを採用することはできない。しかしその後、NetBSDの editline ライブラリが同じ機能を提供するようになり、ストールマンが主張したことは今日では意味が弱まっている。

脚注・出典[編集]

外部リンク[編集]