OBS/Adminhilfe/MMX
MMX (ModelMaker Code Explorer)
MMX ist Teil der Delphi 10.X Installationen.
Dieses Wiki dient als Lexikon für nützliche Funktionen, deren Erläuterung und Nutzungsweise.
Alle Tastenkombinationen beziehen sich auf die der Standardeinstellung.
Einstellungen
Strg + Umsch + Alt -> P
Splashscreen
Hier findet man Links zur offiziellen Website, der E-Mailaddresse für Support, sowie für das Handbuch und zwei "Jumpstart" Guides.
Das handbuch kann standardmäßig auch unter
./AppData/Local/Programs/Raabe%20Software/MMX/15/mmxmanual.pdf
gefunden werden.
Projekt Optionen
Informationen zum momentanen Projekt sowie Einstellungsmöglichkeiten für die Sortierung der Uses Klauseln.
General
Einstellungen für das Erscheinungsbild, das Suchverhalten, die Formatierung der Dokumentation, Metriken und den Editor.
Pascal
Einstellungen zum Parsen, Editieren, Ersetzen, Neu Erstellung von Entitäten und Sortieren.
Tastenbelegung
Grundlegende Tastaturbelegung sowie Unterkategorien für Indexer und Explorer Tastaturbefehle.
History
Einstellungen für die Historie im Explorer.
Excluded
Hier können bestimmte Module (bspw. System) von der Suche und Navigation ausgeschlossen werden um diese performanter zu machen.
String Conversion
Einstellungen
Code Explorer
Der Code Explorer ist das Kernstück von MMX und dient als schnelle Navigationsmöcglichkeit innerhalb einer Unit.
Hierbei ist die Ansicht in Zwei Abschnitte gespalten:
Die Übersicht
Die Übersicht bietet eine leicht einsehbare Struktur der Unit, unterteilt in:
| Übersichtspunkt | Inhalte |
|---|---|
| Records | Felder und Funktionen des gewählten Records |
| Classes (Gruppiert nach | Felder und Funktionen der gewählten Klasse |
| Interface | Springt zum Anfang des Interfaces |
| Interface use clause | Springt zum Anfang der Use-Klauseln des Interfaces |
| Implementation | Springt zum Anfang der Implementierung |
| Implementation use clause | Springt zum Anfang der Use-Klauseln der Implementierung |
| Parsing Hints | Irreguläre Kommentare und Formatierungen |
| Live Metrics | Metriken des Quellcodes. Dazu gehören lange Methoden, große Anzahlen verschachtelter Prozeduren, TODO-Kommentare etc. |
| Module Search | Liefert eine genauere Übersicht über die vorhandenen Records, Klassen etc sowie deren Felder, Properties und Methoden. |
Die Memberliste
Die Memberliste listet die Unterpunkte der gewählten Struktur aus der Übersicht. Wird beispielsweise ein Record ausgewählt, so werden alle Felder dieses Records angezeigt.
Wenn ein Eintrag in dieser Liste angewählt wird, springt der Cursor im Editor automatisch zu der entsprechenden Stelle im Source Code.
Die Liste verfügt über eine Vielzahl an Filtermöglichkeiten welche je nach Situation am oberen Rand durch Symbole angezeigt werden.
Shortcuts
| Shortcut | Beschreibung |
|---|---|
| Strg + Alt + 1 | Springt in die Member-Suche des Code Explorers |
| Strg + Umsch + Alt + E | Springt im Code Explorer zu dem Member auf welchem sich der Cursor befindet |
Source Indexer
Der Source Indexer erstellt, basierend auf vom Nutzer festgelegten Pfaden, einen Index des dort verfügbaren Quellcodes inklusive aller Schlüsselwörter, Variablen, Funktionen und bei Bedarf auch aller Strings und Kommentare. Dieser Index kann nach Erstellung durchsucht werden um bspw. sofort jegliches vorkommen eines bestimmten Objektes herauszufinden.
Funktionen und Shortcuts
| Funktion | Shortcut | Beschreibung |
|---|---|---|
| Search At Cursor | Strg + Umsch + Alt + S | Sucht den Begriff im Editor auf welchem der Cursor momentan steht |
| Collapse All | Strg + <- | Alle Ergebniszweige einklappen. |
| Expand All | Strg + -> | Alle Ergebniszweige aufklappen. |
| Options | Umsch + F5 | Öffnet den Dialog um die Optionen für den Indexer zu ändern. |
| Refresh Index | F5 | Erneuert den gesamten Index mit den aktuellen Einstellungen. |
| Refresh Matches | Erneuert die Übereinstimmungen in allen Tabs. Dies erstellt keinen neuen Index. Nicht indizierte Dateien könne nicht mit einbezogen werden. | |
| Clear | Strg + Entf | Bereinigt die Suche im aktiven Tab. |
| Open | Öffnet die ausgewählte Übereinstimmung im Editor und fokussiert diesen. | |
| Report | Strg + P | Erstellt einen Report der Übereinstimmungen. Ermöglicht diesen in Form einer Datei zu exportieren, zu Drucken, in die Zwischenablage zu kopieren oder eine Vorschau der Ergebnisse anzuzeigen. |
| New Tab | Strg + T | Öffnet einen neuen Tab im Indexer. |
| Close Tab | Strg + F4 | Schließt den aktiven Tab. |
| Close Other Tabs | Schließt alle Tabs außer dem momentan aktiven Tab. |
Optionen
Code Generierung & Refactoring
Use Unit
Erlaubt das Hinzufügen von Units zu den Uses Klauseln der Unit oder Implementation
Strg + U
Add & Edit
MMX stellt eine vielzahl an Masken zum Hinzufügen und Editieren von Strukturen. Hier eine Übersicht der verfügbaren Masken und deren Aufrufe. Alle Masken können auch über das MMX Menü geöffnet werden.
Class
Erlaubt das Hinzufügen bzw. das Editieren von Klassen wenn sich der Cursor auf oder innerhalb einer solchen befindet.
Strg + Umsch + Alt + X -> D -> D Strg + E (Editiert Entität bei Cursorposition)
Interface
Strg + Umsch + Alt + X -> D -> I Strg + E (Editiert Entität bei Cursorposition)
Record
Strg + Umsch + Alt + X -> D -> R Strg + E (Editiert Entität bei Cursorposition)
Field
Strg + Umsch + Alt + X -> D -> F Strg + Alt + F Strg + E (Editiert Entität bei Cursorposition)
Method
Strg + Umsch + Alt + X -> D -> M Strg + E (Editiert Entität bei Cursorposition)
Property
Strg + Umsch + Alt + X -> D -> P Strg + Alt + P Strg + E (Editiert Entität bei Cursorposition)
Indexer
Strg + Umsch + Alt + X -> D -> N Strg + Alt + I Strg + E (Editiert Entität bei Cursorposition)
Event
Strg + Umsch + Alt + X -> D -> V Strg + Alt + E Strg + E (Editiert Entität bei Cursorposition)
Operator
Strg + Umsch + Alt + X -> D -> O Strg + E (Editiert Entität bei Cursorposition)
Procedure
Strg + Umsch + Alt + X -> D -> C Strg + Alt + M
Delegate
Strg + Umsch + Alt + X -> D -> G Strg + Alt + D Strg + E (Editiert Entität bei Cursorposition)
Local Variable
Strg + Umsch + Alt + X -> D -> A Strg + L Strg + E (Editiert Entität bei Cursorposition)
Explaining Variable
Strg + Umsch + Alt + X -> D -> X Umsch + Alt + L Strg + E (Editiert Entität bei Cursorposition)
Parameter
Strg + Umsch + Alt + X -> D -> T Umsch + Alt + P Strg + E (Editiert Entität bei Cursorposition)

















