این دستور jirb است که می تواند در ارائه دهنده میزبانی رایگان OnWorks با استفاده از یکی از چندین ایستگاه کاری آنلاین رایگان ما مانند Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا شود.
برنامه:
نام
jirb1.3 - JRuby تعاملی
خلاصه
جرب [گزینه های]
شرح
irb مخفف JRuby تعاملی است. irb ابزاری برای اجرای تعاملی JRuby است
عبارات خوانده شده از stdin. اگر JRuby را بشناسید، استفاده از jirb آسان است. اجرای جرب،
درخواست ها به صورت زیر نمایش داده می شوند. سپس عبارت یاقوت را وارد کنید. یک ورودی زمانی اجرا می شود که
از نظر نحوی کامل شده است.
جیرب 1.3 دلار
irb(اصلی):001:0> 1+2
3
irb(main):002:0> class Foo
irb(main):003:1> def foo
irb(main):004:2> print 1
irb(main):005:2> پایان
irb(main):006:1> پایان
صفر
irb(اصلی):007:0>
و، ماژول توسعه Readline را می توان با irb استفاده کرد. استفاده از Readline پیش فرض استاندارد است
اگر Readline نصب شده باشد اقدام کنید.
OPTIONS
-f سرکوب خواندن ~/.irbrc
-m حالت bc (کسری یا ماتریس موجود است)
-d $DEBUG را روی true تنظیم کنید (همانند "ruby -d")
-r ماژول بار
همانند «یقوت سرخ»
-- بازرسی
از «بازرسی» برای خروجی استفاده می کند (به طور پیش فرض به جز حالت bc)
-- بدون بازرسی
از بازرسی برای خروجی استفاده نمی کند
- خط خواندن
از ماژول افزونه Readline استفاده می کند
-- noreadline
از ماژول افزونه Readline استفاده نمی کند
--سریع حالت سریع
- حالت سریع حالت سریع
حالت سریع را تغییر می دهد حالت های اعلان از پیش تعریف شده عبارتند از «پیش فرض»، «ساده»، «xmp» و
"اینف-یاقوت"
- حالت inf-ruby
برای حالت inf-ruby-mode در emacs از قدردانی سریع استفاده می کند. سرکوب -- readline.
--ساده-سریع
حالت سریع ساده
-- بدون درخواست
بدون اعلان
-- ردیاب
نمایش ردیابی برای هر اجرای دستورات.
--back-trace-limit n
n بالا و دنباله n را نمایش می دهد. مقدار پیش فرض 16 است.
--irb_debug n
سطح اشکال زدایی داخلی را روی n تنظیم می کند (نباید استفاده شود)
-v، - نسخه
نسخه irb را چاپ می کند
پیکربندی
جرب می خواند~/.irbrcوقتی استناد شود. اگر `~/.irbrb'وجود ندارد جیرب سعی کنید در آن بخوانید
ترتیب «.irbrc»، «irb.rc»، «_irbrc» سپس «$irbrc». موارد زیر جایگزین
گزینه خط فرمان برای استفاده از آنها به صورت زیر در جلسه jirb تایپ کنید.
IRB.conf[:IRB_NAME]="irb"
IRB.conf[:MATH_MODE]=false
IRB.conf[:USE_TRACER]=false
IRB.conf[:USE_LOADER]=false
IRB.conf[:IGNORE_SIGINT]=true
IRB.conf[:IGNORE_EOF]=false
IRB.conf[:INSPECT_MODE]= صفر
IRB.conf[:IRB_RC] = صفر
IRB.conf[:BACK_TRACE_LIMIT]=16
IRB.conf[:USE_LOADER] = نادرست
IRB.conf[:USE_READLINE] = صفر
IRB.conf[:USE_TRACER] = نادرست
IRB.conf[:IGNORE_SIGINT] = درست است
IRB.conf[:IGNORE_EOF] = نادرست
IRB.conf[:PROMPT_MODE] = :DEFALUT
IRB.conf[:PROMPT] = {...}
IRB.conf[:DEBUG_LEVEL]=0
IRB.conf[:VERBOSE]=true
سفارشیسازی سریع
برای مقرون به صرفه کردن اعلان، یک متغیر تنظیم می کنید
IRB.conf[:PROMPT]
به عنوان مثال، به صورت زیر در «irbrc.» توضیح دهید.
IRB.conf[:PROMPT][:MY_PROMPT] = { # نام حالت درخواست
:PROMPT_I => صفر، # درخواست عادی
:PROMPT_S => nil، # اعلان برای ادامه رشته ها
:PROMPT_C => nil، # دستور برای ادامه دستور
:RETURN => " ==>%s\n" # قالب برای بازگشت مقدار
}
سپس، irb را با حالت اعلان بالا توسط فراخوانی کنید
$ jirb1.3 --prompt my-prompt
یا موارد زیر را در «irbrc.» اضافه کنید.
IRB.conf[:PROMPT_MODE] = :MY_PROMPT
ثابت PROMPT_I، PROMPT_S و PROMPT_C فرمت را مشخص می کند. در اعلان
مشخصات، تعدادی رشته خاص در دسترس هستند.
نام فرمان %N که در حال اجراست
%m به_s شی اصلی (خود)
%M بازرسی شی اصلی (خود)
%l نوع رشته("، "/، ])، "]" درونی %w است[...]
سطح تورفتگی %NNi. NN رقم است و به معنای همان printf ("%NNd") است.
می توان آن را حذف کرد
%NNn شماره خط.
%% %
به عنوان مثال، حالت اعلان پیش فرض به صورت زیر تعریف می شود:
IRB.conf[:PROMPT_MODE][:DEFAULT] = {
PROMPT_I => "%N(%m):%03n:%i> ",
PROMPT_S => "%N(%m):%03n:%i%l ",
PROMPT_C => "%N(%m):%03n:%i* ",
برگشت => "%s\n"}
RETURN برای printf استفاده می شود.
در حال پیکربندی حومه
گزینه خط فرمان یا IRB.conf رفتار پیش فرض (sub)irb را مشخص می کند. از سوی دیگر
دست، هر conf از در بخش بعدی '6. Command' برای پیکربندی جداگانه استفاده می شود
(فرع)irb. اگر proc روی IRB.conf[:IRB_RC] تنظیم شود، subirb آن پس از اجرا فراخوانی می شود.
از آن proc تحت ارائه متن irb به عنوان استدلال آن. با این مکانیسم هر کدام
subirb را می توان پیکربندی کرد.
فرمان
برای دستورات irb، هم نام ساده و هم نام با پیشوند «irb_» آماده شده است.
خروج ، ترک کردن، irb_exit
از (sub)irb خارج می شود. اگر cb را انجام داده اید (به زیر مراجعه کنید)، از حالت binding خارج شوید.
conf، irb_context
پیکربندی فعلی را نمایش می دهد. تغییر پیکربندی با ارسال به دست می آید
پیام به 'conf'.
conf.back_trace_limit
خطوط نمایش پستریس را بهعنوان n بالا و n دنباله تنظیم میکند. مقدار پیش فرض 16 است.
conf.debug_level = N
سطح اشکال زدایی irb را تنظیم می کند.
conf.ignore_eof = درست غلط
آیا ^D (control-d) نادیده گرفته می شود یا خیر. اگر false تنظیم شود، ^D به معنای خروج است.
conf.ignore_signt= درست غلط
اینکه ^C (control-c) نادیده گرفته می شود یا خیر. اگر false تنظیم شود، ^D به معنای خروج است. اگر
درست است
در حین ورودی: ورود را لغو کنید سپس به سطح بالا بازگردید.
در حین اجرا: از اجرای فعلی صرف نظر کنید.
conf.inf_ruby_mode = درست غلط
چه inf-ruby-mode یا نه. مقدار پیش فرض غلط است.
conf.inspect_mode = درست / نادرست / صفر
حالت بازرسی را مشخص می کند. true: display inspect false: display to_s nil: inspect
حالت در حالت غیر ریاضی،
حالت بدون بازرسی در حالت ریاضی.
conf.irb_level
سطح cb.
conf.math_mode
چه حالت bc یا نه.
conf.use_loader = درست غلط
اینکه آیا روش فایل خوان خود irb هنگام بارگذاری/نیاز استفاده می شود یا خیر. این حالت
در سطح جهانی تحت تأثیر قرار گرفته است (IRB در سراسر).
conf.prompt_c
درخواست یک عبارت ادامه دار (مثلاً بلافاصله بعد از «اگر»)
conf.prompt_i
اعلان استاندارد
conf.prompt_s
درخواست یک رشته ادامه دار
conf.rc
چه ~/.irbrc خوانده می شود یا نه
conf.use_prompt = درست غلط
تحریک کردن یا نه.
conf.use_readline = درست / نادرست / صفر
از Readline استفاده می شود یا خیر. true: از false استفاده می کند: از nil استفاده نکنید: قصد استفاده دارد
Readline به جز حالت inf-reuby (پیشفرض)
conf.verbose=T/F
این که آیا پیام های پرمخاطب نمایش داده می شوند یا نه.
cb، irb_change_binding [obj]
صحافی جدیدی را وارد کنید که دارای محدوده مشخصی از متغیرهای محلی است. اگر obj داده شود،
obj خود خواهد بود.
irb [obj]
فراخوانی subirb. اگر obj داده شود، obj خود خواهد بود.
شغل ها، irb_jobs
فهرست سابیرب
fg n, irb_fg n
به زیرمجموعه مشخص شده بروید. موارد زیر کاندیدای n هستند:
شماره irb
موضوع
شی irb
خود (obj که از irb obj مشخص شده است)
کشتن n, irb_kill n
سابیرب را بکش میانگین n مانند مورد irb_fg است.
سیستم متغیر
_ آخرین ارزش ارزیابی (محلی است)
جلسه مثال
جیرب 1.3 دلار
irb(main):001:0> irb # فراخوانی subirb
irb#1(main):001:0> jobs # list of subirbs
#0->irb در اصلی (# : متوقف کردن)
#1->irb#1 در اصلی (# : دویدن)
صفر
irb#1(main):002:0> fg 0 # switch job
صفر
irb(main):002:0> class Foo;end
صفر
irb(main):003:0> irb Foo # فراخوانی subirb که دارای
# زمینه Foo
irb#2(Foo):001:0> def foo # define Foo#foo
irb#2(Foo):002:1> print 1
irb#2(Foo):003:1> پایان
صفر
irb#2(Foo):004:0> fg 0 # تعویض کار
صفر
irb(main):004:0> jobs # list of job
#0->irb در اصلی (# : دویدن)
#1->irb#1 در اصلی (# : متوقف کردن)
#2->irb#2 در Foo (# : متوقف کردن)
صفر
irb(main):005:0> Foo.instance_methods # Foo#foo مطمئناً تعریف شده است
["فو"]
irb(main):006:0> fg 2 # switch job
صفر
irb#2(Foo):005:0> def bar # define Foo#bar
irb#2(Foo):006:1> print "bar"
irb#2(Foo):007:1> پایان
صفر
irb#2(Foo):010:0> Foo.instance_methods
["بار"، "فو"]
irb#2(Foo):011:0> fg 0
صفر
irb(اصلی):007:0> f = Foo.new
#
irb(main):008:0> irb f # فراخوانی subirb که دارای
# زمینه f (نمونه Foo)
irb#3(#<Foo:0x4010af3c>):001:0> jobs
#0->irb در اصلی (# : متوقف کردن)
#1->irb#1 در اصلی (# : متوقف کردن)
#2->irb#2 در Foo (# : متوقف کردن)
#3->irb#3 در # (# : دویدن)
صفر
irb#3(# ):0:4010> foo # f.foo را ارزیابی کنید
1 صفر
irb#3(# ):0:4010> نوار # ارزیابی f.bar
بارنیل
irb#3(# ):0:4010> kill 3, 004, 0# kill job
صفر
irb(main):009:0> مشاغل
#0->irb در اصلی (# : دویدن)
صفر
irb(main):010:0> خروج # خروج
محدودیت
از آنجا که irb ورودی ها را بلافاصله پس از تکمیل نحوی ورودی ارزیابی می کند.
irb نتیجه کمی متفاوت با استفاده مستقیم از یاقوت می دهد. به تفاوت شناخته شده اشاره شده است
اینجا.
اعلامیه of la محلی متغیر
موارد زیر باعث ایجاد خطا در روبی می شود:
eval "foo = 0"
فو
--
-:2: متغیر محلی تعریف نشده یا روش "foo" برای # (NameError)
---
NameError
اگرچه، موارد فوق با موفقیت توسط irb انجام می شود.
>> eval "foo = 0"
=> 0
>> فو
=> 0
روبی یک کد را پس از خواندن کل کد و تعیین محدوده محلی ارزیابی می کند
متغیرها از طرفی irb فورا انجام دهید. به طور دقیق تر، ابتدا irb ارزیابی کنید
evel "foo = 0"
سپس foo در این زمان بندی تعریف می شود. به خاطر همین ناسازگاری است. اگر شما می خواهید
برای تشخیص این تفاوت ها، می توان از start...end استفاده کرد:
>> آغاز شود
?> eval "foo = 0"
>> فو
>> پایان
NameError: متغیر محلی تعریف نشده یا روش "foo" برای #
(irb): 3
(irb_local_binding):1:in 'eval'
اینجا-سند
اجرای Here-document ناقص است.
آیکون
Irb همیشه نمی تواند یک نماد را به عنوان نماد تشخیص دهد. به طور مشخص، یک عبارت دارند
تکمیل شده است، با این حال Irb آن را به عنوان ادامه خط.
آوریل 2007 JIRB1.3(1)
با استفاده از خدمات onworks.net از jirb به صورت آنلاین استفاده کنید
