我的 2025 年 Mac 新機設定
原文由 Shawn Wang 于 發布,訂閱此部落格
今天剛設定好我的新 MacBook Pro(14 吋、2024 年款 M4 Pro、24GB 記憶體、500GB 硬碟)(我會建議記憶體買大一點,但這不是我能決定的)。以下是我在 Mac 上會用到的所有東西。
本文的舊版:2018-2020 年版、2021 年版、2022 年版 以及 2023 年版 和 2024 年版。未來若我更新本文,這些內容會被封存,但此網址會維持不變。
異動內容:
Raycast 超級 App
我的目標是用 Raycast 外掛來取代過去常用的各種小工具
- Caffeine - https://www.raycast.com/mooxl/coffee
- Rectangle - 使用 Raycast 內建的視窗管理功能
Raycast 創辦人的更多分享在這裡。
Claude 用好用滿
- Claude Desktop https://claude.ai/download
- Claude Code + iMCP 可把你的 iMessage 讀進 AI
- Gemini CLI
Windsurf
Beeper
- 超級通訊 App。https://www.beeper.com/download(我認識創辦人)
其他 AI 應用程式
- 值得一試
- 語音輸入
非 AI 相關
- 改用 podman 取代 docker https://news.ycombinator.com/item?id=45137525
全新 Mac 設定 - 從零開始
馬上要做的第一步
- 瀏覽器: Arc Browser:我試過 Kagi,但太多 App 跟 Safari 不相容,只好放棄。設為預設瀏覽器。
- 馬上建立一個 Google Meet,分享螢幕、錄製螢幕(先把所有權限都跑過一次,才不用之後重啟瀏覽器)。也可以透過 Discord 或 Zoom 的網頁版來做——只要發起通話、分享螢幕,盡快把所有權限都搞定)
- 先登入以下帳號:(這樣有助於後面其他服務的登入)
- Github(下方有更詳細的設定說明)
- Gmail
- 安裝 Warp(我平常慣用的終端機,適合用 AI 產生指令,但很吃記憶體)
- 我的 .zshrc 現在包含了很棒的 「please」bash 函式,可以取代 Warp
- 安裝 https://ghostty.org/ 並加入鍵盤導覽設定
需要花點時間安裝的東西
先讓這些在背景跑起來
- 安裝 oh-my-ZSH -
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"- 待辦:試試 starship:https://starship.rs/
curl -sS https://starship.rs/install.sh | sh
- 待辦:試試 starship:https://starship.rs/
- 安裝 Homebrew -
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"然後
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/swyx/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"我在 brew list 裡還有一大堆東西,但不確定哪些是真的還在用。你可以批次安裝——把清單丟進 packages.txt,然後執行 brew install $(cat packages.txt)
aom icu4c@76 libvmaf [email protected]
aribb24 imath libvorbis qemu
brotli jpeg-turbo libvpx rabbitmq
ca-certificates jpeg-xl libx11 rav1e
cairo krb5 libxau readline
capstone lame libxcb rubberband
certifi leptonica libxdmcp sdl2
cjson libarchive libxext snappy
colima libass libxrender speex
dav1d libb2 lima sqlite
docker libbluray little-cms2 srt
docker-completion libdeflate lz4 svt-av1
dtc libevent lzo tesseract
elixir libidn2 m4 theora
erlang libmicrohttpd mbedtls unbound
ffmpeg libnghttp2 mpdecimal unixodbc
flac libogg mpg123 vde
fnm libpng ncurses webp
fontconfig librist nettle wxwidgets
freetype libsamplerate opencore-amr x264
frei0r libslirp openexr x265
fribidi libsndfile openjpeg xorgproto
gettext libsodium openssl@3 xvid
gh libsoxr opus xz
giflib libssh p11-kit yt-dlp
glib libtasn1 pango z
gmp libtiff pcre2 zeromq
gnutls libtool pipx zimg
graphite2 libunibreak pixman zstd
harfbuzz libunistring pnpm
highway libusb postgresql@14
honcho libvidstab python-packaging
flyctl上述任一項都會提示你安裝 Apple Command Line Tools——下載這鬼東西要花 15 到 25 分鐘,所以先做這一步。不要同時平行執行。
OS/瀏覽器設定
- 系統設定:
- 把 Spotlight 搜尋中除了 App 和系統偏好設定以外的所有雜項全部關掉
- 包含那個煩人的 Developer 選項(記得把 Xcode.app 放到 /Applications,而不是 /user/swyx/Applications)
- 最近「touch xcode.app」這招對 Homebrew 失效了。解法應該是
xcode-select --install和sudo xcode-select -s /Library/Developer/CommandLineTools吧,我想
- 關閉詢問 Siri
- 在鍵盤設定中關閉自動校正
- 為了簡報時的無障礙需求設為大游標
- 修正觸控板方向:觸控板 -> 捲動與縮放 - 關閉自然捲動
- 關閉字典查詢:觸控板 -> 游標與點按 -> 關閉查詢與資料偵測器
- (若使用 Windows 鍵盤)對調 Alt 和 Cmd 鍵以符合人體工學
- 把 Spotlight 搜尋中除了 App 和系統偏好設定以外的所有雜項全部關掉
- Finder 設定:
- 設定 → 進階 -> 顯示所有副檔名
- 執行搜尋時 -> 搜尋目前的資料夾
- 啟用顯示隱藏檔(在 Finder 視窗中按住 Cmd + Shift + . 即可)
- 在底部顯示路徑列以方便導覽(顯示方式 -> 顯示路徑列)
- 清理側邊欄過多的書籤
- 建立「Work」資料夾並釘選起來
- 設定 -> 一般 - 新增 Finder 視窗顯示 -> Work
- 設定 → 進階 -> 顯示所有副檔名
- 鍵盤:
- 把 Command+Q 重新對應到其他任何按鍵——避免不小心全部關掉
- 快速鍵:將所選範圍的截圖複製到剪貼簿 -> Cmd+E
- 語音鍵盤——我以前用 SuperWhisper,但現在已改用 Wispr Flow
- macOS Dock:
- 把 Dock 上除了 Finder、系統偏好設定和垃圾桶以外的東西全部移除
- 開啟 Dock 自動隱藏——簡報時能有更多螢幕空間
- macOS 選單列也一併開啟
- Chrome 擴充功能:(綁定 Chrome 帳號)
- https://github.com/dnakov/little-rat 用來查看 Chrome 擴充功能的流量
- 付費牆阻擋工具 https://github.com/iamadamdev/bypass-paywalls-chrome/
- 查看任何頁面的相關推文 https://github.com/swyxio/Twitter-Links-beta(我的部落格文章在這裡)
- 更好的歷史紀錄 https://github.com/chrome-enhanced-history/enhanced-history
- Morpheon Dark theme
- Lastpass
- Display Anchors
- React Devtools
- Refined Github
- Code Copy
- Video Speed Controller ← 非常強烈推薦
- Palettab
- Privacy Badger
- RescueTime
- uBlock Origin
- Octolinker
設定終端機
- 下載、安裝並設定字型 - Inconsolata for Powerline 和 Meslo LG M for Powerline
- autosuggestions:
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions - syntax highlighting
- 如果遇到警告,你可能需要 chmod 一些東西,否則每次啟動都會跳警告
$ sudo chmod -R 755 /usr/local/share/zsh $ sudo chown -R root:staff /usr/local/share/zsh
- autosuggestions:
- 複製我的 dotfiles(vimrc、zshrc、.gitignore_global):https://gist.github.com/swyxio/7fa1009e460ecb818d5e6d9ca4616a05 - 執行
source ~/.zshrc來載入 zshrc- 註:這裡有個不錯的 dotfiles 指南 https://dotfiles.github.io/tutorials/,我還沒看過
- 註:關於 gitconfig 的討論請見 https://news.ycombinator.com/item?id=43170015
- 正在嘗試 https://github.com/romkatv/powerlevel10k
- 上面已經安裝了 ZSH 的 zsh,現在來設定其餘部分
git config --global init.defaultBranch maingit config --global user.name "swyxio"git config --global user.email [email protected]- 安裝
diff-so-fancy後- 設定
git config --global core.pager "diff-so-fancy | less --tabs=4 -RFX"- 讓 git diff 好看很多 - 你也可以用這個 bash 函式
dif() { git diff --color --no-index "$1" "$2" | diff-so-fancy; }來比對,或是用 VSCode 的code --diff file1.js file2.js。 - 你也可以試試 https://github.com/dandavison/delta
- 設定
- 從 dotfiles 自訂
/.oh-my-zsh/themes/agnoster主題 - 為 Warp 設定字型:https://warp.dev/
- 我唯一需要改的設定就是把字型設為「Inconsolata for Powerline」——就是上面下載的那個。
設定應用程式/開發環境
按照上面的步驟,你應該已經用 Homebrew 安裝了一堆東西。下面列出其他你可能會想用的東西:
- Github CLI:
brew install github/gh/gh- 你需要登入 git——如果有啟用 2FA,就不能用一般的 GitHub 密碼。試著 push 到任意 repo,密碼欄位請輸入 Personal Access Token。
- 然後執行
gh auth login - 加入 GitHub SSH key(必做)
- Python:我已經不再用
pyenv和 Anaconda 了。現在最夯的是uvfrom Astral。它可以取代 pip、virtualenv、pyenv、poetry 等工具。還很新,我個人經驗不多,但打算下次試試看。執行pip install uv,之後把原本的pip install改成uv pip install,或用uv venv取代virtualenv或python -m venv。速度快很多,也能跟其他工具互通……但對舊專案可能還是會有少許依賴解析的問題。- pyenv virtualenv 需要在 zshrc 做一些設定,否則會出現
Failed to activate virtualenv. Perhaps pyenv-virtualenv has not been loaded into your shell properly.的錯誤,我是用這個方法修好的。 - 安裝 pytorch:
pip3 install torch torchvision
- pyenv virtualenv 需要在 zshrc 做一些設定,否則會出現
- 使用以下方式設定 Node.js/NPM - 你應該已經透過上面 Homebrew 安裝了 fnm(比 nvm 更快的替代方案),所以不需要另外下載。
todo: try [mise](https://mise.jdx.dev/) instead of nvm which handles multi lang fnm curl https://mise.run | shfnm install 24來安裝 Node 24- 我們稍早已經
brew install pnpm了 <- 這似乎越來越成為常態 npm loginnpm config set loglevel="warn"npm i -g undollar用來移除 $ 符號npm install -g npm-check-updates用來更新依賴sudo npm install -g trash-cli來新增trash指令,這樣就不會永久刪除檔案
- 以前推薦 yarn,現在改用
brew install pnpm作為快速的 Node 套件管理器 - 你可能需要針對 Mac OS Sierra 的 workaround
brew install z- 不是裝好就能直接用——請看我在 rupa/z repo 上的 issue——Homebrew 更改了 z.sh 指令碼的預設安裝路徑,所以要確保你在 zshrc 中指向正確的新路徑 -. /opt/homebrew/etc/profile.d/z.sh- 可參考 HN 上對 rupa/z 的評論,以及一些替代方案。
- 雜項 - 以前會裝、現在可能不太需要的東西
pip3 install --user powerline-status- 到一個中性的資料夾執行
git clone <https://github.com/powerline/fonts> && cd fonts && ./install.sh
安裝應用程式
我討厭 Docker Desktop,所以我不用它來跑「docker」——改用 Colima——不過 podman 也正在崛起
- 用 brew 安裝 https://github.com/abiosoft/colima/ 然後
sudo curl -L https://github.com/docker/compose/releases/download/v2.5.1/docker-compose-darwin-aarch64 -o /usr/local/bin/docker-composechmod +x /usr/local/bin/docker-compose
brew install --cask notunes- 這樣就不會自動啟動 iTunes/Apple Music- VLC: https://www.videolan.org/vlc/download-macosx.html
- 你還需要把音樂檔的預設播放器重新指定為 QuickTime 或 VLC——一般的「永遠以此方式開啟」通常沒用,必須這樣做:
Select any MP3 file, Press "Command+i", Change "Open with:" to VLC, Click the "Change All…" button. Tada.
下載 Audacity——並為 Audacity 安裝 ffmpeg——官方說明故意寫得很含糊——直接去 https://lame.buanzo.org/#lameosx64bitdl 下載並執行 pkg——Audacity 就會自動偵測到
表情符號:我以前用 https://matthewpalmer.net/rocket/,但現在只用 Mac 內建的表情符號選擇器(按 Fn 鍵)
隱私淨化工具:來自 Sindre Sorhus 的 Pure Paste
密碼管理器:我會依情境同時使用 1Password 和 LastPass
視窗管理工具:https://rectangleapp.com/(跟 spectacle/magnet 有點淵源,但基本上是一樣的東西。2024 年:可以試試 https://github.com/MrKai77/Loop,開源的)
截圖工具:https://shottr.cc/(Shottr 有 OCR 功能,不過你可能也會喜歡專門的 OCR 工具)
剪貼簿管理器:我現在都用 Alfred 內建的,因為之前買了終身升級版。搜尋和圖片支援都不錯,還可以新增片段。
- 可探索:Clipbook
App Quitter:https://swiftquit.com/(視窗關閉時自動關掉 Mac 應用程式)
Zoom: https://zoom.us/download
- 建立會議、分享螢幕、錄製螢幕
Caffeine(演講時讓 Mac 保持清醒):https://intelliscapesolutions.com/apps/caffeine
- 持續維護的版本:Amphetamine(感謝 Matt Mischuk!)——不過 Caffeine 就很夠用了
QuickShade(可用 Mac App 控制螢幕亮度)
NoTunes - 停用 iTunes/Apple Music
Descript: https://www.descript.com/download/mac
以下是我現在不常用、但有需要時會再拿出來用的東西
- SkyFonts: [https://www.fonts.com/web-fonts/google]
- 磁碟空間:Disk Inventory X - 你可以用這個 bash 指令清理 node_modules,或設成排程任務(https://www.fonts.com/web-fonts/google)
筆記工具:- Obsidian 並依照我在《Obsidian as a Second Brain》一文中的說明來設定 - Microsoft Todo: https://apps.apple.com/app/apple-store/id1274495053?mt=8 - SimpleNote: https://apps.apple.com/us/app/simplenote/id692867256?ls=1&mt=12 - Notion: https://www.notion.so/desktop - https://chrome.google.com/webstore/detail/notion-web-clipper/knheggckgoiihginacbkhaalnibhilkk?hl=en
Stretchly: https://hovancik.net/stretchly/
編輯器:下載 Cursor,使用 Settings Sync 在不同電腦間同步
- 必須設定 Powerline 字型「Meslo LG M for Powerline」(下載)
- auto-close-tag v0.5.6
- auto-rename-tag v0.0.15
- Bookmarks v9.1.0
- code-settings-sync v3.1.2
- debugger-for-chrome v4.10.2
- es7-react-js-snippets v1.8.7
- graphql-for-vscode v1.12.1
- mdx v0.1.0
- prettier-vscode v1.6.1
- python v2018.9.2
- python v0.2.3
- rainbow-brackets v0.0.6 - 這已棄用,請改用原生
"editor.bracketPairColorization.enabled": true - shades-of-purple v3.17.0
- vscode-graphql v0.1.5
- vscode-import-cost v2.9.0
- vscode-styled-components v0.0.23
- vscode-wakatime v1.2.3
- TabNine AI 自動補齊
- GitHub Copilot
- 可試試:File Utils - Stolinski 推薦
其他不錯的「新筆電設定」清單:
- https://eugeneyan.com/writing/mac-setup/
- Christoph Nakazawa 的設定:第一部分、第二部分
- Robin Wieruch 的設定
- Mina Markham 的自動化 Mac 設定
- Tania Rascia 的設定
- Nick Nisi 的 dotfiles
- Mathias Bynens 的 macOS 預設值
- Jamon 的 macOS 維護技巧
- VMWare Tanzu 內部指令稿:https://github.com/pivotal/workstation-setup
- Vendasta: https://github.com/vendasta/setup-new-computer-script
- 你可以用 Sheldon Hull 的工具自動化 dotfiles/Homebrew 設定
- 知名人士的實體設備配置:https://setups.co/
- A decade of dotfiles by Evan Hahn
- 歡迎把你的也寄給我!
thanks [for Daniel Kehoe's mac setup](https://mac.install.guide/mac-setup/)
隨機一篇部落格
留言
登入後參與討論