EDIT: 12. Juli 2020
Nach dem erneuten Update auf Xcode 11.5 war mein duplicate line
Schlüsseleintrag aus der plist
Datei weg. Ich musste es noch einmal hinzufügen. Die Schlüsselbindung war jedoch noch vorhanden.
EDIT: 17. September 2019
Nach dem erneuten Update auf Xcode 10.3 war mein duplicate line
Schlüsseleintrag aus der plist
Datei weg. Ich musste es noch einmal hinzufügen. Die Schlüsselbindung war jedoch noch vorhanden.
EDIT: 28. Mai 2019
Nach dem erneuten Update auf Xcode 10.2 war mein duplicate line
Schlüsseleintrag aus der plist
Datei weg. Ich musste es noch einmal hinzufügen. Die Schlüsselbindung war jedoch noch vorhanden.
EDIT: 23. Dezember 2018
Nach dem Update auf Xcode 10.1 sind alle meine Verknüpfungen wieder kaputt gegangen. Aber etwas anderes war, dass ich nach dem Aktualisieren der Plist-Datei für die Zeilenvervielfältigung meine Schlüsselbindungen nicht definieren musste, sie waren bereits vorhanden. Seltsam.
BEARBEITEN: 14. OKTOBER 2018
Xcode 10: Jemand hoch oben bei Apple liebt das Kopieren / Einfügen und stellt sicher, dass bei jeder Version des Xcode-Updates die Zeilenduplizierung aus der Installation aller entfernt wird. Wir Entwickler sind seit jeher äußerst frustriert über diesen Unsinn in Xcode, der einzigen IDE ohne Option zum Duplizieren von Zeilen. Ich habe gerade auf Xcode 10 aktualisiert, und wie Sie es erraten haben, werden alle meine Tastenkombinationen zusammen mit meiner Funktion zum Duplizieren von Zeilen entfernt. Es kann jedoch wie in der ursprünglichen Antwort behoben werden. Ein kleiner Unterschied ist diesmal, dass Sie die folgende Zeile benötigen:
<key>Duplicate Current Line</key>
<string>selectLine:, copy:, moveToBeginningOfLine:, paste:, moveToEndOfLine:</string>
EDIT: Xcode 9: Ich musste meine Verknüpfungen wiederholen und Zeilen duplizieren und löschen, aber das Gute ist, dass Sie jetzt IDETextKeyBindingSet.plist erneut bearbeiten können. Dieser hochkarätige Apple-Typ muss im Urlaub sein, als er diese Version veröffentlichte.
EDIT: Xcode 8: Buggy, Sie können die Datei IDETextKeyBindingSet.plist überhaupt nicht ändern. Xcode setzt es beim Start zurück. Dieser High-Up-Typ bei Apple ist wirklich entschlossen, uns dazu zu bringen, Copy / Paste anstelle von einfachen Zeilenverdopplungen wie in allen anderen IDEs zu verwenden.
BEARBEITEN: Xcode 7.1 und es gibt immer noch keine Verknüpfungen zum Duplizieren und Löschen von Zeilen. Dies ist die einzige IDE, mit der ich jemals ohne solche Verknüpfungen gearbeitet habe. Und ich kann mir das Leben eines Entwicklers ohne diese beiden kritischen Abkürzungen nicht vorstellen.
So geht's:
Zuerst müssen wir eine plist-Datei ändern, die sich im Xcode.app-Bundle befindet (benötigt sudo zum Bearbeiten).
/Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Resources/IDETextKeyBindingSet.plist
Suchen Sie dann nach <key>Insertions and Indentations</key>
dem <dict>
Tag und fügen Sie unter dem Tag Folgendes hinzu:
<key>Insert New Line Below</key>
<string>moveToEndOfLine:, insertNewline:</string>
<key>Insert New Line Above</key>
<string>moveUp:, moveToEndOfLine:, insertNewline:</string>
<key>Duplicate Current Line</key>
<string>selectLine:, copy:, moveToEndOfLine:, insertNewline:, paste:, deleteBackward:</string>
Dann finden Sie die und diese im Abschnitt <key>Deletions</key>
unter dem <dict>
Tag:
<key>Delete Current Line</key>
<string>selectLine:, delete:</string>
<string>selectLine:, delete:</string>
Öffnen Sie nun Xcode / starten Sie ihn neu, gehen Sie zu Einstellungen und gehen Sie zur Registerkarte „Tastenkombinationen“. Verwenden Sie die Suchleiste, um nach neuen Verknüpfungen zu filtern und zu suchen. Klicken Sie dann vor die Verknüpfungsbeschreibung, um eine Verknüpfung nach Ihren Wünschen zuzuweisen. Stellen Sie sicher, dass Ihre Verknüpfung nicht mit vorhandenen Verknüpfungen in Konflikt steht.