【问题标题】:How make `reverse-i-search` history use fzf in irb or pry console如何在 irb 或 pry 控制台中使用 fzf 使“reverse-i-search”历史记录
【发布时间】:2017-09-12 03:14:15
【问题描述】:

我环顾四周,无论如何都找不到使用fzf 在irb 或pry 控制台中搜索历史。有什么办法吗?

【问题讨论】:

    标签: irb pry fzf


    【解决方案1】:

    看了一圈,发现命令完成与GNU Readline相关联,然后发现Readline的纯ruby实现,其实 让 fzf 与RbReadline 一起工作很容易,我要做的是覆盖RbReadline 的类方法rl_reverse_search_history,当我们点击 Ctrl + 时会触发它R 在 pry 控制台中。

    我所做的总结:

    1. 安装 rb-readline

       gem install rb-readline
      
    2. 修改你的.pryrc添加这个

       require 'rb-readline'
      
       def RbReadline.rl_reverse_search_history(sign, key)
         rl_insert_text  `cat ~/.pry_history | fzf --tac |  tr '\n' ' '`
       end
      

    rl_insert_text 将您从 fzf 中选择的结果插入到光标后的终端中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-05
      • 1970-01-01
      • 1970-01-01
      • 2020-11-10
      • 1970-01-01
      相关资源
      最近更新 更多