由 Claude 从英文原文翻译。

📖 前言

你有没有自己布置过房间?说实话,我没有,因为我一直在租房。不过我确实会整理家里的东西。此刻,我正躺在沙发上写这篇文章。为了让它更生动,我决定放一张我现在环境的照片。

我搬到上海还不到两个月,但已经让这里变得很熟悉了。这让我能够生活得开心且有一定"效率"——意思是房间的布置完美契合了我的日常习惯。

电脑也是一样,尤其是工作电脑。我们并不拥有工作电脑,它们属于公司。但既然我们大部分屏幕时间都花在上面,确保它们让我们感到愉快且高效就很重要。

🔧 基础设置

🗂️ Dotfiles

https://github.com/yujiachen-y/dotfiles

Dotfiles 可以看作是你电脑的元数据。我个人使用 Brewfile 来管理 Mac 的依赖。只要一个应用能通过 Homebrew 安装,你就应该把它加到 Brewfile 里。实际上,只有极少数应用无法通过 Homebrew 安装。

我还把 .zshrc.vimrc 文件存在 Dotfiles 里,这样就不需要重复配置 zsh 和 vim。

此外,把 Mac 设置存在 dotfiles 里也是常见做法。不过,有些无法通过命令行修改的选项仍然需要去系统设置里手动配置。顺便说一句,每次我配置新 Mac 时,系统偏好设置里总会有 UI 变化和新选项。所以手动设置也帮我发现了苹果做了哪些改动 哈哈。

💻 命令行配置

我使用 Warp 作为终端模拟器。不过我认为 Terminal.app、iTerm2 和 Warp 之间的差异并不大。对我来说,Warp 有三个主要优势:

  1. 建议功能:我觉得比 zsh-autosuggestions 更好用。

  2. AI Copilot:在我看来,所有 AI copilot 产品都可以被直接问 ChatGPT 替代。(更新:Warp 现在也有 agent 模式了。)

  3. 内置 Shell 提示符:虽然不如 p10k 灵活或功能丰富,但我正在考虑换回我之前的 .p10k.zsh 配置。

你有没有看过你的 .zshrc 文件有多少行代码?那些行都在干什么?我检查了我的,只有 15 行。通常,.zshrc 文件里全是 [oh-my-zsh](https://github.com/ohmyzsh/ohmyzsh) 的配置,但我只保留了几个必要的插件,删掉了不需要的。这里介绍几个值得一提的 oh-my-zsh 插件:

  • dotenv:自动将 .env 文件加载到环境变量中。

  • git:我每天都在用 gaagit add --all)、gsmsggit commit --message)和 gcn!git commit --verbose --no-edit --amend)这些命令。

    • 一个 git 小技巧:请使用 gcn! 来避免 PR 中不必要的 commit 信息。
  • z:用极少的按键访问你最常去的目录。

如前所述,我使用 Warp 的内置 shell 提示符,它长这样:

不过,它不太灵活,也无法在其他终端模拟器中使用。如果你用 Warp 的 shell 提示符,在 VSCode 或其他文本编辑器和 IDE 中可能会遇到问题。把 Warp 嵌入 VSCode 尤其困难

我推荐使用 p10k 作为你的 shell 提示符。它非常灵活,且不绑定特定终端模拟器,可以跨不同终端使用。

这里我想提两个我最喜欢的 macOS 命令:pbpastepbcopy。它们的 Manual Page 上已经有一些实用的示例了。

⚙️ 系统设置

如前所述,以下部分设置可以整合到你的 dotfiles 中。

这些设置将提升你的生产力:

  • 防止自动休眠

  • 三指拖拽

How to select or drag using three fingers on your MacBook track pad

  • 减少键盘延迟时间:将键盘延迟设置为最短。作为程序员,我们可不能浪费时间等键盘延迟。

  • 关闭双空格句号:这个功能很烦人,最好关掉。

  • 交换 Caps Lock 和 Command 键:你最常用的键应该更容易触达。把 Caps Lock 键和 Command 键互换。

  • 关闭长按弹出:这个设置只能通过命令行关闭。如果你使用 Vim,可能不需要关闭这个设置,因为在 Vim 中长按按键本身就不是好的操作习惯。

defaults write -g ApplePressAndHoldEnabled -bool false

📱 应用

如前所述,这里列出的所有应用都应该通过 Brewfile 来管理。

🌟 Raycast

Raycast 是 Mac 快捷操作的百宝箱。 以下是我常用的一些快捷功能:

Clipboard History Search Emoji Window Management Music Control Kill Process Search Browser Tabs Reminder

配合自定义快捷键,Raycast 会非常好用。

🌟 AltTab

在 Mac 上,你可以用 Command + Tab 切换应用。但内置的应用切换器不支持在同一应用的不同窗口之间切换,如果你需要频繁在一个应用的多个窗口间来回切换,就会很不方便。

AltTab 解决了这个问题,它允许你在不同 Mac 桌面的窗口之间切换。这样你就不需要用鼠标来切换窗口和桌面了。

💾 备份

世界上有两种人:

  • 做备份的人

  • 将来会做备份的人

你拥有但没有备份的数据,随时可能永远消失。下面我们将介绍一些良好的备份基础知识以及某些方法的陷阱。

3-2-1 原则

3-2-1 原则是备份数据的通用推荐策略。它要求你:

  • 至少有 3 份数据副本

  • 2 份副本存储在不同的介质

  • 1 份副本存放在异地

这个建议背后的核心思想是不要把所有鸡蛋放在一个篮子里。拥有 2 个不同的设备/磁盘可以确保单个硬件故障不会夺走你所有的数据。同样,如果你唯一的备份存放在家里,而房子着火了或被盗了,你就会失去一切——这就是异地备份的意义。本地备份提供可用性和速度,异地备份提供灾难恢复能力。

来源:Backups

💭 反思