Dachte ich mir zum letzten mal.
Denn das kann XCode ja schließlich auch automatisieren, wenn man ein wenig in die Makros von Xcode reingreift.
Schritt eins, /Developer/Applications/Xcode.app/Contents/PlugIns/TextMacros.xctxtmacro/Contents/Resources/ObjectiveC.xctxtmacro
im Texteditor der Wahl öffnen und das Macro finden das Apple als Hilfe für solche Fälle vorgesehen hat. (Bei mir ist das auf Zeile 68)
{
Identifier = objc.bracket;
BasedOn = objc;
IsMenuItem = YES;
Name = "Bracket Expression";
TextString = "[<#!expression!#> ]";
},
Das habe ich mir dann durch zwei Macro-Definitionen ersetzt die für mich wesentlich nützlicher sind:
{
Identifier = objc.bracket;
BasedOn = objc;
IsMenuItem = YES;
Name = "Bracket Expression";
TextString = "[<#!expression!#>]";
},
{
Identifier = objc.bracket.withSemicolon;
BasedOn = objc;
IsMenuItem = YES;
Name = "Bracket Expression with Semicolon";
TextString = "[<#!expression!#>];";
},
Das war Schritt eins, um dass jetzt noch richtig Nützlich zu machen, habe ich mir diese Befehle (die jetzt beide im Menü auftauchen) noch mit einem Shortcut belegt - also Menü->Xcode->Preferences->Key Bindings, dort eine eigene Konfiguration anlegen und bei den "Menu Key Bindings" die Menü-Eintrag unter Edit->Insert Text Macro->Objective C finden.
Ich hab mir den ersten (ohne Semicolon) auf Command-1 und den zweiten (mit Semicolon) auf Command-2 gelegt.
Nie wieder Semicolons Tippen. Einfach Text-Auswählen und Command-1, dann hab ich eckige Klammern drumherum.
Ahhh....
Lediglich eines hätte ich noch gerne, dass der Cursor danach vor der schließenden eckigen Klammer ist.. aber das finde ich auch noch raus.