Coc.nvim: Problem beim DrĂŒcken der Tabulatortaste am Ende eines Wortes

Erstellt am 16. MĂ€rz 2019  Â·  5Kommentare  Â·  Quelle: neoclide/coc.nvim

Ich verwende das Beispiel vimrc in README.md.

Die Frage ist, wenn es keinen Kandidaten fĂŒr die VervollstĂ€ndigung gibt und sich der Cursor am Ende eines Wortes befindet, fĂŒhrt das Tippen auf die Registerkarte nichts.

Meiner Meinung nach sollte das ideale Verhalten fĂŒr diesen Fall darin bestehen, den Cursor zur nĂ€chsten Tabulatorposition zu bewegen, außer in einer leeren Liste nach Abschlusskandidaten zu suchen.

Ich glaube das liegt daran

inoremap <silent><expr> <TAB>
      \ pumvisible() ? "\<C-n>" :
      \ <SID>check_back_space() ? "\<TAB>" :
      \ coc#refresh()
inoremap <expr><S-TAB> pumvisible() ? "\<C-p>" : "\<C-h>"

in gegebener vimrc-Konfiguration

Wie kann ich das Problem beheben, ohne das normale Verhalten zu Àndern, wenn die Liste der Abschlusskandidaten nicht leer ist? Vielen Dank!

question

Hilfreichster Kommentar

sollte den Cursor zur nÀchsten Tabulatorposition bewegen.

Was bedeutet nÀchste Tab-Position?

Es bedeutet, ein Tabulatorzeichen einzufĂŒgen.

Ich verwende das Beispiel vimrc in README.md.
Ich glaube das liegt daran
...

TatsĂ€chlich. ÜberprĂŒfen Sie diese Wiki-Seite: https://github.com/neoclide/coc.nvim/wiki/Completion-with-sources#improve -completion-experience

inoremap <silent><expr> <TAB>
      \ pumvisible() ? "\<C-n>" :
      \ <SID>check_back_space() ? "\<TAB>" :
      \ coc#refresh()
inoremap <expr> <Tab> pumvisible() ? "\<C-n>" : "\<Tab>"
inoremap <expr> <S-Tab> pumvisible() ? "\<C-p>" : "\<S-Tab>"

Der obige Code sollte es so machen, wie Sie es möchten.
Wenn ich diese Zeile aus vimrc kommentiere, erhalte ich das von Ihnen beschriebene Verhalten. Es ordnet die Registerkarte wieder der Registerkarte zu, wenn kein Abschlussfenster geöffnet ist.

Alle 5 Kommentare

sollte den Cursor zur nÀchsten Tabulatorposition bewegen.

Was bedeutet nÀchste Tab-Position?

Der Cursor befindet sich am Ende eines Wortes bedeutet nicht, dass die VervollstĂ€ndigungsanforderung leere Ergebnisse zurĂŒckgibt, es ist manchmal so.

sollte den Cursor zur nÀchsten Tabulatorposition bewegen.

Was bedeutet nÀchste Tab-Position?

Es bedeutet, ein Tabulatorzeichen einzufĂŒgen.

Ich verwende das Beispiel vimrc in README.md.
Ich glaube das liegt daran
...

TatsĂ€chlich. ÜberprĂŒfen Sie diese Wiki-Seite: https://github.com/neoclide/coc.nvim/wiki/Completion-with-sources#improve -completion-experience

inoremap <silent><expr> <TAB>
      \ pumvisible() ? "\<C-n>" :
      \ <SID>check_back_space() ? "\<TAB>" :
      \ coc#refresh()
inoremap <expr> <Tab> pumvisible() ? "\<C-n>" : "\<Tab>"
inoremap <expr> <S-Tab> pumvisible() ? "\<C-p>" : "\<S-Tab>"

Der obige Code sollte es so machen, wie Sie es möchten.
Wenn ich diese Zeile aus vimrc kommentiere, erhalte ich das von Ihnen beschriebene Verhalten. Es ordnet die Registerkarte wieder der Registerkarte zu, wenn kein Abschlussfenster geöffnet ist.

Das Beispiel in Readme ist fĂŒr den Abschluss Auslöser , wenn der Wortcharakter dort vor, aber was Sie brauchen , ist nicht die Beendigung auslösen, so dass Sie Ihre eigene keymap fĂŒr haben erstellen <Tab> .

inoremap <silent><expr> <TAB>
      \ pumvisible() ? "\<C-n>" :
      \ <SID>check_back_space() ? "\<TAB>" :
      \ coc#refresh()
inoremap <expr> <Tab> pumvisible() ? "\<C-n>" : "\<Tab>"
inoremap <expr> <S-Tab> pumvisible() ? "\<C-p>" : "\<S-Tab>"

Der obige Code sollte es so machen, wie Sie es möchten.
Wenn ich diese Zeile aus vimrc kommentiere, erhalte ich das von Ihnen beschriebene Verhalten. Es ordnet die Registerkarte wieder der Registerkarte zu, wenn kein Abschlussfenster geöffnet ist.

Das funktioniert. Danke @DzKaki !

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

skylite21 picture skylite21  Â·  3Kommentare

iago-lito picture iago-lito  Â·  3Kommentare

czepluch picture czepluch  Â·  3Kommentare

zhou13 picture zhou13  Â·  3Kommentare

MaskRay picture MaskRay  Â·  3Kommentare