Capslock+

概述

  • 简介:Capslock+是一个加强 Capslock 键的功能,以提高效率的工具。
  • 版本:2.8.0 | 2020-04-05 by 陈俊凯
  • 声明:虽然没有任何措施来强制收费,但 Capslock+ 是收费的,金额不限,请自行根据使用时间和频率判定。
  •  付费页面
  • 源码:GitHub
  • macOS 版本: Capslox

了解 Capslock+

如果你还不清楚 Capslock+ 有什么用,建议先看看这里:Capslock+ 有什么用

它图文并茂地介绍了 Capslock+ 有哪些功能,以及你可以怎样去使用这些功能。而这下面的说明比较无聊(但详尽),你可以看完那篇东西再回来这里。或者是忘记了某些功能的时候按下Capslock+F1来打开这页查看。

以下是其他网站(用户)发表的介绍文章:

很感谢网站和文章作者愿意为 Capslock+ 推广~


下载使用

下载

Capslock+_v3.0.0.exe (1.18 MB)

*可能会误报

v3.0 跟 v2.x 有什么不同?
v3.0 更改了热键的布局,更加顺手,并且通过把Alt键看作“增强键”来设计热键布局,让热键更易于记忆和上手。由于改动有点多,怕老用户不习惯,3.0 中保留了 2.x 的布局,并保留了 2.x 版本的文档页(本页面)。
前往 v3.0 文档页

要在 3.0 中使用 2.x 的热键布局,请在 CapsLock+settings.ini > [Global] 下添加:
default_hotkey_scheme=capslock_plus

*版本历史查看更新内容

使用

  • 有个别同学打开 Capslock+ 后没有任何报错但有一些按键不能用(Ctrl+C / V 等),目前这个问题只发现一个原因:被 360 等屏蔽了。如果你有这个问题,又有用 360 之类的,请试试将 Capslock+ 添加到白名单里。

  • 修改注册表交换了CapslockCtrl的同学,其实可以正常使用 Capslock+ 的,只是所有功能都用Ctrl(键盘上的)加其他键实现而已。

  • 如果提示无法验证发布者。您确定要运行此软件吗? -> 运行

  • 如果提示Windows 已保护你的电脑,点击更多信息 -> 仍要运行

  • 启动 Capslock+ 后,请把Capslock键当做类似ShiftCtrlAlt的修饰键,与其他键组合使用不同功能。

  • 启动 Capslock+ 后,同文件夹下会生成以下文件:
    • CapsLock+settings.ini:Capslock+ 的设置文件,保存各种设置信息,请参考CapsLock+settingsDemo.ini,并在本文件进行设置。
    • CapsLock+settingsDemo.ini:Capslock+ 的设置参考样本文件,保存着各种设置信息的例子和详细说明,请认真查看该文件里的说明。
    • CapsLock+winsInfosRecorder.ini:用于窗口绑定时记录相关信息的文件,请无视它,不要去手动修改它。
    • loadScript文件夹
      • scriptDemo.js:Capslock+ 可以加载 js 文件以扩展功能,这是样本 js 文件。更详细的说明可以看下面TabScript部分中,关于关于计算功能的说明。
      • debug.html:对 js 文件调试的 html 文件。将编写的 js 文件引入本文件,再用浏览器打开本文件,在控制台中进行调试。
      如果觉得不需要本文件夹以及里面的文件,删除前需先清除CapsLock+settings.ini文件下,Global段的loadScript设置,否则在 Capslock+ 启动时将自动创建loadScript文件夹以及里面的文件。

  • 启动过一次 Capslock+ 后,以后可以通过快捷键Ctrl+Alt+Capslock启动 Capslock+。

  • 360等可能会造成影响,如果在开启360的情况下运行 Capslock+ 可能会导致部分功能无法使用,如果出现这种情况请关闭360试试。

  • Capslock+ 在不同程序上通用,但不同程序有不同的运行机制,在有的程序界面 Capslock+ 可能会有个别功能实现不了或实现不理想,针对每个程序去适应不太现实,请将就和谅解。

  • 目前已知的可能导致 Capslock+ 某些功能无法使用的原因除了上面两个外,还可能是键盘的键位冲突,也就是说键盘设计上不支持某些按键同时按下。

  • 右键系统托盘中的 Capslock+ 图标可以暂停或退出。

功能说明

以下功能都需要按下Capslock,而说明中基本都省略或缩写了Capslock,例如+QCapslock+Q

以下功能描述主要针对文本编辑器,尤其是代码编辑器,在其他界面使用功能可能会与描述的有所区别

按键对应的功能可以在Capslock+settings.ini下的[Keys]设置,具体请参考Capslock+settingsDemo.ini

基础功能

Capslock+ 功能 说明
短按
大小写切换
长按
不操作 视为犹豫操作,防止大小写意外切换
E
D
S
F
上 / 下 / 左 / 右
A
G
左 / 右跳词[1] [1]: 中文的话不好界定“单词”界限,一般会整句跳过
P
;
Home End
Y
B
光标上 / 下 5 行
-
=
光标上 / 下 1 页
W
R
Backspace Delete
I
K
J
L
上 / 下 / 左 / 右选中文字
U
O
选中光标至行首 / 行末文字
H
N
向左 / 右选中一个单词
0
M
向上 / 向下选中 5 行
Backspace
删除光标所在的一行
Space
Enter
Enter
换行——无论光标是否在行末
LAlt(按住)[1]
临时改变鼠标速度,并在松开后复原

常用于临时降低鼠标速度作精细操作

[1]: LAlt是指左边的Alt,下面不再重复说明

LAlt+
鼠标滚轮上
加快按下 Capslock+LAlt 时鼠标的速度 范围是1~20。默认是3
LAlt+
鼠标滚轮下
降低按下 Capslock+LAlt 时鼠标的速度
LAlt+
Y
B
页面向上 / 下移动 5 行 仅页面移动,光标不动
LAlt+
W
R
切换到前 / 后标签 Ctrl+Tab / Ctrl+shift+Tab
LAlt
+
E
D
S
F
激活位于当前窗口 上面 / 下面 / 左边 / 右边 的窗口 本功能对窗口位置的判定以当前窗口的横竖中线为依据,如果某窗口不能被当前窗口的中线穿过,将被忽略。特别是多屏幕而且屏幕位置是错开的同学需要注意。
LAlt+
A
G
激活位于当前窗口 最左边 / 最右边 的窗口
LAlt+
Q
激活位于当前窗口 中间 的窗口
LAlt+
Z
将当前窗口压到底部
LAlt+
J
K
最小化当前窗口并记录到窗口队列最前 / 最后 窗口队列可以暂时保存用本功能最小化的窗口信息,用于后面激活它们。可以理解为播放列表,记录到最前就是“下一首播放”,记录到最后就是“添加到播放列表”
LAlt+
L
激活窗口队列中的一个窗口,并移除该记录
LAlt+
H
清空窗口队列中的记录
LAlt+
-
=
光标跳至页首 / 页尾
X
C
  1. 选中(文字、文件、文件夹)时,正常剪切 / 复制
  2. (文字编辑时)没有选中文字时,剪切 / 复制光标所在行的文字
  1. 复制粘贴的内容和系统复制粘贴内容独立开,可以分别复制不同内容
  2. 剪贴板中的内容一直是最后一次使用(包括剪切、复制、粘贴)剪贴板的内容,例如:Ctrl+C复制文字apple,然后Capslock+C复制banana,这时右键->粘贴,结果会是banana。然后Ctrl+V,结果会是apple,再右键->粘贴,结果会是apple
  3. 不在文字编辑中,又没选中任何内容时,可能会有意外的操作(实现机制问题,会全选文件并复制之类的),最好别乱按
  4. 原本在 Excel 中,选中一行(列)以上表格,再使用复制相关功能会导致弹出图片太大,超过部分将被截取。的问题。这是因为在 Excel 中将剪贴板大量的数据保存起来时,Excel 就会这样提醒,在其他一些剪贴板管理软件上也会有这问题,这应该算 Excel 的问题。对于这个问题目前 Capslock+ 的解决办法是,在保存剪贴板数据时取消对 Excel 窗口的激活,不让 Excel 检测到数据的保存,保存完数据再切回去,这样做的副作用是 Excel 窗口看起来会闪烁一下,暂时没有想到更好的解决办法,如果觉得接受不了建议在进行大量 Excel 下的复制操作时暂时关掉 Capslock+。
V
粘贴+X / +C的内容
LAlt+
X
C
剪切 / 复制 同上,另一套独立剪贴板
LAlt+
V
粘贴+LAlt+X / +LAlt+C的内容
Z
撤销 / 重做 按下Capslock后第一次按下Z会是撤销,一直到松开Capslock之前,按下Z会交替执行重做撤销
T
翻译选中的或光标所在的单词
  1. 英语单词可以不用选中,只要输入光标靠着单词
  2. 中文单词不好界定"单词"界限,最好选中后再翻译
  3. 翻译结果框清空内容后重新输入文本,回车可以再次翻译
  4. 在复制不了任何文字的窗口会直接弹出空白翻译框
  5. 获取单词通过发送Ctrl+C实现,需确保+T按下时Ctrl+C不会有意外操作。详细解释请看关于文字操作的机制
  6. 翻译功能通过调用有道API实现,API接口的请求频率限制为每小时1000次,超过限制会被封禁。也就是说所有使用 Capslock+ 翻译的人一小时内翻译的次数加起来不能超过1000次。需求较高的话可以自己申请一个Key,然后填入
    CapsLock+settings.ini[1]->TTranslate->apiKey来独享翻译接口,注意同时要填写apiType,因为有道 api 的 key 有两种——免费版和收费版,通过上面那个链接进去申请的就是免费版,那应该填写apiType=0,收费版就是apiType=1(收费版是要 email 他们来申请的)。以及免费版的 key 会有一个keyFrom参数,也需要在TTranslate下填写好。具体请查看CapsLock+settingsDemo.ini[1]文件中的说明。
  7. 由于 Capslock+ 是单进程的,网络太差的时候使用翻译的话,进程会因为等待数据传送而造成阻塞,也就是 Capslock+ 会假死。如果出现这种情况,稍等就好。另外,不建议网络情况太差的时候使用翻译功能。

[1]: CapsLock+settings.iniCapsLock+settingsDemo.ini文件是 Capslock+ 初次运行时自动生成的文件,要快速打开它们请看下面Qbarcl set命令说明

[
{ } 选中文字时会在文字两端添加{ }
]
[ ] 选中文字时会在文字两端添加[ ]
9
( ) 选中文字时会在文字两端添加( )
'
" " 选中文字时会在文字两端添加" "
,

1. < >

2. 在Qbar激活时是(文件夹浏览时)返回上一层目录

  1. 选中文字时会在文字两端添加< >
  2. 由于实现机制问题,以上选中文字后在两端插入符号的功能需要在以下情况之一使用:
    1. 没有选中文字时,Ctrl+C不会复制光标所在行整行文本
      (很多编程工具会有复制整行这功能)
    2. 没有选中文字时,Ctrl+C会复制光标所在行整行文本,但是这行文本的最后一个字符是换行符
      (Ctrl+CCtrl+V,粘贴在另一行而不是当前行)

* 暂时只发现在拥有不选中文字时,Ctrl+C会复制整行文本的功能的文本编辑界面下的最后一行会不满足,只要不要在最后一行编辑即可。

.

1. 输出.

2. 在Qbar激活时是(文件夹浏览时)前进到下一层目录

方便中文输入法下输入点符号
F1
打开本文档页面
F2
弹出计算板窗口
  • 所支持的运算请看关于计算的详细说明
  • 在本界面下,切换成大写后:
    uiop[
    jkl;'
    m,.
    SpaceRAlt
    将输出:
    789*/
    456+-
    123
    0.
  • Shift+Enter会(计算完结果后)将结果输出到下一行的开头
  • Ctrl+Enter换行
  • 在本界面下,光标左边所有字符都将认定为数学表达式,而不像+Tab[1]那样自动匹配表达式
  • 在本界面下,Enter会计算光标左边的数学表达式并在表达式右边输出=xxx,具体规则和+Tab[1]的相似,只是所有表达式都会自动补上=号,而不是用结果替换掉表达式。
[1]: +Tab的说明在下面可以看到
F3
下一首歌
F4
短按,将当前窗口变为半透明 / 不透明;
长按,配合鼠标滚轮上 / 下以增加 / 减少窗口透明度
部分窗口无效,例如 QQ
F5
重载程序
F6
置顶 / 解除置顶一个窗口
F8
获取转义后的选中的字符,供调试用 详情看这里,不熟悉JavaScript的同学可以无视这个功能
F12
关闭 / 打开独立剪贴板功能 主要给 Excel 里复制时弹窗图片太大,超过部分将被截取。用,关闭了就不会弹窗了。

高级功能

TabScript

Capslock+
Tab

功能

  1. 光标左边的字符串如果在Capslock+settings.ini文件[1]中的[TabHotString][QRun][QWeb]字段下有相应键名,则将其替换成该键名对应的值
  2. 计算光标左边的数学表达式的值(实际上是运行JavaScript代码)

说明

  • 关于热字串功能:
    1. 举个例子,在Capslock+settings.ini文件的[TabHotString]段下有这么一条设置:email=123456789@abc.com,那么在任意能输入文字的地方输入:asdfghjklemail,按下Capslock+Tab,就会变成asdfghjkl123456789@abc.com
    2. 如果不同字段下有同名的键名,三个标签的优先级是:
      [TabHotString] > [QRun] > [QWeb]
      例如:
      [TabHotString]段下有设置:a=apple
      [QRun]段下有设置:a=e:\banana
      那么输入a后,Capslock+Tab将得到apple(而不是e:\banana
      (虽然理论上不同段名下的键名可以同名,但[QRun][QWeb]下的键名不应重名,否则在使用+Q功能时会有问题)
  • 关于计算功能:
    1. 支持较复杂的数学表达式:多种进制的数值,任意数量嵌套的括号,三元运算,关系运算,逻辑运算,位运算,算术运算,各种函数等。
      详细看下面的关于计算的详细说明
    2. 当数学表达式最后不带=号时,计算结果会替换掉表达式。例如:1+2+3->Capslock+Tab->6
    3. 当数学表达式最后带有=号时,计算结果输出到等号右边。例如:1+2+3=->Capslock+Tab->1+2+3=6
    4. 当计算不出结果,会输出一个?号。例如:1+2+=->Capslock+Tab->1+2+=?
    5. 从光标向左,直到遇到第一个空格符或行首,之间的字符串将认定为是表达式,如果需要计算的表达式带有空格,请选中该表达式,或在表达式开头加上`(反引号),例如:`1 + 1 = 选中的或反引号右边的所有字符都将被判定为表达式
      超过一行的表达式只能先选中它们,例如:
      a=1;
      b=2;
      c=3;
      a+b+c=
    * 对于要求比较严格的计算中(例如金钱的计算)请谨慎使用计算功能
      对于熟悉JavaScript的同学:(不了解的同学可以无视)
    1. 其实所谓的计算数学表达式,只是在运行JS代码。例如你可以这样:
      >> 输入`var i=0,j=101;while(j--)i+=j;,然后Capslock+Tab来求1~100的和。
    2. Capslock+ 还允许这样来调用函数:
      1
      2
      3
      any text any text
      any text any text
      .functionX()
      这样调用函数,其实就是把除了写在最后一行的函数以外的所有其他字符处理成单行字符串后,再调用后面的方法。而处理过程实际上是:在'"&\\n\r\t\b\f这些符号前添加转义符\,然后再将每个换行符都替换成\n

      所以选中以上3行后Capslock+Tab,相当于执行:

      1
      'any text any text\nany text any text'.functionX()
      例如,对于以下一段:
      1
      2
      3
      4
      apple banana apple cat
      apple dog apple banana
      apple cat apple dog
      .replace(/apple/g, 'egg') //将所有'apple'换成'egg'
      选中以上4行,Capslock+Tab后,内容将变为:
      1
      2
      3
      egg banana egg cat
      egg dog egg banana
      egg cat egg dog
    3. 可以在 Capslock+ 目录下的loadScript文件夹添加js文件,并在CapsLock+settings.iniGlobal字段下的loadScript键设置需要需要自动加载的js文件的文件名(以,隔开)。Capslock+ 会在启动时按设置的顺序加载文件,从而扩展Capslock+Tab功能。自己的函数不要直接写在scriptDemo.js里,版本更新的话会被覆盖的。
    4. 因为上面那种调用函数的方法,实际上会把除了最后一行函数以外的其他字符经过转义,变成单行字符串(看上面第 2 条),那么你如果想自己编写函数来处理字符的话,你的函数必须是针对这样的格式的字符串进行操作的。在自动生成的loadScript文件夹下的scriptDemo.js里面有函数例子,你可以用来参考。另外你可以选中一段文字,再按下Capslock+F8来获取调试用的字符串,它会给你一行由那一段字符转义得到的字符串。你可以把你的js文件引入到一个html文件,然后用浏览器打开那个html文件,然后就可以在控制台用刚才拿到的字符串调试你的函数了。
    5. 调用 js 的功能是调用了 IE 引擎来实现的,所以你的代码需要根据你系统上的 IE 引擎版本来躲坑。可以用navigator.userAgent->Capslock+Tab来看具体版本。
  • 综上,+Tab对各种形式的字符生效的优先级从高到低排列如下:
    1. 选中字符的情况下:
      1. 多行,并且最后一行格式为.xxx()的字符 --JavaScript
      2. 其他情况 --JavaScript
    2. 未选中字符情况下:
      1. 光标左边有匹配[TabHotString][QRun][QWeb]的字符 --HotString
      2. 从行首开始第一个`符号至光标之间的字符 --JavaScript
      3. 从光标向左直到遇到第一个空格或行首,之间的字符 --JavaScript

[1]: CapsLock+settings.ini文件是 Capslock+ 初次运行时自动生成的文件,要快速打开它请看下面Qbarcl set命令说明

WinBind

Capslock+
LAlt
+
`[1]
/
1~8

功能

  1. 绑定窗口到相应按键:
    • 模式1: 单击,绑定当前激活的窗口到相应按键
    • 模式2: 双击,追加绑定当前激活的窗口到相应按键
    • 模式3: 三击,绑定当前激活的窗口所属程序所拥有的所有窗口到相应按键
Capslock+
`
/
1~8

功能

  1. 激活/最小化绑定在该按键的窗口

说明

  • 关于绑定:
    1. 模式1和模式3会覆盖当前按键上已有的绑定窗口
    2. 模式2绑定在按键现有模式是模式1或模式2时会追加窗口,是模式3时不追加,而会覆盖原绑定设置,绑定当前激活窗口(与模式1效果一样)
    3. 模式2操作示例:
      1. 激活窗口A(鼠标点击一下是方法之一),依次按下CapslockAlt不放,再按两次1
      2. 激活窗口B,同样操作;
      3. 激活窗口C,同样操作;
      4. 按下Capslock不放,(多次)按下1来在A,B,C三个窗口之间实现类似Alt+Tab的窗口切换。
    4. 模式3只要在需要绑定的程序的其中一个窗口做类似模式2的操作(需要三击)即可绑定该程序所有窗口(包括绑定操作过后才打开的)。
    5. 模式2原有的绑定窗口被关闭至只剩下1个窗口时,将自动转换成模式1绑定(可以激活 / 最小化窗口)
  • 关于窗口激活 / 最小化:
    1. 模式1下,在原窗口不存在时,激活动作会自动绑定窗口所属程序的另一个窗口
    2. 模式1和模式3下,在原绑定窗口所属程序未启动时,激活动作将启动该程序
    3. 模式2和模式3下,多窗口中,最近使用本功能激活的窗口在下次使用本功能时会优先激活[2]
    4. 绑定的窗口只有一个时,模式1和模式3会激活 / 最小化该窗口,模式2会自动转换成模式1
  • [1]: 反单引号,~号的室友
  • [2]: 举个例子,窗口A,B,C都用模式2绑在了按键1上,而按了若干次Capslock+1后,最后激活了窗口B。随后激活了窗口D,如果这时再按Capslock+1,首先激活的会是窗口B。

Qbar

Capslock+
Q

功能

  1. 弹出输入框,输入不同命令执行不同操作(见下面的cl set等)

说明

  1. 按下ESC键或失去焦点后将关闭界面
  2. 选中字符再按下+Q可以将其填入输入框
  3. 选中文件再按下+Q,它的路径会填入输入框

命令

命令 功能 说明
cl about 查看版本信息
cl set 打开Capslock+settings.ini文件和Capslock+settingsDemo.ini文件

Capslock+settings.ini各字段作用:

  • Global:全局设置
  • QSearch:设置搜索命令
  • QWeb:设置打开网页
  • QRun:设置启动程序
  • QStyle:设置+Q输入框的样式
  • TabHotString:设置+Tab热字串
  • *更具体的说明请查看CapsLock+settingsDemo.ini文件
cl pay 打开付费页面 Capslock+不强制收费,但它是收费的,请按你所认为它值得的价格付费
ooo -> xxx Capslock+settings.ini以下的某字段添加一行:
ooo=xxx
  1. 如果是搜索网址:
    [QSearch]
  2. 如果是文件路径:
    [QRun]
  3. 如果是网址[1]
    [QWeb]
  4. 都不是:
    [TabHotString]
  1. 例如输入mdn -> developer.mozilla.org,记录完成后就可以在+Q输入mdn来打开developer.mozilla.org
  2. 如果文件是快捷方式,会自动找到快捷方式所指向的文件的路径来记录
  3. ->指令会判断右边字符串的格式来决定记录到哪个字段:
    如果要记录的字符串是搜索网址,字符串会被记录到QSearch
    如果要记录的字符串是文件路径,字符串会被记录到QRun
    如果是网址[1],字符串会被记录到QWeb
    否则才会记录到TabHotString
  4. 如果所记录的字符串格式类似文件路径或者网址[1],例如com.com.com,就会被记录到QWeb,要将这类字符串记录到[TabHotString],可以用->string命令,它会把字符串记录到TabHotString; 同样,->search会记录到QSearch->run会记录到QRun->web会记录到QWeb
  • *更具体的说明请查看CapsLock+settingsDemo.ini文件
  • [1]: 只有以http://https://www.开头,或者包含.com.net.org的字符串才会被认为是网址
  • ooo ->search xxx
  • ooo ->run xxx
  • ooo ->web xxx
  • ooo ->str xxx
在Capslock+settings.ini下的[QSearch] / [QRun] / [QWeb] / [TabHotString]字段添加一行:
ooo=xxx
  • 记录完成后可以在+Q输入ooo来搜索 / 打开路径为xxx的文件(夹) / 网址 / 使用+Tab的热字串功能

*更具体的说明请查看CapsLock+settingsDemo.ini文件

    web xxx
打开xxx网址 如果xxxhttp://https://www.开头,或者包含.com.net.orgweb命令可以省略。例如:google.com
  • s xxx
  • bd xxx
百度搜索xxx
  1. 百度是默认搜索引擎,即可以省略命令直接输入关键词进行搜索,除非关键词中包含其他的命令关键词
  2. 可以在Capslock+settings.ini文件中修改默认搜索引擎,以及修改或添加搜索命令以支持其他搜索引擎。

* 更具体的说明请查看CapsLock+settingsDemo.ini文件

  • g xxx
  • gg xxx
谷歌搜索xxx 同上
m xxx MDN搜索xxx 同上
wk xxx 维基搜索xxx 同上
tb xxx 淘宝搜索xxx 同上
aa bb aa打开bb

aa[QRun]上有记录的一个程序

bb[QRun] / [QWeb]上有记录的一个文件(夹) / 网址简写,或具体的文件(夹)路径 / 网址

例如:
[Qrun]下记录了ie=C:\Program Files\Internet Explorer\iexplore.exe
[QWeb]记录了clp=http://junkai.me/capslock+/
ie clp就可以用ie来打开http://junkai.me/capslock+/
也可以直接ie junkai.me/capslock+

xxx
  1. 如果[QRun][QWeb]内有记录则运行对应文件或打开对应网址
  2. 如果是文件(夹)路径,打开该文件(夹)
  3. 如果是网址[1],打开该网址
  4. 不是以上情况的话,百度[2]
  1. 能根据输入,展示[QRun][QWeb]的记录,或输入的路径下的文件(夹)[3]
  2. 可以使用通配符?*来匹配任意一个 / 多个字符,例如:
    ?at可以匹配bat, cat, fat...
    g*d可以匹配god, good, gold...
  3. 无提示列表的情况下Tab展开提示列表(如果QRunQWeb有记录的话)
  4. 有提示列表的情况下,如果有选中某文件名,Tab可以将选中的文件名放到输入框,否则,会将第一个文件名放到输入框
  5. Capslock+-(减号键),Capslock+=(等号键)可以上 / 下 一页选择列表
  6. 在展示路径下的文件时,\(或/[4])键(单独按下)可以将文件(夹)名填入输入框,Capslock+,可以回到上级目录,Capslock+.可以前进到下一层目录
  7. 如果要搜索类似网址的关键字,请带上搜索命令,如s com.com,否则将被当成网址打开
  8. Capslock+settings.ini中,提供给Qbar使用的段名[QSearch],[QRun],[QWeb],支持在键名后加上<xxx>来作为提示,它们不会影响命令的使用。例如:
    [QWeb]下有t <taobao>=www.taobo.com,那么QBar下输入t打开www.taobao.com
  9. [QRun]下需要为程序添加启动参数或以管理员权限打开的话,程序路径要用引号引起来,然后在这部分的左边加上*RunAs以管理员权限打开,在这部分的右边加上启动参数。例如:
    ie=*RunAs "C:\Program Files\Internet Explorer\iexplore.exe" -k
    *具体参照Capslock+SettingsDemo.ini
  10. Ctrl+Enter会在输入的字符串前后加上www..com,并当成网址打开。例如:
    输入taobao->Ctrl+Enter->打开www.taobao.com
  11. Qbar 支持搜索全部已安装文件,如果在启动 Capslock+ 后有安装 / 卸载程序,需要重载 Capslock+ 。

[1]: 只有以http://https://www.开头,或者包含.com.net.org的字符串才会被认为是网址。否则,请在网址前面加上命令web

[2]: 通过修改Capslock+settings.ini文件下,[QSearch]段的default可以设置默认搜索

[3]: 在展示输入的路径下的文件时,为了保证加载速度,在文件过多的时候,会放弃加载部分文件的图标,直接使用一个空白文件样式的图标

[4]: \键在文件路径输入时会频繁使用,而\键实在太远了,所以特地让/键也实现和\键一样的功能,如果需要输出/符号可以用Capslock+/


补充说明

关于文字操作的机制

Capslock+ 不少功能是根据不同文字内容做不同操作的,例如选中文字自动填入+Q+T翻译、+Tab的字符替换、数学表达式计算,和+9在选中文字两端添加()等。这些功能都是通过发送一个Ctrl+C来获取文字,再对文字进行操作的。

因为这个原因,在使用这些功能时需要注意Ctrl+C会不会引起意外的操作,例如在命令行下这个组合键通常是退出操作。

还有就是在很多编程工具下,Ctrl+C会在未选中任何文本时复制光标所在行整行文本,这样就会造成在这些界面下无法准确判断用户到底有没选中文本。目前还没找到别的更高效而通用的方法。
现在对于这个问题的解决办法是通过判定复制到的文本最后是不是换行符来判断获取到的文本是不是这些软件自带的复制功能复制到的。
这个方法暂时只发现在某些带有这个功能的界面的最后一行下会有问题,因为是最后一行,所以文本最后可能不带换行符,这时如果未选中文字使用了例如+9这样的功能,就会被判定为选中了整行文字,而按选中文字的情况作出相应的操作。
对于这种情况,只要不在最后一行编辑——回车一下,再回到上面编辑文本即可。如果有什么好的解决方法,欢迎联系我。

关于计算的详细说明

  • Capslock+F2 和 Capslock+Tab 的计算功能支持使用函数(也叫方法)帮助计算。函数就是类似xxx()这样格式的东西,使用函数只要把需要计算的数值写在括号里,多个数值之间用逗号隔开。例如,使用average()函数来求平均值:average(1,3,5,7,12,32)
  • 支持的常量和函数:JavaScript Math 对象
  • 除了上面页面中列出的函数外,还支持以下函数:
    函数 描述
    average(a,b,c...) 计算 a,b,c... 的平均值
    variance(a,b,c...) 计算 a,b,c... 的方差
    spVariance(a,b,c...) 计算 a,b,c... 的样本方差
    *如果在你的专业领域中有经常需要用到的公式想添加到 Capslock+,可以用 JavaScript 写好,放到loadScript文件夹中,并在CapsLock+settings.ini->Global->loadScript中设置,这样 Capslock+ 在启动时就会加载该 js 文件,来添加你编写的函数。也可以联系我,可行的话我会添加到 Capslock+。
  • 支持的数值:JavaScript Number 对象
  • 支持的运算符:JavaScript 运算符
  • 支持的比较和逻辑运算符:JavaScript 比较和逻辑运算符
  • 想了解更多你需要学习 JavaScript:JavaScript 教程
  • 例子:(在这里试试Capslock+Tab?)
  • 因为计算的功能实际上是用了 JavaScript 引擎来运算,而在 JavaScript 里,小数的运算可能会有一些偏差,例如:0.1+0.2=0.30000000000000004。 对于这个问题,Capslock+ 在 Capslock+F2 的计算板和 Capslock+Tab 功能中,用了比较粗暴的方法在一定程度上解决了这个问题。而在 Capslock+Tab 的功能上,为了保持 js 原有的特性就不去试图修复这个问题。 在使用计算功能的时候需要慎重,Capslock+ 的计算功能不一定能得到一个绝对正确的结果。对于这个问题,更详细的说明请看这里

联系我

如果发现 bug 或者有新想法或者觉得文档哪里写得太烂等等,欢迎通过发送邮件到 或者在下面评论留言告诉我。

* 推荐用 email,那样我可以及时联系你了解问题,来更快地修复;修复完问题也可以用 email 通知到你。


版本历史

  • v3.0.0 | 2020-04-05 前往 v3.0 文档页

    • 修改:新的键盘布局,更顺手、更易于上手
  • v2.8.0 | 2020-04-05

    • 下载:Capslock+_v2.8.0.exe (1.18 MB)
    • 添加:可设置短按 Caps Lock 键触发的行为
    • 添加:添加多个可选文本操作行为:移动至页首、选中当前单词、删除至页尾,等
    • 修改:QBar 失去焦点时关闭
    • 修改:QBar 下拉菜单有选中项时,回车打开
  • v2.7.0 | 2016-11-30

    • 下载:Capslock+_v2.7.0.1.exe (933kb)
    • 添加:winjump 系列功能 (有什么用?)
      • 添加:Capslock+LAlt+E / D / S / F / A / G / Q -> 激活位于当前窗口 上面 / 下面 / 左边 / 右边 / 最左边 / 最右边 / 中间 的窗口
      • 添加:Capslock+LAlt+Z -> 将当前窗口压到最下层
    • 添加:Capslock+LAlt+J / K -> 最小化当前窗口并压入窗口栈最后 / 最前
    • 添加:Capslock+LAlt+L -> 推出窗口栈最后一项,并激活对应窗口
    • 添加:Capslock+LAlt+H -> 清空窗口栈中所有内容
    • 添加:Capslock+F4 -> 短按,将当前窗口变为半透明 / 不透明;长按,配合鼠标滚轮上 / 下以增加 / 减少窗口透明度(部分窗口无效,例如 QQ) (有什么用?)
    • 修改:原Capslock+F4窗口置顶放到Capslock+F6
    • 修改:修改部分按键功能函数的名称,以支持传入参数。所以如果在之前版本中在 Capslock+settings.ini [keys] 有设置按键的话,很可能已经失效,需要对照 Capslock+settingsDemo.ini 重新修改设置
    • 修改:按键修改
      • 修改:Capslock+LAlt+A / G原功能光标跳至页首 / 页尾放到了Capslock+LAlt+- / =
      • 删除:Capslock+LAlt+- / =原功能页面上移 / 下移一页(光标不动)删除
      • 修改:Capslock+LAlt+E / D原功能页面向上 / 下移动 5 行(光标不动)放到了Capslock+LAlt+Y / B
      • 修改:Capslock+LAlt+S / F原功能切换到前 / 后标签放到了Capslock+LAlt+W / R
    • 修改:Capslock+LAlt+Tab的使用计算功能时,浮点数运算改为和计算板的一致,修复0.1+0.2=0.30000000000000004类似的问题,具体可以看关于浮点计算的说明
    • 删除:Capslock+LAlt+uiojklm,.;'p[一堆数字和运算符输出(如果需要可以自己在 Capslock+settings.ini [keys] 中设置 keyFunc_sendChar(1) 等)
  • v2.6.0 | 2016-6-30

    • 下载:Capslock+_v2.6.0.5.exe (916kb)
    • v2.6.0.5 | 2016-7-7

      • 修改:修复[QStyle]设置项无效的问题
    • v2.6.0.4 | 2016-7-5

      • 修改:修复allowClipboard没有设置时,修改sets.ini会导致独立剪贴板功能关闭的问题
    • 添加:按键功能设置,设置写到Capslock+settings.ini[Keys]下,具体看Capslock+settingsDemo.ini
    • 添加:Qbar 添加所有已安装程序搜索
    • 添加:Qbar 添加快速搜索提示
    • 添加:Qbar 支持在简写到[QSearch],[QRun],[QWeb]时,在简写后面跟上<xxx>来备注提醒
    • 添加:[QRun]支持添加启动程序时的参数,以及是否用管理员权限启动,具体看Capslock+settingsDemo.ini
    • 添加:Qbar 支持用简写到[QRun]的程序来打开其他文件(夹) / 网址 等(文件(夹) / 网址也可以用简写代替)
    • 添加:Qbar 支持打开 ftp 地址(简写写到[QRun]中)
    • 添加:Qbar 下Ctrl+Enter打开www.xxx.com,例如:输入baiduCtrl+Enter,打开www.baidu.com
    • 添加:Qbar 的->命令添加识别QSearch的快速添加设置
    • 修改:Qbar 浏览文件夹时Capslock+B返回上一层目录,改为向下 5 行
    • 添加:Qbar 浏览文件夹时Capslock+,返回上一层目录,Capslock+.前进到下一层目录
    • 添加:scriptDemo.js添加了日期 / 时间获取函数,所以TabScript现在可以直接用date() / time() / dateTime() 获取当前 日期 / 时间 / 日期时间
    • 添加:Capslock+F4使窗口保持在最顶层
    • 添加:程序启动时的加载动画
    • 修改:Capslock+LAlt+E / D从页面上 / 下移动 1 行(光标不动)改成移动 5 行
    • 修改:加载不到(或程序主动不加载)图标时用"空白文件"样式的图标,而不是无图标
    • 修改:优化 Qbar 输入时的提示逻辑
    • 修改:优化偶尔出现窗口绑定最小化后无法激活(最小化后却仍保持激活状态)的问题
    • 修改:修复 Qbar 刚出现的时候按下按键会触发相应按键的 Capslock+ 功能的问题
    • 修改:优化 Capslock 键松开后恢复原状态的速度
    • 修改:修复两个鼠标速度不同的窗口之间(游戏窗口很多都可以设置与正常环境下不同的鼠标速度),用WinBind切换后,会将激活前窗口的鼠标速度设置带到激活后的窗口下的问题。
    • 修改:修复文件(夹)名字是网站域名时,运行其路径时被当成网页打开的问题
    • 修改:暴力修复在 Excel 使用复制功能会弹出图片太大,超过部分将被截取。的问题(这应该是 Excel 的问题),代价是复制粘贴时 Excel 窗口会闪烁一下,暂时没想到更好的解决办法。
    • 添加:F12 关闭独立剪贴板功能。(主要给 Excel 里复制时弹窗图片太大,超过部分将被截取。用)
更多版本历史