V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zuorn
V2EX  ›  macOS

用 Vimium 的逻辑操作 macOS

  •  
  •   zuorn · 2019-07-08 00:15:37 +08:00 · 3719 次点击
    这是一个创建于 2000 天前的主题,其中的信息可能已经有所发展或是发生改变。

    虽然在很多时候 macOS 都可以使用快捷键,或者通过各种神器来完成各种花式操作,但很多时候还是不得不让手离开键盘去在触摸板上完成一个简单的滑动然后再完成点击的操作。

    要是 ... 我能用键盘完成点击的操作,这样我的手就不用在触摸板和键盘之间来回移动了。

    于是就有了一个想法,通过定义以一个前缀键,按下后系统每个可点击的位置都弹出字母,然后按下对应字母完成鼠标单击的操作。按下 Shift + 对应字母,完成鼠标右键的操作。

    目前只有一个想法,至于如何实现则完全没有思路,希望大家多多指点。 (或许我应该研究一下 Catalina 语音控制的数字是字母弹出来的🤔)

    参考: Vimium 截图: Xnip2019-07-07_23-44-52.png

    macOS Catalina 语音控制截图: Xnip2019-07-07_23-54-59.png

    9 条回复    2020-10-11 00:23:46 +08:00
    ywcjxf1515
        1
    ywcjxf1515  
       2019-07-08 03:17:00 +08:00 via iPad
    shortcat 了解一下,实现的话 zhihu 里有人提问过,ibuick(王飞)有回答过做法。
    shaco
        2
    shaco  
       2019-07-08 07:48:56 +08:00 via Android
    个人感觉你这种两步操作法还是有点繁琐,以至于我基本不用 vimium 的这个功能
    MrUser
        3
    MrUser  
       2019-07-08 08:52:31 +08:00
    遇到了相同使用习惯的 V 友,嗨皮,
    回答问题:你需要的是[karabiner]( https://pqrs.org/osx/karabiner/document.html)
    我设置的是 fn+hjkl 是方向,fn+H 是 Home,fn+L 是 End,fn + u 是 page up,fn+d 是 page down.
    当然你也可以直接设置 hjkl 是方向。
    MrUser
        4
    MrUser  
       2019-07-08 08:57:53 +08:00
    看到有人也用 chrome + vimium 兴奋过头,回复偏题了,才补充一下:
    http://www.hammerspoon.org 可以通过设置自定义快捷键调用软件的菜单项,直接点击软件上的按钮印象中貌似在文档中见过。
    虽然 APP 也像 WEB 软件一样有“布局”元素,但是直接点击 APP 中元素的功能貌似还没遇到过。
    BingoXuan
        5
    BingoXuan  
       2019-07-08 09:27:56 +08:00
    mac 的部分快捷键是 emacs 风格的
    ooops
        6
    ooops  
       2019-07-08 12:36:14 +08:00
    如上所说,shortcat 能实现你的想法,但是有些按钮的文本是啥是要靠猜的。所以使用起来效率并不高。vimium 的方式也是,用久了就会觉得效率并不高了。而且相关的操作一般都有替代方案,窗口管理可以用 hammerspoon,简单的文件管理可以用 LaunchBar 或命令行,App 特定相关操作可以用 Help 菜单里的 Search,编辑器一般都有 vim 插件。可以把这几个组合起来用。
    zuorn
        7
    zuorn  
    OP
       2019-07-08 12:58:09 +08:00
    @MrUser 哈哈,很高心有相同使用习惯的朋友😄 hammerspoon 我同时也在用,https://zuorn.top/year/07/06/hammerspoon/ 这个是我的配置,你说的就是 官方 Spoon - FnMate 的功能哈,

    > Use Fn + `h/l/j/k` as arrow keys, `y/u/i/o` as mouse wheel, `,/.` as left/right click.

    起初我是向通过改进 FnMate 定义一个模式,就是 vim 一样,按下前缀键该模式快捷键生效:

    * `wsad` 为上下左右移动鼠标光标
    * `hjkl` 保持为箭头键
    * `,/..`. 保持为鼠标左右健
    * `[/]` 绑定 `cmd + [` 和 `cmd + ]` 实现鼠标的 前进 /后退键

    但是我看了 [hammerspoon 鼠标、键盘、触控板]( http://www.hammerspoon.org/docs/hs.eventtap.html) 的 API 文档,发现移动光标走不通,即使可以的话 `wsad` 控制光标移动也远不如 Vimium 的逻辑来的简单快捷,不过在 macOS 实现 Vimium 的操作之后配合 FnMate 简单的操作应该基本就不用碰触摸版了。
    20015jjw
        8
    20015jjw  
       2019-07-09 00:17:21 +08:00 via Android
    这功能想要很久了
    可是感觉没法实现
    revalue
        9
    revalue  
       2020-10-11 00:23:46 +08:00
    这个好处是减少快捷键的记忆吧。其实很多软件比如 Keyboard Maestro 、karabiner 接管系统的快捷键。可能比这种多数“只在看到的地方显示标记”要来得方便
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2826 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 13:16 · PVG 21:16 · LAX 05:16 · JFK 08:16
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.