大家好,我是小 G。
正所谓「工欲善其事,必先利其器」,在日常开发过程中,如果能选对一个趁手的工具,那无疑能为我们的工作任务省下不少时间精力。
一个能集众多编程工具属性于一身的软件,无疑就像瑞士军刀一样,可极大满足多种不同场景下的使用需求。
今天,咱们便从「瑞士军刀」这个主题出发,聊下我曾在 GitHub 上发现过的两款开发者神器。
DevToys
过去一周,一款名为 DevToys 的 Windows 开发者工具持续霸榜了 GitHub Trending。
在项目描述中,作者将其称之为「开发人员的瑞士军刀」(A Swiss Army knife for developers)。
其主要原因,是里面集成了诸多实用的开发者工具,比如 JSON 格式化、正则表达式测试、Base64 编码与解码、PNG/JPEG 图片压缩、色盲模拟器等功能。
GitHub:https://github.com/veler/DevToys
一图胜千言,下面贴几张项目示例图,让你们感受一下他的强大。
JSON 转 YAML 文件:
正则表达式测试:
Markdown 预览:
Hash 生成:
聊完功能,我们再来看下如何安装和使用。
DevToys 支持微软商店、WinGet 以及手动安装等多种方式。因为前两种安装方式比较人性化,因此针对性给大家做下介绍。
安装方法一(微软商店)
在微软应用商店直接下载安装,是最简单,也是最直接的方法。
地址:https://www.microsoft.com/store/apps/9PGCV4V3BK4W
安装方法二(WinGet)
如果你电脑有安装 WinGet 的话,也可以打开 PowerShell,运行下面两行命令,即可快速安装 DevToys。
代码语言:javascript复制winget search DevToys
winget install DevToys
DevToys 使用
关于使用方式,最常规的用法,就是直接在 GUI 界面上,操作并使用这款工具。
由于方式比较简单,基本上你打开界面就能看懂,因此就不多作赘述。
咱们重点来看下它一个比较酷的地方:通过 PowerShell 快速启动各类工具。
方法很简单,就是在软件安装成功之后,打开 PowerShell,运行类似 start devtoys:?tool={tool name} 这样的代码,即可启动 devtoys。
不过,需要注意的是,运行之前,得先指定一个工具名称 {tool name}。
打个比方,如果你要打开「JSON 格式化工具」,则需指定工具名称「jsonformat」,完整命令如下所示:
代码语言:javascript复制start devtoys:?tool=jsonformat
{tool name} 支持多种参数,你可以根据不同参数名称,用 PowerShell 来快速打开不同工具。
命令行支持的参数,列表如下:
比较可惜的是,DevToys 目前只适用于 Windows 10 build 1903 及其更高版本的操作系统。
但一般来说,类似这种业务逻辑不是很复杂的离线软件,基于 Electron 来构建或许会更好一点。因为 Electron 的跨平台属性,可以做到单次开发,多平台应用。
不过没关系,如果你是 Mac 用户,请接着往下看。
devutils
这是我在 2020 年,在 Hacker News 上找到的,由国外一位开发者分享的 Mac 开发者工具:devutils。
GitHub:https://github.com/DevUtilsApp/DevUtils-app
里面提供了 Unix 时间戳解析、URL 编码/解码、JSON 格式化、JWT 调试、query string 解析等工具。
所有的小工具加起来,足足有 34 种!
相对于 DevToys,这款软件的开发迭代的周期比较长,因此功能自然也要丰富不少。
安装方式,主要也分两种。
方式一(App Store)
在 Mac 上,访问下面链接,自动跳转到苹果商店 App Store 进行安装:
https://apps.apple.com/us/app/id1533756032
方式二(Homebrew)
如果你在 Mac 上有安装 Homebrew 这个软件包管理工具,则可以打开命令行终端,运行下面这行命令,快速安装:
代码语言:javascript复制brew install devutils
devutils 使用
在平时比较常用的,主有以下这些功能。
通过链式语法,查询 JSON 数据:
正则表达式测试:
JSON 和 YAML 互相转换:
Markdown 语法预览,HTML 转换:
另外,它还有一个特别牛逼的智能检测功能。
简而言之,就是它能检测到你当前在电脑上复制的文本,并自动定位到正确的工具上。
比如,当你复制一个 10 位数的文本数字,则会被自动定位到「Unix 时间戳转换」工具,就像这样:
devutils 目前支持的检测文本如下:
如果你平时喜欢用命令行、Alfred、Raycast 等工具,还可以将 devutils 集成到这些工具上,无缝对接,一箭双雕,再次提高生产力!
总的来说,这款工具还是比较强大的,不过里面的部分功能需要付费才能使用,大家可仔细考量,自行斟酌。
倘若你实在不想付费,也可以直接用 Xcode 编译该项目的 GitHub 源码,在本机运行。
除了上面分享的两款开源软件,2019 年的时候,我还写过一篇文章,介绍了 Web 端一些比较实用的编程工具型网站。
上文所提到的所有开源项目,已收录至 GitHubDaily 的开源仓库,有需要的,可访问下方 GitHub 地址
GitHub:https://github.com/GitHubDaily/GitHubDaily