- 已编辑
一、 界面
- 几乎所有界面都进行了更新
- 三种视图模式
- 可以配置主题色及面板视图背景
二、编辑器
- 默认编辑器替换为
monaco
- 引入了
node
、electron
、node
、utools
、quickcommand
等api
的声明文件,更加完善的代码提示和补全,完美复刻vscode
的编辑体验
三、新增功能
① 任何界面直接运行命令
- 2.x版本只能运行关键字匹配的命令,且简单粗暴使用
utools.redirect
,并会退出当前插件,现在可以在配置界面直接运行除窗口匹配外的所有命令,并不退出插件。如果是文件匹配,会让用户选择一个文件,如果是文本匹配,会让用户输入文本
② 实用功能
- 可以为命令设置一个
crontab
表达式,使命令在后台静默工作 - 新增快捷命令服务,打通 utools 内置的功能和外界的桥梁,可以通过发送 web 请求让插件在后台直接执行命令
- 新增快速收藏文件、网址
- 快速为插件添加别名
③ 插值变量
{{js:表达式}}
获取js表达式的值,必须为表达式而非语句,类似Vue
的文本插值{{py:表达式}}
模拟python -c
,并获取返回值,只支持单行语句{{usr:}}
用户自行设置的变量,类似一个全局配置项,可以设置为仅本机可用还是所有电脑通用
④ 匹配
- 新增图片匹配
⑤ 子输入框
- 子输入框可以通过
↑``↓
按键来选择历史命令
⑥ 运行结果
- 如果是纯文本输出的运行结果,会显示
复制
、发送到活动窗口
的按钮以便进一步操作,如果输出里有dataUrl
,还会显示将dataUrl
转为图片的按钮
⑦ 环境
- 新增
html
环境,可以直接编写包含JavaScript
、CSS
的html
页面,运行在一个和插件相对隔离的环境当中,不用担心自定义的变量和样式对插件造成的污染。Jav``aScript 的上下文和插件隔离,但可以使用quickcommand
和utools
的 api,console.log
被重定向到quickcommand.showMessageBox
quickcommand
环境下,现在console.log
可以输出多个参数(没错,以前不可以)quickcommand
环境下,如果console.log
输出的是一个对象,则可以对其键值进行折叠和展开,更加贴近开发者工具的体验quickcommand
环境下,强制使用strict mode
quickcommand
环境下,新增showWaitButton
,listenKeyDown
,wakeUtools
,readClipboard
,writeClipboard
,调整了kill
,showInputBox
,showMessageBox
,详见 https://www.yuque.com/fofolee/mwsoos/pt589pquickcommand
环境下,由于命令运行在沙箱中而非单独一个线程中,所以无法手动终止正在运行的命令,但可以借助quickcommand.showWaitButton
和quickcommand.listenKeyDown
两个接口来手动结束命令- 其他环境按下
ctrl
+c
即可终止正在运行的命令
⑧ 面板视图
- 老版本的「快捷面板」已被弃用,取而代之的是新版的「面板视图」
⑨ 其他
- 现在退出
RunCode
后,不光会保存历史代码,还会保存光标位置 - 检测 utools 版本,添加更新提示
- 新增用户等级
- 分享命令功能基于语雀,之前知识库成员已满,现在新开了更多的知识库
- 内置的网址二维码、执行
shell
命令等功能进行了更新 - 为命令选择图标时可以直接选择
.exe
或者.app
- 更新帮助文档
- 修复已知 bug
四、看不见的变动
- 整体使用
VUE
和QUASAR
进行了重构 - 弃用
vm2