小编Max*_*Max的帖子

Ruby精炼和钩子

我正在尝试使用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)但似乎无法正确使用语法.

欢迎任何帮助.

谢谢.

ruby ruby-on-rails refinements

7
推荐指数
1
解决办法
160
查看次数

Vim窗口重复调整大小

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配置,以便有人可以使用它来了解我的意思。

vim split resize pane

4
推荐指数
2
解决办法
705
查看次数

标签 统计

pane ×1

refinements ×1

resize ×1

ruby ×1

ruby-on-rails ×1

split ×1

vim ×1