IRB(1) 1 (ruby programmer's reference guide) IRB(1)

irb — پوسته تعاملی Ruby

irb [--version] [-dfUw] [-I directory] [-r library] [-E external[:internal]] [-W[level]] [--[no]inspect] [--[no]multiline] [--[no]singleline] [--[no]echo] [--[no]colorize] [--[no]autocomplete] [--[no]verbose] [--prompt mode] [--prompt-mode mode] [--inf-ruby-mode] [--simple-prompt] [--noprompt] [--tracer] [--back-trace-limit n] [--] [program_file] [argument ...]

irb یک محیط REPL (حلقه خواندن-ارزیابی-چاپ یا read-eval-print loop) برای برنامه‌های Ruby است.

نسخه irb را چاپ می‌کند.
external[:internal]
 
external[:internal]
مشابه `ruby -E` عمل می‌کند. مقدار(های) پیش‌فرض را برای کدگذاری‌های خارجی و کدگذاری داخلی مشخص می‌کند. مقادیر باید با دو‌نقطه (:) از هم جدا شوند.

می‌توانید مقدار مربوط به کدگذاری‌های داخلی را حذف کنید؛ در این صورت، مقدار (Encoding.default_internal) برابر nil خواهد بود.

path
مشابه `ruby -I` عمل می‌کند. دایرکتوری $LOAD_PATH را مشخص می‌کند.
مشابه `ruby -U` عمل می‌کند. مقدار پیش‌فرض را برای کدگذاری‌های داخلی (Encoding.default_internal) روی UTF-8 تنظیم می‌کند.
مشابه `ruby -d` عمل می‌کند. متغیر $DEBUG را برابر با true قرار می‌دهد.
از خواندن فایل ~/.irbrc جلوگیری می‌کند.
مشابه `ruby -w` عمل می‌کند.
مشابه `ruby -W` عمل می‌کند.
 
خلاصه‌ای از گزینه‌ها را چاپ می‌کند.
library
مشابه `ruby -r` عمل می‌کند. باعث می‌شود irb کتابخانه را با استفاده از require بارگذاری کند.
از `inspect` برای خروجی استفاده می‌کند (پیش‌فرض، به جز در حالت bc).
از inspect برای خروجی استفاده نمی‌کند.
از ماژول ویرایشگر چندخطی (multiline) استفاده می‌کند.
از ماژول ویرایشگر چندخطی استفاده نمی‌کند.
از ماژول ویرایشگر تک‌خطی (singleline) استفاده می‌کند.
از ماژول ویرایشگر تک‌خطی استفاده نمی‌کند.
افزودن یک دایرکتوری مستندات اضافی برای کادر گفتگوی مستندات.
نمایش نتیجه (پیش‌فرض).
عدم نمایش نتیجه.
نمایش نتیجه هنگام انتساب.
عدم نمایش نتیجه هنگام انتساب.
نمایش نتیجه کوتاه‌شده هنگام انتساب (پیش‌فرض).
استفاده از رنگ‌آمیزی.
عدم استفاده از رنگ‌آمیزی.
استفاده از تکمیل خودکار (autocompletion).
عدم استفاده از تکمیل خودکار.
استفاده از تکمیل مبتنی بر regexp.
استفاده از تکمیل مبتنی بر type.
نمایش جزئیات.
عدم نمایش جزئیات.
mode
 
mode
تغییر حالت اعلان (prompt). حالت‌های اعلان از پیش تعریف‌شده عبارتند از `default`، `simple`، `xmp` و `inf-ruby`.
از اعلان مناسب برای inf-ruby-mode در emacs استفاده می‌کند. گزینه‌های --multiline و --singleline را غیرفعال می‌کند.
اعلان‌ها را ساده می‌کند.
حالت بدون اعلان.
ردیابی (trace) را برای هر اجرای دستورات نمایش می‌دهد.
n
تعداد n مورد ابتدایی و n مورد انتهایی از ردگیری پشته (backtrace) را نمایش می‌دهد. مقدار پیش‌فرض 16 است.

لوکال (locale) مورد استفاده برای irb.
مسیر فایل راه‌اندازی اولیه شخصی.
دستور irb از XDG_CONFIG_HOME پیروی می‌کند. اگر این متغیر تنظیم شده باشد و IRBRC تنظیم نشده باشد، فایل $XDG_CONFIG_HOME/irb/irbrc به عنوان فایل راه‌اندازی اولیه شخصی بارگذاری می‌شود.
دستور مشخص‌شده به عنوان صفحه‌بند (pager) استفاده خواهد شد.
اگر RI_PAGER تنظیم نشده باشد، دستور مشخص‌شده به عنوان صفحه‌بند استفاده خواهد شد.
مقدار آن برای باز کردن فایل‌ها توسط دستور edit استفاده خواهد شد.
اگر VISUAL تنظیم نشده باشد، مقدار آن برای باز کردن فایل‌ها توسط دستور edit استفاده خواهد شد.
اختصاص هر مقداری به آن، رنگ‌آمیزی را غیرفعال می‌کند.
اختصاص مقدار به آن، تکمیل خودکار را غیرفعال می‌کند.
رفتار تکمیل خودکار. مقادیر مجاز عبارتند از یا
برنامه پیش‌فرض مورد استفاده برای تعامل با حافظه موقت (clipboard) سیستم را لغو و بازنویسی می‌کند.

همچنین irb به همان متغیرهای ruby(1) وابسته است.

~/.irbrc
فایل راه‌اندازی اولیه شخصی irb. اگر IRBRC تنظیم شده باشد، به جای آن $IRBRC خوانده می‌شود. اگر IRBRC تنظیم نشده باشد و XDG_CONFIG_HOME تنظیم شده باشد، $XDG_CONFIG_HOME/irb/irbrc بارگذاری می‌شود.

% irb
irb(main):001:0> 1 + 1
2
irb(main):002:0> def t(x)
irb(main):003:1> x + 1
irb(main):004:1> end
=> :t
irb(main):005:0> t(3)
=> 4
irb(main):006:0> if t(3) == 4
irb(main):007:1> p :ok
irb(main):008:1> end
:ok
=> :ok
irb(main):009:0> quit
%

ruby(1).

  • آسیب‌پذیری‌های امنیتی باید از طریق ایمیل به security@ruby-lang.org گزارش شوند. مشکلات گزارش‌شده پس از برطرف شدن منتشر خواهند شد.
  • سایر باگ‌ها و درخواست‌های قابلیت‌های جدید را می‌توان از طریق سامانه رهگیری مشکلات روبی (https://bugs.ruby-lang.org). گزارش کرد. آسیب‌پذیری‌های امنیتی را از طریق این سامانه گزارش نکنید، زیرا این سامانه آسیب‌پذیری‌ها را بلافاصله منتشر می‌کند.

نوشته‌شده توسط Keiju ISHITSUKA.

August 11, 2019 UNIX