¿Cambiar * Terminaciones * lista para ordenar verticalmente?

8

Cuando activa la finalización del minibúfer para un comando parcial / nombre de archivo / etc., el búfer * Compleciones * enumera las posibles terminaciones alineadas verticalmente (en columnas) pero ordenadas horizontalmente.

../                ./                   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/

Encuentro esto mucho más difícil de escanear que si se ordenaran verticalmente, como lo hace 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/

¿Hay alguna configuración que controle esto?

ivan
fuente

Respuestas:

6

Existe la variable completions-format(desde Emacs 23.2). Solo configúralo 'vertical.

Harald Hanche-Olsen
fuente
1
Vaca santa! A pesar de la gran cantidad de configurabilidad de Emacs, sigo encontrando aspectos realmente molestos que no tienen una solución fácil. Feliz de escuchar que este no es uno de ellos. completions-formates exactamente lo que estaba buscando, y configurarlo 'verticalhizo el truco. ¡Gracias!
Ivan
Sí, conozco el sentimiento ... Para ser honesto, yo mismo no sabía nada de esto. Irónicamente, lo descubrí navegando por la documentación en busca de carámbanos, señalado por la respuesta de @ Drew.
Harald Hanche-Olsen
Ja, eso es realmente irónico :)
Ivan
estoy acostumbrado al comando unix ls que ordena verticalmente por defecto; También esta variable no es personalizable en el vigente completiongrupo, pero en el grupo de personalización minibuffer (que reside en minibuffer.el ) con fácil acceso porcustomize-group minibuffer
1

Puede hacerlo fácilmente si usa Icicles ; consulte Diseño vertical .

Puede hacer que este sea el comportamiento predeterminado personalizando la opción icicle-completions-formatpara tener el valor vertical.

Y puede alternar entre el diseño horizontal y vertical en cualquier momento durante la finalización, utilizando C-M-^.

Esto afecta a toda la finalización del minibúfer, ya sea por completing-reado read-file-name(o cualquier otra cosa que los use).

Dibujó
fuente