يضيف تصحيح الأخطاء خطوة بخطوة ومكدس التكلفة إلى PRY باستخدام وداعا.
للاستخدام ، استدعاء pry بشكل طبيعي. لا حاجة لبدء البرنامج النصي أو التطبيق بشكل مختلف. سيتوقف التنفيذ في البيان الأول بعد binding.pry
.
def some_method
puts 'Hello World' # Run 'step' in the console to move here
end
binding . pry
some_method # Execution will stop here.
puts 'Goodbye World' # Run 'next' in the console to move here.
التصوير بالرنين المغناطيسي 2.4.0 أو أعلى.
يضيف
gem 'pry-byebug'
إلى gemfile الخاص بك وركض
bundle install
تأكد من تضمين الجوهرة على مستوى العالم أو داخل مجموعة :test
إذا كنت تخطط لاستخدامها لتصحيح الاختبارات الخاصة بك!
استراحة: إدارة نقاط التوقف.
الخطوة: خطوة التنفيذ في السطر أو الطريقة التالية. يأخذ وسيطة رقمية اختيارية للخطوة عدة مرات.
التالي: انتقل إلى السطر التالي داخل نفس الإطار. يأخذ أيضا وسيطة رقمية اختيارية لخطوط متعددة.
إنهاء: تنفيذ حتى يعود إطار المكدس الحالي.
متابعة: متابعة تنفيذ البرنامج وإنهاء جلسة PRY.
Backtrace: يظهر المكدس الحالي. يمكنك استخدام الأرقام الموجودة على الجانب الأيسر مع أمر frame
للتنقل في المكدس.
UP: تحرك إطار المكدس لأعلى. يأخذ وسيطة رقمية اختيارية لنقل إطارات متعددة.
لأسفل: يحرك إطار المكدس لأسفل. يأخذ وسيطة رقمية اختيارية لنقل إطارات متعددة.
الإطار: ينتقل إلى إطار معين. تسمى بدون حجج سوف تظهر الإطار الحالي.
إذا كنت قادمًا من وداعًا أو من إصدارات pry-byebug قبل 3.0 ، فقد تكون تفتقر إلى "N" و "S" و "C" و "F" للأمهات للأوامر. تمت إزالة هذه الأسماء المستعارة افتراضيًا لأنها عادة ما تتعارض مع أسماء متغيرات الخدش. لكن من السهل جدًا إعادة تمكينهم إذا كنت لا تزال تريدهم ، فقط أضف الاختصارات التالية إلى ملف ~/.pryrc
الخاص بك:
if defined? ( PryByebug )
Pry . commands . alias_command 'c' , 'continue'
Pry . commands . alias_command 's' , 'step'
Pry . commands . alias_command 'n' , 'next'
Pry . commands . alias_command 'f' , 'finish'
end
أيضًا ، قد تجد مفيدًا وكذلك تكرار الأمر الأخير من خلال ضرب مفتاح Enter
(على سبيل المثال ، مع step
أو next
). لتحقيق ذلك ، أضف هذا إلى ملف ~/.pryrc
الخاص بك:
# Hit Enter to repeat last command
Pry :: Commands . command /^$/ , "repeat last command" do
pry_instance . run_command Pry . history . to_a . last
end
يمكنك ضبط ونقاط التوقف مباشرة من جلسة PRY باستخدام أمر break
:
استراحة: اضبط نقطة توقف جديدة من رقم سطر في الملف الحالي أو ملف ورقم السطر أو طريقة. تمرير تعبير اختياري لإنشاء نقطة توقف مشروطة. تحرير نقاط التوقف الحالية عبر أعلام مختلفة.
أمثلة:
break SomeClass #run # Break at the start of `SomeClass#run`.
break Foo #bar if baz? # Break at `Foo#bar` only if `baz?`.
break app / models / user . rb : 15 # Break at line 15 in user.rb.
break 14 # Break at line 14 in the current file.
break -- condition 4 x > 2 # Change condition on breakpoint #4 to 'x > 2'.
break -- condition 3 # Remove the condition on breakpoint #3.
break -- delete 5 # Delete breakpoint #5.
break -- disable - all # Disable all breakpoints.
break # List all breakpoints.
break -- show 2 # Show details about breakpoint #2.
اكتب break --help
من جلسة pry لمعرفة جميع الخيارات المتاحة.
لاحظ أن جميع البدائل هنا لا تتوافق مع pry-byebug. إذا تم دعم النظام الأساسي الخاص بك بواسطة pry-byebug ، فيجب عليك إزالة أي من الأحجار الكريمة المذكورة هنا إذا كانت موجودة في Gemfile.
Pry-Debugger: يوفر تصحيح أخطاء خطوة بخطوة للتصوير بالرنين المغناطيسي 1.9.3 أو أقدم الياقوت. إذا كنت لا تزال تستخدمها وتحتاج إلى مصحح تصحيح خطوة بخطوة للمساعدة في الترقية ، فقد يكون Pry-Debugger مفيدًا.
pry-stack_explorer: يوفر إمكانيات الملاحة المكدس للتصوير بالرنين المغناطيسي 1.9.3 أو أقدم الياقوت. إذا كنت لا تزال تستخدمها وتحتاج إلى التنقل في مكدتك للمساعدة في الترقية ، فيمكن أن يكون Pry-Stack_Explorer مفيدًا.
PRY-NAV: يوفر تصحيح أخطاء خطوة بخطوة لـ JRUBY.
شاهد البدء في التنمية.
اشترك في TideLift لضمان الحفاظ على حدود pry-byebug بنشاط ، وفي الوقت نفسه ، احصل على تأكيدات الترخيص وإشعارات الأمان في الوقت المناسب لتبعياتك مفتوحة المصدر.
يمكنك أيضًا مساعدة pry-byebug
من خلال ترك معلومات صغيرة (أو كبيرة) من خلال Liberapay.
يرجى استخدام جهة اتصال أمان Tidelift للإبلاغ عن ثغرة أمنية. سوف Tidelift تنسيق الإصلاح والكشف.
بقع وتقارير الأخطاء موضع ترحيب.