还有括号补全的插件哪个最好用。搜到好几个。。支持回车的时候会缩进和生成新行
func main(){|} --- 回车
func main(){
|
}
我用smartparens。 写lisp的时候用lispy。
回车换行缩进可以用
(with-eval-after-load 'smartparens
(dolist (brace '("(" "{" "["))
(sp-pair brace nil
:post-handlers '(("||\n[i]" "RET")
("| " "SPC"))
:unless '(sp-point-before-word-p sp-point-before-same-p))))
你截图那个操作我直接在region上展开yasnippet(虽然不怎么用)
1 个赞
gif里是给单词 段落等textobject 添加环绕。。代码片段做不到啊?展开的代码片段是预定义的啊
这个我看到了好多括号类的插件,并不知道怎么选择。。
好的 我试试,折腾一个多礼拜了。差不多了这配置,到处抄导出改2333
请问surround有什么用?
我写blog的时候比较有用。给部分单词加 ` 这种东西,开发的时候偶尔也用得到。
单纯这个smartparens就可以,选中之后直接按paren key就好了,不过可能和evil冲突。
thing-at-point函数差不多可以模拟vim中的text object
如果只是简单的加个` 用不着插件 四行代码就够了
那个head/tail不支持, tag和func不是可以选中后使用s<和s)吗?
可以写自己呀?就像录脚本一样。
(defun tag-word-or-region (text-begin text-end)
"Surround current word or region with given text."
(interactive "sStart tag: \nsEnd tag: ")
(let (pos1 pos2 bds)
(if (and transient-mark-mode mark-active)
(progn
(goto-char (region-end))
(insert text-end)
(goto-char (region-beginning))
(insert text-begin))
(progn
(setq bds (bounds-of-thing-at-point 'symbol))
(goto-char (cdr bds))
(insert text-end)
(goto-char (car bds))
(insert text-begin)))))
1 个赞
录脚本不就是固定了吗
可以用read-char
楼主的文件树是什么插件?
这个head tail的surround功能真的有必要吗。。这样选中和单纯正常输入的速度没差吧?此外你要的功能evil-surround都有?