9 votos

Vim/Emacs keybinding para `Preview.app`.

¿Alguien tiene ideas para utilizar emacs / vim enlace de teclas para Preview.app al navegador pdf ¿archivos y cómo?

1 votos

¿Qué combinaciones de teclas busca exactamente? Para navegar por archivos PDF ya puede utilizar fácilmente o , por ejemplo.

5voto

JeffFoster Puntos 354

Como sugirió @tty, utilizando Mosquetón es brillante. Hice algunas reglas adicionales.

Puedes navegar con HJKL y hacer zoom con FDER. Lee el archivo para obtener más información.

Aquí está mi private.xml :

<?xml version="1.0"?>
<root>
  <appdef>
    <appname>PREVIEW</appname>
    <equal>com.apple.Preview</equal>
  </appdef>

  <item>
    <name>Vi Navigation in Preview</name>
    <identifier>private.preview.vinav</identifier>
    <only>PREVIEW</only>
    <uielementrole_not>AXTextField, AXTextArea</uielementrole_not>
    <modifier_only>
        ModifierFlag::NONE,
        ModifierFlag::SHIFT_L | ModifierFlag::NONE,
        ModifierFlag::SHIFT_R | ModifierFlag::NONE,
    </modifier_only>
    <appendix>Navigate using the HJKL keys</appendix>
    <autogen>__KeyToKey__ KeyCode::J, KeyCode::CURSOR_DOWN</autogen>
    <autogen>__KeyToKey__ KeyCode::K, KeyCode::CURSOR_UP</autogen>
    <autogen>__KeyToKey__ KeyCode::H, KeyCode::CURSOR_LEFT</autogen>
    <autogen>__KeyToKey__ KeyCode::L, KeyCode::CURSOR_RIGHT</autogen>
  </item>

  <item>
    <name>Vi Zoom in Preview</name>
    <identifier>private.preview.vizoom</identifier>
    <only>PREVIEW</only>
    <uielementrole_not>AXTextField, AXTextArea</uielementrole_not>
    <modifier_only>
        ModifierFlag::NONE,
        ModifierFlag::SHIFT_L | ModifierFlag::NONE,
        ModifierFlag::SHIFT_R | ModifierFlag::NONE,
    </modifier_only>
    <appendix>Zoom using E/R: out/in</appendix>
    <appendix>Zoom to fit: F</appendix>
    <appendix>Zoom to 100%: D</appendix>
    <autogen>__KeyToKey__ KeyCode::F, KeyCode::KEYPAD_9, VK_COMMAND</autogen>
    <autogen>__KeyToKey__ KeyCode::D, KeyCode::KEYPAD_0, VK_COMMAND</autogen>
    <autogen>__KeyToKey__ KeyCode::R, KeyCode::KEYPAD_PLUS, VK_COMMAND</autogen>
    <autogen>__KeyToKey__ KeyCode::E, KeyCode::KEYPAD_MINUS, VK_COMMAND</autogen>
  </item>
</root>

0 votos

Había funcionado perfectamente, pero hace unas semanas dejó de hacerlo. ¿Tiene alguna idea de por qué?

1 votos

No, ya no voy a usar esto. ¿Supongo que ha instalado una versión actualizada de Karabiner? Si encuentras la solución no dudes en editarlo. O hágamelo saber qué cambiar.

0 votos

Resulta que este archivo distingue entre mayúsculas y minúsculas, por lo que el identificador de vista previa debe ser com.apple.Preview no com.apple.preview .

4voto

ted Puntos 26

Puedes editar los atajos de teclado "Arriba" y "Abajo" yendo a Preferencias del Sistema / Teclado / Atajos de Aplicación, añade un nuevo atajo para Preview.app. He asignado Option - J hacia abajo, Option - K para arriba. No te dejará mapear sólo J y K por alguna razón. Pero al menos ahora puedes navegar por un PDF sin salir de la fila de inicio.

1 votos

Es un gran consejo. Si sólo hubiera una manera de conseguir que se desplace suavemente. Siempre pierdo la pista de dónde estaba cuando voy una página completa hacia abajo.

0 votos

@ted "Arriba" y "Abajo" no se desplazan. Me gustaría el comportamiento de las teclas de flecha arriba / abajo. ¿Cómo sabes que "Arriba" y "Abajo" es el nombre exacto del atajo que tienes que poner en la preferencia? ¿Está en alguna lista? Si tenemos esa lista, tal vez podamos averiguar cuál es el atajo para "Desplazar hacia arriba" y "Desplazar hacia abajo".

2voto

tty Puntos 21

Utilice este

¡¡¡Muy excelente!!!

Lo encontré hace poco.

https://pqrs.org/macosx/keyremap4macbook/index.html.en

2 votos

Las respuestas en Ask Different deben ser algo más que un simple enlace. Está bien incluir un enlace, pero por favor, muestre también cómo el producto recomendado puede utilizarse realmente para resolver el problema descrito en la pregunta. Cuanto más específica sea una respuesta con respecto a la pregunta, más útil será para los demás.

2voto

Rishav Puntos 130

Auto-enchufe - He hecho una regla Karabiner que añade vim jk bindings a Vista Previa. No quería usar las otras reglas de Karabiner que añaden los bindings de vim a todo el sistema.

https://github.com/xrisk/preview-vim

Para utilizarlo: copie el archivo preview-vim.json del repositorio (o toma la copia de abajo), pégalo en tu archivo ~/.config/karabiner/assets/complex_modifications y, a continuación, active la regla desde Karabiner.

{
    "title": "Map jk in Preview",
    "rules": [
        {
            "description": "map jk",
            "manipulators": [
                {
                    "type": "basic",
                    "from": {
                        "key_code": "j"
                    },
                    "to": [
                        {
                            "key_code": "down_arrow"
                        }
                    ],
                    "conditions": [
                        {
                            "type": "frontmost_application_if",
                            "bundle_identifiers": ["^com.apple.Preview$"]
                        }
                    ]
                },
                {
                    "type": "basic",
                    "from": {
                        "key_code": "k"
                    },
                    "to": [
                        {
                            "key_code": "up_arrow"
                        }
                    ],
                    "conditions": [
                        {
                            "type": "frontmost_application_if",
                            "bundle_identifiers": ["^com.apple.Preview$"]
                        }
                    ]
                }
            ]
        }
    ]
}

Las contribuciones son bienvenidas.

Además, como nota al margen, puede que te interese utilizar zathura, ya que puede que se adapte a tu caso.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X