我自己是一个Java后端工程师,平时就在公司的Mac上CRUD,本文收录的主要是我觉得平时工作中用了很爽的小工具 ( For MacOS )。
Raycast
Spotlight + AI
一直以来,我是否使用某个软件,是需要先通过一个优先级规则判断的:
- 原生 > 第三方
- All In One > Distributed (分布式🤔)
过去我一直使用Spotlight,因为它是macOS原生的,和系统其他软件的联动做的很好,一些常见的搜索,或者表达式计算都可以支持。其他的一些竞品,诸如:Alfred,utools在用过一段时间之后放弃了。
Alfred: 我主要觉得整体UI设计风格和系统格格不入,但是他的Workflow确实很牛逼(不过macOS原生的快捷指令也很能打)。
uTools:没开源,插件生态也不如另外两个。
Raycast: UI审美在线(判断一个软件审美,我觉得从官网就能略知一二了);支持AI,可以通过Ollama和本地大模型打通;开源且生态繁荣。
RayCast常用的功能
- 剪切板(取代了下面Maccy)
- 能支持预览(颜色,链接,图片等),以及内容分类
- QuickLinks
其实另外两个也有这个功能,没啥好说的
- Snippet
- 支持自定义占位符
- 支持动态参数
- Unix Timestamp
- 通过Alias设置 时间戳和DateFormat互相转换
- Speedtest
- 比打开网页快
- Others
RayCast和许多常用的软件结合的比较好,比如Arc,Notion,OnePassword等等
Arc
高效工作从多个优先级Space开始
Arc的Space概念确确实实的提升了我的效率,最忙的时候3个需求并行。
Space我认为是Chrome的分组plus,虽然Chrome可以分组,但是不同分组还是挤在一个窗口。而Arc的Space切换,看上去像翻页,不同Space可以有不同的主题以及Profile。
profile 是一个Chrome中的概念,相当于系统的用户,不同的Profile之间完全隔离,就像两个独立的浏览器,这一点很重要。一个Space可以绑定一个Profile,多个Space也可以共用一个Profile;就像我平时开发时,不同的需求我使用的是不同的账号,通过不同的profile,我可以很好的避免反复切换账号的问题。Chrome也可以做到类似效果,但是总归没有这个自然舒服。
我一共创建了6个Space,前两个是工作无关的,共用同一个Profile,且登录的自己的Google账户。后面4个按照优先级划分,都单独的配置了Profile,保证上下文互不干扰。
OrbStack
…
Homebrew
万物之始……
在MacOS中,并不像一种Linux发行版一样,自带一个包管理工具。MacOS仅默认包含App Store这一个官方的软件分发渠道。对于大部分办公室白领来说,上面的软件已经可以满足日常工作使用了。但是对于程序员(一个Mac用户浓度极高,技术整活狂热者浓度极高,自由崇尚程度极高的群体),App Store是完全无法满足他们日益增长的好奇心的。
于是,一众第三方包管理工具氤氲而生。
Homebrew则是其中最知名的存在。其Slogan也是:The Missing Package Manager for macOS
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Homebrew还通过Homebrew-cask提供了许多GUI软件。有趣的是,其中有些软件在App Store上也能找到,不过需要购买。
逸事一则
SDKMAN!
Java程序员必备的SDK管理利器!
当你来到新的公司,打开你全新的Mac,十分熟练的安装好了OpenJDK,而且把1.8,11,17都安装,时刻关注Java最新发展动态,当然为了方便切换版本,你定义了环境变量,还有Maven,Gradle统统熟练搞定。
用着最新版的idea 终极版,clone下负责的项目,正打算Build一下,
提示:Blocked mirror for repositories …… 你Google了一圈,发现Maven新版本出于安全考量,只能使用HTTPS,没办法老老实实降级后,重新打开项目,提示 javafx.util.Pair 找不到,Darn it! 要不你乖乖用org.apache.commons.lang3.tuple.Pair 替换之,要不还是老老实实下载JavaFX……
没过几天OpenJDK推出了全新的OpenJDK 8.0.345,修复了xxxx……虽然现在的也能用,但是你不能忍受自己的JDK是有漏洞的! 你赶紧又熟练的更新了JDK,漏出了满意的微笑。
现在,忘了那些愚蠢的版本,愚蠢的环境变量吧!
Get started now!
curl -s "https://get.sdkman.io" | bash
Java生态的 整壁江山 它都能一个命令搞定!它真的……我哭死!
因为SDKMAN使用的类似软链接的方式切换版本,我在idea上使用Gradle时会遇到说命令路径不匹配的问题。目前这是我遇到的唯一个问题。
IntelliJ IDEA Ultimate
你永远可以相信毛子的软件产品!
我认为一定得是Ultimate版才能算是令人舒适。就附带的数据库工具 + HTTP client就能省去安装 XXXdatabase client + Postman,除此之外还包含一堆针对Spring生态的舒适小功能。
虽然它叫IntelliJ 而不是 IntelliP,或者IntelliG,但是它确实是支持其他编程语言的,这个All in One的感觉是我喜欢的。
《懒》All in One?那你为啥不用VSCode?为啥不用Vim?Emacs?
当然,我对它的喜爱很大程度上是建立在我们学校还没有收回校园邮箱的基础之上的。毕竟,谁不喜欢白嫖呢?
JetBrains 来,看看这高贵的定价,程序员高收入人群实锤!
当然,我们程序到了真要掏腰包的时候,大概率会成为“自由软件运动”的忠实倡导者。
Here we go!
jetbra.in/s 进入这个“李鬼”站点,开始白嫖吧!
最近看到JetBrains官方Blog说,IntelliJ idea要推出全新UI,神似VSCode,拭目以待吧。
2025年2月,Fleet 难产了……?
Maccy
⊞ win + v 的代替方案。直接用 Raycast
牛逼如MacOS,也缺少一个类似Windows上的系统自带剪切板。当然肯定又是存在隐私泄露风险,苹果总是考虑得这么周到。
需要复制多条内容的场景还是十分常见的:用户名+密码、终端命令+路径……
但Maccy还有一些Windows剪切板所没有的功能:搜索,忽略场景,快捷键……还有色值预览的小功能。
那么如此优秀的小工具,这么才能获得呢? App Store ¥68 一次付费,终身享受。
Wait? ¥68? 怎么不去抢?
好吧,其实它在GitHub开源了,你也可以从Home-brew Cask免费获取。
brew install --cask maccy
Typora
所见即所得。
作为一个Markdown编辑器,拿它和Sublime Text对比是不公平的。但我看同事们平时的文档记录,就主要分为这两派。
所以下面就主要针对 NOTE 这个角度,简单聊聊我为啥要用Typora。
1.好看
beautiful & easy to view
二者的UI,我都挺喜欢的。但可能是得益于Markdown的结构化特点,你得承认Markdown精心编辑过的文本就是比TXT好看很多。你要说,Sublime也有Markdown preview插件,但是,我们都知道这种左右分屏预览的方案,用起来其实都大同小异,只能是勉强能用的程度。
2.方便
国内的互联网公司,或者说大厂,几乎都有自己在线文档系统,很多都是支持Markdown语法的。平时在本地编辑完,复制上去,真挺方便的。而且Typora支持各种其他文档格式的导出功能。你要是个学生,至少写作业倒是挺方便的。
typora.io ¥89买断,支持3台设备。这次是真要付费了,当然你还是可以找到曾经免费时的那个版本,然后不再更新。
Hidden Bar
2021款MacBook Pro纸张刘海儿的妥协方案.
目前工作用的电脑是公司发的, 搭载M1 Pro的2021款MacBook Pro 16英寸, 啥都好, 就是那个纸张刘海儿真的很烦. 影响观感倒是其次, 主要是影响到系统使用了. 严重限制了右上角的工具栏的数量.
除去系统的 日期, 时间, Siri, 设置, 电量, 键盘, WLAN 7个内容之外, 在默认的显示大小下, 你最多还可以拥有 9 - 10个图标, 多出的图标将不会显示(可以显示在扩展屏幕上). 这个在办公场景下, 真的很少. 像我们公司, 必须安装的软件就占用了5个. 突然怀念Windows的图标收纳了.
因此, 这款 Hidden Bar 我愿称为 2021款MacBook Pro的必备小工具.
安装并打开后, 它会在工具栏产生3个图标, 从右到左是 “ > ” 收纳箭头, “ | “ 深色分割符, “ | ” 浅色分割符. 具体功能如上图描述, 有两个隐藏级别. 根据使用频率, 自由选择隐藏级别, 诸如一些安全软件, 完全可以持续隐藏.
这个小工具已经在Github开源了, 赶紧试试吧
brew install --cask hiddenbar
RunCat
有谁会不喜欢猫猫呢?
虽然我不太喜欢360, 但是它那个悬浮球状态显示的功能, 确实深得人心. 也导致这个功能成为了一种杀毒软件的标配(虽然杀毒和网络以及内存占用状态没啥直接联系).
到了macOS这边, 网上也有很多相关美化教程, 在工具栏显示一些带有RGB氛围灯的状态信息. 但, 个人觉得, 这和MacBook这中冷酷风格很不搭. 选了很久, 最后选择这个RunCat, 猛男就应该配小猫咪.
RunCat的主要形态就是一只猫咪(或者自定义的其他关键帧动画, 被称为 Runner), 猫咪奔跑的速度(动画播放速度)表示一项系统指标(可自定义, 比如 CPU Load). 点击猫咪可以显示更为详细全面的状态信息(CPU, mem, disk, network, battery). 当然你也可以将某些指标固定在状态栏中.
除了自带很多免费的Runner, 作者也提供了许多付费的. 并且将自定义的能力开放出来, 你甚至可以把坤坤拍篮球的动画放进去.