Ubah * Penyelesaian * daftar untuk menyortir secara vertikal?

8

Ketika Anda memicu penyelesaian minibuffer untuk perintah parsial / nama file / dll, buffer * Penyelesaian * mencantumkan kemungkinan penyelesaian yang disejajarkan secara vertikal (dalam kolom) tetapi diurutkan secara horizontal.

../                ./                   ajax-proj/         algorithms/
angular-phone/     angular/             annex/             archives/
blog-ideas/        clojure-koans/       ctags58/           diff-tryout/
encodings/         filters/             game-table/        git-grounds/
hartl/             invoice_angel/       jQuery-basics/     java/
making/            ng-fundamentals/     node-meetup/       pickaxe/

Saya menemukan ini jauh lebih sulit untuk memindai daripada jika mereka diurutkan secara vertikal, seperti Bash.

../                annex/               encodings/         jQuery-basics/
./                 archives/            filters/           java/
ajax-proj/         blog-ideas/          game-table/        making/
algorithms/        clojure-koans/       git-grounds/       ng-fundamentals/
angular-phone/     ctags58/             hartl/             node-meetup/
angular/           diff-tryout/         invoice_angel/     pickaxe/

Apakah ada pengaturan yang mengontrol ini?

ivan
sumber

Jawaban:

6

Ada variabelnya completions-format(sejak Emacs 23.2). Atur saja 'vertical.

Harald Hanche-Olsen
sumber
1
Astaga! Meskipun Emacs memiliki banyak konfigurasi, saya terus berlari ke aspek yang sangat menjengkelkan yang tidak memiliki solusi yang mudah. Senang mendengar ini bukan salah satunya. completions-formatadalah persis apa yang saya cari, dan pengaturan untuk 'verticalmelakukan trik. Terima kasih!
ivan
Ya, saya tahu perasaan itu ... Sejujurnya, saya sendiri tidak tahu tentang yang ini. Ironisnya, saya mengetahuinya dengan menelusuri dokumentasi untuk es, yang ditunjukkan oleh jawaban @ Drew.
Harald Hanche-Olsen
Hah, yang benar-benar adalah ironis :)
ivan
saya terbiasa dengan perintah unix ls yang secara vertikal mengurutkan secara default; juga variabel yang dapat disesuaikan ini tidak ada dalam completiongrup yang ada tetapi dalam grup kustomisasi minibuffer (berada di minibuffer.el ) yang dapat diakses olehcustomize-group minibuffer
1

Anda dapat dengan mudah melakukan ini jika menggunakan Es - lihat Tata Letak Vertikal .

Anda dapat menjadikan ini perilaku default dengan menyesuaikan opsi icicle-completions-formatuntuk memiliki nilai vertical.

Dan Anda dapat beralih antara tata letak horizontal dan vertikal kapan saja selama penyelesaian, menggunakan C-M-^.

Ini mempengaruhi semua penyelesaian minibuffer, baik oleh completing-readatau read-file-name(atau apa pun yang menggunakan ini).

Drew
sumber