用alt toggle的方式怎么样能输入比如normal下的C呢?不是按下c的时候就已经生效了吗?
normal-state 下,用分号+c 输入大写 C,分号+ 绑定插入模式和normal 模式不同,插入模式下是输入 {
这个嘛,手型还跟你桌面的高度,还有键盘摆放的位置,坐姿有关。我办公室的那张台就偏高了,所以怎么都觉得不顺手。 不过那么多年的习惯,都不是那么容易改。我最近都思考怎么改良一下自己打字的动作,让它合理一点。不过习惯有时蛮难改的。
这个看起来很棒,我加了个":把前一个字符在;
和:
之间切换",以防自动判断失误。
除了调试键位,还有一个大的思路就是一个组合键输入多个符号,并用yas-expand-snippet
在它们中间加入供输入的位置。比如:
-
ret
这个snippet展开成return $0;
(分号视行尾是否存在自动插入),如果后面已有字符就直接回到normal state。 -
一键输入
(yas-expand-snippet " ? $1 : $0")
我有很多使用电脑的场景,特别是笔记本,所以不一定有办法通过手型和桌子之类的解决问题。
Rust里面我处理了减号和分号; Lisp里面处理了分号; 全局都处理了单引号,连续两个单引号是双引号, 用tab能从字符串跳出去。
理想情况是所有语言的符号都可以自动的大小写。如果能实现,写个插件是很不错的。
这个是我这里用的样子,我也有好多的snippet,多用snippet也是一个减少手负担的很好的方案。
还有一个大的思路就是一个组合键输入多个符号
关于这个,我在insert模式下不用组合键(在任何地方都不用组合键)。如果是靠snippet倒是一个不错的点子。
写驼峰确实手指累,可以用key-chord把双击按键绑定到大写。比如:jj
– J
。
我试了试,卡
删除的时候我会直接用expandregion
没有 get 到,expandregion 可以根据大写字母选择?
根据什么选择的关键是看以什么做为word吧,expandregion第一下会选光标在的word。驼峰的话是可以分成一个一个word的。
你的意思是修改了 word 的定义吗?能说下怎么改吗
这样是不行的,这样做如果你打个hello,就会变成heLo,要刻意控制输入的速度。 长按变大写好一些。因为长按时候有个两个时间,一个是第一下之后的延迟,一个是开始之后的重复间隔。比如说延迟是180ms,重复间隔50ms,感觉上就是按住等230ms就变大写了。当然在这之后的输入要阻止。 这方式非常容易掌控,有相当高的准确率,不会误操作。因为你可以把键盘重复的速度,设置到靠手连击按不出来的速度,对我来说40ms左右,这个速度也很舒服。
原来还有这东西,开眼界了,感谢感谢
期待有更好的大写字母输入办法,因为shift被我全当快捷键用了,取代ctrl,大写字母输入感觉我都没能很好的处理这个问题
我掌压 Ctrl 键按多了手腕疼了。
我觉得我这个已经一个比较好的方式了。要么就是需要引导键了。
可以设置两个快捷键,一个 upcase/downcase 光标前的字符,一个 cycle (各种 case 循环) 光标前的词。
不过要找到一个合理的、不增加左手压力、未被占用的快捷键很难。
我目前是先输完一段/句/词,然后回头批量处理。
用快捷键的好处就是kmacro里面也可以用,逻辑上很健壮,不过按起来感觉应该没有按住来的容易。
比如ergodox之类键盘的都是可以用长按来大写,但是如果有模式编辑的话,不能区分模式直接大写没有什么意义,毕竟经常会按住某个键来移动光标。
我把我这段提出来放在一个repo里面了。
我试了下,不知道是不是跟 chord key 有冲突。现在长按的结果是 aA bB 这种,也就是长按 a 会先出个小写的 a,然后才有大写的。