因此,我開始學習一些lisp/elisp來優化我的emacs環境,並且我開始製作一個簡單的emacs庫,主要障礙是能夠告訴輸入的括號是否匹配。我一直在瀏覽emacs源代碼(paren.el.gz),並意識到我可以使用函數show-paren-function
來確定它是否匹配。對「錯誤類型參數」作出反應
這裏是我到目前爲止有:
(defun it-is-a-paren()
(interactive)
(insert ")")
(if (show-paren-function)
(message "%s" "it is a match")
(message "%s" "it is not")))
所以這是非常基本的,而「這是一場比賽」的作品,因爲它應該,但是當它應該拋出「不是」 ,它不會,而是它給了我「錯誤的類型參數:整數或標記p,t」。
是否有人熟悉建議使用不同的功能,或者我應該自己寫,而不是使用show-paren-function
。或者有沒有解決這個錯誤的方法(有點像異常處理)?
您也可以嘗試的標準函數[向後SEXP(http://www.gnu.org/software/emacs/manual/html_node/emacs/Expressions .html),如果parens不平衡,這也會引發異常。 – Tom 2012-03-25 19:05:32