Zunächst einmal bin ich Zeitarbeiter. Daher ist das Verkaufspersonal zum Zeitpunkt des Interviews mit dem Versandziel anwesend. Da der Verkäufer meine Meinung ignoriert und ohne Erlaubnis fortfährt, kann der Versandort unabhängig von der Situation festgelegt werden. Seit ich Zeitarbeitnehmer bin, habe ich Menschen verlassen, aber ich möchte, dass Sie mir für einen Moment vergeben.
Wenn dies gesagt ist, kann das nächste ein Java-Sprachprojekt sein. Das bedeutete, dass ich die Java-Sprache neu lernen musste. Ich dachte jedoch, ich würde keine Bücher verwenden, die mit der Java-Sprache zu tun haben, also ließ ich sie bei meinen Eltern. Ich konnte nicht anders, also beschloss ich, mehr aus dem ersten Schulbuch zu kaufen. Wie viele Bücher und wie viele Arten von Grundschulbüchern soll ich kaufen ... Ich plane, wenn möglich ein Kindle-Buch zu kaufen, aber es ist schwer zu sehen, also ist es definitiv ein Papierbuch. Es wird keine guten Maßnahmen geben.
Wenn Sie für Anfänger programmieren, brauchen Sie definitiv keine große IDE. Wenn ich Zeit habe, eine solche Umgebung aufzubauen, würde ich gerne ein wenig Zeit zum Lernen verwenden. Wie ist das? Da ich Vim nicht beherrschen konnte, konnte ich es immer noch nicht wie eine IDE erstellen. Bei dieser Gelegenheit möchte ich Language Server Protocol (Abkürzung: LSP) vorstellen.
Ich denke, es ist eine Funktion, die den Eingabevorgang mit automatischer Vervollständigung abschließt. Vor diesem Hintergrund habe ich beschlossen, es einzuführen.
Die Vorbereitung einer IDE-Umgebung ist mühsam, daher möchte ich eine Umgebung mit nur einer kleinen Änderung an der bereits installierten Vim erstellen. Deshalb möchte ich nicht schwierig oder zeitaufwändig sein. Daher habe ich mich für das [Plug-in von mattn zur Reduzierung der Installationskosten] entschieden (https://qiita.com/mattn/items/e62b9f16bc487a271a7f).
Da dies einfach ist, habe ich mich entschlossen, wie von Mr. mattn erläutert fortzufahren.
Die Plug-In-Verwaltung verwendet minpac.
Ich dachte, es wäre vorerst einfach einzuführen, ob eine Zeile ausreichen würde oder zwei Zeilen benötigt würden.
vimrc
call minpac#add('prabirshrestha/vim-lsp')
call minpac#add('mattn/vim-lsp-settings')
Dann in der Ex-Befehlszeile,
Befehl
call minpac#update()
Eintippen. Auf diese Weise wird das Plug-In eingeführt. Dies allein macht es sehr bequem.
Sie müssen auch an vimrc schreiben.
vimrc
"Möglichkeit, Fehler in Echtzeit anzuzeigen, wenn sich Dateien ändern
let g:lsp_diagnostics_enabled = 1
let g:lsp_diagnostics_echo_cursor = 1
"Einstellung zum automatischen Anzeigen des Popups für die Eingabe
let g:asyncomplete_auto_popup = 1
let g:asyncomplete_auto_completeopt = 1
"Verzögerung bis Popup angezeigt wird
let g:asyncomplete_popup_delay = 200
"Einstellung zum Aktivieren von textEdit, einer LSP-Spezifikation
let g:lsp_text_edit_enabled = 1
let g:lsp_signs_enabled = 1
let g:lsp_diagnostics_echo_cursor = 1
mattn scheint die Konfigurationsdatei (https://mattn.kaoriya.net/software/vim/20191231001537.htm) [aufgeteilt] zu haben, aber ich habe sie nicht. Deshalb schreibe ich an vimrc, aber ich denke, dass es kein Problem gibt.
vim-lsp scheint das Mutterschiff zu sein, und wenn Sie es nicht einschließen, erhalten Sie eine Fehlermeldung.
Error
Error detected while processing User Autocommands for "lsp_setup":
E117: Unknown function: lsp#register_server
Ich habe eine Fehlermeldung erhalten, weil ich mit der Arbeit fortgefahren bin, ohne das Plug-In des Mutterschiffs installiert zu haben.
Error
BufRead Autocommands for "*.java"..FileType Autocommands for "java"..function <SNR>8_vim_lsp_load_or_suggest[105]..
User Autocommands for "lsp_setup"Bei der Verarbeitung von wurde ein Fehler festgestellt:
E117:Unbekannte Funktion: lsp#register_server
Stellen Sie sicher, dass Sie die Erklärung richtig lesen.
Ich habe einen Fehler im Plugin zum Verwalten von Plugins erhalten, der anscheinend bereits [behoben] wurde (https://github.com/k-takata/minpac/issues/1).
Öffnen Sie eine Datei mit der Erweiterung * .java. Und
Ex-Befehl
LspInstallServer
Da der Mechanismus so ist, dass die der Programmierdatei entsprechende Datei installiert ist, können Sie "Ja" drücken und warten, bis die Installation abgeschlossen ist.
Abgeschlossen.
Persönlich ist der Zeichencode seltsam ... aber ich werde ihn zu einem anderen Zeitpunkt überprüfen. Es sollte UTF-8 gewesen sein ...
Ich bin nicht sicher, aber es scheint, dass einige Programmierdateien nicht installiert werden können.
Öffnen Sie die C ++ - Sprachdatei
Ich folgte ihm gehorsam, weil es eingeführt werden konnte.
Natürlich ja.
Die Installation ist jedoch fehlgeschlagen. Dies scheint daran zu liegen, dass der erforderliche Befehl nicht gefunden wurde. Daher liegt möglicherweise ein Problem mit meiner Umgebung vor, aber jetzt muss ich nur noch die Java-Umgebung vorbereiten, sodass ich sie verschiebe.
Seltsam. Die automatische Vervollständigung funktioniert überhaupt nicht.
Popup wird überhaupt nicht angezeigt.
Seltsam.
Für die Einstellungen von mattn
vimrc
if empty(globpath(&rtp, 'autoload/lsp.vim'))
・
・
・
function! s:on_lsp_buffer_enabled() abort
・
・
・
augroup lsp_install
・
・
・
Wurde geschrieben, aber ist das da? Durch diese Beschreibung wurde die Einstellungsdatei zerstört ...
Ich brauchte ein separates Plug-In.
asyncomplete.vim Die Beschreibung ist in Englisch, daher habe ich nicht gedacht, dass es sich um den erforderlichen [Plug] handelt (https://github.com/mattn/vim-lsp-settings#asyncompletevim).
vimrc
"Popup-Menüanzeige automatisch vervollständigen
call minpac#add('prabirshrestha/asyncomplete.vim')
"Quelle automatisch vervollständigen
call minpac#add('prabirshrestha/asyncomplete-lsp.vim')
Es scheint, dass diese beiden Typen benötigt werden.
Es ist ein wenig unangenehm mit einem unbeabsichtigten Popup-Display. In diesem Beispiel möchte ich "System" eingeben, aber wenn ** S ** eingegeben wird, wird automatisch "Saf ~ Nanchara" eingegeben. Unangemessene Unannehmlichkeiten. Was ich tun möchte, ist, wenn ich "S" eingebe, wird nichts eingegeben und ich möchte, dass die Kandidaten auftauchen. Ich bin in Schwierigkeiten.
asyncomplete.vim Bei der Anzeigemethode scheint nvim besser zu sein. Ich werde den Hauptkörper jetzt nicht ändern.
Obwohl ich die oben genannten Beschwerden habe, werde ich sagen, dass ich es vorerst eingestellt habe. Es ist noch weit davon entfernt, das Studium der Java-Sprache nur mit vim selbst abzuschließen, aber dieser Artikel endet damit. Schließlich möchte ich in der Lage sein, auszuführen und zu debuggen.
das ist alles.
Recommended Posts