设置用于开发的 Mac
我最近(2022 年 7 月)清理了我的 MacBook Pro,并重新安装了 macOS Monterey。我记录了我的整个过程以及每天使用的工具/应用/设置。
您可以在YouTube上观看我关于此设置的讨论。
如果您使用其他应用程序/工具,请在评论中告诉我。
我有什么 Macbook?
我还在用 2015 年的 Macbook Pro(是的,2022 年还在用)。这台用了 7 年的笔记本仍然运行良好,可以满足我的所有需求(开发、音乐制作、视频编辑和图像编辑)。
以下是规格概览:
- 英特尔酷睿 i7 四核 2.5 GHz
- 16GB内存
- 500GB固态硬盘
- AMD Radeon R9 M370X 2GB 显卡
您可以在此处阅读更多相关信息
我使用的应用程序和设置也应该适用于最新的 M1 和 M2 MacBook。
自制/终端/ Shell
自制
Homebrew允许我们从命令行安装工具和应用程序。
要安装它,请打开内置应用Terminal程序并运行以下命令:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
这还将安装许多其他开发工具所需的 xcode 构建工具。
Homebrew 安装完成后,我们将使用它来安装我们需要的所有其他内容。
终端
我安装的第一个应用程序是为了替换内置的Terminal。
我更喜欢iTerm2,因为:
- 漂亮的镀铬窗户
- 大量自定义选项
- 可点击链接
- 本机操作系统通知
补充一下,“窗口边框”是指图形用户界面中使用的基本结构元素,例如窗口框架和滚动条,而不是内容。在听了几个人的评论后,我意识到并不是每个人都知道/使用这个术语😅
有很多终端替代品可供选择,但我已经使用 iTerm2 多年了,它非常适合我的需求。
查看他们的文档以获取有关 iTerm2 功能的更多信息:https://iterm2.com/documentation.html
我们使用 Homebrew 的“Cask”来安装它。Cask 是完整的应用程序,类似于你从 App Store 安装的程序。
brew install iterm2
安装完成后,启动它并根据你的喜好自定义设置/偏好设置。以下是我的首选设置:
- 外貌 
  - 主题
- 最小
 
- 个人资料
壳
Mac 现在自带了zsh作为默认shell。bash是我首选的 shell。
我更喜欢 Bash,因为我登录的每台远程 Linux 机器都使用 Bash。此外,您遇到的大多数 Shell 脚本(.sh文件)都应该在shBourne Shell 或bashBourne Again Shell 上运行。这些文件也可以在 Bourne Shell 上运行zsh,但可能存在一些兼容性问题。
如果您是初学者,可能不需要用 替换您的 shell bash。如果您要继续使用zsh,请查看Oh My Zsh,它为您提供了大量开箱即用的自定义功能。
安装 Bash 并将其设置为默认
要查看当前默认的 shell,请运行:
echo $SHELL
要安装最新版本的 bash:
brew install bash
然后,确定 bash 的安装位置:
which bash
这可能会打印/usr/local/bin/bash。
我们现在需要将其添加到我们的/etc/shells文件中,以便将其设置为我们的默认 shell。
/etc/shells使用超级用户权限在(命令行文本编辑器)中打开该文件nano(运行此命令后您需要输入密码):
sudo nano /etc/shells
命令解释:
这将启动命令行编辑器。将/usr/local/bin/bash文件添加到其他shell列表上方。
按下CTRL+X关闭文件,然后Y确认/保存更改。
现在它/usr/local/bin/bash在我们的文件中/etc/shells,我们可以将其设置为我们的默认 shell(您也需要输入此命令的密码):
chsh -s /usr/local/bin/bash
现在您已经更改了 shell,如果您打开一个新的 iTerm2 选项卡或关闭/重新打开 iTerm2,您应该会看到一个bashshell!
您可以运行以下命令来确认您的 shell 已更改:
echo $SHELL
 使用以下方法自定义 Bash.bash_profile
我有一个自.bash_profile定义设置,其中包括自定义提示、别名、PATH 变量、颜色等。
如果您不想经历自定义的过程.bash_profile,您可以安装Oh My Bash以获得大量开箱即用的自定义功能。
我将我的存储在这里的 github.bash_profile上,以便我可以将它复制到我正在设置的任何机器上。
将此文件复制到您的主目录中(或创建您自己的文件):
cd ~
curl -O https://raw.githubusercontent.com/w3cj/dotfiles/master/.bash_profile
我的 .bash_profile 使用的命令
brew install vcprompt
brew install fortune
brew install cowsay
安装最新版本的 git
我的Mac自带的是git版本2.32.1,我们可以使用 brew 来安装 最新版本的git:
git --version
brew install git
打开新标签/窗口开始使用最新版本:
git --version
使用您的姓名/电子邮件和首选编辑器配置 git:
git config --global user.name w3cj
git config --global user.email cj@null.computer
git config --global core.editor nano
我使用的其他命令行工具
- ffmpeg——从命令行编辑视频
- imagemagick——从命令行编辑图像
brew install ffmpeg
brew install imagemagick
操作系统生产力
窗口管理
我知道许多其他操作系统都内置了此功能,但 Mac 却没有内置此功能,所以我们需要一个应用程序。
我使用Rectangle来通过键盘快捷键移动和调整窗口大小。我以前用过Spectacle,但 Rectangle 的维护更稳定,而且允许我使用 Spectacle 的所有键盘快捷键。
我强烈建议安装它并记住它的键盘快捷键。流畅无缝的窗口管理是提高编码效率的关键。
brew install rectangle
应用程序切换
内置应用程序切换器仅显示应用程序图标,并且每个应用程序仅显示 1 个图标,无论您在该应用程序中打开了多少个窗口。
我使用一个名为AltTab的应用切换器。它可以显示完整的窗口预览,并且可以选择显示所有应用程序中每个打开的窗口(即使是最小化的窗口)的预览。
CMD+TAB我用 AltTab替换了内置快捷键。
brew install alt-tab
快速启动
内置的聚光灯搜索对我来说有点慢,并且通常默认显示网络搜索结果,而不是我机器上的应用程序或文件夹。
我使用Alfred来启动应用程序/文件夹。付费版的 Powerpack 中有一些功能是无法使用的,但几年前我购买了终身许可证,Alfred 一直运行良好。Alfred 还有很多其他很酷的功能(工作流、脚本编写、剪贴板管理器等等),但我主要用它来启动应用程序和文件夹。
brew install alfred
我每天使用的其他应用程序
- Firefox 开发者版- 首选网页浏览器
- appcleaner - 删除应用程序时,将搜索文件系统以查找也应删除的相关文件/设置
- android-file-transfer - 与我的 Android 手机之间传输文件
- android-platform-tools -adb无需完整的 android studio 即可安装。
- keepingyouawake - 防止我的 Mac 在演示/直播时进入睡眠状态
- discord - 消息/社区
- vlc——我使用 VLC 观看视频,而不是内置的 QuickTime。
- keka - 可以提取 7z / rar 和其他类型的档案
- kap - 屏幕录像机/gif 制作器
- 暂停- 休息计时器
- gimp - 图像编辑器
- inkscape - 矢量编辑器
- visual-studio-code - 代码编辑器
- sublime-text - 笔记记录(我知道有更好的应用程序......)
- 失眠- HTTP / REST / GraphQL 测试人员 / 请求者
您可以将它们全部放入文本文件中,然后运行 brew install 来一次性安装它们:
firefox-developer-edition
appcleaner
android-file-transfer
android-platform-tools
keepingyouawake
discord
slack
vlc
keka
kap
time-out
gimp
inkscape
visual-studio-code
sublime-text
insomnia
xargs brew install < apps.txt
操作系统设置
Finder这些是我对和 的首选设置Dock。
发现者
- Finder -> 偏好设置 
  - 常规 -> 在桌面上显示这些 -> 选择无 
    - 我尽量保持我的桌面完全干净。
 
- 常规 -> 新 Finder 窗口显示 -> 主文件夹 
    - 我更喜欢在每个新的 Finder 窗口中看到我的主文件夹,而不是最近的文档
 
- 高级 -> 显示所有文件扩展名 -> 是
- 高级 -> 更改扩展名前显示警告 -> 否
- 高级 -> 执行搜索时 -> 搜索当前文件夹
 
- 常规 -> 在桌面上显示这些 -> 选择无 
    
- 看法 
  - 显示状态栏
- 显示路径栏
- 显示标签栏
 
码头
我根本不用 Dock。它占用了屏幕空间,我可以用 Alfred 启动应用,用 AltTab 在应用之间切换。我把 Dock 弄得尽可能小,然后自动隐藏它。
- 系统偏好设置 
  - 码头和菜单栏 
    - 尺寸 -> 尽可能小
- 屏幕上的位置 -> 右
- 自动隐藏和显示 Dock -> 是
 
 
- 码头和菜单栏 
    
菜单栏自定义
系统统计小部件
我喜欢一目了然地查看我的网络流量、CPU 温度/使用情况和 RAM 使用情况。
我以前用的是iStat Menus,但 Twitch 聊天室里有几个人推荐我使用stats,这是一款 FOSS 菜单栏统计应用。我试用了一下,目前为止还挺喜欢的。
在每个小部件中,要查找的关键设置是在“小部件设置”下,选择“将小部件合并为一个”。
brew install stats
菜单栏日历
我喜欢在菜单栏里有个日历,方便快速查看。stats 没有日历,所以我找到了itsycal。它似乎满足我的需求。
brew install itsycal
itsycal 显示日期,因此我在系统菜单栏小部件中隐藏了日期:
- 系统偏好设置 
  - 码头和菜单栏 
    - 钟 
      - 显示日期 -> 从不
- 显示星期几 -> 否
 
 
- 钟 
      
 
- 码头和菜单栏 
    
做笔记
可能还有一百万个更好的选择,但我已经用Sublime Text作为笔记应用好几年了。我基本上把它当作一个暂存区,然后再把笔记移到更永久的地方(比如 Google Docs、Google Keep、Trello、实际的代码项目 README 文件等等),或者在笔记完成任务后就删除它(关闭标签页)。
我使用 Sublime 是因为它允许我打开新标签页/文件,而无需保存文件。我可以打开多个标签页/暂存区,然后完全关闭 Sublime。当我再次打开它时,所有标签页仍然还在。
Web 浏览器
火狐
我使用 Firefox 是因为它是开源的并且来自Mozilla 基金会,这是一家尊重我的隐私的非营利公司。
我使用以下扩展程序来保护我浏览网页时的隐私:
- 广告拦截器 - uBlock Origin
- 追踪器拦截器 - Privacy Badger
  - Firefox 现在包含跟踪器阻止功能,但我仍启用 Privacy Badger。
 
- Cookie自动删除
  - 每次关闭标签页时,都会移除非白名单网站的 Cookie。这是跟踪器拦截的额外预防措施。
 
- Decentraleyes
  - 在本地缓存 CDN 链接,并拦截从缓存中提供服务的请求。防止 CDN 跨网站追踪您。
 
Node.js
我使用 nvm 来管理机器上已安装的 Node.js 版本。这样我就可以根据正在进行的项目轻松地在 Node.js 版本之间切换。
请参阅此处的安装说明。
或者运行此命令(确保 v0.39.1 仍然是最新的)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
安装后,您需要将以下内容添加到您的 .bash_profile / .zshrc 等中。
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" ## This loads nvm
现在 nvm 已经安装完毕,您可以安装特定版本的 node.js 并使用它:
nvm install 18
nvm use 18
node --version
全局模块
以下是我经常使用的几个全局节点模块:
- 精简服务器 
  - 自动刷新静态文件服务器。非常适合开发没有构建工具的静态应用。
 
- 执照 
  - 自动生成开源许可证文件
 
- gitignore 
  - .gitignore根据当前项目类型自动生成文件
 
npm install -g lite-server license gitignore
VS 代码
VS Code 是我首选的代码编辑器。
您可以在此处查看我的所有 VS Code 设置/扩展。
其中最值得注意的两个设置是:
{
  "editor.linkedEditing": true,
  "editor.snippetSuggestions": "top",
}
- editor.linkedEditing 
  - 编辑开始标签时自动编辑结束标签
 
- editor.snippetSuggestions 
  - 将最相关的自动完成选项放在顶部
 
休息计时器
我使用一款名为Time Out的应用程序。
我已将其设置为显示:
- 每 15 分钟休息 10 秒
- 每 60 分钟休息 5 分钟
还有一个跨平台的休息计时器叫Stretchly。我没有用过,但很多人推荐它。
结论
感谢您阅读到这里。如果您还有其他喜欢的工具或应用,请在评论区告诉我。如果我有拼写错误或遗漏了链接,请随时在此处提交拉取请求。
—CJ
文章来源:https://dev.to/w3cj/setting-up-a-mac-for-development-3g4c 后端开发教程 - Java、Spring Boot 实战 - msg200.com
            后端开发教程 - Java、Spring Boot 实战 - msg200.com