V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Makoto
V2EX  ›  问与答

请问 Windows/ Linux 中有无靠谱的类似 MacOS 的光标控制方案?

  •  
  •   Makoto · 2023-01-13 15:26:58 +08:00 · 777 次点击
    这是一个创建于 690 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我大概近十年前,因为工作关系拥有了一台 MBP ,前几年,由于系统升级导致用的越来越卡,故换成了 Linux 。

    更换后没有什么问题,可我对 MacOS 中的光标控制方案愈发怀念。

    这个光标控制方案简单来说就是一组快捷键,比如:

    • Ctrl+B 可以控制输入光标向左走一格
    • Ctrl+F 可以控制输入光标向右走一格
    • Ctrl+A 是行首
    • Ctrl+E 是行尾

    我尝试过自己用 AutoHotKey 写脚本(Windows), 用 Github 上找的一个成套的解决方案效果也不是很好(Linux).

    最近两天这事在心里越发的挠痒痒,我甚至都开始下 MacOS 的镜像,在考虑要不要把这台 MBP11,1 安回 Catalina ,但是又担心系统版本太旧,很多应用不兼容;或者卡的不行的问题。

    所以我想问问这组快捷键在 Windows 和 Linux 上有什么成熟靠谱点的方案没?

    stein42
        1
    stein42  
       2023-01-13 15:42:34 +08:00
    linux 用 gnome 桌面,gnome-tweaks 里面设置 emacs 风格按键就可以了。
    所有 gtk 程序应该都支持。
    UncleCat01
        2
    UncleCat01  
       2023-01-13 15:42:43 +08:00 via iPhone
    不太明白,这不是键盘上箭头 home end 键的功能吗
    Makoto
        3
    Makoto  
    OP
       2023-01-13 15:46:53 +08:00
    @UncleCat01 对的,就是这个,问题是双手打字的时候我不用低头看键盘找键位,尤其是我以前傻乎乎的买了个无刻的键盘后。


    @stein42 谢谢你的提示,虽然我用的是 KDE,但是这启发了我,我去看看 KDE 下有没有什么替代方案。
    zanyzephyr
        4
    zanyzephyr  
       2023-01-13 15:52:01 +08:00
    在 op 的 “比如” 上再补两个:
    Ctrl + N : 下一行
    Ctrl + P : 上一行

    两外给 op 一个关键字信息:“Emacs-like 快捷键”。详情参考我之前帖子中 大佬们的回复: https://www.v2ex.com/t/808266
    zanyzephyr
        5
    zanyzephyr  
       2023-01-13 15:53:21 +08:00
    @zanyzephyr 没看到 #1 已经提到了 emacs 风格🐕
    murmur
        6
    murmur  
       2023-01-13 15:54:01 +08:00
    上下左右 home end 只要按一个键子,但是 emac 风格需要按组合键,所以快捷键是给自己添堵用的?
    tool2d
        7
    tool2d  
       2023-01-13 15:54:08 +08:00
    这种写个 IDE 编辑器插件就可以了,用全局快捷键会污染别的软件。

    我个人不太喜欢用 Ctrl ,特别是上下左右的光标移动,小手指按着费劲,喜欢类似 vi 模式切换。
    tool2d
        8
    tool2d  
       2023-01-13 15:57:40 +08:00
    这是我浏览 V2 的键盘脚本,开开心心用 e 和 d 来滚动屏幕。

    document.addEventListener('keydown', function(event)
    {
    var keyCode = event.keyCode;

    // Ignore keydown event if typing in an input box
    if (event.target.nodeName === 'INPUT'|| event.target.nodeName === 'TEXTAREA'|| event.target.isContentEditable)
    return false;

    if (keyCode == 'd'.charCodeAt(0) - 97 + 65) // d 按键
    document.documentElement.scrollTo({top: document.documentElement.scrollTop+500, behavior: 'smooth'});

    if (keyCode == 'e'.charCodeAt(0) - 97 + 65) // e 按键
    document.documentElement.scrollTo({top: document.documentElement.scrollTop-500, behavior: 'smooth'});

    return true;
    }
    Makoto
        9
    Makoto  
    OP
       2023-01-13 16:05:15 +08:00
    @zanyzephyr 我知道这个,我自己就是用 Emacs 的,我只是不想把这个提出来然后大家又开始争 Vim 和 Emacs 而已...

    @murmur 答案是我现有所有的键盘,想要按 Home 和 End 都是两个键,除了笔记本自带的键盘有方向键,其他想要按方向或者 HomeEnd 都是两个键,相比起来,我提到的这种方式要快捷的多,尤其是我早就熟练使用 Emacs 了后

    @tool2d 所以这方面我挺怀念 MacOS 的,多一个键可以把很多快捷键做的非常兼容...至于小手指,我是用 HHKB 的...所以这方面没有什么问题
    tool2d
        10
    tool2d  
       2023-01-13 16:57:30 +08:00
    @Makoto 羡慕你用的 HHKB ,我键盘的 Caps 是最没用的按键之一。

    想改成触发键都很难。
    ScepterZ
        11
    ScepterZ  
       2023-01-13 17:03:35 +08:00
    win 上我用 ahk 这样用了几年了,感觉没什么问题。
    如果键盘固件比较好的话,其实直接给键盘改键是最舒服的
    Makoto
        12
    Makoto  
    OP
       2023-01-13 17:03:52 +08:00
    @tool2d 其实我除了 Windows, 不管什么键盘都会设置 CapsLock 为 Ctrl...
    Makoto
        13
    Makoto  
    OP
       2023-01-13 17:05:16 +08:00
    @ScepterZ 客制化键盘固件也考虑过,但是手上已经有两把功能正常的键盘,考虑用坏了再换
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1082 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 19:18 · PVG 03:18 · LAX 11:18 · JFK 14:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.