2015-03-31 52 views
2

我可以使用Ctrl鍵 + ]跳轉到光標下的單詞的定義,並且我可以使用Ctrl鍵 + ö跳回我來自的地方。但是如果我做了一些像控制點擊的事情,那跳轉列表似乎沒有記錄我來自哪裏。 Ctrl + O然後當我按住control-clicked時不會跳回到原來的位置。的Intellij VIM模式,跳列表(CTRL-O)未記錄的導航

有沒有辦法確保跳轉列表不會錯過?

+1

''之後,您可以使用''跳回。 – romainl 2015-03-31 16:50:05

+0

工作。 C-t也有相反的地方嗎? – Mike 2015-03-31 16:54:44

回答

1

TAG導航

tag stack存儲用於從跳到/所有標籤。

  • CTRL]是用於跟蹤光標下的標籤。
  • ctrlt用於跳轉到標籤堆棧中的前一個條目。
  • :tag用於跳轉到標籤堆棧中的下一個條目。

JUMP導航

jump list存儲所有位置的光標躍升至/從。據Vim的文檔,運動被認爲是在下列條件下一個「跳」:

A "jump" is one of the following commands: "'"', "`", "G", "/", "?", "n", 
"N", "%", "(", ")", "[[", "]]", "{", "}", ":s", ":tag", "L", "M", "H" and 
the commands that start editing a new file. 
  • CTRLØ用來移動光標做跳轉列表較早的項目。
  • ctrli用於將mursor移動到跳轉列表中較新的條目。

參考文獻

:help tag-commands

g<LeftMouse>      *g<LeftMouse>* 
<C-LeftMouse>     *<C-LeftMouse>* *CTRL-]* 
CTRL-]   Jump to the definition of the keyword under the 
      cursor. Same as ":tag {ident}", where {ident} is the 
      keyword under or after cursor. 
      When there are several matching tags for {ident}, jump 
      to the [count] one. When no [count] is given the 
      first one is jumped to. See |tag-matchlist| for 
      jumping to other matching tags. 
      {Vi: identifier after the cursor} 

:help tag-stack

g<RightMouse>      *g<RightMouse>* 
<C-RightMouse>     *<C-RightMouse>* *CTRL-T* 
CTRL-T   Jump to [count] older entry in the tag stack 
      (default 1). {not in Vi} 

         *:po* *:pop* *E555* *E556* 
:[count]po[p][!] Jump to [count] older entry in tag stack (default 1). 
      See |tag-!| for [!]. {not in Vi} 

:[count]ta[g][!] Jump to [count] newer entry in tag stack (default 1). 
      See |tag-!| for [!]. {not in Vi} 

:help jump-motions

      *CTRL-O* 
CTRL-O   Go to [count] Older cursor position in jump list 
      (not a motion command). {not in Vi} 
      {not available without the |+jumplist| feature} 


<Tab>  or     *CTRL-I* *<Tab>* 
CTRL-I   Go to [count] newer cursor position in jump list 
      (not a motion command). 
      In a |quickfix-window| it takes you to the position of 
      the error under the cursor. 
      {not in Vi} 
      {not available without the |+jumplist| feature} 
+0

看起來ctrl-]記錄跳轉列表中的當前位置。 ctrl-t和ctrl-o都能帶你回來。看起來奇怪的是,一個控制鼠標點擊不會將它記錄在跳轉列表中。 問題仍然存在,如果ctrl-o把你帶回來,ctrl-t有什麼意義? – Mike 2015-04-02 03:31:49

+0

'ctrl-o'控制跳轉列表。稍後我會嘗試擴展此答案,但現在嘗試在跟隨標籤後搜索關鍵字,然後按「ctrl-o」。 – Vitor 2015-04-02 08:16:51

+2

看起來,IdeaVim所做的任何「跳轉」都記錄在跳轉列表中,但IDE所做的任何「跳轉」都不記錄在跳轉列表中。例如,ctrl-]你可以使用ctrl-o返回。 但使用F4不能使用Ctrl-O返回。 所以問題是,我們如何避免跳轉列表丟失IDE所產生的跳轉? – Mike 2015-04-07 22:27:09