Trong vim, tại sao: tselect chỉ cho tôi danh sách sai?


5

Tôi có mã này mở trong vim:

$this->mockEvolve(...);

Khi tôi làm một Ctrl + ] với con trỏ của tôi trên m, nó mang lại cho tôi định nghĩa của nó.

Tuy nhiên, khi tôi chạy :ts khi con trỏ của tôi qua m, vim cho tôi xem danh sách các thẻ này:

  # pri kind tag               file
> 1 F   f    mockGet           <filename>
               public function mockGet(...)

Tôi gặp vấn đề này rất nhiều (không chỉ với chức năng này). Bất cứ ý tưởng những gì đang xảy ra?

Câu trả lời:


5

Các :help :tselect cho bạn câu trả lời:

Khi [nhận dạng] không được cung cấp, tên thẻ cuối cùng từ   ngăn xếp thẻ được sử dụng.

Nó sử dụng thẻ jump-to cuối cùng, không phải từ dưới con trỏ. Để chèn nó vào dòng lệnh, sử dụng Ctrl-R Ctrl-W.


2
Ồ, tôi mới sử dụng 3 tháng: ts như thể nó liệt kê tất cả các thẻ dưới con trỏ của tôi. Một trường hợp RTFM. Cám ơn rất nhiều!
des4maisons

1
Nếu bạn thích hành vi đó, bạn có thể xác định lệnh của riêng mình cho nó: command! Tselect execute 'tselect' expand('<cword>')
Ingo Karkat

Tôi chỉ có thể làm điều đó!
des4maisons

1
Cũng cố gắng g]g^]; họ làm việc như ^] (tự động sử dụng từ khóa dưới / sau con trỏ), nhưng sử dụng :tselect:tjump (tương ứng) thay vì :tag; :tjump giống như :tselect, nhưng bỏ qua lời nhắc nếu chỉ có một mục phù hợp.
Chris Johnsen
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.