search for the occurrence of the word nearest to the cursor
というかvimの'*'です。
EmacsでもC-sでインクリメンタルサーチに入った後C-wで似たような事が出来るって最近知った(isearch-yank-word-or-char)。「似たような」と書いたのは、残念ながらEmacsはvimほど空気読んでくれてなくてあくまで point から forward-word したところまでを拾うだけだから。カーソルが乗ってるwordを拾ってくれるわけではない。といってもそんなん1つ戻るだけジャン、とか思って書き換えた。
(defun isearch-yank-word-or-char () "Pull next character or word from buffer into search string." (interactive) (if (= (char-syntax (or (char-after (1- (point))) 0)) ?w) ;;added (backward-word 1)) ;; added (isearch-yank-internal (lambda () (if (or (= (char-syntax (or (char-after) 0)) ?w) (= (char-syntax (or (char-after (1+ (point))) 0)) ?w)) (forward-word 1) (forward-char 1)) (point))))
というか isearch-yank-sexp-or-char () も書いたほうがよさげ
追記:
間違い。4行目はこうしないとインクリメンタルに C-wできないや。
(if (and (= (char-syntax (or (char-after) 0)) ?w) (= (char-syntax (or (char-before) 0)) ?w))
相変わらずだめだめtkuroクオリティ