要約
irb の設定を扱うためのクラスです。
irb 中で conf コマンドの戻り値や .irbrc で IRB.conf を操作する事で設定を変更します。irb の起動後は IRB.conf の内容を更新しても変更の内容は反映されない事に注意してください。
なお、.irbrc 中に記述できる以下の設定値については、IRB::Context オブジェクトのメソッドとして操作できません。
- IRB.conf[:AT_EXIT]
-
irb の終了時(サブ irb を含みません)に本項目に設定された Proc オブジェクトを実行します。ブロック引数には何も渡されません。
デフォルト値は [] です。
- IRB.conf[:CONTEXT_MODE]
-
新しいワークスペースを作成した時(サブ irb の起動や pushws した時)に、ワークスペースに関連する Binding オブジェクトの作成方法を Integer で設定します。
0 を指定した場合、Object::TOPLEVEL_BINDING の Proc 内の Binding を使用します。1 を指定した場合、Tempfile 中の Binding を使用します。2 を指定した場合、Thread 内で読み込んだファイル中の Binding を使用します。3 を指定した場合、 Object::TOPLEVEL_BINDING の関数中の Binding を使用します。
ただし、IRB.conf[:SINGLE_IRB] に true を設定していた場合は、現在のワークスペースをそのまま使用します。
デフォルト値は 3 です。
- IRB.conf[:IRB_LIB_PATH]
-
ライブラリ内部で使用します。
- IRB.conf[:IRB_RC]
-
irb の起動時(サブ irb を含みます)に本項目に設定された Proc オブジェクトを実行します。ブロック引数には IRB::Context が渡されます。そのため、サブ irb の設定をまとめて実行するのに使用します。
デフォルト値は nil です。
irb/サブ irb の設定 も併せて参照してください。
- IRB.conf[:LC_MESSAGES]
-
ライブラリ内部で使用します。
- IRB.conf[:MAIN_CONTEXT]
-
ライブラリ内部で使用します。
- IRB.conf[:SCRIPT]
-
ファイル名を指定して irb を実行した場合のパスを文字列で返します。
デフォルト値は nil です。
- IRB.conf[:SINGLE_IRB]
-
irb 中で self を実行して得られるオブジェクトをサブ irb と共有するかどうかを設定します。true を設定した場合に共有されます。
デフォルト値は false です。
- IRB.conf[:VERSION]
-
IRB.version を実行した時に返すバージョンを String で指定します。
デフォルト値は nil です。
- IRB.conf[:__MAIN__]
-
ライブラリ内部で使用します。
目次
- 特異メソッド
- インスタンスメソッド
-
- __inspect__
- __to_s__
- ap_name
- ap_name=
- auto_indent_mode
- auto_indent_mode=
- back_trace_limit
- back_trace_limit=
- debug?
- debug_level
- debug_level=
- echo
- echo=
- echo?
- evaluate
- exit
- file_input?
- ignore_eof
- ignore_eof=
- ignore_eof?
- ignore_sigint
- ignore_sigint=
- ignore_sigint?
- inspect
- inspect?
- inspect_mode
- inspect_mode=
- io
- io=
- irb
- irb=
- irb_name
- irb_name=
- irb_path
- irb_path=
- last_value
- load_modules
- main
- prompt_c
- prompt_c=
- prompt_i
- prompt_i=
- prompt_mode
- prompt_mode=
- prompt_n
- prompt_n=
- prompt_s
- prompt_s=
- prompting?
- rc
- rc?
- return_format
- return_format=
- set_last_value
- thread
- to_s
- use_readline
- use_readline?
- verbose
- verbose=
- verbose?
- workspace
- workspace=
- 追加されるメソッド
- 定数
特異メソッド
new(irb, workspace = nil, input_method = nil, output_method = nil) -> IRB::Context[permalink][rdoc]-
自身を初期化します。
- [PARAM] irb:
- IRB::Irb オブジェクトを指定します。
- [PARAM] workspace:
- IRB::WorkSpace オブジェクトを指定します。省略した場合は新しく作成されます。
- [PARAM] input_method:
- String、IRB::InputMethod のサブクラスのオブジェクト、nil のいずれかを指定します。
- [PARAM] output_method:
- IRB::OutputMethod のサブクラスのオブジェクトを指定します。省略した場合は IRB::StdioOutputMethod オブジェクトが新しく作成されます。
インスタンスメソッド
__inspect__ -> String[permalink][rdoc]-
自身を文字列表現にしたオブジェクトを返します。
__to_s__ -> String[permalink][rdoc]-
自身を文字列表現にしたオブジェクトを返します。
ap_name -> String[permalink][rdoc]-
自身のアプリケーション名を返します。
デフォルト値は "irb" です。
[SEE_ALSO] IRB::Context#ap_name=
ap_name=(val)[permalink][rdoc]-
自身のアプリケーション名を val に設定します。
.irbrc ファイル中で IRB.conf[:AP_NAME] を設定する事でも同様の操作が行えます。
- [PARAM] val:
- アプリケーション名を String で指定します。
[SEE_ALSO] IRB::Context#ap_name
auto_indent_mode -> bool[permalink][rdoc]-
入力が次の行に継続した時に自動で字下げを行うかどうかを返します。
デフォルト値は false です。
- [RETURN]
- 自動で字下げを行う場合は true を返します。行わない場合は false を返します。
[SEE_ALSO] IRB::Context#auto_indent_mode=
auto_indent_mode=(val)[permalink][rdoc]-
入力が次の行に継続した時に自動で字下げを行うかどうかを val に設定します。
- [PARAM] val:
- true を指定した場合、自動で字下げを行います。false を指定した場合は自動で字下げを行いません。
IRB::Context#prompt_mode の変更に影響を受ける事に注意してください。
[SEE_ALSO] IRB::Context#auto_indent_mode
back_trace_limit -> Integer[permalink][rdoc]-
エラー発生時のバックトレース表示の先頭、末尾の上限の行数を返します。
デフォルト値は 16 です。
[SEE_ALSO] IRB::Context#back_trace_limit=
back_trace_limit=(val)[permalink][rdoc]-
エラー発生時のバックトレース表示の先頭、末尾の上限の行数をそれぞれ val 行に設定します。
.irbrc ファイル中で IRB.conf[:BACK_TRACE_LIMIT] を設定する事でも同様の操作が行えます。
- [PARAM] val:
- バックトレース表示の先頭、末尾の上限を Integer で指定します。
[SEE_ALSO] IRB::Context#back_trace_limit
debug? -> bool[permalink][rdoc]-
irb がデバッグモード(IRB::Context#debug_level が 1 以上)で動作しているかどうかを返します。
デフォルト値は true です。
[SEE_ALSO] IRB::Context#debug_level, IRB::Context#debug_level=
debug_level -> Integer[permalink][rdoc]-
irb のデバッグレベルを返します。
デフォルト値は 1 です。
[SEE_ALSO] IRB::Context#debug_level=, IRB::Context#debug?
debug_level=(val)[permalink][rdoc]-
irb のデバッグレベルを val に設定します。
[SEE_ALSO] IRB::Context#debug_level, IRB::Context#debug?
echo -> bool[permalink][rdoc]echo? -> bool-
irb のプロンプトでの評価結果を表示するかどうかを返します。
デフォルト値は false です。
[SEE_ALSO] IRB::Context#echo=
echo=(val)[permalink][rdoc]-
irb のプロンプトでの評価結果を表示するかどうかを設定します。
.irbrc ファイル中で IRB.conf[:ECHO] を設定する事でも同様の操作が行えます。
- [PARAM] val:
- true を指定した場合、irb のプロンプトでの評価結果を表示します。false を指定した場合は表示しません。
[SEE_ALSO] IRB::Context#echo
evaluate(line, line_no) -> object[permalink][rdoc]-
ライブラリ内部で使用します。
exit(ret = 0) -> object[permalink][rdoc]-
irb を終了します。ret で指定したオブジェクトを返します。
- [PARAM] ret:
- 戻り値を指定します。
[SEE_ALSO] IRB.irb_exit
file_input? -> bool[permalink][rdoc]-
ライブラリ内部で使用します。
ignore_eof -> bool[permalink][rdoc]ignore_eof? -> bool-
Ctrl-D(EOF) が入力された時に irb を終了するかどうかを返します。
true の時は Ctrl-D を無視します。false の時は irb を終了します。
デフォルト値は false です。
[SEE_ALSO] IRB::Context#ignore_eof=
ignore_eof=(val)[permalink][rdoc]-
Ctrl-D(EOF) が入力された時に irb を終了するかどうかを val に設定します。
.irbrc ファイル中で IRB.conf[:IGNORE_EOF] を設定する事でも同様の操作が行えます。
- [PARAM] val:
- true を指定した場合、 Ctrl-D を無視します。false を指定した場合は Ctrl-D の入力時に irb を終了します。
[SEE_ALSO] IRB::Context#ignore_eof
ignore_sigint -> bool[permalink][rdoc]ignore_sigint? -> bool-
Ctrl-C が入力された時に irb を終了するかどうかを返します。
false の時は irb を終了します。true の時は以下のように動作します。
- 入力中
-
これまで入力したものをキャンセルしトップレベルに戻る.
- 実行中
-
実行を中止する.
デフォルト値は true です。
[SEE_ALSO] IRB::Context#ignore_sigint=
ignore_sigint=(val)[permalink][rdoc]-
Ctrl-C が入力された時に irb を終了するかどうかを val に設定します。
.irbrc ファイル中で IRB.conf[:IGNORE_SIGINT] を設定する事でも同様の操作が行えます。
- [PARAM] val:
- false を指定した場合、Ctrl-C の入力時に irb を終了します。 true を指定した場合、Ctrl-C の入力時に以下のように動作します。
- 入力中
-
これまで入力したものをキャンセルしトップレベルに戻る.
- 実行中
-
実行を中止する.
[SEE_ALSO] IRB::Context#ignore_sigint
inspect -> String[permalink][rdoc]to_s -> String-
自身を人間に読みやすい文字列にして返します。
inspect? -> bool[permalink][rdoc]-
IRB::Context#inspect_mode が有効かどうかを返します。
- [RETURN]
- 出力結果に inspect したものを表示する場合は true を返します。 to_s したものを表示する場合は false を返します。
[SEE_ALSO] IRB::Context#inspect_mode, IRB::Context#inspect_mode=
inspect_mode -> bool | nil[permalink][rdoc]-
実行結果の出力方式を返します。
[SEE_ALSO] IRB::Context#inspect_mode=
inspect_mode=(opt)[permalink][rdoc]-
実行結果の出力方式を opt に設定します。
- [PARAM] opt:
- 以下のいずれかを指定します。
- true, nil
-
出力結果を inspect したものを表示します。
- false
-
出力結果を to_s したものを表示します。
io -> IRB::InputMethod[permalink][rdoc]-
ライブラリ内部で使用します。
io=(val)[permalink][rdoc]-
ライブラリ内部で使用します。
irb -> IRB::Irb[permalink][rdoc]-
ライブラリ内部で使用します。
irb=(val)[permalink][rdoc]-
ライブラリ内部で使用します。
irb_name -> String[permalink][rdoc]-
起動しているコマンド名を文字列で返します。
[SEE_ALSO] IRB::Context#irb_name=
irb_name=(val)[permalink][rdoc]-
起動しているコマンド名を val に設定します。
- [PARAM] val:
- コマンド名を String で指定します。
[SEE_ALSO] IRB::Context#irb_name
irb_path -> String[permalink][rdoc]-
ライブラリ内部で使用します。
irb_path=(val)[permalink][rdoc]-
ライブラリ内部で使用します。
last_value -> object[permalink][rdoc]-
irb 中での最後の実行結果を返します。
load_modules -> [String][permalink][rdoc]-
irb の起動時に -r オプション指定で読み込まれたライブラリ、~/.irbrc などの設定ファイル内で IRB.conf[:LOAD_MODULES] 指定で読み込まれたライブラリの名前の配列を返します。
main -> object[permalink][rdoc]-
self に設定されたオブジェクトを返します。
[SEE_ALSO] cwws コマンド
prompt_c -> String[permalink][rdoc]-
式が継続している時のプロンプトを表現するフォーマット文字列を返します。
[SEE_ALSO] IRB::Context#prompt_c=, irb/プロンプトのカスタマイズ
prompt_c=(val)[permalink][rdoc]-
式が継続している時のプロンプトを表現するフォーマット文字列を val に設定します。
- [PARAM] val:
- フォーマットを文字列で指定します。指定できる内容については、 irb/プロンプトのカスタマイズ を参照してください。
IRB::Context#prompt_mode の変更に影響を受ける事に注意してください。
[SEE_ALSO] IRB::Context#prompt_mode, IRB::Context#prompt_mode=, IRB::Context#prompt_c, irb/プロンプトのカスタマイズ
prompt_i -> String[permalink][rdoc]-
通常のプロンプトを表現するフォーマット文字列を返します。
[SEE_ALSO] IRB::Context#prompt_i=,irb/プロンプトのカスタマイズ
prompt_i=(val)[permalink][rdoc]-
通常のプロンプトを表現するフォーマット文字列を val に設定します。
- [PARAM] val:
- フォーマットを文字列で指定します。指定できる内容については、 irb/プロンプトのカスタマイズ を参照してください。
IRB::Context#prompt_mode の変更に影響を受ける事に注意してください。
[SEE_ALSO] IRB::Context#prompt_mode, IRB::Context#prompt_mode=, IRB::Context#prompt_i, irb/プロンプトのカスタマイズ
prompt_mode -> Symbol[permalink][rdoc]-
現在のプロンプトモードを Symbol で返します。
オリジナルのプロンプトモードを定義していた場合はそのモードを返します。そうでない場合は、:DEFAULT、:CLASSIC、:SIMPLE、:INF_RUBY、:XMP、:NULL のいずれかを返します。
定義済みのプロンプトモードの内容については、IRB.conf[:PROMPT][mode] を参照してください。
[SEE_ALSO] IRB::Context#prompt_mode=, irb/プロンプトのカスタマイズ
prompt_mode=(mode)[permalink][rdoc]-
プロンプトモードを mode に設定します。
- [PARAM] mode:
- プロンプトモードを Symbol で指定します。オリジナルのプロンプトモードか、:DEFAULT、:CLASSIC、:SIMPLE、:INF_RUBY、 :XMP、:NULL のいずれを指定してください。
[SEE_ALSO] IRB::Context#prompt_mode, irb/プロンプトのカスタマイズ
prompt_n -> String[permalink][rdoc]-
継続行のプロンプトを表現するフォーマット文字列を返します。
[SEE_ALSO] IRB::Context#prompt_n=, irb/プロンプトのカスタマイズ
prompt_n=(val)[permalink][rdoc]-
継続行のプロンプトを表現するフォーマット文字列を val に設定します。
IRB::Context#prompt_mode の変更に影響を受ける事に注意してください。
[SEE_ALSO] IRB::Context#prompt_mode, IRB::Context#prompt_mode=, IRB::Context#prompt_n, irb/プロンプトのカスタマイズ
prompt_s -> String[permalink][rdoc]-
文字列中のプロンプトを表現するフォーマット文字列を返します。
[SEE_ALSO] IRB::Context#prompt_s=, irb/プロンプトのカスタマイズ
prompt_s=(val)[permalink][rdoc]-
文字列中のプロンプトを表現するフォーマット文字列を val に設定します。
- [PARAM] val:
- フォーマットを文字列で指定します。指定できる内容については、 irb/プロンプトのカスタマイズ を参照してください。
IRB::Context#prompt_mode の変更に影響を受ける事に注意してください。
[SEE_ALSO] IRB::Context#prompt_mode, IRB::Context#prompt_mode=, IRB::Context#prompt_s, irb/プロンプトのカスタマイズ
prompting? -> bool[permalink][rdoc]-
ライブラリ内部で使用します。
rc -> bool[permalink][rdoc]rc? -> bool-
~/.irbrc などの設定ファイルがあれば読み込みを行うかどうかを返します。
- [RETURN]
- 設定ファイルの読み込みを行う場合は true を返します。行わない場合(irb の起動時に -f オプションを指定した場合)は false を返します。
return_format -> String[permalink][rdoc]-
irb のプロンプトでの評価結果を表示する際のフォーマットを文字列で返します。
[SEE_ALSO] IRB::Context#return_format=, sprintf フォーマット
return_format=(val)[permalink][rdoc]-
irb のプロンプトでの評価結果を表示する際のフォーマットに val を設定します。
[SEE_ALSO] IRB::Context#return_format, sprintf フォーマット
IRB::Context#prompt_mode の変更に影響を受ける事に注意してください。
set_last_value(value) -> object[permalink][rdoc]-
ライブラリ内部で使用します。
thread -> Thread[permalink][rdoc]-
現在のスレッドを返します。
[SEE_ALSO] Thread.current
use_readline -> bool | nil[permalink][rdoc]use_readline? -> bool | nil-
readline を使うかどうかを返します。
- [RETURN]
- 戻り値よって以下のように動作します。
- true
-
readline ライブラリを使う
- false
-
readline ライブラリを使わない
- nil
-
inf-ruby-mode 以外で readline ライブラリを利用しようとする (デフォルト)
動作を変更するためには .irbrc ファイル中で IRB.conf[:USE_READLINE] の設定や irb 起動時に --readline オプション、--noreadline オプションの指定を行います。
verbose -> bool | nil[permalink][rdoc]-
標準出力に詳細なメッセージを出力するように設定されているかどうかを返します。
IRB::Context#verbose? とは別のメソッドである事に注意してください。
- [RETURN]
- 詳細なメッセージを出力するように設定されている場合は true を返します。そうでない場合は false か nil を返します。
[SEE_ALSO] IRB::Context#verbose?, IRB::Context#verbose=
verbose=(val)[permalink][rdoc]-
標準出力に詳細なメッセージを出力するかどうかを val に設定します。
.irbrc ファイル中で IRB.conf[:VERBOSE] を設定する事でも同様の操作が行えます。
false や nil を指定した場合でも、IRB::Context#verbose? が true を返す場合は詳細なメッセージを出力する事に注意してください。
- [PARAM] val:
- true を指定した場合、詳細なメッセージを出力します。false や nil を指定した場合、詳細なメッセージを出力しません。
[SEE_ALSO] IRB::Context#verbose, IRB::Context#verbose?
verbose? -> bool | nil[permalink][rdoc]-
標準出力に詳細なメッセージを出力するかどうかを返します。
- [RETURN]
- 詳細なメッセージを出力する場合は true を返します。そうでない場合は false か nil を返します。
設定を行っていた場合(IRB::Context#verbose が true か false を返す場合)は設定した通りに動作します。設定を行っていない場合は、ファイルを指定して irb を実行した場合などに true を返します。
[注意] 1.9.2 以下では nil 以外を IRB::Context#verbose= に指定すると常に nil を返す不具合がある事に注意してください。
[SEE_ALSO] IRB::Context#verbose, IRB::Context#verbose=
workspace -> IRB::WorkSpace[permalink][rdoc]-
ライブラリ内部で使用します。
workspace=(val)[permalink][rdoc]-
ライブラリ内部で使用します。
追加されるメソッド
eval_history -> Integer | nil[permalink][rdoc] [added by irb/ext/history]-
実行結果の履歴の最大保存件数を Integer か nil で返します。
- [RETURN]
- 履歴の最大保存件数を Integer か nil で返します。0 を返した場合は無制限に保存します。nil を返した場合は追加の保存は行いません。
[SEE_ALSO] IRB::Context#eval_history=
eval_history=(val)[permalink][rdoc] [added by irb/ext/history]-
実行結果の履歴の最大保存件数を val に設定します。
.irbrc ファイル中で IRB.conf[:EVAL_HISTORY] を設定する事でも同様の事が行えます。
- [PARAM] val:
- 実行結果の履歴の最大保存件数を Integer か nil で指定します。0 を指定した場合は無制限に履歴を保存します。現在の値よりも小さい値を指定した場合は履歴がその件数に縮小されます。 nil を指定した場合は履歴の追加がこれ以上行われなくなります。
[SEE_ALSO] IRB::Context#eval_history
history_file -> String | nil[permalink][rdoc] [added by irb/ext/save-history]-
履歴ファイルのパスを返します。
- [RETURN]
- 履歴ファイルのパスを String か nil で返します。nil を返した場合は、~/.irb_history に履歴が保存されます。
[SEE_ALSO] irb/履歴の保存
history_file=(hist)[permalink][rdoc] [added by irb/ext/save-history]-
履歴ファイルのパスを val に設定します。
.irbrc ファイル中で IRB.conf[:HISTORY_FILE] を設定する事でも同様の事が行えます。
- [PARAM] hist:
- 履歴ファイルのパスを文字列で指定します。
[SEE_ALSO] irb/履歴の保存
init_save_history -> ()[permalink][rdoc] [added by irb/ext/save-history]-
自身の持つ IRB::InputMethod オブジェクトが irb のヒストリを扱えるようにします。
[SEE_ALSO] IRB::HistorySavingAbility.extended
inspect? -> bool[permalink][rdoc] [added by irb/ext/math-mode]-
IRB::Context#inspect_mode が有効かどうかを返します。
ただし、IRB::Context#inspect_mode が未設定で math_mode が有効な場合には false を返します。
[SEE_ALSO] IRB::Context#math?
math_mode -> bool[permalink][rdoc] [added by irb/ext/math-mode]math? -> bool[added by irb/ext/math-mode]-
math_mode が有効かどうかを返します。
[SEE_ALSO] IRB::Context#math_mode=, IRB::Context#inspect?
math_mode=(opt)[permalink][rdoc] [added by irb/ext/math-mode]-
math_mode を有効にするかどうかを指定します。
.irbrc ファイル中で IRB.conf[:MATH_MODE] を設定する事でも同様の事が行えます。
mathn ライブラリを include するため、math_mode を有効にした後は無効にする事ができません。
- [PARAM] opt:
- math_mode を有効にする場合に true を指定します。
- [EXCEPTION] IRB::CantReturnToNormalMode:
- 既に math_mode の状態で opt に false を指定した場合に発生します。
[SEE_ALSO] IRB::Context#math_mode
save_history -> Integer | nil[permalink][rdoc] [added by irb/ext/save-history]-
履歴の最大保存件数を Integer か nil で返します。
- [RETURN]
- 履歴の最大保存件数を Integer か nil で返します。0 以下や nil を返した場合は追加の保存は行いません。
[SEE_ALSO] irb/履歴の保存
save_history=(val)[permalink][rdoc] [added by irb/ext/save-history]-
履歴の最大保存件数を val に設定します。
.irbrc ファイル中で IRB.conf[:SAVE_HISTORY] を設定する事でも同様の事が行えます。
- [PARAM] val:
- 履歴の最大保存件数を Integer で指定します。0 以下や nil を返した場合は追加の保存は行いません。現在の件数より小さい値を設定した場合は、最新の履歴から指定した件数分のみが保存されます。
[SEE_ALSO] irb/履歴の保存
use_loader -> bool[permalink][rdoc] [added by irb/ext/use-loader]use_loader? -> bool[added by irb/ext/use-loader]-
load または require 時に irb のファイル読み込み機能(irb_load、 irb_require)を使うかどうかを返します。
[SEE_ALSO] IRB::Context#use_loader=
use_loader=(opt)[permalink][rdoc] [added by irb/ext/use-loader]-
load または require 時に irb のファイル読み込み機能(irb_load、 irb_require)を使うかどうかを設定します。
.irbrc ファイル中で IRB.conf[:USE_LOADER] を設定する事でも同様の事が行えます。
デフォルト値は false です。
[SEE_ALSO] IRB::Context#use_loader?
use_tracer -> bool[permalink][rdoc] [added by irb/ext/tracer]use_tracer? -> bool[added by irb/ext/tracer]-
irb への入力を評価する時に tracer が有効かどうかを返します。
[SEE_ALSO] tracer, IRB::Context#use_tracer=
use_tracer=(val)[permalink][rdoc] [added by irb/ext/tracer]-
irb への入力を評価する時に tracer が有効にするかどうかを val で指定します。
.irbrc ファイル中で IRB.conf[:USE_TRACER] を設定する事でも同様の事が行えます。
- [PARAM] val:
- tracer を有効にする場合に true を指定します。
[SEE_ALSO] tracer, IRB::Context#use_tracer
定数
IDNAME_IVARS -> [String][permalink][rdoc]-
ライブラリ内部で使用します。
NOPRINTING_IVARS -> [String][permalink][rdoc]-
ライブラリ内部で使用します。
NO_INSPECTING_IVARS -> [String][permalink][rdoc]-
ライブラリ内部で使用します。