Cómo hacer que [return] se comporte como [return] dentro de Messages, Skype ...

1

Estoy usando Messages en ambos Macs y amp; iPhones y yo estamos escribiendo un montón de correos electrónicos. Dentro de todo este entorno, estoy acostumbrado al comportamiento normal de la tecla return .

Dentro de Messages , esta clave no se comporta como una clave de retorno, lo que me hace enviar prematuramente mensajes truncados.

Encontré esta pregunta muy similar: Cómo insertar una nueva línea al presionar la tecla de retorno en iMessage en Mac OSX y ya conocía las soluciones alternativas propuestas ctrl + return , alt + return . Pero estas soluciones no respondieron a la pregunta original. Por otra parte ya los uso pero esto todavía me deja con un tasa de error inaceptable .

Desde mi punto de vista, return nunca debe asociarse con una "función" dentro de un entorno en el que están escribiendo el texto. Este es un gran error de diseño ergonómico .

Intenté anular la asignación de acceso directo real con:

defaults write com.apple.iChat NSUserKeyEquivalents '{ "                            
" = "insertNewline:" ; }

Que es un fallo silencioso.

Sospecho que la sintaxis de la función puede ser incorrecta, pero Messages no escribe ningún error sobre esto.

¿Existe alguna documentación sobre la sintaxis exacta de las funciones internas Messages a las que se puede llamar desde un acceso directo?

¿Hay alguna otra forma correcta de hacer que return se comporte como un simple return ?

    
pregunta daniel Azuelos 25.04.2016 - 20:16

4 respuestas

0

Instalar Karabiner

Que se puede encontrar allí: Karabiner: un personalizador de teclado para OS X

Haz un private.xml

Lea la documentación de Karabiner sobre el tema: private.xml Reference Manual

Crea el ${HOME}/Library/Application Support/Karabiner/private.xml con el siguiente contenido:

<?xml version="1.0"?>
<root>
  <appdef>
    <appname>MESSAGES</appname>
    <equal>com.apple.iChat</equal>
    <equal>com.skype.skype</equal>
  </appdef>
  <item>
    <name>Messages return modification</name>
    <appendix>Change Return to Newline</appendix>
    <appendix>Change Newline to Return</appendix>
    <identifier>swap Return and Newline</identifier>
    <only>MESSAGES</only>
    <autogen>__KeyToKey__ KeyCode::RETURN, ModifierFlag::COMMAND_L, KeyCode::RETURN</autogen>
    <autogen>__KeyToKey__ KeyCode::RETURN, KeyCode::RETURN, ModifierFlag::CONTROL_L</autogen>
  </item>
</root>

Dependiendo de su gusto, use vi , emacs o TextEdit (pero por supuesto no Word ).

Carga tu private.xml

Indica a Karabiner que usarás una configuración personalizada:

ycargarlo:

Pruébalo

Inicie Messages o Skype y verifique que pueda escribir return dentro de cualquier mensaje y envíe un mensaje con comando ⌘ return .

    
respondido por el daniel Azuelos 25.07.2016 - 19:51
4

Cree un archivo (en una instalación estándar, el directorio KeyBindings no existe):

mkdir ~/Library/KeyBindings

que contiene las siguientes 2 remappings:

$ cat >~/Library/KeyBindings/DefaultKeyBinding.dict <<end_of_file
/* my keybindings */
{
        "\U000d" = ("insertLineBreak:") ;
        "@\U000d" = ("insertNewline:") ;
}
end_of_file

@ significa cmd en este diccionario, \U000d significa Unicode de la devolución estándar (== 0x0d ).

Reinicie Messages y de ahora en adelante,

  • return pondrá un real return,

  • cmd + return enviará el mensaje .

Inconveniente

Esta solución se aplica a cualquier aplicación que use ~/Library/KeyBindings/DefaultKeyBinding.dict .

Ventaja

Esta solución se aplica a cualquier aplicación que no sea natural . de la devolución en un área de texto. Lo más notable es que ahora tengo un Skype con el que no envío más mensajes truncados prematuramente.

    
respondido por el daniel Azuelos 26.04.2016 - 19:15
3

En Mensajes, la combinación de teclado para insertar "nueva línea" es:

  • CTRL + ↩︎ Volver

No enviará el mensaje, pero insertará una señal de transporte de retorno (una nueva línea).

Lo estoy usando todo el tiempo, cuando escribo mensajes SMS / i desde MacBook ... pero sí, no es realmente cómodo, ya que hay demasiados accidentes cuando estás enviando mensajes truncados.

En la mayoría de las aplicaciones, Skype y otros Mensajeros insertan una nueva línea que funciona en los siguientes métodos abreviados de teclado:

  • CTRL + ↩︎ Volver
  • ⌥ Opción + ↩︎ Volver

No recomiendo anular estos accesos directos, ya que es de conocimiento común y comportamiento estándar cuando se trabaja con Mensajes y Mensajeros.

En los procesadores de texto, los editores de código y los editores de correo electrónico tienen un comportamiento diferente, como se ve en el área de texto grande, y ↩︎ Return actúa como una acción de "nueva línea". Modificadores por igual CTRL , ⌥ Opción , ⌘ Comando podrían funcionar como funcionalidad adicional para insertar una nueva línea "suave", para insertar una nueva página, salto de línea delimitador, etc.

Es posible que desee utilizar BetterTouchTool , que era una utilidad gratuita que puede deshabilitar los atajos de teclado ( y tiene muchos otros usos). La lista de sus acciones para deshabilitar / habilitar el acceso directo podría ser la siguiente:

  1. Instalar BetterTouchTool
  2. Haz clic en el elemento de barra de menú BetterTouchTool y elige Preferences
  3. Haz clic en Keyboard
  4. Haga clic en el signo más en la parte inferior del panel Select Application:
  5. Elija Messages (en la carpeta /Applications )
  6. Haz clic en + Add New Shortcut
  7. Haga clic en Keyboard Shortcut , presione retorno
  8. Haz clic en Trigger Other Keyboard Shortcut y pulsa ctrl + return
  9. Deje Trigger Predefined Action: a No Action (que es el valor predeterminado)
  10. repita los pasos 7,8 y amp; 9 para volver a asignar cmd + return a shift + return

Lo que debería llevar a tal pantalla:

    
respondido por el Farside 26.04.2016 - 10:45
1

Karabiner ha cambiado, necesito el archivo json ahora: pegue a continuación en un archivo de texto, cambie el nombre a messages.json y luego cópielo en: ~ / .config / karabiner / asset / complex_modifications / a continuación, agregue las dos reglas a través de la aplicación

{"título": "Modificación de la clave de retorno de los mensajes de Mac", "reglas": [{"descripción": "Usar Devolver como nueva línea", "manipuladores": [{"tipo": "básico", " de ": {" código_clave ":" return_or_enter "}," to ": [{" key_code ":" return_or_enter "," modifiers ": [" control "]}]," conditions ": [{" type ":" frontmost_application_if "," bundle_identifiers ": [" ^ com \ .apple \ .iChat $ "]}]}]}, {" description ":" Use Control Return as Send "," manipulators ": [{" type ":" basic "," from ": {" key_code ":" return_or_enter "," modifiers ": {" obligatorio ": [" control "]}}," to ": [{" key_code ":" return_or_enter "}]," condiciones ": [{" type ":" frontmost_application_if "," bundle_identifiers ": [" ^ com \ .apple \ .iChat $ "]}]}]}}}

    
respondido por el kevin v 05.11.2018 - 00:31

Lea otras preguntas en las etiquetas