Emacs 如何實現查詢,類似vim中的 , 的功能?

時間 2021-05-31 07:27:28

1樓:張杰

(require 'highlight-symbol)(global-set-key (kbd "M--") 'highlight-symbol-at-point)

(global-set-key (kbd "M-n") 'highlight-symbol-next)

(global-set-key (kbd "M-p") 'highlight-symbol-prev)

用highlight-symbol 外掛程式。

或者M-s .`

或者 helm C-h o

2樓:

;; search current word like vim's "*"

(defvar

my/isearch-word"")

(defun

my/isearch-word-vim

()"isearch current word like vim's *"

(interactive)(

when

(not

mark-active)(

let(

word-beg

word-end)(

unless

(looking-at

"\\<")(

if(eq(

char-syntax

(char-after

))?w)(

backward-word)(

and(

forward-word)(

backward-word

))))

(setq

word-beg

(point))(

forward-word)(

setq

word-end

(point))(

setq

my/isearch-word

(filter-buffer-substring

word-beg

word-end

nil))

(backward-word))

(when

(>(length

my/isearch-word)0

)(setq

my/isearch-word

(concat

"\\<"

my/isearch-word

"\\>"))(

isearch-update-ring

my/isearch-wordt)

(add-hook

'isearch-mode-end-hook

'my/isearch-word-end-hook)(

isearch-modett

)(isearch-repeat

'forward)(

message

"%s"

isearch-string

))))

(defun

my/isearch-word-end-hook()(

remove-hook

'isearch-mode-end-hook

'my/isearch-word-end-hook)(

setq

my/isearch-word

""))

(global-set-key

(kbd

"C-*"

)'my/isearch-word-vim

);; search current region

(defvar

my/isearch-string"")

(defun

my/isearch-region-forward

()"isearch region if mark is acktive"

(interactive)(

when

mark-active

(let

((beg

(region-beginning))(

end(

region-end

)))(

setq

my/isearch-string

(filter-buffer-substring

begend

nil))

(deactivate-mark)(

when

(>(length

my/isearch-string)0

)(goto-char

beg)

(isearch-update-ring

my/isearch-stringt)

(add-hook

'isearch-mode-end-hook

'my/isearch-string-end-hook)(

isearch-modett

)(isearch-repeat

'forward)(

message

"%s"

my/isearch-string

)))))

(defun

my/isearch-string-end-hook()(

remove-hook

'isearch-mode-end-hook

'my/isearch-string-end-hook)(

setq

my/isearch-string

""))

(global-set-key

(kbd

"C-&"

)'my/isearch-region-forward

)前者在乙個word上C-*然後C-r或者C-s,後者在乙個region上C-&然後C-r或者C-s

如何使用SQL查詢實現財務報表的累積顯示?

黃贇 已知 每個月的銷售額資料 求解 截止到當前季度的累計銷售額 方法一 遞迴方式 方法二 不對等 Join 方式 方式三 視窗函式 Window Function CREATE TABLE dbo.FctSales ORDER YEAR INT ORDER MONTH INT AMOUNT INT...

啟信寶的關聯查詢如何實現,後台架構是怎麼樣的?

feiqi 我只能說啟信寶的疑似關係實在是太爛了,基本就是企業頁面裡面的對外投資的視覺化。要說關聯關係,還是要看天眼查,它是做關係發現起家的。通過公開資料做關係挖掘,主要有3個核心問題 1.資料量 可以仔細對比一下天眼查 企查查 啟信寶的關係發現,會發現出來的關係點永遠都是天眼查最全。2.使用體驗 ...

如何設計並實現出類似刺客信條中的攀爬和跑酷效果?

一位使用者 可以參考 飛簷走壁?民間真人版 刺客信條 嗶哩嗶哩 乾杯 bilibili 人靠衣裝馬靠鞍 m 平凡上班族 把攀爬和跑酷分開說就很好解決了。刺客信條裡的跑酷,除了巴黎飛人的某些下房動作以外,世界上不缺能復刻得一模一樣甚至難度更高的人。接受過專業訓練並且有一定能力的人是絕對可以做出刺客信條...