【エンジニア初心者向け】MacBook初期設定のすゝめ（2020年版）

# はじめに
この記事では「**はじめてor久しぶりにMacを触るエンジニア**」をターゲットにしています。

というのも、ずっとWindowsのPCしか使ってこなかった人間がいきなりMacを渡されても、勝手が違いすぎて、初期設定って何からすればいいかわからないんですよね。私もそうでした。。。
一方で、最近は大学の理系研究室だったり、企業の開発職の部署だったりで、Macを貸与されるケースも多くなっている気がします。

そんな人たちが少しでも初期設定のためにググる時間を削減できればと思い、そして（こっちがメインだったりしますが）自分の備忘のために、初期設定のすゝめとして情報が書いてあるサイトをまとめてみました。


## 0. とりあえず何よりも先に
今のご時世怖いですからね、外部→内部の攻撃は最低限守るようにしておきましょう。
[macOS - ファイアウォールをオン/オフ（有効/無効）にする](https://pc-karuma.net/mac-firewall/)

## 1. PCの初期設定
下記の2章をやっとけばとりあえずよいかなと思います。
[私がMacを買ったらまず最初にする設定、インストールするアプリのまとめ](https://ushigyu.net/2016/03/09/mac-initial-configuration-apps/)

## 2. 汎用アプリダウンロード
個人的には全部必須ですが、必要に応じて無視しちゃってください。

- Webブラウザ: [Google Chrome](https://www.google.co.jp/chrome/?brand=CHBD&gclid=CjwKCAjw57b3BRBlEiwA1ImyttfH2JfewRaZRMFC8Cs4j3lP0KmlUuqKPDTDBjunwCB8PCKn7PMpKRoCEakQAvD_BwE&gclsrc=aw.ds)
- キーボード入力補助: [Karabiner-Elements](https://karabiner-elements.pqrs.org/)
    - [Karabiner-ElementsでMacのUS配列キーボードをコマンドキーで英数/かな変換にする](https://misc-log.com/karabiner-elements/)
- 日本語入力ソース: [Google日本語入力](https://www.google.co.jp/ime/)
    - [英語キーボードでGoogle日本語入力を楽に使いたい](https://kiririmode.hatenablog.jp/entry/20200103/1578000289)
- キーボード入力からアプリケーション検索: [Alfred](https://www.alfredapp.com/)
    - 参考: [Mac - ランチャーアプリ「Alfred」の基本的な使い方](https://pc-karuma.net/mac-app-alfred/)
- Windowsの[Alt]+[Tab]機能: [HyperSwitch](https://bahoom.com/hyperswitch)
    - 参考: [Macアプリ「HyperSwitch」ウインドウ単位で切り替え](https://pc-karuma.net/mac-app-hyperswitch/)
- Windowsの[Windows]+[v]機能: CopyClip
    - 参考: [Mac - クリップボード管理アプリ「CopyClip」 - コピー履歴を保存](https://pc-karuma.net/mac-app-copyclip/)


## 3. Homebrewのインストール
上までは非エンジニアの人でも該当しますが、CLIでかたかたするエンジニアはこれがないと始まりません。
※ Xcodeが重くてインストールに時間がかかるので、有線orちゃんとした無線環境でやることをオススメします。。。
[パッケージ管理システム Homebrew](https://qiita.com/b4b4r07/items/6efebc2f3d1cbbd393fc)


## 4. ターミナル環境構築
せっかくMac使うのですから、プリインストールのターミナルアプリじゃなくてiTerm2を使いましょう。
あと、シェルもbashじゃなくてzsh使いましょう。zshのパッケージ管理はoh-my-zshはナウくないし、`.zshrc`をいじる楽しさも味わえないので、とりあえずはじめはzplugでいいかなと。Zinitとかナウいやつがとよければそっちを使ってください。

### 4.1. iTerm2+zshの導入 
- [iTerm2の導入・Zshの導入](https://qiita.com/su_mi1228/items/3fae9aa728148cd30ef5)
- [iTerm2の導入方法＆初期設定や使い方まとめ](http://vdeep.net/iterm2#iTerm2)

### 4.2. zplugの導入
[公式](https://github.com/zplug/zplug)を参考に下記コマンドをiTerm2で実行。

```
$ curl -sL --proto-redir -all,https https://raw.githubusercontent.com/zplug/installer/master/installer.zsh | zsh
```

成功したら、あとは
1. `$ vi ~/.zshrc`で編集
2. `$ source /.zshrc`で変更点を反映
で完了です。

`.zshrc`の中身は好みの問題ですが、個人的には最初はこのぐらいシンプルでよいと思っています。

```shell:.zshrc
source ~/.zplug/init.zsh

# よく使うコマンドのショートカット
alias ls='ls -G'
alias ll='ls -lG'
alias la='ls -alG'
alias sz='source ~/.zshrc'
alias vz='vi ~/.zshrc'

# カラーテーマ
zplug "yous/lime"

# 有名なプラグインたち
zplug "zsh-users/zsh-completions"
zplug "zsh-users/zsh-history-substring-search"
zplug "zsh-users/zsh-syntax-highlighting"

if ! zplug check --verbose; then zplug install;fi
zplug load
```

## 5. その他興味があれば
- テキストエディタはやっぱりこれ: [Visual Studio Code](https://azure.microsoft.com/ja-jp/products/visual-studio-code/)
- PDFビューワーもなんだかんだAdobeですよね: [Adobe Acrobat Reader DC](https://get.adobe.com/jp/reader/)
- Docker導入＆Junpyter Notebook実行環境構築: [MAC に Docker で Jupyter Notebook の環境構築してみた](https://qiita.com/xiao59/items/ce828fcc746f1c879e5d#)
- [macOSでディスプレイ1枚で作業する技術](https://qiita.com/saboyutaka/items/d6cfd2a2b60f1a374d60)
- [【Mac】トラックパッドでドラッグをする方法を4種類ご紹介！](http://fum-s-tyle.com/mac-trackpad-drag-4.html)


# おわりに
素晴らしいまとめサイトたちに感謝！