[英]Clojure : 'lein repl' history grepping?
我經常發現自己在bash上執行這樣的命令:
歷史| grep'find'
例如,為了查找我可能已經運行過的奇特的find / xargs命令。
我想知道---“lein repl”在哪里存儲其歷史數據? 很高興知道,因為那時我可以編寫一個leingrep.sh腳本,它只是通過lein歷史會話進行了深入研究。
很明顯,這是在磁盤上的某個地方,因為歷史記錄從一個repl保留到下一個repl。
Lein正在使用readline(如果已安裝)或jline(如果你很不幸,我建議安裝readline)。 我不打算嘗試在磁盤上查找歷史文件 - 只需按Ctrl-r,輸入搜索文本,然后按住Ctrl-r直到找到您要查找的內容。 這是一個通用的readline功能,可以在任何readline應用程序(包括bash)中使用。
一旦你開始使用readline,你可以通過~/.inputrc
文件考慮幾個控件。
我沒有找到默認的“歷史大小” 記錄 ,但我猜它只有~100。 我經常會丟失一些我希望自己有的舊條目。 此外,“vi-mode”對於vi用戶來說也是一件好事。 在.inputrc
這些(帶獎金)一起變成:
set history-size 10000
set editing-mode vi
# Only require 1 tab for completion.
set show-all-if-ambiguous on
請注意,此配置將影響許多repl工具,如gdb,irb / pry,lein,psql,ipython,R,...
看着我的主文件夾。 好像lein repl選擇了jline。 存儲歷史的文件如下:〜/ .jline-clojure.main.history~ / .jline-reply.history
希望這可以幫助。
我在Mac上通過Homebrew安裝了lein
:
brew install leiningen
並且歷史文件存儲在我的主目錄中:
~/.lein/repl-history
版本是:
% lein --version
Leiningen 2.6.1 on Java 1.8.0_77 Java HotSpot(TM) 64-Bit Server VM
(我沒有~/.inputrc
也沒有~/.jline*
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.