zshell ohmyzsh mac instalar awesome shell autocomplete zsh

shell - ohmyzsh - oh my zsh ubuntu



Menú de finalización de historia ZSH (1)

hay algo en zsh llamado history-beginning-search-menu . Si pones:

autoload -Uz history-beginning-search-menu zle -N history-beginning-search-menu bindkey ''^X^X'' history-beginning-search-menu

en su archivo .zshrc. entonces por ejemplo:

kent$ sudo systemctl[here I type C-X twice] Enter digits: 01 sudo systemctl acpid.service 11 sudo systemctl enable netfs 02 sudo systemctl enable acpid 12 sudo systemctl enable networkmanager 03 sudo systemctl enable alsa 13 sudo systemctl enable NetworkManager 04 sudo systemctl enable alsa-restore 14 sudo systemctl enable NetworkManager-wait-online 05 sudo systemctl enable alsa-store 15 sudo systemctl enable ntpd 06 sudo systemctl enable cronie 16 sudo systemctl enable sshd 07 sudo systemctl enable cups 17 sudo systemctl enable syslog-ng 08 sudo systemctl enable dbus 18 sudo systemctl enable tpfand 09 sudo systemctl enable gdm 19 sudo systemctl reload gdm.service 10 sudo systemctl enable hal 20 sudo systemctl restart gdm.service

entonces necesitas dar el número de índice para disparar el comando en la historia.

por supuesto, podría haber alguna optimización para eso. pero creo que esto te ayuda a comenzar.

Espero eso ayude.

La autocompleta de Zsh es increíble, pero no puedo configurar una cosa correctamente: quiero que zsh me ofrezca una lista de comandos del historial.

Sé que puedo buscar en la historia con Ctrl + R , pero quiero algo un poco diferente. Cuando escribo:

shelajev @ elephant ~ »kill 1 TAB
1642 shelajev gnome-keyring-d
1718 shelajev gnome-session
1807 shelajev ssh-agent
1810 shelajev dbus-launch
1811 shelajev dbus-daemon
1822 shelajev gnome-settings-
1884 shelajev gvfsd
1891 shelajev gvfs-fusil-daemo

Zsh me ofrece una lista de procesos para matar. Quiero tener algo como esto:

shelajev @ elephant ~ »kill Ctrl + X Ctrl + X
matar -9 12093
matar -15 4123

donde esos elementos en la lista son tomados de mi historial.

Existe una cosa ZLE hist-completa, pero no sé cómo configurarlo correctamente.

Tengo lo siguiente en mi .zshrc :

zle -C hist-complete complete-word _generic zstyle '':completion:hist-complete:*'' completer _history bindkey "^X^X" hist-complete

Pero esto solo completa palabras individuales, lo cual no me da mucho. ¿Hay alguna manera de combinar la búsqueda histórica de líneas en el historial y mostrar una lista de eso?