どうでも良い前置き
5 年ぶりぐらいに Mac を買い替えました。
今までの買い替えの際には移行アシスタントを使って環境をそのまんま移行していましたけれども、これまでも Mac 買い替えのたびに前の端末から移行を繰り返して来ており、もはや不要な設定やソフトも沢山ある状態でした。
と言うわけで今回は、昨日までの弱虫だった自分を脱ぎ捨てて新しいワタシに生まれ変わろうと言う趣旨で、移行アシスタントに頼らずゼロから環境を作ることにしました。
データの大部分を iCloud に置く運用にしていたので端末固有の情報に対する依存性が下がって来ているのもその決断を後押ししています。
とは言え、ローカルの開発環境はローカルに作らなければなりません。
と言うわけで、新しい Mac に開発環境を作る流れの記録です。
この記事でやること
Xcoce コマンドラインツールのインストールHomebrewのインストールGitのインストールNode.jsのインストールVisual Studio Codeのインストール- その他、細々したもの
開発環境構築と言っときながら Xcodeとか eclipseとか Xamarinの話はしないのかよとおっしゃる向きもあるかも知れませんが、当方 JS 大好き人間ですので(←)、そこらへんはどうかご容赦いただければ。
OS 環境と前提
導入時の OS は macOS Catalinaです。
Mac 購入時点ではちょうど OS の入れ替わりのタイミングで、初期導入 OS は Mojaveでしたが直ぐに Catalinaにアップデートしました。Catalinaからデフォルトシェルが zshに変わりましたけれども、前バージョンからのアップデートだと引き続き bashがデフォルトシェルとして使用され続けます。
この記事では bash前提なので、zshの方は適宜読み替えていただければと思います。
また、この記事は 2019 年 11 月時点の内容に基づいています。
将来的にはここで記されている通りには行かなくなるかも知れません。
環境構築
Xcode コマンドラインツール と Homebrew をインストールする
一連の流れで同時にできます。
Homebrew の公式サイトの手順に従います。
ターミナルを立ち上げて、公式サイトで記されている以下のスクリプトを実行します。
/usr/bin/ruby -e"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"こう言うのをインストールしますよとかこう言うディレクトリを自動的に作成しますよなど情報が出ます。
ここで、最後の方に記述がある
==> The Xcode Command Line Tools will be installed.
に注目してください。Xcode コマンドラインツールは Xcode導入後にメニューからインストールすることもできますが、重量級の開発環境である Xcodeをインストールしなくともコマンドラインツールだけ個別で入れることができます。便利ですね!
ともかく、Enter キーを押下。
パスワードの入力を求められますので入力。言わずもがなですが管理者権限が必要です。
バックグラウンドでXcode コマンドラインツールのダウンロードとインストールが実行されます。
そのまま待っていれば Homebrewもインストールされます。
バージョンを確認してみます。
$ brew --version
Homebrew 2.1.16
Homebrew/homebrew-core (git revision 268c; last commit 2019-11-17)Git をインストールする
macOSには標準で Gitがインストール済みです。
$ git --version
git version 2.21.0 (Apple Git-122.2)これで事足りると言えば事足りるわけですが、せっかくなので Homebrewで Gitをインストールします。
$ brew install git
ただ、これだけだと依然として gitコマンドは Apple 謹製のものを参照し続けます。
今インストールしたものを利用するよう設定します。
echo'export PATH="/usr/local/Cellar/git/2.24.1_0/bin:$PATH"'>> ~/.bash_profile
バージョンのところは適宜インストールされたバージョンに読み替えてください。zshの人は最後は >> ~/.zshrcにすれば良いかと思います。
これで、新しくターミナルウィンドウを立ち上げるか source ~/.bash_profileすれば Homebrewでインストールした Gitが有効になります。
$ git --version
git version 2.24.0
Node.js をインストールする
お次は Node.jsです。これも Homebrewでインストールします。
まずはバージョンマネージャーの Nodebrewから。nvmでも別に良いと思いますので、何を選ぶかはお好みで。
$ brew install nodebrew
バージョンを確認しておきます。
$ nodebrew --version
nodebrew 1.0.1
Usage:
nodebrew help Show this message
nodebrew install<version> Download and install<version> (from binary)
nodebrew compile <version> Download and install<version> (from source)
nodebrew install-binary <version> Alias of `install`(For backword compatibility)
nodebrew uninstall <version> Uninstall <version>
nodebrew use <version> Use <version>
nodebrew list List installed versions
nodebrew ls Alias for`list`
nodebrew ls-remote List remote versions
nodebrew ls-all List remote and installed versions
nodebrew alias<key> <value> Set alias
nodebrew unalias<key> Remove alias
nodebrew clean <version> | all Remove source file
nodebrew selfupdate Update nodebrew
nodebrew migrate-package <version> Install global NPM packages contained in<version> to current version
nodebrew exec<version> --<command> Execute <command> using specified <version>
Example:
# install
nodebrew install v8.9.4
# use a specific version number
nodebrew use v8.9.4
インストール可能な Node.jsのバージョンを確認します。
$ nodebrew ls-remote
v0.0.1 v0.0.2 v0.0.3 v0.0.4 v0.0.5 v0.0.6
(省略)
v13.0.0 v13.0.1 v13.1.0
io@v1.0.0 io@v1.0.1 io@v1.0.2 io@v1.0.3 io@v1.0.4 io@v1.1.0 io@v1.2.0 io@v1.3.0
io@v1.4.1 io@v1.4.2 io@v1.4.3 io@v1.5.0 io@v1.5.1 io@v1.6.0 io@v1.6.1 io@v1.6.2
io@v1.6.3 io@v1.6.4 io@v1.7.1 io@v1.8.1 io@v1.8.2 io@v1.8.3 io@v1.8.4
io@v2.0.0 io@v2.0.1 io@v2.0.2 io@v2.1.0 io@v2.2.0 io@v2.2.1 io@v2.3.0 io@v2.3.1
io@v2.3.2 io@v2.3.3 io@v2.3.4 io@v2.4.0 io@v2.5.0
io@v3.0.0 io@v3.1.0 io@v3.2.0 io@v3.3.0 io@v3.3.1
欲しいバージョンを指定して Node.jsをインストールします。
ここでは最新の v13.1.0をインストールしてみます。
$ nodebrew install v13.1.0
以前使われていたサブコマンド install-binaryは installのエイリアスになっているようです。
コマンド実行時に以下のようなエラーが出た場合は、
Fetching: https://nodejs.org/dist/v13.1.0/node-v13.1.0-darwin-x64.tar.gz
Warning: Failed to create the file
Warning: /Users/********/.nodebrew/src/v13.1.0/node-v13.1.0-darwin-x64.tar.gz:
Warning: No such file or directory
0.0%
curl: (23) Failed writing body (0 != 1028)
download failed: https://nodejs.org/dist/v13.1.0/node-v13.1.0-darwin-x64.tar.gz
ディレクトリを切っておけば解決します。
$ mkdir-p ~/.nodebrew/src
インストールした Node.jsを有効にします。
nodebrew use v13.1.0
パスを通します。
これも bash以外の人はよしなにお願いします。
echo'export PATH=$HOME/.nodebrew/current/bin:$PATH'>> ~/.bash_profile
これで Node.jsのインストールは終わりです。
$ node --version
v13.1.0
Visual Studio Code をインストールする
コードエディタは人によって色々お好みとか宗派があるでしょうが個人的には VS Codeがお好みです。
公式サイトより ZIP ファイルをダウンロードして、解凍し、程良いところに配置します。
Windows ではユーザーのディレクトリにインストールするのが常道になっていますので、その流儀に則れば自分のホームディレクトリにしかるべきディレクトリを切って実行ファイルを配置すれば良いでしょう。
けれども従来通りアプリケーションフォルダに放り込んでも別に良いと思います。
おすすめの機能拡張は色々ありますが、まずは最低限以下のものを。
- Bracket Pair Colorizer 2
- ESLint
- Git History
- GitLens — Git supercharged
- indent-rainbow
- Japanese Language Pack for Visual Studio Code
- Live Server
- Markdown PDF
- Markdown Preview Enhanced
- Prettier - Code formatter
その他諸々
フォント指定
コーディングフォントは Ricty Diminished Discordが見易くて好きです。
インストールしたら、 VS Codeの settings.jsonで以下のようにすれば反映されます。
また、5K の画面に 12px のフォントは小さすぎて疲れ目が促進されるので少し大きくしておきます。
{"editor.fontFamily":"Ricty Diminished Discord","editor.fontSize":14}マークダウンのプレビューの改行
VS Codeデフォルトのプレビュー機能を利用する場合、末尾に半角スペース2つを置かなければプレビュー上改行されませんが、以下の設定を入れればただの改行だけでプレビュー上でも改行して表示されます。
{"markdown.preview.breaks":true}指定文字数の位置にルーラーを表示する
こう言うコーディング規約は割と一般的ですよね?
{"editor.rulers":[80,100]}配列で渡すと複数のルーラーを置けます。
デフォルトシェルを zsh に切り替える
bashを使い続けているとターミナルを起動するたびに毎度毎度 Catalina 様にお小言を頂戴する羽目になります。
The default interactive shell is now zsh.
To update your account to use zsh, please run `chsh -s /bin/zsh`.
For more details, please visit https://support.apple.com/kb/HT208050.
お小言を黙らせる手段もきっとあるのでしょうが、Catalina 様の思し召しのままにデフォルトシェルを zshに切り替えてみます。
$ chsh -s /bin/zsh
実行にはパスワードの入力が求められます。
これだけだとパスとかの設定をやり直しになりますので、
% ln-s ~/.bash_profile ~/.zshrc
として両刀遣いを気取ります。.zshrcに対応するのは .bashrcだろうとか、そもそも lnではなく cpしなさいよとか色々ご意見はありましょうが、zsh特有の設定変更を行いたくなった時にちゃんとすれば良いかと思います。
他にも色々あると思いますけれども、まずはここまで。
参考
macOS用パッケージマネージャー — Homebrew
HomebrewでGitをインストールする
MacにNode.jsをインストール

