Berasal dari Eclipse dan telah digunakan untuk menduplikasi baris sepanjang waktu, cukup aneh mengetahui bahwa Xcode tidak memiliki fungsi seperti itu. Atau apakah itu?
Saya tahu itu mungkin untuk mengubah keybindings lebar sistem tapi bukan itu yang saya cari.
xcode
line
duplicate-data
Musim panas
sumber
sumber
Jawaban:
Intinya adalah TIDAK untuk menggunakan
Cmd-C
/Cmd-V
pintas. Saya memiliki masalah yang sama yang berasal dari IntelliJ, dan bisa hanya menduplikasi barisCmd-D
dan menghapusnya denganCmd-Y
adalah penghemat waktu yang besar.Sejak itu mengganggu saya. Namun, sepertinya orang lain telah menemukan solusi yang berfungsi.
Singkatnya, buat file
~/Library/KeyBindings/PBKeyBinding.dict
dengan konten berikut dan mulai ulang Xcode.Ini akan membuat dua pintasan: Ctrl- Shift- Kuntuk menghapus baris saat ini dan Ctrl- Shift- Duntuk menduplikasi baris saat ini. Harap dicatat bahwa ini hanya akan berfungsi jika Anda TIDAK menggunakan pengikatan kunci kustom yang diatur dalam Xcode. Beralih ke "XCode Default" dan semuanya akan berfungsi. Diuji pada XCode 3.2 pada Snow Leopard.
Informasi lebih lanjut tentang ikatan kunci Mac OS X: http://funkworks.blogspot.it/2013/03/republishing-of-wwwerasetotheleftcompos.html
sumber
Duplicate
perintah (diEdit -> Duplicate
) tampaknya akan "selalu" berwarna abu-abu (dan tidak dimaksudkan untuk baris duplikasi).Untuk menghapus baris : Ctrl-A untuk pergi ke awal baris, lalu Ctrl-K untuk menghapusnya, dan lain kali Ctrl-K untuk menghapus baris kosong. (Saya tidak terlalu sering menggunakan Xcode, tapi saya sudah terbiasa dengan itu di Emacs dan input teks lainnya dengan binding seperti Emacs, dan sepertinya juga berfungsi di Xcode.)
Dan untuk menduplikasi baris : Saya tidak tahu banyak program yang memiliki perintah untuk itu, tetapi biasanya saya hanya menggunakan Salin + Tempel - di Xcode itu seperti CUA: Ctrl+A untuk pergi ke awal baris, Shift+↓ untuk memilih itu, Command + Cuntuk menyalin dan Command + *V untuk menempel dua kali (sekali menimpa garis dan sekali menambahkannya).
(dari orang yang mengetik dan mengedit teks sepanjang waktu, sering di program yang berbeda, dan kadang-kadang kesal karena harus mengalihkan perhatiannya dengan widget bodoh sambil membuat sedikit koreksi dalam input teks, sehingga dia tidak bisa menghindari mengingat urutan ini dan kebiasaan)
sumber
Hapus garis seperti gerhana CTRL+D (diuji pada Xcode 4.5.1):
Pertama-tama, ubah hak-hak ini:
Buka
/Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Resources/IDETextKeyBindingSet.plist
dengan Xcode sendiri dan tambahkan entri baru ini:Mulai ulang Xcode dan buka Xcode> Preferensi> KeyBindings. Temukan makro Anda dan tentukan shortkey:
sumber
Saya mencoba solusi binding utama, tetapi saya tidak bisa membuatnya bekerja. Namun mengedit binding kunci XCode saya berfungsi seperti pesona. Begini cara saya membuatnya.
Solusi ini tidak mengubah isi dari Clipboard!
Buka Binding Kunci XCode:
Dalam Dialog Edit User Scripts:
Duplikat Line Up:
Duplikat Line Down:
sumber
OK, jadi saya punya ini berfungsi untuk sementara waktu dan kemudian tiba-tiba itu rusak. Sekarang saya telah menggabungkan dari berbagai posting di sini dan menemukan solusi yang berfungsi untuk XCode 6.3.1.
Pergi ke
/Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Versions/A/
dengan Finder.temukan folder bernama Resources. Klik kanan, tekan Dapatkan Info, buka kunci pengaturan berbagi & izin (Dengan menekan kunci) dan atur ke Baca & Tulis untuk semua.
Masukkan folder dan temukan file IDETextKeyBindingSet.plist. Klik kanan, tekan Dapatkan Info, buka kunci pengaturan berbagi & izin (Dengan menekan kunci) dan atur ke Baca & Tulis untuk semua.
Buka file dengan XCode (Default)
Temukan penghapusan, klik kanan dan tambahkan baris baru. Beri nama misalnya Hapus Baris. Di bidang nilai, ketik:
selectLine:, deleteBackward:
. (Ini juga bisa dilakukan untuk duplikat baris:selectLine:,copy:,moveToEndOfLine:,insertNewline:,paste:,deleteBackward:
)sumber
Karena Xcode 4 membuat ini sulit untuk diimplementasikan menggunakan binding kunci, saya terpaksa menggunakan Keyboard Maestro ( Quickeys seharusnya bekerja dengan baik juga, tetapi itu tidak sepenuhnya kompatibel dengan Lion). Misalnya, berikut ini pintasan Keyboard Maestro saya (terikat ke ⌘-⇧-D):
http://bit.ly/thC6yf
sumber
Untuk menghapus baris dalam Xcode 10.1, silakan ikuti langkah-langkah tangkapan layar di bawah ini untuk menambahkan tombol pintas.
sumber
Saya tahu bahwa utas ini cukup lama tetapi saya menemukan solusi lain menggunakan BetterTouchTool , Anda dapat menjalankan urutan Ctrl+ A, Ctrl+ K, Ctrl+ Kdalam satu pintasan dengan mengkonfigurasi seperti ini di BTT:
(Gunakan Tombol Lampirkan Tindakan Tambahan untuk menambahkan pintasan kedua dan ketiga)
PS: Berasal dari Eclipse di mana Cmd+ Dadalah menghapus baris ^^
sumber
Klik tiga kali untuk memilih seluruh baris, perintah-c untuk memilih dan perintah-v dua kali untuk menduplikatnya. Ini bukan fungsi Xcode, itu hanya bagian dari OS.
sumber
Gunakan skrip pengguna.
Ada skrip untuk memindahkan dan menghapus baris. Anda harus mendefinisikan mengikat kunci bagi mereka script (menu Script -> Sunting Pengguna Script ... , di bawah Xcode 3.2).
Untuk menduplikasi baris, Anda harus membuat skrip sendiri. Tapi ini sangat sederhana! Gandakan skrip "Move Line Down" dan hapus baris yang menghapus teks yang dipilih:
sumber
Ada solusi untuk duplikasi garis XCode4 di sini
Saya juga menambahkan penghapusan baris ke plist:
<key>Remove Line</key> <string>selectLine:, deleteBackward:</string>
sumber
Kami berada di Xcode 9.0 dan keybindings masih tidak berfungsi. Mendesah.
Saya menemukan inti ini sangat membantu sehingga memposting ulang di sini untuk referensi di masa mendatang:
/Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Versions/A/Resources/IDETextKeyBindingSet.plist
</dict>
<key>Duplication</key> <dict> <key>Duplicate Current Line</key> <string>moveToBeginningOfLine:, deleteToEndOfLine:, yank:, insertNewline:, moveToBeginningOfLine:, yank:</string> <key>Duplicate Lines</key> <string>selectLine:, copy:, moveToEndOfLine:, insertNewline:, paste:, deleteBackward:</string> <key>Delete Line</key> <string>selectLine:, deleteBackward:</string> </dict>
sumber
Tidak perlu memodifikasi Xcode. Anda bisa menggunakan ekstensi Xcode Linex
sumber
Solusi oleh damien.flament bekerja sangat baik dan Anda mungkin perlu mengatur output ke "Keluarkan Output" lihat gambar di bawah ini
PS: Saya tidak tahu bagaimana mengomentari jawabannya.
sumber
Seperti yang dikatakan di atas, tutup XCode dan masukkan berikut ke
~/Library/Application Support/Xcode/Key Bindings/ <user>.pbxkeys
dalam<dict>
di<key>text</key>
bagian:Mulai XCode dan nikmati CTRL- SHIFT- Ddan CTRL- SHIFT- K.
Jika Anda ingin CTRL- Ddan CTRL- K, gunakan
^d
dan^k
dalam definisi kunci sebagai gantinya. Pastikan tidak ada ikatan kunci duplikat dalam file.Bekerja dengan baik untuk saya dengan XCode 3.2
sumber
Ini dimungkinkan menggunakan BetterTouchTool . CMD + D akan menduplikasi satu baris. Buat pintasan baru seperti ini:
Gunakan Tombol Lampirkan Tindakan Tambahan untuk menambahkan pintasan kedua dan ketiga
sumber
Jika Anda sudah disesuaikan binding kunci Xcode Anda, Anda harus mengedit file:
~/Library/Application Support/Xcode/Key Bindings/<user>.pbxkeys
. Cukup tambahkan dua array (dijelaskan di atas) keRoot/text
kamus.sumber
Tiga langkah untuk menghapus baris saat ini (lihat terlalu lama, tetapi lakukan sangat cepat: D)
Cmd+ →: pindah ke akhir baris
Cmd+ Delete: hapus untuk memulai baris
Delete: hapus baris kosong
sumber
Untuk Xcode 6.1 sampai ke Xcode> Preferences> KeyBindings> Text Dan ada "Delete to End of Line" dan berikan kunci yang Anda inginkan.
sumber
Plugin penghapusan XCodePlus, adalah XCode yang melakukan ini untuk Anda. Itu datang pra diinstal dengan manajer paket Alcatraz ...
https://github.com/payliu/XcodePlus
sumber
Masih tidak ada cara bawaan untuk menduplikasi baris, pada Xcode 9. Dan binding kunci kustom tampaknya memiliki masalah.
Pembaruan: Xcode 10.0 beta 6 (10L232m) adalah sama.
sumber
Pergi ke alamat ini:
/Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Resources/IDETextKeyBindingSet
dan kemudian salin file IDETextKeyBindingSet.plist di suatu tempat dan kemudian buka file yang disalin dan masukkan
selectLine :, salin :, rekat :, rekat: seperti gambar ini masukkan deskripsi gambar di sini dan simpan dan ganti file yang disalin di alamat ini / Aplikasi / Xcode.app/Isi
kemudian restart xcode, buka xcode preferensi, buka tab keybinding, cari duplikat baris (dikustomisasi) dan tentukan kunci pendek untuk itu seperti gambar di bawah ini
[1]: https://i.stack.imgur.com/UTeZu.png
sumber