ひらめの日常

日常のメモをつらつらと

Mac の移行作業メモ

移行アシスタントは不要なものも引き継いでしまいそうなので、まっさらなところから環境構築を行う。 今回シェルをfishからzshに移行したが、そのメモはZennのスクラップに残してある

dotfilesの実行

Apple Store から最低限必要なアプリをダウンロードしてくる。

  • 回線状況を確認するために bandwidth+ をダウンロードして起動する
  • Xcodeは非常に重たいので、可能なら有線環境でダウンロードする

自分の中で必須なのは上二つくらいで、その他は Line や Mathpix Snipping Tool 等必要であればダウンロードする

Xcodeが入れば git が使えるようになるので、自分の環境構築用リポジトリである dotfiles をダウンロードする

github.com

引っ張ってきたら実行

cd dotfiles
sh up

この中では次のようなことをしている

  • ansible を使用し、環境構築手順を自動化
  • homebrew を使用し、パッケージとアプリケーションをダウンロード
  • 各種設定ファイルをダウンロードしてシンボリックリンクを貼る

基本的に必要なパッケージやアプリケーションが追加された場合は dotfeils を編集する。

必須アプリケーションの起動と手動設定

ダウンロードしてきた中で、常に起動しておきたいものがあるので、起動する。 全てのアプリケーションで、「PCの立ち上げ時に自動で起動する」オプションがあれば設定する。

  • Karabiner-Elements
  • Alfred - Productivity App for macOS
    • リッチなSpotlight検索のようなイメージ
    • 起動するホットキーの設定を ctrl + enter に変更
  • HyperSwitch
    • アプリケーション単位ではなく、開いているウインドウ単位で切り替えができるようになる
    • ウインドウ単位での切り替えを cmd + tab に割り当てる
  • BetterTouchTool
    • ウインドウサイズのリサイズや、アプリケーションの起動にショートカットキーを当てることができる
    • dotfiles リポジトリから設定ファイルをダウンロードしてあるので、BetterTouchTool の設定にimportする
    • 昔のメールから有料ライセンスを見つけて、有効化する
  • ShowyEdge
    • 入力言語に応じて、スクリーン上部の色を変えることができる。英語入力したいのに日本語入力だった、みたいな凡ミスが少なくなる
    • スクリーン上部のどの辺まで色を変えるか設定変更。メニューバーと同等の高さにしたいので、use custom frame にして width 100%, height 22pt。
    • メニューバーの内容が見えなくなると困るので、opacityを減らして、色も好みに変更
  • Typora — a markdown editor, markdown reader.
    • 最強のマークダウンエディタ
    • 昔のメールから有料ライセンスを見つけて、有効化する

Karabiner-Elements, BetterTouchTool, HyperSwtich あたりの嬉しさについては昔Qiitaに書いていたので、そちらも参考

qiita.com

macOS の設定

  • Dockを自動で隠す
  • デフォルトブラウザをChormeに変更
  • 数字をデフォルトで半角にする
  • コントロールセンター周り
    • バッテリーの%を常に表示
    • Bluetoothをメニューバーに表示
    • サウンドをメニューバーに表示
    • Spotlight をメニューバーで非表示

JetBrains周り

JetBrainsToolbox を使って必要なアプリケーションをダウンロードする。 自分の場合、IntelliJ, CLion あたりは必須

それぞれのアプリケーション共通のプラグインとして、次のものを導入する

IdeaVimのキーリピートがデフォルトだと効かないのに少しハマったので、有効化を忘れないようにする

IntelliJ key repeating idea.vim - Stack Overflow

defaults write com.jetbrains.intellij ApplePressAndHoldEnabled -bool false
defaults write com.jetbrains.CLion ApplePressAndHoldEnabled -bool false

TODO

自動化可能だが未実装なもの

  • macOSの各種設定
  • JetBrains周りのキーリピート設定

自動化したいが可能かどうかわかっていないもの

  • BetterTouchTool の設定ファイルを、環境構築時に自動でシンボリックリンクを貼りたい
  • 各種有料ライセンスをメールではなくクラウドストレージにアップロードしておき、それをダウンロードして有効化する仕組み