Skip to content

Instantly share code, notes, and snippets.

@ongaeshi
Created January 18, 2011 05:10
Show Gist options
  • Select an option

  • Save ongaeshi/784012 to your computer and use it in GitHub Desktop.

Select an option

Save ongaeshi/784012 to your computer and use it in GitHub Desktop.
置換時にインクリメンタルサーチからはじめ、そのまま置換する
;;--------------------------------------------------------------------------
;; 置換時にインクリメンタルサーチからはじめ、そのまま置換する
;;
;; EmacsWiki: Incremental Search And Replace
;; http://www.emacswiki.org/emacs/IncrementalSearchAndReplace
;;-------------------------------------------------------------------------
(defvar ireplace-isearch-mode-map
(let ((map (make-sparse-keymap)))
;; Maintain any customizations to isearch-mode-map.
(set-keymap-parent map isearch-mode-map)
(define-key map "\r" 'isearch-query-replace)
map)
"Keymap for `ireplace-mode'.")
(defun ireplace-query-replace-interactive ()
"Query replace using Isearch.
\\{ireplace-isearch-mode-map}"
(interactive)
(let ((isearch-mode-map ireplace-isearch-mode-map))
(call-interactively 'isearch-forward)))
(defun ireplace-query-replace-regexp-interactive ()
"Query replace using Isearch.
\\{ireplace-isearch-mode-map}"
(interactive)
(let ((isearch-mode-map ireplace-isearch-mode-map))
;; TODO: Change Isearch's mini-buffer string to "Query replace".
(call-interactively 'isearch-forward-regexp)))
(global-set-key "\C-q" 'ireplace-query-replace-interactive)
(global-set-key "\M-q" 'ireplace-query-replace-regexp-interactive)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment