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 — stehen zwei gedämpfte Links, Open Agent Customization und VS Code Settings; letzterer öffnet den nativen Editor. 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 je einen Eintrag pro Thema, 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), ein Abschnitt Output mit dem Schalter Reveal Output on Compile Errors, ein Abschnitt Large Operations mit dem Schalter Pause TIA Portal Project Search During Large Operations sowie ein Abschnitt Migration mit einer Schaltfläche Einstellungen aus VS Code importieren. |
| Project Explorer | Ein Abschnitt Loading mit den Schaltern Load Hardware, Load HMI und Load Project Library, alle standardmässig aus. Aus: Der Ordner (bei HMI: jedes HMI-Gerät) bleibt im Baum und trägt ein kleines Ladesymbol, das ihn beim Klick liest, wobei ein Klick auf ein beliebiges HMI-Gerät alle HMI-Geräte liest, sodass der Baum nach dem Verbinden schneller erscheint; ein: Der Zweig wird gelesen, sobald das Projekt verbunden ist (siehe Projekt-Explorer). |
| Editor | Ein Abschnitt Block Editor mit den Schaltern Bausteinschnittstelle wie in TIA anzeigen und UDTs als .udt öffnen (Datentypen als lesbare .udt-Quelle öffnen; ausgeschaltet öffnen sie als schreibgeschütztes XML. Hinweis: Eine .udt-Quelle trägt die Fehlersicherheit eines Datentyps nicht mit, daher öffnet ein Datentyp des Sicherheitsprogramms stattdessen als sein Quelldokument, ab TIA Portal V20 zum Bearbeiten, in älteren Versionen schreibgeschützt) sowie ein Abschnitt Screen Editor mit Unified Screen Style (Automatisch / Flat Bright / Flat Dark / Extended) und der Unified Font Family für WinCC-Unified-Bilder. |
| 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). Temporäre Dateien für Vergleich, Import und Baustein-Bearbeitung liegen in einem Unterordner tmp des Working-Folders und werden automatisch aufgeräumt. Bleibt der Working-Folder leer, landen Exporte in einem AnyAutomationStudio-Ordner in Ihrem Benutzerprofil, temporäre Dateien liegen im temporären Verzeichnis des Systems, und Studio legt nie Dateien im geöffneten Ordner ab. |
| Import/Export Settings | Import-Optionen (Strukturänderungen ignorieren, fehlende Referenzen ignorieren, fault-tolerant sowie .udt gegenüber .xml bevorzugen, standardmässig aus), Export-Optionen pro Typ (Programmbausteine / Datentypen / Tags / Technologieobjekte / HMI als Auswahl None / With Defaults / With Read-Only, geschützte Dateien exportieren sowie Datentypen als .udt-Quelle, standardmässig aus, sodass Datentypen nur als XML exportiert werden; eine .udt-Quelle trägt die Fehlersicherheit eines Datentyps nicht mit), das WinCC Unified Screen Format als WinCC Markup oder Spreadsheet (.xlsx), zusätzlicher S7DCL-Export, Fingerprint-Cache, Version-Control-Normalisierung. |
| Find Unused | Scan-Umfang (Bausteine, Datenbausteine, UDTs, Tags) und auszuschliessende Namens-Muster (Liste mit */?-Platzhaltern). |
| Codebase Index | Semantische Code-Suche über den Arbeitsbereich: Indexierung (Embedding-URL, Modell, API-Key, Vektor-Dimension), Speicher (LanceDB oder Qdrant), Suche & Feinabstimmung, Reranking und Chat-Auto-Kontext. Ein Geltungsbereich-Umschalter (Global / Lokal) oben legt fest, ob die Einstellungen für alle Arbeitsbereiche oder nur dieses Projekt gelten. |
| Forge | Block-Typ-Bibliothek (Bibliotheks-Ordner samt Schaltflächen zum Öffnen, in Source Control öffnen, Git-Repository initialisieren), Datentypen (Datentypen als .udt-Quelle erfassen und .udt gegenüber .xml beim Ausspielen bevorzugen, beide standardmässig aus, siehe Forge) und Projekt-Graphen (Ordner und Unterordner samt entsprechender Schaltflächen). |
| SCADA | Alles, womit die SCADA-Seitenleiste arbeitet: die FUXA Instance (Adresse, Benutzername, die Schaltflächen zum Setzen oder Entfernen des Passworts und der FUXA Install Folder eines direkt installierten FUXA), das Deployment von FUXA in Docker (der Docker-Host, bereitstellen, starten, stoppen und neu starten, sichern, wiederherstellen, offline installieren, eine Docker-Compose-Vorlage und die FUXA-Anmeldung), die Symbol Library, die Plant Connection (OPC-UA-Server, Siemens S7 PLC oder MQTT-Broker, ihre Adresse sowie der Namespace-Index oder Rack und Slot) und die OPC UA Security (Modus, Policy, Benutzername und die Passwort-Schaltflächen). An die FUXA Instance sendet Send to FUXA in der SCADA-Ansicht Project; der SCADA-Zieleintrag in der Statusleiste öffnet und testet sie, und sein Change FUXA Address and Connection... öffnet diese Kategorie. |
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.
Projektsuche von TIA Portal pausieren (unter General → Large Operations)
Öffnen Sie Settings → General und gehen Sie zum Abschnitt Large Operations. Der Schalter Pause TIA Portal Project Search During Large Operations ist standardmässig eingeschaltet.
Eingeschaltet schaltet Studio die Projektsuche von TIA Portal für die Dauer eines grossen Exports oder Imports aus und danach wieder ein. Grosse Exporte und Importe laufen dadurch spürbar schneller. Während des Vorgangs findet die Suche in TIA Portal nichts, und nach dem Wiedereinschalten braucht TIA Portal einige Minuten, bis sie wieder alles findet.
Schalten Sie die Option aus, wenn Ihre TIA-Portal-Optionen unberührt bleiben sollen. Studio lässt die Suche ausserdem in Ruhe, wenn Sie sie selbst ausgeschaltet hatten, und bei kleinen Exporten und Importen.
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.
SCADA-Dashboards (unter SCADA)
Öffnen Sie in den Einstellungen die Kategorie SCADA, oder klicken Sie bei offenem SCADA-Projekt auf den SCADA-Zieleintrag in der Statusleiste und wählen Sie Change FUXA Address and Connection... (siehe SCADA-Dashboards). Die Kategorie enthält die FUXA-Instanz, an die Send to FUXA in der SCADA-Ansicht Project sendet, und jede Vorgabe, mit der das Dashboard gebaut wird; der Tooltip des Statusleisten-Eintrags zeigt die verwendeten Werte:
- FUXA Instance: die FUXA Address Ihrer Instanz, zum Beispiel
http://localhost:1881, und, falls sie eine Anmeldung verlangt, der User Name zusammen mit Set Password.... Das Passwort wird sicher gespeichert und nie wieder angezeigt; Clear Password daneben entfernt es. Sobald Sie für diese Adresse mit Set Target Login and Stage eine Anmeldung hinterlegt haben, meldet sich Studio mit dieser an. Ob ein Senden das Dashboard in das bereits auf der Instanz vorhandene Projekt zusammenführt oder das ganze Projekt ersetzt, wählen Sie bei jedem Senden im Sendedialog. FUXA Install Folder ist für ein direkt auf diesem Computer installiertes FUXA: Wählen Sie seinen Ordner, und Test Connection liest die genaue FUXA-Version daraus; leer gelassen, fragt Studio die laufende Instanz. - Deployment: betreibt FUXA für Sie in einem Docker-Container; das Sichern eines Datenordners und das Einschalten der Anmeldung funktionieren auch für ein direkt installiertes FUXA. Setzen Sie den Docker Host (leer für die lokale Docker-Engine, oder eine entfernte Engine wie
tcp://host:2376oderssh://user@host) und nutzen Sie die Schaltflächenzeilen. Deploy FUXA in Docker: Check Docker sagt Ihnen, ob Docker erreichbar ist und ob ein FUXA-Container existiert, Deploy erstellt und startet einen aus einer FUXA-Version, die Studio geprüft hat, und Deploy from Compose File... tut dasselbe aus einer eigenen Docker-Compose-Datei; Studio fragt, ob FUXA nur auf dem Docker-Host oder unter einer Netzwerkadresse erreichbar sein soll, die Sie eingeben, der Container startet nach einem Neustart des Hosts von selbst wieder, ausser Sie haben ihn gestoppt, und eine Bereitstellung über einen bestehenden Container sichert zuerst seine Volumes in einen Ordner Ihrer Wahl. FUXA Container: Start, Stop und Restart. Backup and Offline Install: Back Up... schreibt die Volumes des Containers in ein Archiv oder kopiert den Datenordner eines direkt installierten FUXA, Restore... holt eine Volume-Sicherung zurück, nachdem es eine frische geschrieben hat, Load Image File... lädt eine FUXA-Image-Datei auf einen Docker-Host ohne Internetzugang, und Export Compose Template... schreibt eine Docker-Compose-Datei für die geprüfte Version, auf Wunsch mit einem Reverse Proxy für HTTPS. FUXA Login: Enable Login... schaltet die FUXA-Anmeldung ein und ersetzt das Passwort des Administrators, den Sie nennen; Studio speichert das neue Passwort, und die erste Bereitstellung in Docker bietet das von selbst an. Jede Aktion zeigt Fortschritt und Ergebnis als Benachrichtigung, und eine frisch bereitgestellte oder erkannte Instanz trägt die FUXA-Adresse für Sie ein. Details unter SCADA-Dashboards. - Symbol Library: macht Ihre eigenen SVG-Symbole im Editor von FUXA verfügbar, wenn Sie die erzeugten Bilder dort von Hand weiterbearbeiten möchten (das erzeugte Dashboard bettet die verwendeten Symbole bereits ein). Die beiden Schaltflächen stehen in einer Zeile: Stage in Container... kopiert einen Symbolordner in den laufenden Docker-Container und startet ihn neu; ein Container, den Studio bereitgestellt hat, behält die Bibliothek, wenn er durch eine neuere Version ersetzt wird, in jeden anderen Container laden Sie die Symbole erneut, nachdem er neu aufgesetzt wurde. Export... ist für ein direkt installiertes FUXA: Wählen Sie den Symbolordner und dann den Shapes-Ordner Ihrer FUXA-Installation, die Bibliothek wird dort geschrieben und registriert; starten Sie FUXA danach neu. Wählen Sie einen anderen Ordner, sagt Ihnen die Benachrichtigung, wohin die Datei gehört.
- Plant Connection: die Connection legt fest, wie das fertige Dashboard die Anlage erreicht, ein OPC UA server, eine Siemens S7 PLC oder ein MQTT broker, und Address nimmt die passende Adresse auf (die OPC-UA-Endpunkt-URL, die IP-Adresse der PLC oder die Broker-URL). Solange Address leer ist, zeigt das Feld ein Beispiel für die gewählte Verbindung. Für OPC UA erscheint ein Namespace Index, für Siemens S7 erscheinen Rack und Slot.
- OPC UA Security (bei einer OPC-UA-Verbindung): der Security Mode (None, Sign oder Sign and Encrypt), die Security Policy, sobald der Modus nicht None ist, und ein optionaler User Name mit Set Password... und Clear Password. Die PLC muss dem FUXA-Client-Zertifikat vertrauen; fügen Sie es in Ihrer CPU zu den vertrauenswürdigen Clients des OPC-UA-Servers hinzu oder lassen Sie Clients zur Laufzeit annehmen. Eine Änderung hier zeigt der SCADA-Zieleintrag in der Statusleiste sofort an.
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 Kategorien oben ab; seine Editor-Kategorie enthält den Abschnitt Block Editor mit den Schaltern Bausteinschnittstelle wie in TIA anzeigen und UDTs als .udt öffnen. Das übrige 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.
- Semantische Hervorhebung — Bezeichner werden danach eingefärbt, was sie tatsächlich sind: Ein- und Ausgangsparameter, lokale Variablen, Konstanten, Struktur- oder Datenbaustein-Mitglieder und Referenzen auf andere Bausteine und Datentypen erhalten je eine eigene Farbe, sodass ein Parameter auf einen Blick anders aussieht als eine lokale Variable oder ein aufgerufener Baustein. Die Einfärbung folgt Ihrem aktiven Farbthema.
- 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. - Gehe zu Definition, Referenzen und Umbenennen — F12 (oder Rechtsklick → Gehe zu Definition) auf einem Bezeichner springt zur Deklaration einer lokalen Variable oder eines Members; auf dem Namen eines aufgerufenen Funktionsbausteins, einer Funktion, eines Datenbausteins oder UDTs öffnet es stattdessen dessen Quelltext. Umschalt+F12 (Gehe zu Referenzen) listet jede Stelle auf, an der ein lokales Symbol im aktuellen Baustein verwendet wird. F2 (Symbol umbenennen) benennt eine lokale Variable, eine temporäre Variable oder eine Konstante überall im Baustein um, wo sie verwendet wird. Schnittstellenparameter (
VAR_INPUT/VAR_OUTPUT/VAR_IN_OUT) und der Bausteinname selbst lassen sich so noch nicht umbenennen — das würde andere Bausteine betreffen, was in dieser Version nicht verfügbar ist. - Vorkommen hervorheben — Den Cursor auf einen Namen setzen, und jede weitere Verwendung im aktuellen Baustein wird hervorgehoben, sodass Sie auf einen Blick sehen, wo eine Variable oder ein Baustein verwendet wird.
- Schnellkorrekturen — Bei einem fehlenden Semikolon, einem fehlenden Schlüsselwort wie
THENoderDOoder einem Baustein bzw. einer Anweisung ohne sein Abschluss-Schlüsselwort (END_IF,END_WHILEund dergleichen) bietet eine Glühbirne eine Ein-Klick-Korrektur an, die den fehlenden Text einfügt. - Dokument formatieren — Rechtsklick → Dokument formatieren (oder Umschalt+Alt+F) räumt den ganzen Baustein auf: rückt nach der Struktur ein (jeder
VAR-Block, derBEGIN-Rumpf und jedesIF/FOR/WHILE/CASEeine Ebene tiefer, mit der Tab-Breite Ihres Editors), schreibt SCL-Schlüsselwörter GROSS, setzt je ein Leerzeichen um Operatoren und fasst Läufe von mehreren Leerzeilen auf eine zusammen. Es ändert nur die Formatierung — Bezeichner, Kommentare, Zeichenketten und Code bleiben unberührt — und ist gefahrlos ausführbar; ein bereits sauberer Baustein bleibt unverändert. Sie können auch nur die markierten Zeilen formatieren (Auswahl formatieren) oder jede Zeile beim Fertigstellen aufräumen lassen, indem Sie Format On Type in den Einstellungen aktivieren. - 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, semantische Hervorhebung, Gliederung, Vorkommen-Hervorhebung, Schnellkorrekturen, Formatierung, Faltung, Navigation (Gehe zu Definition / Referenzen / Umbenennen) 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.
- Nur lokales Umbenennen. F2 benennt eine lokale Variable, eine temporäre Variable oder eine Konstante innerhalb ihres Bausteins um. Schnittstellenparameter und Bausteinnamen lassen sich so noch nicht umbenennen — verwenden Sie für Änderungen, die andere Bausteine betreffen, die TIA-Portal-Umbenennung.
- Formatierungs-Umfang. Die Formatierung deckt Einrückung, Schlüsselwort-Schreibweise, Operator-Abstände und das Zusammenfassen überzähliger Leerzeilen ab und läuft über den ganzen Baustein (Dokument formatieren), die markierten Zeilen (Auswahl formatieren) oder jede Zeile beim Fertigstellen (Format On Type, aus bis Sie es aktivieren). Sie füllt keine Klammern oder Doppelpunkte mit Abständen und richtet keine Deklarationen aus.
Oberfläche (Modern UI)
Studio startet standardmässig mit der aufgefrischten Oberfläche: Die Seitenleisten und das untere Panel erscheinen als schwebende Karten mit abgerundeten Ecken und kleinen Abständen, und Editor-Tabs, Ansichtsköpfe und das Command Center verwenden dieselbe aufgefrischte Gestaltung wie das Agents-Fenster. Wer das klassische Layout mit bündig aneinanderliegenden Bereichen bevorzugt, öffnet den nativen Einstellungs-Editor (Link VS Code Settings oder Open Settings (UI) in der Befehlspalette), sucht nach Modern UI und entfernt den Haken bei Workbench › Experimental: Modern UI. Die Änderung greift sofort, ohne Neustart; ein erneutes Setzen des Hakens bringt die aufgefrischte Oberfläche zurück. Der separate Schalter Modern UI Uppercase View Headers bleibt aus, solange Sie ihn nicht einschalten. Mit der aufgefrischten Oberfläche geht die aktive Editor-Registerkarte mit abgerundeten Schultern in die Editorfläche über; wer lieber getrennte, abgerundete Registerkarten sieht, stellt Workbench › Experimental: Modern UI Editor Tab Style auf pill.
Die aufgefrischte Oberfläche gibt es in zwei Dichten. Öffnen Sie das Zahnrad-Menü unten in der Aktivitätsleiste, zeigen Sie auf Layout Density und wählen Sie Compact: Die Abstände zwischen Seitenleisten, unterem Panel und Editor verschwinden und die Innenabstände werden enger, was auf kleinen Bildschirmen mehr Platz für den Inhalt lässt; Default stellt das luftige Layout wieder her. Die Wahl greift sofort.
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 und Hardware-ID 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.