Buat Visual Studio memahami CamelCase ketika menekan tombol Ctrl dan kursor


130

Apakah ada cara saya dapat mengkonfigurasi Visual Studio 2008 untuk memahami CamelCase? Secara khusus, saya ingin bisa mendapatkan Ctrl + rightatau leftkursor untuk membawa saya ke subbagian dari nama variabel atau tipe.

yaitu, jika kursor saya berada di awal baris ini:

LongNamedExampleClass longNamed = new LongNamedExampleClass();

dan saya menekan Ctrl + right, saya ingin melompat ke " Named" dalam nama kelas, daripada awal nama variabel. Jika saya memukulnya lagi, saya ingin pergi ke " Example". Saya harap itu masuk akal.

Saya menggunakan fitur navigasi ini di Eclipse cukup banyak, dan merasa sulit untuk menghapus sesuatu yang sudah berurat berakar.


Resharper mendukung fitur itu.
Petter Wigle

Resharper melakukan itu. Saya kira Anda bisa menulis addin Anda sendiri untuk melakukan hal yang sama.
kerah terbuka

Jawaban:


132

Terima kasih untuk mereka yang menyarankan Resharper. Memberiku alasan lain untuk lebih menyukainya. Untuk lebih spesifik tentang tempat ini tinggal - JetBrains menyebutnya CamelHumps (imut) dan Anda dapat mengaktifkannya menggunakan menu:

Resharper -> Opsi -> Lingkungan -> Editor -> Perilaku Editor -> Gunakan CamelHumps

... dalam versi Resharper yang lebih lama, itu adalah;

Resharper -> Opsi -> Editor -> Gunakan CamelHumps


2
Apakah ada opsi, untuk memilih seluruh kata, bahkan jika CameHumps aktif? Saat ini saya harus menekan kanan atau kiri beberapa kali untuk memilih kata. Saya harap Anda mendapatkan saya.
Ozkan

Untuk memilih seluruh kata dengan cepat saat CamelHumps aktif, tekan tombol pintas Perpanjang Pilihan dua kali ( Ctrl+ Alt+ Rightatau Ctrl+ W).
Pang

107

Siapa pun yang menemukan halaman ini setelah 25 November 2008 (yang tidak ingin membayar untuk ReSharper atau CodeRush yang tidak lagi memiliki versi gratis ), Ekstensi gratis berikut menambahkan fungsionalitas ini: Subword Navigation oleh Olle Westman

(Atau, ekstensi VSTricks menyertakan Navigasi Sub-kata dalam daftar fitur yang bagus. Ada juga navigasi Subword yang berbeda ekstensi dibuat oleh Lauri Vasama agar tidak bingung dengan Olle Westman yang digunakan jawaban ini.)

Halaman proyek Navigasi Subword menyatakan:

Cari Edit. Kata dalam binding keyboard untuk mengatur segalanya.

Inilah cara saya mengaturnya Visual Studio 2019:


  1. Navigasikan ke Alat> Opsi> Lingkungan> Keyboard

  1. Di bawah Use new shortcut in, pilih Editor Teks

  1. Di bawah Show commands containing, ketik Edit.Subword . Ini akan memunculkan bidang autocomplete dengan perintah yang tercantum di bawah ini.

  1. Pilih salah satu dari perintah berikut yang Anda ingin atur tombol pintasnya. Setelah dipilih, ikuti langkah-langkah bernomor lainnya. Kemudian kembali ke Step 4untuk mengatur yang lain.
    • Edit.SubwordNext
      • Lintasi camelcases ke kanan [ Alt + Right Arrow]
    • Edit.Subword Sebelumnya
      • Lintasi camelcases ke kiri [ Alt + Left Arrow]                                                             
    • Edit.SubwordNextExtend
      • Pilih camelcases ke kanan [ Alt + Shift + Right Arrow]
    • Edit.SubwordPreviousExtend
      • Pilih camelcases ke kiri [ Alt + Shift + Left Arrow]                                                              
    • Edit.SubwordDeleteNext
      • Menghapus camelcases ke kanan [ Alt + Delete]
    • Edit.SubwordDeletePrevious
      • Menghapus camelcases ke kiri [ Alt + Backspace]

Catatan: Saat menetapkan perintah Navigasi Kata Kunci ini ke tombol pintasan baru ini, pertahankan fungsionalitas tombol pintas yang sudah ada yang ingin Anda pertahankan sebelumnya dengan mengaturnya ke tombol yang berbeda. Seharusnya tidak bertentangan dengan kunci pintas yang diinstal default.


  1. Di bawah Press shortcut keys, tekan Tombol Pintas Anda

  1. Klik Assigndan timpa pintasan yang ada

2
Terimakasih atas peringatannya! Ini berfungsi dengan baik, dan merupakan solusi yang paling terbuka dari yang disajikan.
Chester Husk

Maksud saya tahun 2015 dan seterusnya. Seperti yang disebutkan nanti, saya menggunakan ini di VS 2012. Saya akan mengklarifikasi dalam posting. Terima kasih.
jsea

2
Jawaban yang sangat bagus dalam memberikan detail pengaturan. Saya sangat menghargai penjelasannya pada Next / PreviousExtend
skia.heliou

9
Pada 2015, saya harus menimpa perintah TextEditor. *, Daripada perintah Global. *. ALT + KANAN sudah terikat dengan sesuatu yang lain.
Seth Flowers

2
@Yanyankelevich Saya baru saja mengujinya di VS2019 dan berhasil. Namun, saya perhatikan di Extensions Manager, ada dua ekstensi yang disebut "Subword Navigation". Anda ingin yang dibuat oleh Olle Westman. Saya telah memperbarui jawaban saya untuk menentukannya dan mencatatnya berfungsi di VS2019.
jsea

22

Jika Anda menginstal ReSharper, Anda juga dapat mengonfigurasi pintasan keyboard Visual Studio "Alt-Right" dan "Alt-Left" untuk CamelHump, tanpa kehilangan perilaku Visual Studio standar untuk "ctrl-kanan" dan "ctrl-kiri".

  1. Buka jendela Visual Studio Options dari Tools -> Options
  2. Buka Lingkungan dan gulir ke bawah ke Keyboard
  3. Di kotak Tampilkan perintah yang berisi , ketik "punuk". Ini akan menampilkan semua perintah yang terkait dengan CamelHumps. CamelHumps
  4. Petakan perintah ke pemetaan kunci yang Anda inginkan dengan memilih perintah dari daftar dan memasukkan pemetaan kunci di kotak teks Tekan tombol pintas , lalu klik Tetapkan .

Peringatan:

  • Tetapkan pemetaan untuk Editor Teks , bukan Global .
  • Pastikan opsi Use CamelHumps dari Resharper -> Options -> Editor -> Editor Behavior dimatikan .

Detail di sini: http://davidrcook.wordpress.com/2009/11/05/working-with-camel-case-in-visual-studio/


4
Kau mencerahkan hariku. Solusi sempurna sebagai punuk unta dapat menjadi pin dengan pengidentifikasi panjang (seperti siapa pun yang menggunakan Eclipse akan membuktikan)
chrisb


2

Visual Studio tidak mendukung perilaku ini. Namun, CodeRush dari DevExpres ! produk mendukung navigasi seperti ini (menggunakan Alt-Kiri & Alt-Kanan), bersama dengan banyak fitur lain untuk membantu dalam navigasi. CodeRush! produk juga dibundel dengan alat Refactor mereka. Mereka juga menawarkan CodeRush gratis! & Produk Refactor Express, meskipun saya tidak yakin apakah navigasi Camel Casing adalah bagian dari produk ekspres.



-1

Saya tidak berpikir Visual Studio mendukung fitur ini secara internal, karena tampaknya menggunakan cara normal Ctrl + Kanan dan Ctrl + Kiri bekerja di lingkungan Windows. Tapi itu mungkin dengan beberapa jenis ekstensi atau plugin.


6
Membuat tebakan tentang apakah orang lain akan dapat menjawab pertanyaan itu sebenarnya bukanlah jawaban untuk pertanyaan itu.
GregNash
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.