簡體   English   中英

Clojure:'lein repl'歷史上的問候?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM