emacs 删除匹配的lisp语言

刚刚写lisp,最头痛的就是()  之间的匹配总算搞不清楚。
虽然有个 (show-paren-mode 1) ,不过只有光标在()上才有效。

尝试写了个函数,C-0 将光标所在的语句删除,再按一次恢复.

(defun kill-paren ()
  "kill matched paren in elisp, repeat undo the kill"
  (interactive "*")
  (if (eq last-command 'kill-paren)
      (undo)
    (let (start end)
      (save-excursion
        (re-search-backward "//s/(")
        (setq start (point))
        (forward-list)
        (setq end (point))
        (kill-region start end)
        (setq this-command 'kill-paren)))))

(global-set-key [(control ?0)] 'kill-paren)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值