Heim  >  Artikel  >  Backend-Entwicklung  >  VSCode-Sprachmoduszuordnung für Unterordner und Sonderzeichenordner

VSCode-Sprachmoduszuordnung für Unterordner und Sonderzeichenordner

Linda Hamilton
Linda HamiltonOriginal
2024-11-01 16:13:02958Durchsuche

VSCode language mode association for subfolders and special characters folders

Visual Studio Code (VSCode) unterstützt eine Vielzahl von Dateiformaten. Basierend auf dem Dateinamen und der Erweiterung findet VSCode den Sprachmodus. Oftmals vorausgesetzt, vernünftige Vorgaben sind in Ordnung. Aber was ist, wenn Sie unterschiedliche Sprachmodi für verschiedene Ordner wünschen?

VSCode verfügt in seiner Datei .vscode/settings.json über ein files.associations-Objekt. Es ist eine Zuordnung des Glob-Musters zum Sprachmodus. Weitere Informationen finden Sie in der unterstützten Glob-Mustersyntax in den VSCode-Dokumenten.

So ändern Sie den Sprachmodus für alle Dateien überall

Die einfachste Variante. Alle Dateien benötigen einen anderen Sprachmodus.

Wenn Sie beispielsweise mit Tailwind CSS stylen und die Tailwind CSS-Erweiterung für VSCode installieren, möchten Sie alle *.css-Dateien in den Tailwindcss-Modus statt in einfaches CSS ändern.

{
  "files.associations": {
    "*.css": "tailwindcss"
  }
  ...
}

So ändern Sie den Sprachmodus für bestimmte Pfade

Es ist auch nicht ungewöhnlich, dass Dateien in bestimmten Unterordnern einen anderen Sprachmodus benötigen.

Beim Thematisieren der Sphinx-Dokumentation erstellen Sie beispielsweise viele HTML-Dateien, die kein reines HTML, sondern Jinja-HTML sind. Ich installiere die Better Jinja-Erweiterung, die den Jinja-HTML-Modus bereitstellt.

"source/_templates/*.html": "jinja-html``

Sicherer ist die Verwendung von **, d. h. irgendwo – am Pfad oder einem beliebigen Unterpfad.

{
  "files.associations": {
    "*.css": "tailwindcss",
    "source/_templates/**/*.html": "jinja-html`
  }
  ...
}

Wie kann ich Sonderzeichen für Dateien im Sprachmodus maskieren?

Jetzt der knifflige Teil, den ich bei der Vorbereitung der Starter-Vorlage für neue Sphinx-Themes basierend auf dem Cookiecutter-Vorlagengenerator gefunden habe.

Cookiecutter-Projekte verwenden einen Ordner mit dem Namen {{ cookiecutter.project_slug }}. Nur darunter möchte ich die Zuordnung ändern, z.B. für *.py von py nach jinja-py.

Das Maskieren von Glob-Muster-Sonderzeichen (wie *, { usw.) wird in den VSCode-Dokumenten nicht beschrieben, ist aber möglich.

Erstens funktionieren diese NICHT:

  • „{{ cookiecutter.project_slug }}/**/*.py": "jinja-py", weil { und } die Gruppierungszeichen des Glob-Musters sind.
  • "{{{{ cookiecutter.project_slug }}}}/**/*.py“: „jinja-py“, da das Verdoppeln zum Escape kein VSCode-Glob-Muster-Escape-Mechanismus ist
  • {{ cookiecutter.project_slug }}/**/*.py": "jinja-py", da es sich beim Backslash-Escape um ein Escape-Zeichen, sondern um JSON selbst handelt (z. B. n).

Das Escape the Backslash reicht aus ("\{\{ cookiecutter.project_slug \}\}/**/*.css": "tailwindcss"). Zum Beispiel:

{
  "files.associations": {
    // CSS files are Tailwind
    "\{\{ cookiecutter.project_slug \}\}/**/*.css": "tailwindcss",
    // HTML files are Jinja
    "\{\{ cookiecutter.project_slug \}\}/**/*.html": "jinja-html",
    "\{\{ cookiecutter.project_slug \}\}/**/*.py": "jinja-py",
    "\{\{ cookiecutter.project_slug \}\}/**/*.toml": "jinja-toml",
    "\{\{ cookiecutter.project_slug \}\}/**/*.json": "jinja-json"
  },
  ...
}

Das obige ist der detaillierte Inhalt vonVSCode-Sprachmoduszuordnung für Unterordner und Sonderzeichenordner. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn