2012-08-10 17 views
18

我在閱讀SICP,我正在使用mit-scheme通過homebrew安裝在我的操作系統x 10.8筆記本電腦上。mit-scheme REPL帶有命令行歷史記錄和製表符完成

一切都像宣傳的那樣,但是我被輕而易舉地,我得到標籤完成和命令行歷史REPL的像Python和Node.js的運行時間寵壞

我不是在尋找任何重型任務,但這些功能在現代REPL中很容易實現(Python中只有a simple startup file,可以在a few lines in Node.js中實現)。

有一種簡單的方式來獲得在MIT-方案REPL tab完成和命令歷史,而不重型應用或不必切換到emacs的(即在xterm終端)?

回答

40

安裝readline wrapper

brew install rlwrap

一旦安裝,rlwrap scheme會給你持久的歷史,括號匹配和標籤完成。我通常使用rlwrap使用以下參數:

-r將看到輸入和輸出的完成列表上的所有單詞。

-c完整的文件名

-f指定的話使用標籤完成的列表。我使用的是從MIT Scheme Reference Manual綁定的縮略列表。 而不是在這裏重新發佈列表,你可以在this gist找到它。 我有存儲在 「$ HOME」 這個文件/scheme_completion.txt

rlwrap -r -c -f "$HOME"/scheme_completion.txt scheme

1 ]=> (flo:a <tab tab> 
flo:abs flo:acos flo:asin flo:atan flo:atan2 
1 ]=> (flo:abs -42.0) 

;Value: 42. 
+0

喜歡這個。這對其他程序也很有用。 – 2014-11-22 20:07:07

相關問題