Lo hago Ctrl+Wen la terminal de Mac para eliminar una palabra (elimina desde donde se encuentra el cursor al comienzo de la palabra)
¿Cómo hago lo contrario: elimina desde donde está el cursor hasta el final de la palabra?
Lo hago Ctrl+Wen la terminal de Mac para eliminar una palabra (elimina desde donde se encuentra el cursor al comienzo de la palabra)
¿Cómo hago lo contrario: elimina desde donde está el cursor hasta el final de la palabra?
Respuestas:
Esto depende de su shell y su modo de edición de línea de comando activo.
Para un shell con el modo de edición de línea de comandos de Emacs ( set -o emacsen algunos shells), use Alt+D(esto no funciona en macOS por cualquier razón, pero imprime el carácter ∂, use Escden su lugar).
Para un depósito con el modo de línea de comandos de edición Vi ( set -o vien algunas conchas), uso Escdw(esto lo hace el trabajo en MacOS también).
Para la disciplina de línea tty, ^Welimina la palabra delimitada por espacios en blanco anterior .
En el vieditor en modo de inserción, ^Welimina hacia atrás al inicio de la primera secuencia de alnums o no alnums (activado foo-+-bar.. baz, primero elimina baz, luego .., luego bar, luego -+-, luego foo).
En el emacseditor, ^Welimina de la posición del cursor a la marca (la que configuró con Ctrl+Space).
Algunos editores de línea como readline(usado por bash, gdb...), zle(usado por zsh), pdkshcuando están en vimodo, se comportan como vien ese sentido y cuando están en emacsmodo se comportan como la disciplina de línea tty (no emacs).
libedit(utilizado por shells BSD u (opcionalmente) dash), tcshAT&T ksh, en emacsmodo, se comportan como emacsdonde se ^Wborran a la marca (inicialmente al comienzo del búfer).
Para eliminar una palabra hacia adelante, en el vieditor, lo haría en modo comando ( normal ) con dwpara eliminar al comienzo de la siguiente secuencia de alnums o no alnums (o al final de la línea) y dWeliminar al siguiente secuencia de no espacios en blanco (el colgante de la ^Wdisciplina tty line).
En el emacseditor de líneas, Meta-Deliminaría hasta el final de la siguiente secuencia de caracteres alnum. La palabra operadores de movimiento ( Meta-B, Meta-F) se comportan de manera similar.
los editores de línea de comandos, cuando están en vimodo, se comportan como vi, pero en emacsmodo, tienes dos escuelas principales: la tcshescuela y la kshescuela.
La kshescuela ( readline, ksh, yash) se comporta igual que la mayoría emacs( fishel comportamiento 's es ligeramente diferente en la forma en que trata a no alnum, caracteres no está en blanco tanto emacsy vimodo).
En la tcshescuela ( tcsh, libedit, zsh), los movimientos de palabras se basan en palabras delimitadas por espacio de manera son consistentes con la línea TTY de la disciplina ^Wen ese sentido.
En zsh, el comportamiento es personalizable con diferentes estilos de palabras para todos los widgets de movimiento de palabras.
Para readline, puede obtener la tcshescuela (y Meta-Deliminar el mismo tipo de palabra que lo Ctrl-Whace) agregando a su ~/.inputrc:
set keymap vi-move
"\e[EMACS~": emacs-editing-mode
set keymap emacs
"\e[VI~": vi-movement-mode
"\ed": "\e[VI~dW\e[EMACS~"
"\ef": vi-fWord
"\eb": vi-bWord
O, por otro lado, alinee ^Wa los otros widgets de movimiento de palabras (se comportan como Meta-Backscape) con:
set keymap emacs
"\C-W": backward-kill-word
En cuanto a cuál es la Metaclave, ver allí .
En Linux intente Ctrl+keliminar desde donde está el cursor hasta el final de la palabra.
Hay algunos otros atajos enumerados a continuación (trabajando en Linux):
Ctrl+e -> Toma el cursor al final de la palabra.Ctrl+t -> Intercambia la posición de los alfabetos.Ctrl+y -> agrega postfix "hh" a la palabra actual.Ctrl+u -> Elimina toda la línea.Ctrl+o -> Funciona igual que la tecla Intro.Ctrl+p -> Funciona igual que el botón de flecha hacia arriba.Ctrl+a -> Lleva el cursor a la posición inicial del comando.Ctrl+d -> Cierra la terminal.Ctrl+f -> Mueve el cursor hacia adelante por un personaje.Ctrl+h -> Funciona igual que la tecla Retroceso.Ctrl+j -> Funciona igual que la tecla Intro.Ctrl+m -> Funciona igual que la tecla Intro.Ctrl+b-> Funciona igual que la tecla de flecha derecha. 14 Ctrl+4 -> elimina la palabraCtrl+kelimina al final de la línea . Ctrl+uelimina toda la línea (si el cursor está al final). Ctrl+denvía EOF. Ctrl+eva al final de la línea , etc.
bashenviel modo, se puede utilizardWpara eliminar los