Cmder - Gunakan <tab> untuk menelusuri kandidat yang dilengkapi otomatis?

18

Dalam cmd.exe asli di Windows, dapat digunakan untuk menelusuri kandidat pelengkap otomatis. Namun dalam cmder, fitur ini sepertinya dihilangkan. Apakah ada cara untuk mengaktifkannya?

dofine
sumber
Mengapa Anda mencoba cmder daripada ConEmu resmi daripada?
Maximus
@ Maximus Baru saja menemukan cmder dan tidak pernah mencoba yang lain ... Terima kasih!
dofine
2
cmder hanyalah ConEmu yang telah dikonfigurasikan sebelumnya dengan beberapa perangkat lunak pihak ketiga
Maximus

Jawaban:

19

Seperti disebutkan di atas, ' cmder ' adalah penggabungan dari perangkat lunak open source lainnya. Perangkat lunak yang mengontrol perilaku penyelesaian tab adalah ' denting '. Untuk mengubah perilaku ini, navigasikan ke direktori ' cmder ' Anda dan kemudian temukan:

\ cmder \ vendor \ clink \ clink_inputrc_base

Buka 'clink_inputrc_base', simpan cadangan asli, lalu ganti kedua baris yang bertuliskan:

"\ t": denting-selesai-shim

dengan:

"\ t": menu-lengkap

untuk shift + tab cycle perilaku mundur, tambahkan juga baris di bawah masing-masing baris di atas yang bertuliskan:

"\ e`Z": menu-lengkap-mundur

Ini berhasil untuk saya. Terima kasih atas tautan ini untuk info tentang memodifikasi perilaku denting:

https://github.com/mridgers/clink/issues/190

Sunting: Silakan lihat komentar saya di bawah ini, atau jawaban tambahan dari 'pasang surut'. Dalam versi cmder yang lebih baru prosesnya sedikit lebih sederhana. Anda hanya perlu menghapus komentar baris seperti yang dijelaskan dalam file, lihat komentar saya atau jawaban lain untuk lebih detail.

Kumis
sumber
UPDATE: Saya baru saja mengunduh versi cmder (v1.3.6) yang lebih baru dan sekarang file di atas memiliki dua baris yang dikomentari, di mana dikatakan "# Batalkan komentar dua baris ini untuk penyelesaian gaya vanilla cmd.exe." Jika Anda menghapus komentar dua baris di bawah ini akan mencapai perilaku yang sama dengan jawaban saya di sini.
Kumis
Apakah mungkin membuat <tab> berfungsi sebagai: <tab> 1 - mencantumkan semua perintah yang mungkin, ke-2 dan setelah <tab> - selesai?
X.Arthur
10

Sebenarnya, di \cmder\vendor\clink\clink_inputrc_basefile sudah ada baris-baris ini di akhir:

# Uncomment these two lines for vanilla cmd.exe style completion.
# "\t": clink-menu-completion-shim
# "\e`Z": clink-backward-menu-completion-shim

Jika Anda menghapus #karakter dari dua baris terakhir Anda akan mendapatkan perilaku yang diinginkan.

Tides
sumber
Terima kasih, ya catat ini dalam komentar saya pada 22 Juni. Ini tidak ada di versi cmder sebelumnya.
Kumis
Pokoknya untuk mengecualikan item yang sebenarnya tidak ada di direktori kerja saat ini?
hellyale
Masih belum melengkapi secara otomatis untuk gitperintah
Kolob Canyon
2

Denting perubahan Perilaku penyelesaian tab. Jadi: hapus clink dari vendorsfolder, hapus centang Use clink in prompt .

Maximus
sumber
Ini berfungsi setelah saya menghapus denting, meskipun saya tidak memeriksa Use clink in promptpada awalnya. Satu lagi masalah adalah itu sekarang {lamb}dan {git}{hg}muncul. Git prompt tampaknya rusak ketika saya cd ke git dir.
siang
Instal ConEmu resmi dan konfigurasikan sesuai selera Anda
Maximus
@ Maximus bagaimana? dapatkah Anda memperluas
peval27