Vim - 使用函数搜索(.vimrc)

Vim - 使用函数搜索(.vimrc)

我在 Vim 中用于搜索的函数存在时间问题。我需要立即执行搜索,而不是在函数结束后执行。

我正在使用“feedkeys”函数(eg. feedkeys("/pathern\<cr>")来执行搜索。


这是时间表!

          |                                            --> Need's "feedkeys("/pathern\<cr>")" result!|
          |                                            |                                             |
execution |call FUNC_A --> call FUNC_B --> return to FUNC_A                                          | execution
  begin   |                       |                                                                  |   end
          |                       --> Call "feedkeys("/pathern\<cr>")"!                              |    |
                                                                                                          --> "feedkeys("/pathern\<cr>")" search result!

答案1

let @/ = "pattern"

确实是正确的方法。您可以通过特殊变量影响方向v:searchforward。通过 转到下一场比赛:normal! n

搜索突出显示的问题可能与函数内的执行有关,请参阅:help function-search-undo。您仍然可以使用函数来计算模式等,但@/和的修改:set hlsearch必须在其外部进行,即在映射或自定义命令中。

相关内容