優化刪除括弧的函數

這一期沒啥內容,只是最近寫代碼的時候發現 Emacs 自帶的刪除括弧功能 (delete-pair)非常的原始且不好用,於是隨手寫了個優化的版本。

(defun c-delete-pair ()n (interactive)n (let ((re "[([{<"]"))n (when (or (looking-at-p re) (re-search-backward re nil t))n (save-excursion (forward-sexp) (delete-char -1))n (delete-char 1))))n

使用該函數可以向前搜索括弧(以及引號)然後刪除匹配的括弧(或者引號)。

本專欄提到的大部分函數都存在我的 github 里,其中有一部分在文章發表後又有改動,我就懶得更新了。

github.com/wolray/emacs

推薦閱讀:

學習 LISP 有哪些網站或書籍推薦?
精通 Lisp 是一種怎樣的體驗?
入門 Lisp 有哪些在線資料?
Lisp 對於編程語言的發展有哪些貢獻?
函數式語言中如何實現while true?

TAG:Emacs | Lisp | 文本编辑器 |