Einstellungen
AnyAutomation Studio öffnet standardmässig einen eigenen, gebrandeten Einstellungs-Editor als Editor-Pane in der Mitte. Er bündelt die wichtigsten Optionen in einer kompakten Kategorien-Ansicht: links eine Liste der Kategorien mit eigenem Symbol, rechts die zugehörigen Abschnitte und Felder.
Öffnen
Alle Wege öffnen denselben, einmalig angehefteten Einstellungs-Editor (ein zweiter Aufruf holt den vorhandenen wieder in den Vordergrund, statt einen weiteren zu öffnen):
- Zahnrad-Symbol (unten in der Activity Bar) → Settings.
- Menüleiste: File → Preferences → Settings.
- Tastatur:
Strg+,(Cmd+,unter macOS). - Befehlspalette (
Strg+Umschalt+P): Settings.
Änderungen werden automatisch gespeichert — kein Save- oder Cancel-Button. Jedes Feld, dessen Wert vom Standard abweicht, zeigt einen farbigen Akzent-Balken am linken Rand und in der Zeile ein Reset-Bedienelement, das es mit einem Klick auf den Standard zurücksetzt.
Den nativen VS-Code-Einstellungs-Editor erreichen
Der native VS-Code-Einstellungs-Editor ist nicht mehr das Standardziel, bleibt aber jederzeit erreichbar: Unter der Kategorien-Liste — durch eine dünne Trennlinie abgesetzt — liegt ein gedämpfter Link VS Code Settings, der ihn öffnet. Alternativ bietet die Befehlspalette weiterhin Open Settings (UI). Beide Editoren bleiben synchron, weil sie dieselben Einstellungen lesen und schreiben.
Kategorien
Die Kategorien-Liste enthält genau vier Einträge, jeder mit eigenem Symbol; ein Klick wechselt den Inhaltsbereich rechts.
| Kategorie | Was darin liegt |
|---|---|
| General | Ein Abschnitt Startup mit dem Check for updates-Modus (Automatic / On Startup / Manual / Off, dazu eine Check Now-Schaltfläche) sowie ein Abschnitt Migration mit einer Schaltfläche Einstellungen aus VS Code importieren. |
| Files & Folders | Log-Verzeichnis und Working-Folder (jeweils mit Durchsuchen…-Schaltfläche), Ordnernamen-Anpassung, "Create Source folder"-Schalter, Archiv-Benennung (Suffix, Zeitstempel anhängen, Zeitstempel-Format). |
| Import/Export | Import-Optionen (Strukturänderungen ignorieren, fehlende Referenzen ignorieren, fault-tolerant), Export-Optionen pro Typ (Programmbausteine / Datentypen / Tags / Technologieobjekte / HMI als Auswahl None / With Defaults / With Read-Only, geschützte Dateien exportieren), zusätzlicher S7DCL-Export, Fingerprint-Cache, Version-Control-Normalisierung. |
| Find Unused | Scan-Umfang (Bausteine, Datenbausteine, UDTs, Tags) und auszuschliessende Namens-Muster (Liste mit */?-Platzhaltern). |
Jedes Feld zeigt im Editor direkt die zugehörige Beschreibung an; bei Auswahllisten erscheint zusätzlich beim Verweilen mit der Maus eine Erläuterung jeder Option.
Auf Updates prüfen (unter General → Startup)
Öffnen Sie Settings → General und gehen Sie zum Abschnitt Startup. Die Auswahlliste Check for updates legt fest, wie AnyAutomation Studio nach neuen Versionen sucht:
| Modus | Verhalten |
|---|---|
| Automatic (Standard) | Prüft kurz nach dem Start und danach regelmässig im Hintergrund; Updates werden automatisch heruntergeladen und installiert. |
| On Startup | Prüft einmal kurz nach jedem Start. |
| Manual | Prüft nie von selbst — verwenden Sie Check Now, wenn Sie nach einer neuen Version suchen möchten. |
| Off | Update-Prüfungen sind vollständig deaktiviert. |
Die Schaltfläche Check Now neben der Auswahlliste prüft sofort. Stehen Updates in Ihrer aktuellen Installation nicht zur Verfügung — zum Beispiel wenn eine Kopie läuft, die nicht über eines der Setup-Programme eingerichtet wurde —, weist eine Benachrichtigung darauf hin.
Was nach einem gefundenen Update passiert — der Zähler auf dem Zahnrad-Symbol und Restart to Update — beschreibt Installation.
Einstellungen aus VS Code importieren (unter General → Migration)
Wenn Sie von Visual Studio Code kommen, übernehmen Sie Ihre bestehende Einrichtung mit einem Klick. Öffnen Sie Settings → General, gehen Sie zum Abschnitt Migration und klicken Sie neben Einstellungen aus VS Code importieren auf Importieren.
Was übernommen wird:
- Einstellungen — Ihre Editor- und Workbench-Vorlieben.
- Tastenkürzel — Ihre eigenen Tastenkombinationen.
- Snippets — Ihre Code-Snippets.
- Erweiterungen — die bei Ihnen installierten Erweiterungen (sofern noch verfügbar, werden sie hier neu installiert).
Der Import ist sicher und ergänzend:
- Ihre bestehenden Festlegungen bleiben erhalten. Jeder Wert, den Sie in AnyAutomation Studio bereits geändert haben, bleibt unverändert — der Import überschreibt ihn nie. Nur Optionen, die Sie selbst noch nicht gesetzt haben, werden aus VS Code befüllt.
- Es wird nichts entfernt. Bereits vorhandene Tastenkürzel und Snippets bleiben unangetastet; nur neue kommen hinzu.
- Einzelne Erweiterungen können übersprungen werden. Eine nicht mehr verfügbare Erweiterung wird in der Zusammenfassung gemeldet und einfach übersprungen — die übrigen werden trotzdem übernommen.
Während des Imports erscheint eine kurze Fortschrittsmeldung. Am Ende nennt eine Zusammenfassung, wie viele Einstellungen, Tastenkürzel, Snippets und Erweiterungen importiert wurden (und listet übersprungene Erweiterungen auf). Klicken Sie in dieser Meldung auf Fenster neu laden, um alles fertig zu übernehmen. Wird keine VS-Code-Installation gefunden, weist ein Hinweis darauf hin, und es wird nichts geändert.
Ordnernamen-Anpassung (unter Files & Folders → Ordnernamen)
| TIA-Portal-Name | Standard-Export-Name | Konfigurierbar |
|---|---|---|
| (Gerät) | Source | ✓ |
| Programmbausteine | Blocks | ✓ |
| PLC-Datentypen | Datatypes | ✓ |
| PLC-Variablen | Tags | ✓ |
| Technologieobjekte | Technology Objects | ✓ |
| Software Units | Software Units | ✓ |
Die "Create Source folder"-Checkbox steuert, ob Exporte einen Source-Wrapper enthalten:
| Einstellung | Export-Pfad |
|---|---|
| ✓ Aktiviert | WorkingDir/Source/PLC_1/Blocks/... |
| ☐ Deaktiviert | WorkingDir/PLC_1/Blocks/... |
Diese Einstellung beeinflusst auch die Projekt-Baumstruktur und die Import-Pfaderkennung.
File Explorer — Watcher-Excludes
Der File-Explorer-Baum überspringt beim Einlesen des geöffneten Working-Folders alle Ordner, die auf eine Watcher-Excludes-Liste passen. Vorgaben: .git, .vs, .idea, bin, obj, node_modules, .claude, .worktrees.
Diese Liste gehört nicht zum gebrandeten Einstellungs-Editor — passen Sie sie im nativen VS-Code-Einstellungs-Editor an (Link VS Code Settings öffnen, dann nach watcher excludes suchen). Über die Liste lässt sich:
- Zusätzliche Ordner ausblenden — pro Zeile ein Ordnername (z. B.
dist,coverage,.next). - File-Watcher-Last reduzieren — grosse Build-Output-Ordner (
bin/obj) können den Betriebssystem-Watcher-Puffer überfüllen; werden sie ausgeschlossen, entfällt unnötige Scan-Arbeit bei jedem Build. - Die Standardliste wiederherstellen — Textfeld leeren; beim nächsten Refresh greifen wieder die Vorgaben.
Änderungen werden wirksam, sobald der Working-Folder neu geöffnet oder aktualisiert wird. Den Rest des Dateibaum-Verhaltens beschreibt File Explorer.
Editor-Verhalten (im nativen VS-Code-Einstellungs-Editor konfiguriert)
Der gebrandete Einstellungs-Editor deckt die vier Kategorien oben ab. Code-Editor-Verhalten — Klammer-Einfärbung, Einrückungslinien, das Rechtsklick-Menü, die C#- und SCL-Sprachhilfen — gehört nicht zum gebrandeten Editor; es wird im nativen VS-Code-Einstellungs-Editor umgeschaltet (Link VS Code Settings öffnen, dann nach dem Schalter-Namen suchen). Die nützlichsten:
- Code-Editor-Rechtsklick-Menü — ein Rechtsklick im Code-Editor zeigt KI-Unterstützung, Bearbeiten-, Navigations-, Git- und Zwischenablage-Aktionen; dieselben Aktionen haben auch Tastenkürzel. Die vollständige Liste beschreibt Kontextmenüs.
- C#-Sprachfunktionen — ein Schalter C#-Sprachfunktionen aktivieren koppelt einen mitgelieferten Sprachserver an
.cs-Dateien, die im File Explorer geöffnet werden, und ergänzt Inline-Fehler-Wellenlinien, das Probleme-Panel, Hover-Doku, F12-Gehe-zu-Definition, Verweise suchen, Vervollständigung, Quick-Fixes (Strg+.), Umbenennen (F2), Formatierung, eine Gliederung-Ansicht, Breadcrumbs, globale Symbol-Suche (Strg+T), Referenz-Zähler-Zeilen, Inlay-Hinweise und Hintergrundaufgaben-Fortschritt in der Statusleiste. Er ist standardmässig deaktiviert (der Server kann beim Indexieren 1–10 GB Speicher belegen) und die Änderung greift erst beim nächsten Start. Ein Schalter Solution automatisch laden und ein Feld Expliziter Solution-Pfad lassen den Server eine.sln/.csprojladen, damit dateiübergreifende Diagnosen funktionieren; das automatische Laden ist standardmässig aus, weil es Analyzer-Code aus dem Projekt ausführen kann. SCL-, AWL-, UDT- und andere Siemens-Baustein-Formate sind nicht betroffen. - Darstellung — Schalter für verschachtelte Klammer-Einfärbung, Einrückungslinien, übereinstimmende Bezeichner hervorheben, Klammern und Anführungszeichen automatisch schliessen sowie Schriftligaturen, dazu ein Feld Editor-Schriftfamilie (komma-getrennt; die erste installierte Schriftart wird verwendet). Inlay-Hinweise und der Bestätigungsmodus für servergesteuerte Bearbeitungen werden hier ebenfalls konfiguriert. Diese wirken sofort ohne Neustart.
- Ausschlüsse für die Änderungserkennung — eine Glob-Liste (ein Muster pro Zeile, z. B.
**/node_modules/**,**/bin/**), die Pfade von der Datei-Änderungs-Überwachung ausschliesst, damit grosse Repositories reaktionsschnell bleiben; ungültige Muster werden mit einer Warnung übersprungen.
Die Fussleiste jedes Editor-Reiters zeigt zudem eine Sprachauswahl-Dropdown neben den Zeilen- und Zeichenzählern, gegliedert in TIA-Portal-Sprachen (SCL, auch für .db/.udt, und AWL) und Andere Sprachen (C#, Python, TypeScript, JSON, XML, Markdown, …, plus Plain Text). Die Sprache wird automatisch aus der Datei-Endung erkannt; ein Überschreiben gilt nur für den aktuellen Reiter und wird nicht gespeichert.
SCL-Editor-Intelligenz
Beim Öffnen einer .scl-Datei aus dem File Explorer oder aus einem TIA-Projekt-Reiter wird ein dedizierter SCL-Sprachserver an den Editor gekoppelt, der zusätzlich zur eingebauten Syntax-Hervorhebung arbeitsbereichsbezogene Editier-Hilfen bereitstellt:
- Vervollständigung — Während des Tippens schlägt die Liste SCL-Schlüsselwörter (
FUNCTION_BLOCK,BEGIN,END_IF,VAR_INPUTusw.) sowie die Namen aller Funktionsbausteine, Funktionen, Datenbausteine und UDTs vor, die im offenen Arbeitsbereich und im aktuell geöffneten TIA-Portal-Projekt gefunden wurden. Die Vorschläge aktualisieren sich automatisch, sobald Dateien hinzugefügt, entfernt oder umbenannt werden und sobald Bausteine im geöffneten Projekt hinzugefügt oder entfernt werden. - Hover — Beim Verweilen mit dem Mauszeiger über einem Bezeichner zeigt ein Tooltip die Symbol-Kategorie (FB, FC, DB, UDT), die Signatur und — falls vorhanden — die erste Kommentarzeile über der Deklaration an.
- Dokument-Gliederung — Der Outline-Bereich neben Problems und References listet jeden Funktionsbaustein, jede Funktion und jeden Datenbaustein der aktuellen Datei als Baum auf: jeder Top-Level-Eintrag lässt sich in seine VAR-Blöcke (
VAR_INPUT,VAR_OUTPUT,VAR_IN_OUT,VAR,VAR_TEMP,VAR CONSTANT) und von dort zu den einzelnen Mitgliedern aufklappen. Ein Doppelklick auf eine Zeile springt mit dem Cursor an die Stelle des Symbols. - Faltung — Bereichs-Marker (
REGION/END_REGION) sowieIF/ELSIF/ELSE/END_IF-Blöcke lassen sich aus dem Bundsteg einklappen. Der Falt-Zustand gilt pro Reiter und wird zurückgesetzt, sobald die Datei erneut geöffnet wird. - Syntaxprobleme — Während des Tippens markiert der Editor grundlegende Syntaxprobleme: ein unerwartetes Zeichen, eine nicht geschlossene Zeichenkette oder ein nicht geschlossener Kommentar, einen Block ohne sein Abschluss-Schlüsselwort (zum Beispiel ein Funktionsbaustein ohne
END_FUNCTION_BLOCK) oder einen Bereich ohne passendes Ende. Jedes Problem erscheint als rote Markierung unter der betroffenen Stelle — beim Verweilen mit dem Mauszeiger wird die Meldung angezeigt — und als Zeile im Probleme-Panel; ein Klick auf die Zeile springt direkt an die Stelle. Die Markierungen aktualisieren sich während des Bearbeitens und verschwinden, sobald die Datei geschlossen wird. - Deklarationsprobleme — Der Editor markiert während des Bearbeitens zusätzlich zwei Deklarationsfehler: einen Namen, der im selben Gültigkeitsbereich mehrfach deklariert ist (eine doppelte Variable in einem
VAR-Block, ein doppeltes Element in einem DB oder UDT oder zwei Bausteine mit demselben Namen), und eine lokale Variablenreferenz — mit führendem#geschrieben, etwa#speed— die keiner im Baustein deklarierten Variable entspricht. Diese erscheinen als Markierungen und Probleme-Zeilen wie Syntaxprobleme. Referenzen auf globale Variablen (Tags), Bibliotheksbausteine (etwaTON) und andere Programmbausteine werden hier bewusst nicht geprüft, sodass eine gültige bausteinübergreifende oder Tag-Referenz nie markiert wird. - Typwarnungen — Wenn Sie einer lokalen Variable direkt einen offensichtlich unpassenden Literalwert zuweisen — zum Beispiel ein Text- oder Zeitliteral an eine numerische Variable oder eine Dezimalzahl an eine Ganzzahl — zeigt der Editor eine Warnung im Probleme-Panel an. Nur dieser einfache, eindeutige Fall wird geprüft; Werte aus Ausdrücken, Aufrufen oder anderen Variablen sowie Zuweisungen, bei denen SCL implizit konvertiert, bleiben TIA Portal überlassen.
Wo diese Hilfen greifen
Live-Problemprüfung, Vervollständigung und Hover greifen sowohl bei SCL-Bausteinen, die Sie aus dem Projektbaum öffnen (Funktionsbausteine, Funktionen und Organisationsbausteine), als auch bei eigenständigen .scl-Dateien, die Sie aus dem File Explorer öffnen — nicht nur bei Dateien, die innerhalb eines Projekts gespeichert sind. Wenn Sie einen Baustein aus dem Projektbaum öffnen und bearbeiten, werden Probleme und Vorschläge genauso angezeigt wie bei einer gespeicherten Datei; das Speichern des Bausteins schreibt ihn weiterhin nach TIA Portal zurück, niemals in eine Datei auf dem Datenträger.
SCL-Intelligenz aktivieren oder deaktivieren
Der SCL-Sprachserver ist standardmässig aktiv. Zum Abschalten den Link VS Code Settings öffnen, nach dem Schalter SCL-Sprachserver suchen und ihn deaktivieren. Die Änderung greift beim nächsten Öffnen einer SCL-Datei — bereits offene Reiter behalten das vorherige Verhalten, bis sie geschlossen und neu geöffnet werden. Mit deaktiviertem Schalter behalten SCL-Dateien die Syntax-Hervorhebung und die eingebaute Schlüsselwort-Vervollständigung, aber arbeitsbereichsbezogene Vervollständigung, Hover, Gliederung, Faltung und Problem-Markierungen stehen nicht zur Verfügung.
Verhalten bei mehreren Projekten
Jeder geöffnete TIA-Portal-Projekt-Reiter erhält einen eigenen, isolierten Satz an SCL-Symbolen. Die Vervollständigung in einer .scl-Datei aus Projekt A listet niemals Funktionsbausteine aus Projekt B auf, auch wenn beide Projekte parallel geöffnet sind. Die Liste enthält auch die Baustein- und Datentyp-Namen aus dem geöffneten TIA-Projekt selbst — sobald ein Projekt aus der Startseite geöffnet ist und der Ladevorgang beendet wurde, schlagen die Vorschläge dessen oberste FBs, FCs, DBs und UDTs vor (Safety-Programm-Varianten inbegriffen). Das Schliessen eines Projekt-Reiters gibt seine Symbole sofort frei; beim erneuten Öffnen des Projekts wird der Symbol-Index aus dem Projektbaum neu aufgebaut.
Bekannte Einschränkungen
Der SCL-Sprachserver konzentriert sich auf Navigations- und Editier-Hilfen; er ersetzt den TIA-Portal-Compiler nicht:
- Noch keine vollständige Typprüfung. Über die oben beschriebene einfache Literal-Typwarnung hinaus führt der Editor keine vollständige ausdrucksweite Typprüfung durch und markiert undeklarierte Referenzen auf globale Variablen (Tags), Bibliotheksbausteine oder andere Programmbausteine nicht inline. Für verbindliche Diagnose vor einem PLC-Download TIA Portal → Übersetzen verwenden.
- Keine Symbolnavigation. Gehe zu Definition (F12) ist nicht verfügbar; verwenden Sie die TIA-Portal-eigene Navigation, um zwischen FB-/Funktions-Definitionen zu springen.
- Keine Symbol-Umbenennung. F2 in .scl-Dateien ist nicht verfügbar. Verwenden Sie die TIA-Portal-Umbenennungsfunktion für jede Umbenennung, die alle Aufrufstellen aktualisieren muss.
Eine bestimmte Einstellung finden
Der gebrandete Editor ist nach Kategorien gegliedert — klicken Sie links eine Kategorie an, um ihre Abschnitte und Felder samt Beschreibung anzuzeigen. Um eine einzelne Einstellung nach Name oder Stichwort zu suchen (auch solche, die hier nicht aufgeführt sind), öffnen Sie den Link VS Code Settings und nutzen das Suchfeld jenes Editors; zum Beispiel listet @tag:tiaPortal die TIA-Portal-Schlüssel auf.
Lizenz
Lizenz-Aktivierung, Trial-Status, Hardware-ID und das EPLAN-Add-on werden weiterhin in einem eigenen, fokussierten Fenster verwaltet — erreichbar über die Startup-Abfrage, das Trial-Banner oder den Manage License-Einstieg.
Log-Dateien
Bei aktiviertem Debug-Logging werden detaillierte Logs erstellt:
- Speicherort: konfigurierbar unter Files & Folders → Log File Directory.
- Jede Sitzung schreibt eine eigene, mit Datum und Uhrzeit benannte Textdatei.