ldproxy for VS Code

Eine VS Codeopen in new window Extension, die Sie bei der Erstellung und Aktualisierung von ldproxyopen in new window Konfigurationen unterstützt.

Aktueller Stand

  • Die aktuelle stabile Version ist v1.1.0.
  • Sie ist als Pre-Release im VS Code Marketplace verfügbar (derzeit nur für macOS und Linux).
  • Sie kann als Webanwendung mithilfe des Docker-Image verwendet werden, das eine Open-Source-Version von VS Code for the Web enthält.

Funktionen

  • Befehl Create new entities: bietet einen grafischen Assistenten zur automatischen Generierung von Provider- und Service-Konfigurationen aus Datenquellen.
  • Befehl Create new values: bietet einen grafischen Assistenten zur automatischen Generierung von Value-Konfigurationen, derzeit nur für MapLibre-Styles.
  • IntelliSense: Autovervollständigung, zeigt verfügbare Properties in YAML-Konfigurationsdateien an.
  • Syntax checks: erkennt unbekannte oder veraltete Properties in YAML-Konfigurationsdateien.
  • Tooltips: zeigt die Dokumentation für Properties in YAML-Konfigurationsdateien an.

Limitationen

  • Die Erweiterung ist derzeit noch nicht für Windows verfügbar, nur für macOS und Linux.
  • Das Wurzelverzeichnis des Workspace muss ein ldproxy Store-Verzeichnis sein, damit die Erweiterung ordnungsgemäß funktioniert. Übergeordnete Verzeichnisse, die mehrere Store-Verzeichnisse enthalten, werden derzeit nicht unterstützt, ebenso wenig wie Multi-Root-Workspaces.
  • Tile-Provider können derzeit noch nicht generiert werden.

Ausblick

  • v2.0.0 allgemeine Verfügbarkeit der Erweiterung für VS Code Desktop (macOS, Windows, Linux), keine bekannten Limitierungen

Installation

VS Code Desktop

Öffnen Sie den Extension-View in der Aktivitätsleiste und suchen Sie nach ldproxy, dann installieren Sie die Erweiterung ldproxy for VS Code. Diesopen in new window ist ein direkter Link zur Erweiterung im VS Code Marketplace.

Nach der Installation können Sie ein ldproxy Store-Verzeichnis in VS Code öffnen, zum Beispiel über Datei -> Ordner öffnen oder indem Sie code in einem Terminal aufrufen. Sie können dann mit der Bearbeitung Ihrer Dateien beginnen.

Docker

Das Docker-Image ist verfügbar unter ghcr.io/ldproxy/editor. Es erwartet, dass der Workspace unter /data gemountet wird. Die Anwendung läuft auf Port 80.

Um den Editor mit Ihrem ldproxy-Konfigurationsverzeichnis in /pfad/zu/ldproxy/cfg zu starten und ihn unter http://localhost:8080 aufzurufen:

docker run -d -p 8080:80 -v /pfad/zu/ldproxy/cfg:/data ghcr.io/ldproxy/editor

Wenn Sie die Anwendung unter http://localhost:8080 im Browser öffnen, sehen Sie das gemountete ldproxy-Konfigurationsverzeichnis auf der linken Seite. Sie können nun beginnen, Ihre Dateien zu bearbeiten.

Notiz

Der Zugriff auf den Editor via http funktioniert nur mit localhost. Um den Editor für Remote-Zugriff bereitzustellen, wird ein Reverse-Proxy mit https benötigt.

Verwendung

Unbekannte oder veraltete Eigenschaften werden in geöffneten Dateien automatisch markiert. Wenn Sie mit der Maus über eine Eigenschaft fahren, wird die Dokumentation angezeigt.

Allgemeine Hilfe finden Sie in der Dokumentation zu [VS Code] (https://code.visualstudio.com/docsopen in new window).

IntelliSense (Autovervollständigung)

Um eine Liste aller verfügbaren Properties an einer bestimmten Stelle in einer YAML-Konfigurationsdatei zu erhalten, kann man Ctrl+Space drücken. (Es heißt Trigger suggest in der Befehlspaletteopen in new window, dort wird auch der konfigurierte Hotkey angezeigt.)
Dann kann man mit den Cursor-Tasten durch die Vorschläge navigieren und mit Enter einen auswählen. Man kann auch vor oder nach dem Triggern anfangen zu tippen, um die Vorschläge einzugrenzen.

Erstellen neuer Entities

Wenn Sie die Befehlspaletteopen in new window öffnen und beginnen, ldproxy einzugeben, sollte der Befehl ldproxy: Neue Entitäten erstellen oben erscheinen. Wenn Sie ihn auswählen, wird der grafische Assistent in einem neuen Tab geöffnet.

Er ermöglicht es Ihnen, automatisch Provider- und Service-Konfigurationen aus PostgreSQL/PostGIS, GeoPackage und WFS Datenquellen zu generieren.

Notiz

Wenn Sie versuchen, auf eine PostgreSQL-Datenbank auf demselben Host zuzugreifen, auf dem der Docker-Container läuft, müssen Sie host.docker.internal anstelle von localhost verwenden.

Erstellen neuer Werte

Wenn Sie die Befehlspaletteopen in new window öffnen und beginnen, ldproxy einzugeben, sollte der Befehl ldproxy: Create new values oben erscheinen. Wenn Sie ihn auswählen, wird der grafische Assistent in einem neuen Tab geöffnet.

Derzeit können Sie damit nur automatisch einen MapLibre-Style aus einer Service-Konfiguration generieren.