Conozco la combinación Ctrl+ Apara saltar al comienzo del comando actual y Ctrl+ Epara saltar al final.
Pero, ¿hay alguna manera de saltar palabra por palabra, como lo hace Alt+ ←/ →en las aplicaciones Cocoa?
macos
terminal
keyboard-shortcuts
el hombre de hojalata
fuente
fuente
ALT
accesos directos se han agregado a Terminal en la última versión de OS X.Respuestas:
Fuera de la caja, puede usar el extraño Esc+ Fpara moverse al comienzo de la siguiente palabra y Esc+ Bpara moverse al comienzo de la palabra actual.
fuente
Esc
+F
cuando está al final de una línea o al otro combo de teclas al comienzo de la línea, simplemente inserta la letra. ¡Molesto!~/.inputrc
.En Mac OS X: los siguientes métodos abreviados de teclado funcionan de forma predeterminada. Tenga en cuenta que debe hacer que la tecla Opción actúe como Meta en las preferencias de Terminal (en la pestaña del teclado)
He observado que las combinaciones de teclas predeterminadas de emacs para la navegación de texto simple parecen funcionar en los shells de bash. Puedes usar
fuente
+ESC
, luego puede usar la OPCIÓN f / b para mover la palabra hacia adelante y hacia atrás en consecuencia. MásAsí es como puedes hacerlo
Por defecto, la Terminal tiene estos atajos para moverse (izquierda y derecha) palabra por palabra:
Puede configurar alt+ ←y →generar esas secuencias por usted:
⌥ ←
si está allí, o agréguelo si no está.\033b
(no puede escribir este texto manualmente).\033f
)Alternativamente, puede consultar esta publicación de blog en textmate:
http://blog.macromates.com/2006/word-movement-in-terminal/
fuente
B
para volver oF
para el avance en elEsc+
campoalt left
yalt right
para generar esas secuenciasCambie a iTerm2 . Es gratis y mucho mejor que la vieja terminal. También tiene muchas más opciones de personalización, como atajos de teclado.
También me encanta que puedes usar cmdy 1-9 para cambiar entre pestañas. Pruébalo y nunca volverás a la terminal normal :)
Cómo configurar las preferencias de teclado personalizadas en iterm2
A menudo presiono el botón equivocado ( cmd/ control/ alt) con una tecla de flecha, así que tengo mis combinaciones de teclas de flecha con esos botones configurados para saltar hacia adelante y hacia atrás, pero haga lo que mejor le convenga.
fuente
Ctrl + Arrow Left
oRight
,Up
yDown
funciona: / intenté con y sin el nuevo perfil establecido de manera predeterminadaEn realidad, hay un enfoque mucho mejor. Mantenga presionado option( alten algunos teclados) y presione las teclas de flecha hacia la izquierda o hacia la derecha para moverse por palabra. Simple como eso.
option←
option→
También ctrlelo llevará al final de la línea y ctrlalo llevará al inicio.
fuente
[D
y[C
. Para solucionar esto, agreguebind '"[D": backward-word'
ybind '"[C": forward-word'
a mi.bashrc
..bashrc
pero no funcionó, ¿algo malo para mí? (Uso RubyMine).bashrc
cuando se inicia el terminal. Intenteecho "here"
ver si ese mensaje aparece cuando abre una nueva terminal. Además, debe cerrar y volver a abrir el terminal o ejecutarlosource ~/.bashrc
para que lea el nuevo archivo.Tengo Alt+ ←/ →trabajando: abra Preferencias »Configuración» Teclado , configure la entrada para el cursor de opción a la izquierda para enviar la cadena al shell: \ 033b , y configure el cursor de opción a la derecha para enviar la cadena al shell: \ 033f . También puede usar esto para otras combinaciones de teclas de control.
fuente
Enable option as meta key
. Por cierto, es muy bueno. La clave seguramente será mucho más conveniente de alcanzar en comparación con Esc + B o Esc + FEn realidad, depende de qué caparazón uses, sin embargo, la mayoría de las capas tienen enlaces similares. Los enlaces a los que se refiere (por ejemplo, Ctrl+ Ay Ctrl+ E) son enlaces que encontrará en muchos otros programas y se usan por edades, por cierto, también funcionan en la mayoría de las aplicaciones de interfaz de usuario.
Aquí hay un vistazo de los enlaces predeterminados para Bash:
Atajos de teclado Bash más importantes
Tenga en cuenta también que puede personalizarlos. Necesita crear un archivo, nombre como desee, llamé el mío .bash_key_bindings y lo puse en mi directorio de inicio. Allí puede establecer algunas opciones generales de bash y también puede establecer enlaces de teclas. Para asegurarse de que se apliquen, debe modificar un archivo llamado ".bashrc" que bash lee al inicio (debe crearlo, si no existe) y hacer la siguiente llamada allí:
~ significa directorio de inicio en bash, como se indicó anteriormente, puede nombrar el archivo como desee y también colocarlo donde desee siempre que alimente la ruta correcta + nombre para vincular.
Déjame mostrarte algunos extractos de mi archivo .bash_key_bindings:
Estos solo establecen un par de opciones (por ejemplo, deshabilitar la campana; todo esto se puede buscar en la página web de bash).
Esto asegura que los personajes solos no hagan nada más que asegurarse de que el personaje esté "mecanografiado" (se insertan en el shell).
Esto es bastante interesante Si presiono Ctrl+ Dsolo (seleccioné d para eliminar), no sucede nada. Pero si luego escribo una w minúscula, la palabra a la izquierda del cursor se elimina. Si escribo una mayúscula, sin embargo, la palabra a la derecha del cursor se elimina. Lo mismo ocurre con l y L con respecto a la línea completa que comienza desde el cursor. Si escribo una "a", toda la línea se elimina realmente (todo antes y después del cursor).
Coloqué saltando una palabra hacia adelante en Ctrl+ Fy una palabra hacia atrás en Ctrl+B
Como puede ver, puede hacer un acceso directo, que conduce a una acción de inmediato, o puede hacer uno, que solo se inicia en una secuencia de caracteres y luego tiene que escribir uno (o más) caracteres para que una acción tenga lugar como mostrado en el ejemplo más arriba.
Entonces, si no está satisfecho con los enlaces predeterminados, no dude en personalizarlos como desee. Aquí hay un enlace al manual de bash para obtener más información.
fuente
command
código clave? En su ejemplo,control
es\C
, pero ¿cómo escommand
?Meta
bash (\M
), cmd + left sería\M-\e[D
. Sin embargo, no puede asignar cmd + ... a nada, todos los accesos directos de comandos son manejados (y por lo tanto tragados) por la aplicación de Terminal (los que nunca se reenvían al shell) y cmd + se asignan a "ventana anterior" si tiene múltiples Ventanas de terminal abiertas. Lo sentimos, simplemente no es posible con la aplicación Terminal.¡Utilice el preajuste de edición de texto natural !
Esencialmente, une, entre otras secuencias de teclas, Opción + Flecha izquierda a
^[b
secuencia y Opción + Flecha derecha a^[f
Esto funciona en fish and bash, así como en la terminal psql.
fuente
Si eres un usuario de Vim, puedes probar el modo vim de bash. Ejecute esto o póngalo en su
~/.bashrc
archivo:Por defecto estás en modo de inserción; pulsa escape y puedes moverte como lo haces en Vim en modo normal, por lo que el movimiento por palabra es
w
ob
, y las teclas de movimiento habituales también funcionan .fuente
Si marca
Use option as meta key
en la pestaña del teclado las preferencias, los comandos de estilo predeterminados de emacs para palabra hacia adelante y hacia atrás y⌥F
( Alt+ F) y⌥B
( Alt+ B) respectivamente.Recomiendo leer De Bash a Z-Shell . Si quieres aumentar tu destreza bash / zsh!
fuente
A partir de Mac OS X Lion 10.7, mapas terminal Option- Left/Right Arrowa Esc- b/fpor defecto, por lo que este está integrado por el golpe y los otros programas que utilizan combinaciones de teclas compatibles con estos emacs.
fuente
Mantenga presionada la tecla Opción y haga clic donde desee que se mueva el cursor
fuente
En Bash, estos están vinculados a Esc- By Esc- F. Bash tiene muchos, muchos más atajos de teclado; Echa un vistazo a la salida de
bind -p
para ver cuáles son.fuente
Bajo
iterm2
's Preferencias> Perfil> Keys , hace clic en la+
continuación asignaciones de teclas y grabar un nuevo acceso directo. Para Acción , seleccioneSend Escape Sequence
y escribab
of
hacia atrás y hacia adelante respectivamente.Cuando intenté grabar uno para ( Ctrl+ ←), noté en el campo Atajo de teclado que la flecha nunca apareció. Resulta que primero tuve que deshabilitar las Preferencias del sistema de Mac predeterminadas > Teclado> Accesos directos> Atajos de control de misión para que las cosas funcionen, ya que anularán los accesos directos predeterminados de iterm2. También debería ser cierto para la aplicación de terminal estándar.
fuente
Nueva respuesta para los usuarios de iTerm2 Build 3.3.4:
Paso 1: (macOS X) Preferencias del sistema> Teclado> pestaña Accesos directos> Seleccionar control de misión (panel izquierdo)> Desmarcar accesos directos etiquetados como "Mover a la izquierda un espacio" y "Mover a la derecha un espacio"
Paso 2: (iTerm2 Build 3.3.4) Preferencias> Perfiles> Seleccionar * Predeterminado (panel izquierdo)> pestaña Teclas> Eliminar ambas entradas "⌥->" y "⌥ <-"> Establecer ambas teclas "Opción izquierda (⌥): "y" Tecla de opción correcta (⌥): "a Esc +
Sin perder el tiempo con los perfiles de shell, sin perder el tiempo con el terminal masOS inferior (predeterminado), sin incomodo Esc + F / B, enjuagar y repetir sin sentido.
¡¡¡Trato hecho!!!
¡Disfruten este consejo, mis compañeros PROGRAMADORES!
fuente
Como se respondió anteriormente, puede agregar
set -o vi
sus combinaciones de teclas /~/.bashrc
usar , o bien puede agregar la siguiente parte para moverse con las teclas de flecha:vi
vim
.bashrc
Ctrl
Para iniciar el efecto de estas líneas de código,
source ~/.bashrc
inicie o inicie una nueva sesión de terminal.fuente