Cara menggunakan python readline autocomplete

Cara menggunakan python readline autocomplete


Saya telah menggunakan Bash shell di Linux selama bertahun-tahun dan saya sangat cepat menggunakannya. Dengan sering memohon pelengkapan otomatis dengan menekan tombol tab, saya dapat menulis perintah panjang dalam beberapa penekanan tombol.

Baru-baru ini di pekerjaan saya, saya mulai menggunakan Windows Command Prompt dan Cmd. Saya sangat lambat dalam Cmd. Ini memiliki fitur pelengkapan otomatis, tetapi berfungsi berbeda. Saya pikir saya mengerti cara kerjanya, tetapi saya tidak mengerti bagaimana menggunakannya secara efektif, bahkan sering memperlambat saya. Jadi saya bertanya, bagaimana cara menggunakan autocomplete Cmd secara efektif?


Izinkan saya memberi contoh. Pertama saya akan menjelaskan bagaimana saya menggunakan Bash, lalu bagaimana saya mencoba menggunakan Cmd, dan apa yang salah.

Misalkan folder dalam direktori saat ini memiliki nama yang dibuat dari benua dan negara, misalnya. africa-nigeria, asia-india, europe-france, Dan bahwa saya ingin perubahan folder untuk europe-norway.

Cara autocomplete Bash bekerja adalah tombol tab hanya mengembang jika ada ekspansi unik. Jika tidak, tidak ada yang terjadi, tetapi Anda dapat menekan tab untuk kedua kalinya untuk mendaftar kemungkinan ekspansi.

Jadi untuk pindah ke Norwegia di Bash, saya mengetik cddan kemudian membuat penekanan tombol berikut:

  1. e tab untuk europe-
  2. n tab (tidak ada yang terjadi)
  3. tablagi. Ini daftar europe-netherlandsdan europe-norwaysebagai ekspansi potensial.
  4. o tabuntuk europe-norway.

Besar! Terima kasih Bash.

Namun, ketika saya mencoba kunci yang sama dalam Cmd, itu berkembang e tabmenjadi europe-albania, yang merupakan folder pertama yang dimulai 'e', ​​tetapi bukan folder yang saya inginkan! Apa yang harus saya lakukan sekarang — mungkinkah membuat Albania menjadi Norwegia? Atau haruskah saya membatalkan perintah dengan Escapedan mengetik semuanya dari awal?




Jawaban:


Pembaruan 1 tahun : Saya sampai pada kesimpulan bahwa autocomplete Cmd tidak dapat digunakan, dan berhenti menggunakannya.

Saya menginstal Clink yang memberi Anda pelengkapan otomatis gaya Bash di Cmd.

Clink menggabungkan shell Windows asli cmd.exe dengan fitur pengeditan baris perintah yang kuat dari pustaka GNU Readline, yang menyediakan banyak penyelesaian, sejarah, dan kemampuan pengeditan baris

Itu brilian.





Cygwin akan memungkinkan Anda untuk menjalankan Bash shell (terlepas dari banyak perangkat lunak lingkungan POSIX lainnya) di Windows.

Jika tidak, Anda dapat mencoba shell alternatif, daripada Command Prompt kuno, untuk menemukan shell yang paling sesuai dengan kebutuhan Anda.

Berikut adalah daftar beberapa konsol yang meniru bash di Windows:

win-bash
Road Bash
Git Bash yang dijelaskan dalam artikel ini

Konsol lainnya:

Microsoft Windows PowerShell dan artikel wikipedia -nya (yang paling kuat)
Konsol dengan artikel
ColorConsole
PowerCmd
GS.EXE
PyCmd

[ EDIT ] Sejak itu saya temukan Cmder yang merupakan pengganti konsol tabular yang luar biasa yang juga membawa banyak perilaku shell Linux serta port dari banyak aplikasi penanganan file Linux seperti grep.






Menekan TABtombol akan beralih ke semua direktori yang ada.

Cobalah untuk memasukkan hanya cdkemudian TABuntuk beberapa kali dan Anda akan melihat prinsip.

cd countries/europe-s[TAB][TAB] 

misalnya akan membawa Anda ke pertandingan kedua (negara / eropa-serbia)


Bash di linux mencoba mencocokkan dan mengisi ulang semua karakter pertama yang umum untuk semua file.

Prompt perintah windows, di sisi lain hanya mengisi secara otomatis command prompt dengan elemen pertama yang cocok.

misal: Di linux bash: Setelah mengetik negara cd \ e TAB, bash akan naik ke negara \ eropa- karena cocok dengan semua nama file yang dimulai dengan e, dan kemudian Anda dapat memasukkan beberapa karakter berikutnya dan tekan TABlagi.

Pada prompt perintah Windows: Setelah mengetikkan negara cd \ e TAB, prompt perintah akan cocok dengan nama file pertama yang mungkin dimulai dengan e, europe-albania dalam kasus Anda, tetapi masih ingat bahwa Anda hanya memasukkan 'e'. Jadi, jika Anda menekan TABlagi, itu akan menampilkan kemungkinan yang sesuai berikutnya (urutan abjad), eropa-andorra.

Jika Anda ingin lebih cepat ke eropa-norwegia, Anda bisa:

  1. Ketik europe-no dan kemudian tekan TABatau
  2. Ketik e dan kemudian terus menekan TABsampai menampilkan eropa-norwegia


Pembaruan: Git Bash cukup banyak yang saya butuhkan

Gunakan PowerShell ISE alih-alih hanya PowerShell. Ini memberi Anda akses ke intelliSense auto-complete, yang memunculkan daftar opsi saat mengetik atau Ctrl+ Space. ISE juga membuka banyak kemungkinan menarik lainnya seperti penyelesaian tab dan hal-hal lain.

Kelemahannya, ini tidak mendukung aplikasi interaktif seperti ssh atau python shell.

Saya sebenarnya sudah mulai menggunakan ConEmu hari ini karena kelemahan ini. ConEmu sangat keren.

Windows PowerShell Integrated Scripting Environment (ISE) adalah salah satu dari dua host untuk mesin dan bahasa Windows PowerShell. Dengannya Anda dapat menulis, menjalankan, dan menguji skrip dengan cara yang tidak tersedia di Windows PowerShell Console. ISE menambahkan pewarnaan sintaksis, penyelesaian tab, IntelliSense, debugging visual, dan Bantuan peka konteks.

ISE memungkinkan Anda menjalankan perintah di panel konsol, tetapi juga mendukung panel yang dapat Anda gunakan untuk secara bersamaan melihat kode sumber skrip Anda dan alat lain yang dapat dihubungkan ke ISE. Anda bahkan dapat membuka banyak jendela skrip sekaligus, yang sangat membantu ketika Anda sedang men-debug skrip yang menggunakan fungsi yang ditentukan dalam skrip atau modul lain.

https://technet.microsoft.com/en-us/library/dd819514.aspx



Tahan Tabtombol untuk bergerak maju melalui opsi dan Shift+ Tabuntuk memutar kembali.

Right arrow →kunci akan mereproduksi karakter cmdline 1 terakhir sekaligus. Saya menemukan itu berguna ketika mengganti nama file.

misalnya:

ren file.1.mp4 Guitar.Licks.01.Pentatonic.2.notes.per.string.mp4

Tahan right arrow →hingga 1, lalu ketik 2. Tahan panah kanan hingga 1, lalu ketik 2. Tahan panah kanan hingga 2, lalu ketik 3, tahan panah kanan hingga akhir. Hasilnya adalah ...

ren file.2.mp4 Guitar.licks.02.Pentatonic.3.notes.per.string.mp4



Di Windows 10, nama file dan nama direktori selesai dapat menggunakan wildcard.

Sebagai contoh mengubah ke eropa-norway, salah satu dari perintah ini harus bekerja:

cd *nor*<tab>

atau

cd *way<tab>

Anda dapat menggunakan beberapa '*' s, dan ada tidak implisit terkemuka atau trailing '*'.


Cukup menggunakan regedit:

1) Mulai -> Jalankan -> regedit 2) Traverse ke yang berikut untuk pengguna saat ini atau semua pengguna sistem,

HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Command Processor HKEY_CURRENT_USER \ SOFTWARE \ Microsoft \ Command Processor

3) Klik dua kali pada prosesor perintah dan ubah nilainya menjadi "9" dalam desimal atau "0x9" dalam hex. 4) Ini akan memungkinkan TAB untuk melengkapi otomatis.

Buka kembali command prompt Anda dan coba.


Di windows 10 (7?) Gunakan shift + tab untuk menggilir melalui opsi autocomplete yang tersedia diberikan path parsial.

Ketika dipanggil tanpa apa-apa, ia akan menggilir semua opsi yang tersedia di direktori.