Seleccioné un texto usando mi teclado, comenzando en la línea inferior y subiendo (el carácter | indica la posición del cursor):
AAA |{BBB CCC
DDD} EEE FFF
Ahora, me gustaría cambiar la selección para que comience al final de la primera línea , es decir, para que se vea así:
Resultado Esperado:
AAA BBB CCC |{
DDD} EEE FFF
Puedo reducir la selección palabra por palabra con ⌥ ⇧ →:
Pero la forma natural de hacerlo sería mediante ⌘ ⇧ →, para saltar directamente al final de la primera línea. En muchos editores de texto decentes esto funciona bien (por ejemplo, Sublime Text 2). También mantienen la |
posición visible cuando se selecciona texto por cierto.
Sin embargo, el comportamiento predeterminado de las aplicaciones OSX es que ignoran el hecho de que el cursor se encuentra actualmente al comienzo de la selección, y moverlo hacia la derecha debería eliminar la selección allí. En cambio, ⌘ ⇧→siempre extiende la selección desde su final hasta el final de la línea, sin importar dónde se encuentre actualmente el cursor:
Resultado actual:
AAA {BBB CCC
DDD EEE FFF}|
¿Hay alguna forma de hacer que las aplicaciones nativas de OSX también se comporten de la manera esperada?
Estoy en OSX Yosemite 10.10.2, pero creo que este problema ha existido desde que tengo memoria.
Mac no usa la posición del cursor si tiene una selección de texto múltiple, considera que el cursor está en 'todo el texto seleccionado'.
Puede ver esto demostrado si usa Cmd ⌘ Shift ⇧ ← en lugar de →
Agregar a la selección con Shift ⇧ incluye la selección anterior.
No es una solución, pero podría ser una solución alternativa → que movería el cursor al final de su selección actual, deseleccionándola simultáneamente y luego Cmd ⌘ Shift ⇧ ← seleccionando al comienzo de la línea.
Entonces, tal como yo lo veo, la navegación de texto en OS X funciona (y se espera que funcione) así:
Navegue por línea (o documento, es decir, grandes cantidades de datos):
cmd+teclas de flecha: se mueve por líneas (izquierda/derecha para líneas, arriba/abajo para todo el documento). Mantenga presionado shiftpara seleccionar
Navegar por palabra (es decir, pequeños fragmentos de datos):
alt+teclas de flecha: se mueve por palabra (izquierda/derecha). Mantén pulsado shiftpara seleccionar.
Entonces, para lograr su "resultado esperado", primero debe presionar la flecha derecha para llegar al final de su selección actual y luego ++ cmdpara seleccionar la línea que conduce a ella.shift ←
Cuando ya tienes una selección:
Para resumir: lo que quieres no es realmente posible. Si observa la lista de combinaciones de teclas del sistema disponibles ejecutando
plutil -convert xml1 /System/Library/Frameworks/AppKit.framework/Resources/StandardKeyBinding.dict -o -|pl|grep -v noop:|ruby -pe '$_.gsub!(/[^ -~\n]/)' | grep -i selection
Verá que aunque puede vincular teclas personalizadas a todas las funciones de selección, ~/Library/KeyBindings/DefaultKeyBinding.dict
no existe tal función que logre el comportamiento solicitado (ya que este comportamiento no está integrado en el sistema).
0942v8653
Jakub Roztócil
Jakub Roztócil
Asmus
select text between the insertion point and the end of the current line
. La única línea en su ejemplo, donde la selección aún no incluye el final de la línea , es la última línea. Entonces, el comportamiento esperado en OS X es extender la selección desde allí, ¡no acortarla en la línea de inicio! Sé que algunos editores se comportan de manera diferente, ¡pero lo están haciendo mal , no el sistema!Jakub Roztócil
Jakub Roztócil
(*)
significa?Asmus
(*)
significa, pero probablemente sea un remanente de versiones anteriores de la documentación. Actualicé mi respuesta ligeramente para incluir la opción de combinación de teclas global que conozco, pero desafortunadamente estoy bastante seguro de que no hay forma de lograr lo que está buscando. Dado que el comportamiento no está integrado, las aplicaciones no sabrían cómo manejarlo incluso si pudiera activarlo.Jakub Roztócil
bajo