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

各位写代码的时候常用↑↓←→键移动光标吗?感觉这样写着很不连贯啊

  •  
  •   zzh1224 · 2021-02-08 13:41:51 +08:00 · 6645 次点击
    这是一个创建于 1394 天前的主题,其中的信息可能已经有所发展或是发生改变。
    69 条回复    2023-12-04 12:56:12 +08:00
    MiracleShadow
        1
    MiracleShadow  
       2021-02-08 13:49:28 +08:00
    vim 或者买 61 键位键盘
    superrichman
        2
    superrichman  
       2021-02-08 13:52:04 +08:00 via iPhone
    hjkl
    anonydmer
        3
    anonydmer  
       2021-02-08 13:52:55 +08:00
    不会 vim 的话可以在系统中定义某快捷键来代替上下左右,比如 ctrl +hjkl 来实现上下左右
    rocwang
        4
    rocwang  
       2021-02-08 13:58:37 +08:00 via iPhone
    题主说的不错,确实会不连贯。

    如果有兴趣学习 Vim 编辑器的话,我倒是非常它的推荐光标移动方式:

    “ 使用光标键,或者用 "h" 向左,"j" 向下,"k" 向上,"l" 向右。”

    https://yianwillis.github.io/vimcdoc/doc/help.html
    Building
        5
    Building  
       2021-02-08 14:01:12 +08:00 via iPhone
    现在移动光标也要分教派?...我死了。
    Jaosn
        6
    Jaosn  
       2021-02-08 14:03:36 +08:00
    不会 vim,用 vscode 如何一次移动多行
    zxCoder
        7
    zxCoder  
       2021-02-08 14:08:55 +08:00   ❤️ 1
    (用鼠标移动
    又不是打游戏,要那么连贯干嘛
    webshe11
        8
    webshe11  
       2021-02-08 14:12:23 +08:00   ❤️ 1
    个人认为以下需求并不重要:打字连贯,手不离开键盘
    大动用鼠标,小动用箭头或 Option + 箭头(一次移动一个词)
    AndyAO
        9
    AndyAO  
       2021-02-08 14:14:58 +08:00
    有时使用鼠标的话会更不连贯

    而且在很多情况下,鼠标并不适合于精确定位

    也不太适合直接选中某个词

    所以不得不用键盘

    Vim 也是一种选择,当然这里指的是广义上的 Vim

    目前最流行的 Visual Studio Code 和 JetBrains 系列都有自己的 Vim 扩展
    AndyAO
        10
    AndyAO  
       2021-02-08 14:16:34 +08:00
    另外就是单纯移动的话可以设置快捷键

    在我这里的话 CapsLock +u +i +7 +8 +<a-u> +<a-i> ...

    分别应收到了常用的主键盘区外导航按键

    例如上下左右和 Home,End

    在大多数时候也是很有帮助的
    locoz
        11
    locoz  
       2021-02-08 14:17:48 +08:00 via Android   ❤️ 1
    还有 home 、end 、page up 、page down,如果你远距离移动光标还是上下左右的话,那肯定会不连贯啊。
    AndyAO
        12
    AndyAO  
       2021-02-08 14:19:18 +08:00
    @locoz 那叫做'慢','不连贯'通常指的是离开了 26 个字母的主键盘区.
    shansing
        13
    shansing  
       2021-02-08 14:20:06 +08:00
    如果你觉得“打字连贯,手不离开键盘”重要,考虑用小红点( ThinkPad TrackPoint )。
    zzh1224
        14
    zzh1224  
    OP
       2021-02-08 14:26:45 +08:00
    @zxCoder 就感觉不爽啊,你们没有这种感觉的吗,啪啪啪的连续不停不好吗
    cmdOptionKana
        15
    cmdOptionKana  
       2021-02-08 14:26:58 +08:00   ❤️ 1
    只要我的思维速度足够慢,手上的不连惯就不会打断我的思路,甚至不会让我觉察出来。(恰好我就是思维很慢)
    whywhywhy
        16
    whywhywhy  
       2021-02-08 14:36:54 +08:00
    这就是为什么有些人喜欢写 vb,因为整个过程可以是连续的,就像写诗一样。
    zxCoder
        17
    zxCoder  
       2021-02-08 14:41:08 +08:00
    @zzh1224 看个人习惯吧 我写代码比较养生,就跟普通人操作电脑一样,没啥特殊的
    proxychains
        18
    proxychains  
       2021-02-08 14:58:07 +08:00 via Android
    vim 插件
    vegito2002
        19
    vegito2002  
       2021-02-08 14:58:19 +08:00   ❤️ 1
    ctrl+n/p/f/b/a/e
    如果用 HHKB, 方向键虽然是组合键, 但是可以不离开中心区就按, 这个也是 HHKB 这个别扭的隐藏方向键设计的初衷。 我现在用普通键盘反而不习惯去摸方向键了, 不过用习惯了的人我知道的也有很多, 还是选你自己习惯的。
    lyz1990
        20
    lyz1990  
       2021-02-08 15:00:26 +08:00
    vim
    yamasa
        21
    yamasa  
       2021-02-08 15:22:18 +08:00
    vim 党不请自来😏😏
    lxrmido
        22
    lxrmido  
       2021-02-08 15:24:18 +08:00
    所以用 68 或者 84 键的键盘吧……小拇指就能按到方向键
    chencc48111
        23
    chencc48111  
       2021-02-08 15:29:39 +08:00
    auto hot key, capslock 加 jkli 代替方向键, 我还弄了跳词, 行首行尾等 快捷键 . 前提是用 win
    alazysun
        24
    alazysun  
       2021-02-08 15:43:25 +08:00
    直接 goto N 行
    FireKey
        25
    FireKey  
       2021-02-08 16:12:40 +08:00
    ctrl+f,command+方向键用得比较多
    HolmLoh
        26
    HolmLoh  
       2021-02-08 16:20:54 +08:00
    niz 82 键,home,up ,dn,end,ctrl + home/up/dn/end/方向键,感觉用起来还挺顺手的
    JJstyle
        27
    JJstyle  
       2021-02-08 16:43:42 +08:00 via iPhone
    phpstorm 可以把上下左右改成 ctrl+hjkl,然后 mac 的话,ctrl+a 回到行首,ctrl+e 到行尾
    wqzjk393
        28
    wqzjk393  
       2021-02-08 16:49:06 +08:00 via iPhone
    用 vim 的 wb 啊
    loading
        29
    loading  
       2021-02-08 16:54:55 +08:00 via Android   ❤️ 2
    看着像抄代码,正常写哪有这么高所谓连贯的需求。
    ScepterZ
        30
    ScepterZ  
       2021-02-08 17:09:00 +08:00
    vim 的话不是得按 esc 么,并没有好多少,还是改键最舒服
    baabaasheep
        31
    baabaasheep  
       2021-02-08 17:42:50 +08:00
    我写代码的话就是 ctrl+c 然后 ctrl+v
    kran
        32
    kran  
       2021-02-08 17:44:45 +08:00 via Android
    对非 vim 用户来讲,emacs 的一系列光标移动快捷键更实用
    handuo
        33
    handuo  
       2021-02-08 17:46:07 +08:00 via Android
    @ScepterZ 很多人用 caps lock 或者 jk 代替 esc
    Biwood
        34
    Biwood  
       2021-02-08 17:48:45 +08:00
    我还挺喜欢用方向键的,几乎可以完全脱离鼠标了,现在最大的问题是,跨页移动光标不太方便,目前好像只有行首行尾、文件头和文件尾的跳转。
    SpiderXiantang
        35
    SpiderXiantang  
       2021-02-08 17:54:14 +08:00
    hjkl
    Keyes
        36
    Keyes  
       2021-02-08 17:59:29 +08:00 via iPhone
    Win 那个快捷键设计,真是一言难尽
    darksword21
        37
    darksword21  
       2021-02-08 18:28:27 +08:00
    / f w b W B
    除非字数不多或者太细的操作,不然别说上下左右,连 hjkl 也用不上
    3dwelcome
        38
    3dwelcome  
       2021-02-08 18:32:12 +08:00
    边写,边思考,边调试。
    噼里啪啦写一大堆,就不怕语法错误吗?
    写代码,又不是比打字速度。
    lululau
        39
    lululau  
       2021-02-08 18:48:46 +08:00 via iPhone
    所以我们需要 vim emacs 啊,真以为 vim emacs 就是装逼用的啊
    unidentifiedme
        40
    unidentifiedme  
       2021-02-08 18:49:13 +08:00
    Vim 或者 Emacs 那些 Navigation Key Binding 就是为了解决你这个问题,任选一个即可。
    love
        41
    love  
       2021-02-08 18:55:03 +08:00 via Android
    如果不想用 vim,也可以把 alt+ jkkl 绑定成方向键,这样移动光标手指就不用离开主键盘区了
    zengmingyang96
        42
    zengmingyang96  
       2021-02-08 19:00:27 +08:00 via iPhone   ❤️ 1
    我用的 niz66 这把键盘,fn 在空格左右各有两枚,很容易按到。
    fn+任意键可以触发宏
    fn+w/s/a/d 映射成上 /下 /左 /右
    fn+q 映射成向上 x10 次
    fn+e 映射成向下 x10 次
    同理还有向左向右 x10 次的键
    这些键可以实现光标的移动
    fn+j 映射成 command
    fn+h 映射成 ctrl
    fn+k 映射成 shift
    这样就可以实现跳到行首,跳到字首,选中字符
    我还映射了 enter,del 的键
    我还把 fn+括号映射成一对括号并移动光标到符号中间
    kilimaygs
        43
    kilimaygs  
       2021-02-08 19:51:22 +08:00 via iPhone
    @zengmingyang96 #42 厉害啊,触发宏是用什么工具?
    Annoke
        44
    Annoke  
       2021-02-08 19:59:29 +08:00 via Android
    鼠标碍事?
    creanme
        45
    creanme  
       2021-02-08 20:02:23 +08:00 via Android
    alt + hjkl
    zengmingyang96
        46
    zengmingyang96  
       2021-02-08 20:07:34 +08:00 via iPhone
    @kilimaygs niz 键盘⬆️可编程的,附赠了编程软件。可以将宏写入键盘
    AndyAO
        47
    AndyAO  
       2021-02-08 20:13:14 +08:00
    @zengmingyang96 #40
    和你的用法基本一样
    其实用 CapsLock 也行
    这个键我根本就用不到
    你那个用法的好处就是不挑系统,我这个用法的好处是不挑键盘
    superrichman
        48
    superrichman  
       2021-02-08 20:37:01 +08:00 via iPhone
    @Annoke 我以前鼠标键盘一起用,右肩胛骨边上的肌肉很酸,有时候还会痛。现在几乎不用鼠标,尽量用键盘操作,酸痛已经全好了。
    JasperWong
        49
    JasperWong  
       2021-02-08 23:47:06 +08:00
    所以我买了 anne pro2,可以自定义,caps+wsad 可以变方向键
    JasperWong
        50
    JasperWong  
       2021-02-08 23:47:34 +08:00
    @JasperWong #49 caps+jikl 也可以是方向键,爽
    imycc
        51
    imycc  
       2021-02-09 02:00:04 +08:00
    用了四五年的 vim,insert 模式下我也喜欢用方向键。
    不过改投 vscode 之后,vim 插件用着不舒服,回归到鼠标操作了。。

    其实我更想要笔记本的触摸板,小范围的移动直接用触摸板,感觉更科学。
    甚至一度想买 thinkpad 的小红点键盘。但是确实贵,又习惯键程长一点的机械键盘,放弃了
    OnlyO
        52
    OnlyO  
       2021-02-09 08:22:36 +08:00
    我是设置自定义快捷键 alt + ikjl,不要太好用.
    ericmzhu
        53
    ericmzhu  
       2021-02-09 08:35:43 +08:00
    我在 IDE 和编辑器上都会使用 vim 插件解决
    YuukiIchika
        54
    YuukiIchika  
       2021-02-09 09:23:48 +08:00
    @handuo #33 VIM 上 ctrl+那四个键可以在插入模式下移动
    wangyzj
        55
    wangyzj  
       2021-02-09 09:49:27 +08:00
    找到一个适合自己习惯的方式不就好了
    我鼠标和上下左右都用
    各有各的用
    mauve
        56
    mauve  
       2021-02-09 09:51:42 +08:00
    FaiChou
        57
    FaiChou  
       2021-02-09 09:58:27 +08:00
    ctrl +

    a : 行首
    e : 行尾
    k : 删除当前光标至尾巴
    p : 上一行
    n : 下一行
    f : 前进一格
    b : 后退一格

    option:

    b : 后退一个单词
    f : 前进一个单词


    最基础的 Emacs 学习一下有帮助
    nicebird
        58
    nicebird  
       2021-02-09 10:05:05 +08:00
    vim 、emacs 都可以解决这个问题
    ixx
        59
    ixx  
       2021-02-09 10:56:26 +08:00
    进来就猜到有 vim 没想到这么多 如果使用 IDEA 的话 也可以试试 ACEJump 当然学习下 vim 使用起来肯定能实现你想要的流畅感觉
    Lattez
        60
    Lattez  
       2021-02-09 11:04:37 +08:00
    Make CapsLock Great Again!

    https://github.com/Vonng/Capslock
    SxqSachin
        61
    SxqSachin  
       2021-02-09 11:15:58 +08:00
    hjkl
    w b W B
    0 $ ^
    真香
    geekzhu
        62
    geekzhu  
       2021-02-09 11:46:06 +08:00
    用改建软件改了就可以了 设置在左手区
    twelvechen
        63
    twelvechen  
       2021-02-09 19:37:02 +08:00 via iPhone
    caps+WASD
    dioxide
        64
    dioxide  
       2021-02-09 23:49:20 +08:00
    karabiner 的脚本库里有别人写好的方案.
    wqq096737ink
        65
    wqq096737ink  
       2023-09-05 23:08:58 +08:00
    @AndyAO



    @chencc48111 兄 der 可以分享下代码吗??
    @SpiderXiantang
    @love
    @creanme
    @geekzhu

    @twelvechen

    可以分享下吗
    creanme
        66
    creanme  
       2023-09-06 20:58:58 +08:00
    @wqq096737ink 我用的 vscode ,加的快捷键
    twelvechen
        67
    twelvechen  
       2023-09-07 15:35:26 +08:00
    @wqq096737ink 我用的是 ikbc pocker ,键盘自己支持的,把大写锁定键映射成 fn
    SpiderXiantang
        68
    SpiderXiantang  
       2023-09-24 21:26:42 +08:00
    @wqq096737ink ideavim
    twelvechen
        69
    twelvechen  
       2023-12-04 12:56:12 +08:00 via iPhone
    @wqq096737ink 我之前的键盘支持自定义按键,如果你的键盘不支持可以去某宝搜 via 改键,像小 u 盘大小的硬件
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1279 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 18:03 · PVG 02:03 · LAX 10:03 · JFK 13:03
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.