流程:narrow => symbol-overlay-put => symbol-overlay-rename => widen
配合fancy-narrow-to-defun 和 fancy-narrow-to-region 使用效率更高,fancy-narrow没有对paragraph进行支持,加了一个函数
(defvar my-fancy-narrow-hook nil
"my fancy narrow hook")
(defun my-fancy-narrow-to-paragraph ()
"fancy narrow to paragraph"
(interactive)
(run-hooks 'my-fancy-narrow-hook)
(save-excursion
(fancy-narrow-to-region (progn (backward-paragraph) (point)) (progn (forward-paragraph) (point)))))
2 个赞
evil 选中一些行,然后执行 :s/regex/str/g 替换
1 个赞
first
3
multiple cusor有个dwim命令可以先选中defun范围内光标下的symbol,再按一下就是buffer内所有,然后替换即可,这个dwim命令也支持region里选中替换。还有个narrow方式是consult line或者consult ripgrep配合embark的export,在新开的临时buffer用ocurr edit或者wgrep来替换。
此外还有iedit包可以哟没用过,mc够我用了
1 个赞
built-in 的方式: mark region => query-replace-regexp
2 个赞
symbol-overlay
高亮选中后可以用 t
切换 scope,然后r
重命名。
2 个赞
query replace 要手动填写被替换的字符,如果字符较长感觉就比较麻烦了
这个可以通过 expand 补全,我平常也用 multiple cusor 多一点,query-replace-regexp
只用做补充。
org
11
狗哥的meow做这个也非常舒服,比如:case 3, case 4,相当优雅。