我正在尝试使用ruby refinements来应用rails hooks.
我想避免猴子补丁.当猴子修补它会这样工作
ActiveRecord::Base.class_eval do
after_find do
# do something with
my_method
end
def my_method
# something useful
end
end
Run Code Online (Sandbox Code Playgroud)
通过这样的方式,我已经能够拥有类方法:
module ActiveRecordRefinements
refine ActiveRecord::Base.singleton_class do
def my_method
#something cool
end
end
end
Run Code Online (Sandbox Code Playgroud)
但我无法逃脱.我尝试过使用self.used(klass)但似乎无法正确使用语法.
欢迎任何帮助.
谢谢.
我tmux非常喜欢其中的键绑定来管理拆分窗格:
bind -r H resize-pane -L 5
bind -r J resize-pane -D 5
bind -r K resize-pane -U 5
bind -r L resize-pane -R 5
Run Code Online (Sandbox Code Playgroud)
这使我可以连续打L多个L。它还可以让我说出要增加的边框(左,右等)。
我想在vim中有同样的事情,但是,vim似乎没有border的上下文:
"attempt 1
nnoremap <leader>L :vertical resize +5<cr><leader>
"attempt 2
nnoremap <leader>L :vertical resize +5<cr>
Run Code Online (Sandbox Code Playgroud)
但是,这仅在最左边的窗格中起作用时才起作用(如在右边的窗格中一样),我希望将其大小减小5。而且,这不允许我重复进行此操作。(我想按一次键,然后按我需要的次数按“ L”键。
我想知道是否有人找到了一种方法来做到这一点。
注意:我放置了tmux配置,以便有人可以使用它来了解我的意思。