Saya berjuang dan menginginkan hal yang sama sejak pindah dari Vim ke Emacs.
Setelah beberapa penelitian dan percobaan, saya menemukan fungsi di bawah ini yang memungkinkan Anda untuk melakukan hal yang sama dengan paket Evil diinstal atau menggunakan spacemacs.
Ia juga bekerja dengan region aktif (atau pemilihan visual dalam istilah vim) dan itu bisa sangat berguna untuk mengganti kata seperti abc-def-hij:
; replace current word or selection using vim style for evil mode
(defun evil-replace-word-selection()
(interactive)
(if (use-region-p)
(let (
(selection (buffer-substring-no-properties (region-beginning) (region-end))))
(if (= (length selection) 0)
(message "empty string")
(evil-ex (concat "'<,'>s/" selection "/"))
))
(evil-ex (concat "%s/" (thing-at-point 'word) "/"))))
lalu di init.el Anda, tentukan pengikatan kunci yang sama:
(global-set-key (kbd "\C-co") 'evil-replace-word-selection)
keybinding sedikit berbeda dari vim yang merupakan "space z" tapi saya belum tahu bagaimana memetakan itu di emacs ketika mode jahat ada. terus mengeluh bukan awalan dll dan saya relatif baru untuk emacs. Tapi masih tidak terlalu buruk dan saya senang dengan solusi ini saat ini.