jloos Geschrieben 17. November 2022 Geschrieben 17. November 2022 Hallo, ich bitte die Lua-Experten noch mal um ein Tool. Mit der Zeit vermehren sich die Schlagwörter. Einige haben gar keine Funktion mehr. Über die Bauteilliste mit F3 könnte man sich die Verwendung jedes Schlagwortes anzeigen lassen. Kann man das auch als Liste bekommen, so daß man die nicht verwendeten Schlagwörter leichter finden kann? Ich würde mich darüber sehr freuen Danke schon mal, Jürgen
Goetz Geschrieben 17. November 2022 Geschrieben 17. November 2022 vor 1 Stunde schrieb jloos: Kann man das auch als Liste bekommen ..? Hallo Jürgen, Du kannst die F3 Liste nach Schlagwort filtern, sprich dir nur die Modelle anzeigen lassen, welche ein bestimmtes Schlagwort haben. Dafür ist die Lupe oben rechts in der Strukturansicht. Deine Schlagwörter findest du unter den Variablen: entspricht das dem, was du suchst? Götz
Goetz Geschrieben 18. November 2022 Geschrieben 18. November 2022 (bearbeitet) ergänzend: Du benötigst keine Lua Kenntnisse, um ein nicht mehr benötigtes Schlagwort mit einer einzigen Aktion aus allen Objekten auf der Anlage zu entfernen: Wenn du es gerne in Lua haben möchtest, würde ich folgende Schreibweise empfehlen: local Wort = "Beispiel" local Liste = layout:getEntitiesByKeyword(Wort) for i, Objekt in ipairs(Liste) do Objekt.variables[Wort] = nil end Viele Grüße Götz Bearbeitet 18. November 2022 von Goetz Skript hinzugefügt
Herman Geschrieben 18. November 2022 Geschrieben 18. November 2022 (bearbeitet) Hello, it should be nice if we can find all objects + keyword that have a keyword in a layout. Without knowing the name of the keywords. (*) Hallo, es wäre schön, wenn wir alle Objekte + Schlüsselwort finden könnten, die ein Schlagwort in einem Layout haben. Ohne den Namen der Schlagworter zu kennen. (*) (*) I found an easy solution for my problem that is sufficient. Ich habe eine einfache Lösung für mein Problem gefunden, die ausreichend ist. (*) Ich habe eine einfache Lösung für mein Problem gefunden, die ausreichend ist. This list is enough for me, to have a quick look at what keywords are already used in this layout. To keep new ones unique. Diese Liste reicht mir aus, um einen kurzen Blick darauf zu werfen, welche Schlagworter bereits in diesem Layout verwendet werden. Damit neue einzigartig bleiben. Regards, Herman Bearbeitet 18. November 2022 von Herman clarification
jloos Geschrieben 18. November 2022 Autor Geschrieben 18. November 2022 vor 14 Stunden schrieb Goetz: entspricht das dem, was du suchst? Hallo Goetz, das ist nicht das, was ich mit vorstelle. Eine Liste aller Schlagwörter und das betreffende Objekt. Die Liste läßt sich dann mit einem Editor nach Belieben sortieren. Gruß Jürgen
Goetz Geschrieben 18. November 2022 Geschrieben 18. November 2022 vor 24 Minuten schrieb jloos: Eine Liste aller Schlagwörter und das betreffende Objekt. Da habe ich leider kein passendes Lua Rezept. Aber ich bin neugierig, was dir diese Liste gäbe, das du mit den aufgeführten Mitteln nicht erreichen kannst?
HaNNoveraNer Geschrieben 18. November 2022 Geschrieben 18. November 2022 Dazu müßte es eine Lua Funktion geben, die alle Variablen eines Objekts durchgeht. Und für die Schleife: "Für alle Objekte mit einem Schlagwort" müßte man "*" als Suchkriterium angeben können für das Schlagwort. Damit könnte man Variablen als Schlagwort identifizieren und in eine Liste schreiben. Vielleicht baut @Neo das mal irgendwann ein? Gruß Thomas
Neo Geschrieben 18. November 2022 Geschrieben 18. November 2022 vor 8 Minuten schrieb HaNNoveraNer: Dazu müßte es eine Lua Funktion geben, die alle Variablen eines Objekts durchgeht. Diese gibt es bereits: for k, v in pairs($("Objekt").variables) do if v == keyword then print(k) end end Viele Grüße, Neo
HaNNoveraNer Geschrieben 18. November 2022 Geschrieben 18. November 2022 Ah, ok, dann ist es ja einfach...
Herman Geschrieben 19. November 2022 Geschrieben 19. November 2022 (bearbeitet) Hello, I could not resist. Hallo, ich konnte nicht widerstehen. layout:enumEntities( function (AnObject) for k, v in pairs(AnObject.variables) do if v == keyword then print(AnObject.name) print("key : " .. k ) end end end ) or ( tipp from Hannoverner see next post) layout:enumEntities( function (AnObject) OldObj = nil for k, v in pairs(AnObject.variables) do if v == keyword then if AnObject == OldObj then else print(AnObject.name) end print("key : " .. k ) OldObj = AnObject end end end ) All objects in a layout with a keyword + keyword. Gives : Alle Objekte in einem Layout mit einem Schlagwort + Schlagwort Gibt : Example 2 objects have each two keywords here. Beispiel 2 Objekte haben hier jeweils zwei Schlüsselwörter. But not very practical, only an exercice, regards Herman Aber nicht sehr praktisch, nur eine Übung, Grüße Herman Bearbeitet 20. November 2022 von Herman Tipp from Hannoverner
HaNNoveraNer Geschrieben 19. November 2022 Geschrieben 19. November 2022 Print object Name only if it has changed.
jloos Geschrieben 20. November 2022 Autor Geschrieben 20. November 2022 Danke für die Antworten. Ich bin erst heute Abend wieder zu Hause um das auszuprobieren. Ich melde mich dann. Gruß Jürgen
jloos Geschrieben 21. November 2022 Autor Geschrieben 21. November 2022 Am 19.11.2022 um 19:36 schrieb Herman: Aber nicht sehr praktisch, nur eine Übung Hallo Herman, ja, das hat schon sehr viel schönes. Vor AnObject.name habe ich noch "Objekt : " eingefügt, die Reihenfolge geändert und in eine Reihe geschrieben. Meine Hoffnung, Objekt und Key in eine Reihe zu bringen hat sich dadurch nicht ergeben. layout:enumEntities( function (AnObject) for k, v in pairs(AnObject.variables) do if v == keyword then print("key : " .. k ) print("Objekt : " .. AnObject.name) end end end ) So sieht das bei mir aus: [08:51:19] Schalter wird betätigt -> Taster Schlagwörter auflisten, 1 [08:51:19] Schalter wird betätigt [08:51:19] key : Abstellgleise durchsuchen [08:51:19] Objekt : GTK-Brems-Rangierbahnhof 03 [08:51:19] key : Abstellgleis im Rangierbahnhof [08:51:19] Objekt : 9101 [08:51:19] key : Vorbremsen [08:51:19] Objekt : GKT Vorbremsen 04 [08:51:19] key : Vorbremsen [08:51:19] Objekt : GKT Vorbremsen 07 [08:51:19] key : FS Strecke [08:51:19] Objekt : GKT FS Strecke 01 [08:51:19] key : FS aus SB [08:51:19] Objekt : H/V Signal SB 18 [08:51:19] key : freies Gleis im SB2 finden [08:51:19] Objekt : GKT FS Strecke 02 [08:51:19] key : FS aus SB [08:51:19] Objekt : H/V Signal SB 04 [08:51:19] key : Signal [08:51:19] Objekt : H/V Signal Bahnhof rechts 01 Ich möchte damit eine Pivot Tabelle machen. Dementsprechend muß ich das noch ein bißchen bearbeiten. Vielen Dank erstmal Gruß Jürgen
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto besitzen, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen.
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden