2014-04-22 29 views
1

遇到binding.pry時,有沒有辦法自動執行代碼?Pry觸發時是否有辦法自動執行代碼?

例如,如果我想執行puts "Hey, I'm debugging!"每次調用binding.pry

+0

我不認爲有類似的東西內置到撬。你爲什麼想這樣做? – phoet

+0

邁克H-R回答了它。當調試器被觸發時,我想用它來觸發對記錄功能的更改,以便應用程序可以在不需要CLI標誌的情況下進行上下文切換。 – bob

回答

2

我覺得看看代碼並找到可能有用的東西,你必須將它添加到gemfile中,或者你可以將它添加到你的.pryrc(我不知道這是否得到或從binding.pry調用)。從GitHub似乎有:

# @example Adding a hook for the `:before_session` event. 
Pry.config.hooks.add_hook(:before_session, :say_hi) do 
    puts "hello" 
end 

the pry github hooks file

編輯:這裏是註冊掛鉤並執行一個例子(即初始化你的應用程序)from another part of the pry github hooks file:**

my_hook = Pry::Hooks.new.add_hook(:before_session, :say_hi) { puts "hi!" } 
my_hook.exec_hook(:before_session) #=> OUTPUT: "hi!" 
+0

太棒了,thx。這正是我想要的。 – bob

+0

順便說一句,它可以直接在您的應用程序init文件中,而不是在'.pryrc'中。真的有用! – bob

相關問題