一个只有2M+大小的强大效率工具sux

sux

sux

sux 是一个只有2M+大小的强大效率工具同时拥有

An alternative to Alfred/Wox/Listary/Capslock+/OneQuick .

Inspired by Alfred/Wox/Listary/Capslock+/utools/OneQuick, thank u.

. . .

重要

  • 请以管理员身份运行sux
  • 防止杀毒软件误杀处理 :
    • 打开win10托盘的Windows安全中心-病毒和威胁防护-病毒和威胁防护设置的管理设置-排除项的添加或删除排除项-添加排除项-文件夹, 然后选中sux所在文件夹即可
    • 如果被其他杀毒软件报杀则将sux列入白名单
    • 如果是windows安全中心杀了的话则在它的病毒和威胁保护-保护历史记录-找到删除sux的历史记录-还原
  • Please run sux as administrator.

Just download sux.zip and unzip it then run sux.exe as admin !

快捷搜索search-plus

大多数时候其实都是 shift+空格或者双击Capslock 然后空格搜东西, 如果要取消菜单则按alt或者esc, 所有的菜单都是可以选中某段文字然后直接查询的, 右边这一排q/w/e/r啥的都是快捷键

也可以先选中某段文字然后shift+空格或者双击Capslock然后直接查询的.

所有的默认快捷键都是可以改的, 在conf.user.json里找到ShowSuxMenu改, 改成capslock_q或者alt_space或者doublehit_ctrl (双击ctrl) 或者triplehit_shift (三击shift) 或者其他的任何你喜欢的快捷键都行, 不过不建议doublehit_alt (双击alt), 因为alt会丢失焦点.

为什么shift+空格 出来的不是搜索框?

原来是那样的, 后来我给一些用户(比如运营岗用户)用, 发现他们记不住key.
比如百度是bd, 谷歌是gg这种对吧?
后来我就做了个这种快捷菜单, 用过几次熟悉快捷键之后也十分迅捷方便, 省去了每次都要输入什么gg/bd的烦恼

翻译

选中文字然后 capslock+t

亮点:

  • 可以整句翻译,
  • 也可以直接翻译带下划线的或者大小写无空格的都可以直接选中后翻译,
  • 甚至可以直接翻译形如 TransformText_Detail_Menu-click, stand up 的复杂句子, 会自动解析为 transform text detail menu click, stand up 然后再翻译.

历史剪切板clipboard-plus

shift+空格 弹出菜单之后, 按v
这个历史粘贴板支持:

  • 图片内容(在sux剪切板里会以[图片]标识, sux支持从浏览器或者任何地方直接复制的图片)
  • 支持其他的二进制文件, 如图片文件, txt文件等等, 会以 [文件][多文件] 标识
  • 支持文件夹, 会以 [文件夹]标识
  • 支持一键粘贴所有历史剪切板记录和清空所有, 有时候需要去各种地方去一次性复制很多东西, 然后一次性粘贴, 那这时就可以先清空历史然后一键粘贴所有了

Everything搜索工具栏

使用演示:

如何设置才能有这个功能呢? 请按照下面两张图与以下步骤设置:

  1. 进入Everything的设置, 勾上下图中这三个选项

  1. 检查 .NET Framework 是否 大于等于 4.7 (Win+r然后输入cmd回车, 然后输入reg query "HKLM\SOFTWARE\Microsoft\Net Framework Setup\NDP\v4" /s查看Version REG_SZ那一行是否大于等于 4.7)
  2. 参考下图, 先通过任务栏的上下文菜单来开启 EverythingToolbar, 注意你需要打开这个菜单两次, 第一次它不显示的
  3. 右键任务栏, 解锁任务栏, 然后调整工具栏的大小和位置
  4. 设置完毕之后, 可以使用 capslock+f 来激活, 若已经选中文字的话, 则会自动输入该文字并搜索

Shortcut Function
Navigate search results
Return Open
Ctrl+Return/Click Open path
Shift+Return/Click Open in Everything
Alt+Return/Click File properties
Ctrl+Shift+Enter Run as admin
(Shift+)Tab Cycle through filters
Ctrl+0-9 Select filter
Ctrl+Space Preview file in QuickLook
Win+Alt+S Focus search box (customizable)

截图和贴图

  • capslock_q是截图
  • capslock_alt_q是贴图, 贴图窗口出来之后, 点击一下贴图图片则可以让他变得半透明, 贴图还是比较有用的, 对于有时候需要对照着贴图写代码或者对照画图等的需求的用户

类似macos的触发角hot-corner

若要用的话, 需要去sux托盘菜单里开启触发角功能

当开启之后, 鼠标移动到屏幕左上/左下/右上右下都会触发不同的动作:

触发角 操作
左上 跳到浏览器前一个标签页
右上 跳到浏览器后一个标签页
左下 模拟按下win
右下 模拟按下alt+tab

这些是默认动作, 你都可以改动自定义配置conf.user.json来更改

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
"hot-corner": {
"action": {
"LeftTopCorner": {
"hover": "JumpToPrevTab"
},
"RightTopCorner": {
"hover": "JumpToNextTab"
},
"LeftBottomCorner": {
"hover": "win"
},
"RightBottomCorner": {
"hover": "GotoPreApp"
}
}
},

屏幕边缘触发器hot-edge

比如你把鼠标放到屏幕左边缘, 然后滚轮, 你会发现可以调节音量

下面是预设的边缘触发表:

边缘 快捷键 操作
左边缘 滚轮 调节音量
左边缘上半部分 鼠标中键 把当前窗口移到屏幕左边
左边缘下半部分 鼠标中键 把当前窗口移到鼠标当前所在屏幕
右边缘 滚轮 向上翻页 / 向下翻页
右边缘上半部分 鼠标中键 把当前窗口移到屏幕右边
右边缘下半部分 鼠标中键 把当前窗口移到鼠标当前所在屏幕
上边缘左半部分 滚轮 回到页面顶部 / 去页面底部
上边缘右半部分 滚轮 向上翻页 / 向下翻页
上边缘左半部分 鼠标中键 最小化
上边缘右半部分 鼠标中键 最大化
下边缘 滚轮 切换桌面
下边缘 鼠标中键 显示桌面管理器

文字替换器replace-text

capslock+r

填写电子邮箱的时候经常要敲很多字或者填写密码的时候总是需要重复输入一长串, 对于经常重复需要输入的文本, 这个时候就可以用文字替换器来,
比如密码是abcd12349087234bghyymll这么长的密码就可以定义为abc::, 或者比如把h/替换为http://之类的,
配置可以自由定义, 已经选中文字则是只替换选中文字, 否则替换整行,

默认配置如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
  "replace-text": {
"enable": 1,
"buildin": {
"h/": "http://",
"hs/": "https://",
"qc@": "@qq.com",
"gc@": "@gmail.com",
"16@": "@163.com"
},
"custom": {}
},
```


# 文本变换器

`shift+空格` 弹出菜单之后, 按`t`

经常写代码的朋友应该经常会有把驼峰命名的文本 转换为 蛇形命名文本之类的需求, 或者把小写的文本转为大写的需求

![](https://github.com/no5ix/no5ix.github.io/blob/source/source/img/sux/transform_text.gif)


# CMDs指令

`shift+空格` 弹出菜单之后, 按`c`

* `cmd` : open a command prompt window on the current explorer path, 打开命令行窗口, 如果当前在文件管理器则打开后会立即进入当前文件管理器路径
* `sux` : sux official site, sux官网


# 托盘菜单

![](https://github.com/no5ix/no5ix.github.io/blob/source/source/img/sux/tray_menu.gif)

直接鼠标点击sux托盘图标可以快速禁用sux


## 禁用win10系统的自动更新

win10的自动更新经常会搞得电脑蓝屏或者各种崩溃或者长时间占用电脑, 十分恼人. win10的自动更新用win10本身自带的机制是无法禁止的, 即使关闭了win10的 `Windows Update`服务, 他隔一段时间后也会自动开启.
sux的这个功能就彻底解决了这个问题, 不再烦恼.


## 窗口移动器-永远保持新窗口在鼠标所在的显示器打开

对于多显示器的用户来说, 在2显示器上双击了某程序准备打开它, 很可能它这个程序窗口却会在1显示器上打开, sux的窗口移动器就是解决这个问题的

注: 当检测到用户只有一个显示器的时候, 此选项会自动禁用(灰掉)


# 快捷键完全自定义

这个工具其实很重磅的功能是 `hotkey`
- 实现文本输入增强, 你可以通过 Capslock 键配合以下辅助按键实现大部分文本操作需求,不再需要在鼠标和键盘间来回切换, 可以类似vim一样的, 各种光标移动都十分方便
- 也可以自定义各种快捷键来触发各种动作, 比如配合触摸板达到快速大小化窗口, 三指拖动的效果

预设快捷按键:

| 快捷键 | 操作 |
| ---- | --- |
|`caps+g` | 是`Ctrl`+`Y` |
| `ctrl+8` | 模拟鼠标按下不放的操作. (建议笔记本的触摸板的`三指点击`设定为快捷键`ctrl+8`, 然后就可以模拟鼠标按下不放的操作了, 达到类似mac的`三指拖动`的效果) |
| `ctrl+shift+alt+m` | 最大化/最小化窗口. (建议笔记本的触摸板的`四指点击`设定为`ctrl+shift+alt+m`, 这样就可以快速最大/最小化窗口了) |
|`caps+h/j/k/l` | 也可以来上下左右的, 比如`caps+alt+h`就是往左选中哈, 以下相同 |
|`caps+s` | 是左, 比如`caps+alt+s`就是往左选中哈, 以下相同, 加`alt`就是选中, 不加就是移动 |
|`caps+e` | 是上, 加`alt`就是选中 |
|`caps+d` | 是下, 加`alt`就是选中 |
|`caps+f` | 是右, 加`alt`就是选中 |
|`caps+逗号` | 是光标移动到最左边, 加`alt`就是选中 |
|`caps+句号` | 是光标移动到最右边, 加`alt`就是选中 |
|`caps+i` | 就是往左跳一个单词 |
|`caps+alt+i` | 就是往左选中一个单词 |
|`caps+o` | 就是往右跳一个单词 |
|`caps+alt+o` | 就是往右选中一个单词 |
|`caps+n` | 就是往左删一个单词 |
|`caps+alt+n` | 就是往左删除到行首 |
|`caps+m` | 就是往右删一个单词 |
|`caps+alt+m` | 就是往右删除到行末 |
|`caps+w` | 是选择当前单词 |
|`caps+alt+w` | 是选择当前行 |
|`caps+c` | 是模拟`ctrl+c` |
|`caps+alt+c` | 也是模拟复制, 但是当复制文件的时候会直接返回文件的路径 |
|`caps+r` | 是模拟`ctrl+y` |
|`caps+v` | 是模拟`shift+insert`(终端爱好者的福音) |
|`caps+tab` | 就是整行缩进, 不管光标在当前行的任何地方 |
|`caps+backspace` | 删除光标所在行所有文字 |
|`capslock+enter` | 无论光标是否在行末都能新起一个换行而不截断原句子 |
|`capslock+alt+enter` | 无论光标是否在行末都能在上面新起一行而不截断原句子 |


其他的待用户尝试, 也可以自行配置, 我自己用的配置是`conf.no5ix.json`也在项目中的`app_data/conf_bak`文件夹里, 你也可以参考

默认配置概览:
``` json
"capslock_q": "ScreenShot",
"capslock_alt_q": "ScreenShotAndSuspend",
"shift_space": "ShowSuxMenu",
"doublehit_capslock": "ShowSuxMenu",
"capslock_t": "QuickEntry_Translation_Menu_Click",
"capslock_c": "ctrl_c",
"capslock_e": "up",
"capslock_alt_e": "shift_up",
"capslock_s": "left",
"capslock_alt_s": "shift_left",
"capslock_f": "right",
"capslock_alt_f": "shift_right",
"capslock_d": "down",
"capslock_alt_d": "shift_down",
"ctrl_8": "SimulateClickDown",
"ctrl_shift_alt_m": "MaxMinWindow",
"capslock_alt_c": "SaveSelectedFilePathToClipboard",
"capslock_w": ["ctrl_left", "ctrl_shift_right", "ctrl_c"],
"capslock_shift_w": ["home", "shift_end", "ctrl_c"],
"capslock_`": "SwitchCapsState",
"capslock_tab": ["home", "tab"],
"capslock_v": "shift_ins",
"capslock_shift_v": "shift_6",
"capslock_g": "ctrl_y",
"capslock_r": "QuickEntry_ReplaceText_Menu_Click",
"capslock_enter": "InsertLineBelow",
"capslock_shift_enter": "InsertLineAbove",
"capslock_backspace": ["home", "shift_end", "backspace"],
"capslock_y": "shift_8",
"capslock_alt_y": "shift_5",
"capslock_u": "shift_1",
"capslock_alt_u": "shift_2",
"capslock_h": "left",
"capslock_alt_h": "shift_left",
"capslock_j": "down",
"capslock_alt_j": "shift_down",
"capslock_k": "up",
"capslock_alt_k": "shift_up",
"capslock_l": "right",
"capslock_alt_l": "shift_right",
"capslock_p": "shift_7",
"capslock_alt_p": "shift_3",
"capslock_i": "ctrl_left",
"capslock_alt_i": "shift_ctrl_left",
"capslock_o": "ctrl_right",
"capslock_alt_o": "shift_ctrl_right",
"capslock_9": "[",
"capslock_alt_9": "{",
"capslock_0": "]",
"capslock_alt_0": "}",
"capslock_n": "ctrl_bs",
"capslock_alt_n": "shift_home_del",
"capslock_m": "ctrl_del",
"capslock_alt_m": "shift_end_del",
"capslock_,": "home",
"capslock_alt_,": "shift_home",
"capslock_.": "end",
"capslock_alt_.": "shift_end",
"capslock_;": "_",
"capslock_alt_;": "-",
"capslock_'": "=",
"capslock_alt_'": "shift_=",
"capslock_/": "\\",
"capslock_alt_/": "shift_\\"

自定义配置

可以在托盘菜单里找到”编辑配置文件”的菜单的, 改了配置记得重启sux哈

配置编写规则:

  • 让一个键按了之后啥也不做是配一个nil, 比如 "capslock": "nil" 就是让capslock按了之后不做任何事
  • action类型: 直接从下方的所有action里选即可
    • ShowSuxMenu
    • StartSuxAhkWithWin
    • MoveWindowToLeftSide
    • MoveWindowToRightSide
    • OpenFileExplorer
    • OpenActionCenter
    • CloseCurrentWindow
    • GoTop
    • GoBottom
    • GoBack
    • GoForward
    • LockPc
    • OpenTaskView
    • VolumeMute
    • VolumeUp
    • VolumeDown
    • GotoNextDesktop
    • GotoPreDesktop
    • RefreshTab
    • ReopenLastTab
    • GotoPreApp
    • JumpToPrevTab
    • JumpToNextTab
    • SwitchCapsState
    • SwitchInputMethodAndDeleteLeft
    • MaxMinWindow
    • MaxWindow
    • MinWindow
    • ReloadSux
    • SelectCurrentWordAndCopy
    • SelectCurrentLineAndCopy
    • InsertLineBelow
    • InsertLineAbove
    • DeleteCurrentLine
    • IndentCurrentLine
    • SimulateClickDown
  • 发送的单个键盘操作: 比如要发送shift+下 就是shift_down
  • 发送一段键盘操作序列, 比如要实现caps +w选中当前单词, 首先得移动到词的左边, 然后往右选中单词, 则配置为: "capslock_w": ["ctrl_left", "ctrl_shift_right"]
  • 一些特殊的热键定义对照表:
    • lbutton: 左键单击
    • rbutton: 右键单击
    • mbutton: 中键单击
    • wheelup: 滚轮上滑
    • wheeldown: 滚轮下滑
    • hover: 悬停, 只能用在触发角的配置里
    • doublehit_: 双击, 比如doublehit_alt表示双击alt
    • triplehit_: 三击

捐赠

捐赠! 让作者更有动力给sux加新功能! ^_^

  • 微信
    • 微信
  • 支付宝
    • 支付宝

如何发布

  1. ver.ini, 然后提交
  2. 打 git tag
  3. 打包
    1. 建立 build 文件夹
    2. compile sux.ahk 成为 sux.exe, 放到 build
    3. 拷贝 app_data 文件夹到 build
    4. 删除 build 里的app_data 里的 temp_dir 文件夹
    5. 删除 build 里的app_data 里的 ev_sup 里的 Everything.dbRun History.csv
    6. 使用 7zip 压缩 build文件夹, 压缩参数如下:
      • 压缩格式: 7z / zip
      • 压缩等级: 极限压缩
      • 压缩方法: LZMA2 / LZMA
      • 字典大小: 256MB
      • 单词大小: 256
      • 固实数据大小: 4GB

TODO List

  • auto update
  • add more action
  • 点击tray menu 不消失menu
  • ext ahk
  • search_plus失焦则销毁
  • smart selection 双引号, 括号内, 单引号内
  • translation gui change color to gray/ dpi / voice audio / soundmark encoding <!– - 报一个bug,caps+q,q,用百度查询时,弹窗出现在另一个屏幕,因为我有2个显示器,建议设置一下默认的弹窗。
  • 上述bug包括everything –> <!– - donate width
  • Capslock + Backspace(删除光标所在行所有文字)
  • Capslock + Enter(无论光标是否在行末都能新起一个换行而不截断原句子) –>