![](/img/trans.png)
[英]Setting up emacs/slime/swank for clojure with leiningen
[英]when setting up “Slime” in “emacs”(latest version) how do i tell it to load swank faster?
粘液手冊說:“更快地加載Swank對於SBCL,我們建議您創建一個包含套接字支持和POSIX綁定的自定義核心文件,因為這些模塊花費了最多的時間。要創建這樣的核心,請執行以下步驟:
shell$ sbcl
*(mapc ’require ’(sb-bsd-sockets sb-posix sb-introspect sb-cltl2 asdf))
*(save-lisp-and-die "sbcl.core-for-slime")
之后,在您的'.emacs'中添加以下內容:
(setq slime-lisp-implementations
’((sbcl ("sbcl" "--core" "sbcl.core-for-slime"))))"
我知道如何向.emacs文件中添加內容,但是對於下面的部分,我到底該怎么做?確切地說,以及如何執行以下步驟....我在哪里鍵入它。 “執行以下步驟:
shell$ sbcl
* (mapc ’require ’(sb-bsd-sockets sb-posix sb-introspect sb-cltl2 asdf))
* (save-lisp-and-die "sbcl.core-for-slime")"
請具體...我是菜鳥
我知道如何向.emacs文件中添加內容,但是對於下面的部分,我到底該怎么做?確切地說,以及如何執行以下步驟....我在哪里鍵入它。 “執行以下步驟:
您可以在Shell中啟動Lisp實現,然后輸入其REPL。 盡管Slime是Emacs的Common Lisp(以及更多種語言)環境,但實際的CL實現不包括在Emacs中,也不是Emacs的一部分。 (Emacs本身使用了某種相似但不同的方言Emacs Lisp。)
因此,您必須單獨安裝SBCL,啟動它,然后在其REPL中輸入上述命令。
(mapc #'require '(sb-bsd-sockets sb-posix sb-introspect sb-cltl2 asdf))
請注意,您必須使用'
,而不是'
才能正常工作。 這會將系統加載到您的Lisp映像中,並且:
(save-lisp-and-die "sbcl.core-for-slime")
會將圖像保存到文件sbcl.core-for-slime
。 當您告訴SBCL使用該映像(也稱為核心映像)時,您不必再次加載上述系統,因為它們已經是已加載映像的一部分。 那就是
(setq slime-lisp-implementations
'((sbcl ("sbcl" "--core" "sbcl.core-for-slime"))))
您的.emacs
執行的操作–告訴SLIME在啟動SBCL時使用命令sbcl --core sbcl.core-for-slime
。
還要注意, Common Lisp是語言的名稱,而CLISP只是一種實現,例如SBCL。 我將相應地重新標記您的問題。
Shell是計算機的命令行界面。 在Emacs中,您可以通過輸入的Mx得到一個殼shell
(即按順序這些鍵:Esc鍵 X 中文 E的 L- l 進入 )。 將會出現一個新窗口,其中有一個shell提示符等待您的輸入。 在提示符下輸入sbcl
以啟動SBCL; 然后,您可以輸入Lisp代碼段以創建新的核心。
為了使上述方法起作用,您必須首先安裝SBCL(例如,按照www.sbcl.org上的說明進行操作 )。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.