Was ist die Verknüpfung in Visual Studio Code für console.log


Antworten:


162

Update Februar 2019:

Wie von Adrian Smith und anderen vorgeschlagen: Wenn Sie eine Tastenkombination zum Erstellen einer Konsolenprotokollanweisung binden möchten, können Sie Folgendes tun:

  1. Datei> Einstellungen> Tastaturkürzel
  2. Unterhalb der Suchleiste wird die Meldung "Für erweiterte Anpassungen openbindings.json öffnen und bearbeiten" angezeigt . Klicken Sie darauf
  3. Fügen Sie dies zu den JSON-Einstellungen hinzu:
{
  "key": "ctrl+shift+l",
  "command": "editor.action.insertSnippet",
  "when": "editorTextFocus",
  "args": {
    "snippet": "console.log('${TM_SELECTED_TEXT}$1')$2;"
  }
}

Durch Drücken von CTRL+ SHIFT+ Lwird das Konsolen-Snippet ausgegeben. Wenn Sie bereits Text ausgewählt haben, wird dieser in die Protokollanweisung eingefügt.


Wenn Sie lieber Intellisene / Autocomplete möchten:

Gehen Sie zu Einstellungen -> Benutzerausschnitte -> Wählen Sie Typoskript (oder eine beliebige Sprache). Eine jsonDatei sollte geöffnet werden. Dort können Sie Codefragmente hinzufügen.

Es gibt bereits einen Ausschnitt zum console.logAuskommentieren:

"Print to console": {
    "prefix": "log",
    "body": [
        "console.log('$1');",
        "$2"
    ],
    "description": "Log output to console"
}

Sie müssen dies für jede Sprache tun, in der Sie das Snippet verwenden möchten.


Außerdem sollten Sie festlegen "editor.snippetSuggestions": "top", dass Ihre Snippets über Intellisense angezeigt werden. Danke @Chris!

Snippet-Vorschläge finden Sie unter Einstellungen -> Texteditor -> Vorschläge


2
Das hat früher funktioniert, aber seit dem letzten Update vielleicht nicht mehr? Ist es nur ich s17.postimg.org/5mxnx4umn/2017_02_14_11h10_03.jpg
Cristian Muscalu

Das oben definierte Präfix ist "log", daher hilft die Eingabe von "c" nicht;) Beginnen Sie stattdessen mit der Eingabe von "l".
Sebastian Sebald

Oh, ich habe vergessen zu erwähnen, dass ich es geändert habe, um mit "c" zu arbeiten. Ich habe nichts geändert und nach dem Update funktioniert es nicht mehr. Sie haben das Snippet nicht mehr, aber damit "prefix": "c",sollte es mit "c" funktionieren, oder?
Cristian Muscalu

Wenn alles andere stimmt. Ja. Beachten Sie, dass Sie das Snippet auch zu jeder Sprache hinzufügen müssen, die Sie verwenden möchten. Wenn Sie es also zu TS hinzugefügt haben, funktioniert es in JS nicht, und umgekehrt.
Sebastian Sebald

1
Sie können alternativ auf die {}Schaltfläche neben der Suchleiste klicken , um die keybindings.jsonDatei zu öffnen. Dies ist der einfachste Weg, da die Meldung "Für erweiterte Anpassungen keybindings.json öffnen und bearbeiten" nicht angezeigt wurde.
Aashish Chaubey

49

Alle oben genannten Antworten funktionieren einwandfrei. Wenn Sie jedoch die Konfiguration des Visual Studio-Codes nicht ändern möchten, sondern eine automatische Vervollständigung wünschen console.log(object); , können Sie einfach diese Verknüpfung verwenden und Ctrl+ Spacefür Vorschläge drücken und auf Enter
Hinweis klicken. Hinweis : Diese Funktion ist verfügbar Wenn Sie die JavaScript (ES6) -Code-Snippets-Erweiterung installieren.

Ebenso haben Sie die automatische Vervollständigung für:

  • clg fürconsole.log(object);
  • Clo fürconsole.log('object :', object);
  • ccl fürconsole.clear(object);
  • cer fürconsole.error(object);
  • ctr für console.trace(object);
  • clt fürconsole.table(object);
  • cin fürconsole.info(object);
  • cco für console.count(label);

    (Diese Liste geht weiter ...)

Link für JavaScript (ES6) -Code-Snippets: https://marketplace.visualstudio.com/items?itemName=xabikos.JavaScriptSnippets

Geben Sie hier die Bildbeschreibung ein


4
Perfekt. +1. Dies ist, wonach ich gesucht habe - keine Konfigurationsänderungen vornehmen zu müssen.
Chris22

38

Die Top-Antwort von @Sebastian Sebald ist vollkommen in Ordnung, aber bei einem ähnlichen Problem (nicht speziell console.log, sondern "fehlt") wollte ich auch eine Antwort beisteuern.

Ihr Präfix funktioniert tatsächlich - standardmäßig ist es logund in Ihrem Fall haben Sie es geändert c. Wenn Sie log(oder c) VSCode eingeben, wird eine vollständige Liste von "all the things ™" basierend auf vielen Faktoren generiert (dh ich weiß nicht, welche Faktoren, wahrscheinlich Klassenrelevanz).

Dinge wie Schnipsel tendieren dazu, sich nach unten zu bewegen. Fügen Sie dies zu Ihren Einstellungen hinzu, um sie trotz ihrer Länge nach oben zu bringen:

"editor.snippetSuggestions": "top"

3
Du bist der Held, den ich brauchte. Vielen Dank!
BinarySolo

1
Haha, keine Sorge
Chris

Ich bekomme jedoch eine Fehlermeldung Property editor.snippetSuggestions is not allowed, worum geht es?
Bossan

28

Tippe logund drücke enter. Es wird automatisch vervollständigtconsole.log();


Ich habe anscheinend einen Fehler, bei dem das Eingeben logund Drücken der Eingabetaste console.log();gelegentlich nur Ausgaben ausgibt , und ich kann nicht herausfinden, warum? Ist es nur ich oder können andere logeingeben und dann console.log();jedes Mal eine konsistente Ausgabe erhalten?
Ben Clarke

2
Sie müssen einige Millisenkunden / Sekunden warten, bis die Befehlszeile Ihre Eingabe erneut bestätigt. manchmal bleibt es ein bisschen zurück
nedemir

24

In Atom gibt es eine nette Verknüpfung für console.log () und ich wollte dasselbe in VS Code.

Ich habe die Lösung von @kamp verwendet, aber es hat eine Weile gedauert , bis ich herausgefunden habe, wie es geht. Hier sind die Schritte, die ich verwendet habe.

  1. Gehen Sie zu: Datei> Einstellungen> Tastaturkürzel

  2. Oben auf der Seite wird die folgende Meldung angezeigt: Öffnen und bearbeiten Sie für erweiterte Anpassungen keybindings.json

Klicken Sie auf den Link

  1. Dadurch werden zwei Fenster geöffnet: die Standard-Tastenkombinationen und Ihre benutzerdefinierten Bindungen.

Geben Sie den Code im rechten Bereich ein

  1. Geben Sie den von @kamp bereitgestellten Code ein

Vielen Dank für die detaillierten Schritte
Moaaz Bhnas

23

Eine andere Möglichkeit besteht darin, die Datei keybindings.json zu öffnen und die gewünschte Tastenkombination hinzuzufügen. In meinem Fall ist es:

{
    "key": "cmd+shift+l",
    "command": "editor.action.insertSnippet",
    "when": "editorTextFocus",
    "args": {
      "snippet": "console.log($1)$0;"
    }
}

"Strg + Umschalt + C" für die "Taste" ist ein bisschen einfacher mit einer Hand zu klicken IMO und es ist nicht bereits von einer anderen Tastenkombination übernommen, wenn Sie die Standard-Tastenkombinationen vs Code verwenden
russiansummer

15

Wer nach erweiterten Anpassungen sucht, öffnet und bearbeitet keybindings.json

Geben Sie hier die Bildbeschreibung ein

Klicken Sie auf dieses kleine Symbol, um keybindings.json zu öffnen.

Verwenden Sie diesen Code zum Generieren von console.log () und zum Generieren von console.log ("Word") für ausgewählten Text.

{
  "key": "ctrl+shift+l",
  "command": "editor.action.insertSnippet",
  "when": "editorTextFocus",
  "args": {
    "snippet": "console.log('${TM_SELECTED_TEXT}$1')$2;"
  }
}

1
danke, auf dem mac musste man zu code-> einstellungen-> tastatur-shorcuts gehen und dann auf diese Schaltfläche klicken, dann das {...} in das Array einfügen.
Rdprado

1
Danke Mann, jemand sollte die akzeptierte Antwort aktualisieren, damit alle anderen 10 Minuten überspringen können
Kris Lamote

1
Du hast viel Zeit gespart, Mann !! Danke
React Developer

Dies ist auf meinem Mac nicht vorhanden. Ich musste cmd + shift + p
ausführen

10

Wenn Sie das Wortprotokoll eingeben , wird Folgendes angezeigt:

Wählen Sie die Methode "An der Konsole anmelden"

Wählen Sie die Option An der Konsole protokollieren, falls Sie andere Protokolloptionen sehen (dies wäre grundsätzlich möglich, wenn Sie eine Kennung mit dem Namensprotokoll haben.

Klicken Sie auf Enter.

console.log () wird automatisch eingegeben!

Der Intellisense wird seinen Job machen!


9

Falls jemand daran interessiert ist, den aktuell ausgewählten Text in die console.log()Erklärung aufzunehmen:

{
    "key": "cmd+shift+l",
    "command": "editor.action.insertSnippet",
    "when": "editorTextFocus",
    "args": {
      "snippet": "console.log(${TM_SELECTED_TEXT}$1)$0;"
    }
}

Das ist fantastisch!
AJ Hsu

8

Geben Sie 'clg' ein, drücken Sie dann ctrl+ spaceund drücken Sie enter, es wird automatisch vervollständigt console.log().
Dazu müssen Sie nur eine Erweiterung installieren, dh JavaScript (ES6) -Code-Snippets.


Auch 'cwa' für console.warn ()
Amir Shabani

7

clg + tab

oder wie oben erwähnt,

log + enter (zweite Option in der Dropdown-Liste)

Dies ist eine alte Frage, aber ich hoffe, sie ist für andere nützlich.


clg + tab gibt ChannelMergerNodefür mich!
jb

Ich denke, Sie müssen Ihre Tastenkombinationen wie in den obigen Antworten erwähnt bearbeiten;)
palmaone

2

Der folgende Text ist derzeit ein ausgewählter Text mit einfachen Anführungszeichen. Ich hoffe es hilft

// Place your key bindings in this file to overwrite the defaults
[{
    "key": "ctrl+shift+c",
    "command": "editor.action.insertSnippet",
    "when": "editorTextFocus",
    "args": {
        "snippet": "console.log('${TM_SELECTED_TEXT}$1')$2;"
    }

}]

2

Hier ist eine bessere Lösung

{
        "key": "cmd+shift+c",
        "command": "editor.action.insertSnippet",
        "when": "editorTextFocus",
        "args": {
            "snippet": "console.log('${TM_SELECTED_TEXT}', $TM_SELECTED_TEXT$1);"
        }
    }

1

Ich weiß nicht, welche Erweiterung ich verwende, aber ich gebe einfach log ein und drücke die Tabulatortaste, um console.log () automatisch zu vervollständigen. Platzieren Sie den Cursor zwischen den geschweiften Klammern.


1

Tippe cound drücke taboder enter.

Sollte sofort funktionieren.


Das funktioniert ganz gut
SebastianOpperman

Ich denke, dies ist möglicherweise nicht sehr zuverlässig oder hängt von Erweiterungen ab. Für mich generiert co + enter nur die Textausgabe und co + tab generiert "bestätigen". Sogar "Nachteile" + Tab erzeugt nur "Konsole".
Joel Peltonen

0

Alternativ können Sie eine einfach zu schreibende Funktion erstellen, die die Datei console.log aufruft, und diese Funktion dann einfach aufrufen.

 var a = funtion (x) {console.log(x)}
 a(2*2);        //prints 4

Dies beantwortet nicht die Frage des OP, da dies über jedes Projekt importiert werden müsste und nur ein direktes Ärgernis ist. Eine eingebaute Tastenkombination ist definitiv der richtige Weg
Sweet Chilly Philly
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.