Skip to content

Instantly share code, notes, and snippets.

@liuchengxu
Last active December 10, 2023 15:19
Show Gist options
  • Star 30 You must be signed in to star a gist
  • Fork 3 You must be signed in to fork a gist
  • Save liuchengxu/10eee9349b7f2470d13116bec8d0755f to your computer and use it in GitHub Desktop.
Save liuchengxu/10eee9349b7f2470d13116bec8d0755f to your computer and use it in GitHub Desktop.
macOS 开发与使用环境

近来由于 Mac 出了点小问题一直没有解决,加上用了已经有好长一段时间,一直想清理一下(精神洁癖作祟),所幸重装了事。没有使用 TimeMachine,所以需要先行将一些觉得尚有价值的文件拷贝下来。

写下这篇文章,也是为了以后再次遇到问题能够有章可循,不至于胡乱一通重装。本文也会持续更新,欢迎大家分享更好的使用技巧与经验。

重装 macOS

在线恢复系统实在太慢,进行在 Windows 下制作 Mac U盘启动盘重装系统. 额外所需的物理设备为 U 盘一个,8G 及以上为宜。

1. 准备软件与镜像

  • 下载软件 TransMac TransMac官网下载地址,有 15 天试用期。

  • 下载镜像文件 如果身边有 Mac, 可以直接从 app store 进行下载,如果没有也可以自行搜索从网盘进行下载。这里是我使用的镜像文件: 链接: https://pan.baidu.com/s/1eRXmcMI 密码: s5u6. 版本不重要,安装成功以后更新即可。

2. 制作mac的U盘启动盘

  1. 将U盘接入电脑,打开 TransMac,在左侧窗口找到 U盘。

  2. 将U盘格式化为 Mac 下的格式:选中U盘 >> 右键选择 Format Disk for Mac。以前版本的 TransMac 可能在这个时候还会出现一些选项让你进行选择,现在的最新版本已经没有了。

  3. 格式化完成后,选中 U盘 >> 右键选择 Restore with Disk Image 选项,选择刚刚下载的 macOS 镜像文件(.dmg).

  4. 时间可能会有点久,耐心等待 TransMac 将镜像文件写入U盘。大概需要20分钟。

3. 使用制作好的 U盘安装 macOS

  1. 将制作好的 U盘接入 Mac 并启动,按住 option 键,系统显示可用启动盘后选择 U盘并进入。

  2. 选择 Install OS X,接下来的操作都很简单,一看就知道怎么做。

  3. 耐心等待安装完成。

注意事项!!!

在革命即将取得胜利的时候,很可能会遇到这样的问题:

安装 OS X Yosemite”应用程序副本不能验证,可能下载过程中有损坏之类的问题出现导致安装终止。

这个问题导致我重装两次失败,浪费了很多时间,最后在v2ex发帖有位朋友给出了知乎的链接:打开终端输入:date 062614102014.30, 这里是 解决方案的知乎链接.

重建软件环境

系统重装好以后就是安装软件。软件大致可分为两类,一是普通用户日常所需的一些软件,二是程序员身份所对应的开发环境。

先来恢复开发环境,因为使用的 homebrew 的 brew cask 可以帮助安装一些常用软件。

在恢复开发环境之前,有一些问题可能还是必须要先解决的,比如网络问题(翻墙),不翻墙邮箱连 Gmail 等没法使用。

  • Shadowsocks 我使用 shadowsocks,所以需要手动下载 ShadowsocksX 软件,然后配置完成翻墙功能。lantern 也付过费,不过有时候 lantern 会导致某些视频网站无法播放视频,比如爱奇艺。这部分就不多说了。

  • chrome 我以前试过使用 brew cask 进行安装 Chrome,不过可能由于墙的原因,始终无法下载。故采用手动下载安装。能够翻墙以后,在 Chrome 安装完成后登录 Google 账号就会自动恢复你的书签,插件等等,十分方便。

  • 输入法 如果要输入中文,要么在 系统偏好设置 >> 键盘 >> 输入源 >> 左下+号添加简体拼音输入源。要么自行下载输入法,比如常用的搜狗输入法, 或者可以待会儿使用 brew cask install sogouinput 进行安装。

  • xcode xcode 的 command line tool 在后续操作中用到,先安装整个 xcode 吧,有备无患, App Store >> xcode。Xcode 动辄 4 到 5 个 G,网速不快的话这里还是挺闹心的。

    安装完成后,记得要先打开一次完成 components 的安装, 否则 homebrew 可能无法顺利安装。

  • 使用习惯

 - 我习惯将左上触发角设置为 Launchpad, 系统偏好设置 >> Misson Control >> 左下触发角 >> 左上Launchpad >> , 同样设置左下触发角为桌面。Sierra 触发角在 系统偏好设置 >> 调度中心

  • 将 F 键区设置为标准功能键, 系统偏好设置 >> 键盘 >> 选中将F1、F2 等键用作标准功能键

  • 移除 Docker 中能够移除的所有图标,这样 Docker 中显示的就都是已经打开的应用程序。

  • mac 用户一般会喜欢将应用最大化,那么最大化应用多了以后,回到桌面就会有些麻烦,所以可以专门设置一个快捷键:系统偏好设置 >> 键盘 >> 快捷键 >> 调度中心, 将 切换到桌面1 设置为 cmd + h, 即 Command + Home, 回到桌面。

  • 允许来自任意来源的应用

    打开 terminal 输入:

    $ sudo spctl --master-disable
  • 禁用终端蜂鸣。有时候当你滚动到终端的最后一行无法再向下时,此时再执行向下滚动的操作就会出现“刺耳”的蜂鸣声,terminal 和 iTerm 从 perferences 里面关闭,https://apple.stackexchange.com/questions/214513/enable-terminal-iterm2-sound-notification-exclusively 。 如果是用 kitty, 修改 kitty.conf:

    # Enable/disable the audio bell. Useful in environments that require silence.
    enable_audio_bell no
    # }}}
    
  • 使 IDEA 快捷键模拟 Vim 的方式。一般我会安装 IdeaVim 这个插件,里面虽然也会有 <Ctrl-I/O>,但是我一般喜欢用 Cmd+[/] 进行前后位置的跳转。Setttings > Keymap > Navigate > Back/Forward, 或者直接搜索 Navigate. Keymap > Bookmarks > Previous Occurence/Next occurrence 是执行 find usage 时的前后跳转,find usage 会在下方弹出一个小窗口类似于 quickfix, 可以修改为自己喜欢的键位。

开发环境恢复

首先安装 homebrew:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"`
  • brew install安装命令行软件

  • brew cask install安装GUI软件

brew info APP 可以查看有哪些安装选项。目前 brew cask 更新软件可能没那么优雅,很多 APP 会自动检测更新,也可先手动卸载再重新安装brew cask uninstall APP && brew cask install APP, 更多用法可自行搜索。

安装好 brew 以后,有一些软件是必备品,比如 git, wget. 我把 dotfiles 放在了 Github 上,里面维护了一个 brew_for_new.sh 放置 brew 的部分安装清单, 这里是我的 dotfies. 因此执行下面的命令即可安装brew必备的一些软件:

sh -c "$(curl -fsSL https://raw.githubusercontent.com/liuchengxu/dotfiles/master/brew_for_new.sh)"`

顺便再将 dotfiles 克隆到本地:

git clone https://github.com/liuchengxu/dotfiles.git ~/dotfiles
sh ~/dotfiles/bootstrap.sh

brew 使用时间久了以后,可能会因为旧版本缓存等原因占据不少的硬盘空间(GB 级别),可以使用 brew cleanupbrew cask cleanup 来清理一下,可能会有超乎预料的效果:

==> This operation has freed approximately 10.0GB of disk space.

brew-for-new 备份了我配置新电脑时一般会安装的软件列表。

sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

space-vim

我有一个 vim 配置 space-vim 放在 Github 上,执行安装命令即可一键安装。

space-vim

不过首先需要安装 vim:

brew install vim --with-lua --with-override-system-vi --with-python3
brew install macvim --with-lua --with-override-system-vim --with-python3
# YouCompleteMe prerequisites
brew install cmake

安装 powerline fonts, space-vim 与 powerline fonts 搭配效果更佳:

git clone https://github.com/powerline/fonts.git ~/.fonts && bash ~/.fonts/install.sh

安装好以后记得在 iterm2 中进行设置:

item2 powerline font setting

安装 emacs:

brew tap d12frosted/emacs-plus
brew install emacs-plus
brew linkapps emacs-plus 

克隆 spacemacs repo:

git clone https://github.com/syl20bnr/spacemacs ~/.emacs.d

Java 与 Python

brew cask install java 会安装最新版本的 Java. 如果需要指定版本,自行搜索具体做法即可。

brew cask install anaconda, 所安装的版本为 anaconda3. 如果需要 anaconda2, 需要自行从continum.io下载.

非常推荐大家使用 anaconda 安装 python 环境,里面的很多工具都非常好用,比如 Jupyter Notebook. 如果下载太慢,尝试开启全局 ss.

其他

# sourcetree
brew cask install sourcetree

# sublime text
brew cask install sublime-text

# iterm2
brew cask install iterm2

# r语言
brew cask install r-gui

使用 brew cask 的其中一个好处便是有些图形软件 brew 会自动帮你创建一个链接可以从 terminal 中启动,比如可以使用 subl 从命令行启动 sublime text.

iIterm2

iTerm2 安装完成后克隆终端主题进行美化,毕竟默认主题选择性不多,且iTerm2,系统自带 Terminal 都可以用。

在用户目录下新建一个 GitHub 目录,以后从 GitHub 克隆的 repo 都可以放到这里:

cd ~/GitHub && git clone https://github.com/mbadolato/iTerm2-Color-Schemes.git

为 iterm2 设置一个类似 Guake 的功能:

  1. iTterm2 >> Profiles, 添加一个叫做 Guake 的 profile >> Window >> Style 选择 Fullscreen.
  2. 设置 iTerm2 的热键,iTerm2 >> Keys >> Hotkey, 我习惯将 Hotkey 设置为 F12.

这样一来,只要按 F12 即可唤出 terminal.

iTerm2 Fullscreen

Guake Hotkey

Update: 现在 iTerm2 有个单独设置 hotkey window 的地方,iTerm2 >> Keys,左下角 Create a Dedicated Hotkey Window

如果使用 fzf alt-c 输出的是字母 ç, 请参考 junegunn/fzf#164:

iTerm2 alt

日常使用软件

使用 brew cask 安装软件时,有时不是一个安装命令就能搞定,还需要一些额外的操作。下面是一些常用软件列表:

# qq
brew cask install qq

# alfred
brew cask install alfred

# 搜狗输入法
brew cask install sogouinput

# 欧陆词典
brew cask install eudic

# macdown
brew cask install macdown

# cheatsheet
brew cask install cheatsheet

# mactex
brew cask install mactex
  • 搜狗输入法:

    安装搜狗输入法时,brew 会有提示:

    To complete the installation of Cask sogouinput, you must also run the installer at  '/usr/local/Caskroom/sogouinput/3.7.0.1459/安装搜狗输入法.app'
    

    因此,我们需要在终端中执行 open /usr/local/Caskroom/sogouinput/3.7.0.1459/安装搜狗输入法.app 才能进一步完成安装。

    我喜欢将候选词个数设置为最大。

  • 欧陆词典:

    我买了一个欧陆的注册码,因为它的很多词库很好用。另外因为词典比较常用,给它设置一个快捷键 Ctrl + 1欧陆词典 >> 偏好设置 >> 快捷键 >> 显示|隐藏《欧陆词典》窗口 >>按Ctrl + 1. 以后只要 Ctrl + 1, 就可唤出词典。我还将翻译选中内容的快捷键设置为Ctrl + T 。默认的激活 Light Peek快捷键与 Alfred 冲突,去除。

    Eudic

    Eudic

  • MenuMeters 可以在顶部状态栏显示网速,CPU 占用等信息。

    我已经转用 hammerspoon 显示网速了,这里 是我的配置文件。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment