2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

macのセットアップメモ

Last updated at Posted at 2019-10-15

なにこれ

macを新しくしました。
いや、厳密には「新しいやつやるから古いやつ返せ」というお達しを放置していたら期限が来てしまい、使ってたPCが回収されてしまったので、強制的に全部新しく構成する必要が出てしまいました。
で、環境については個人的にやっておきたいこととか結構あって、思い出しながらやってたら、なんかもうかなり大変だったので手順をまとめます。

手順1: macそのものの設定

OS自体を最新に

確実に不要なショートカットは全部Dockから除外して(Safariもいらんけどcheromeとか入れるまではレギューラー扱い)、砂漠を眺めます。

スクリーンショット 2019-02-15 11.51.11.png

わぁ綺麗(白目)。いつのバージョンだよ。
最新版をインストールして再起動します。

スクリーンショット 2019-10-13 19.15.59.png お、今回は綺麗な島ですね。 ## キーの設定 `システム設定` > `キーボード` > `キーボード` 入力は最速を是とするスタイルなので一番右に。 スクリーンショット 2019-02-15 12.00.01.png

修飾キーを押して、キーを設定します。
普段USキーを使っているのですが、まず使わないCapsLockがこんな押しやすいところにあるのが許せないのでCommandキーに変更。
スクリーンショット 2019-02-15 11.59.15.png

標準ショートカットの全除外

システム設定 > キーボード > ショートカット > サービス

こんなもん全部いらないです。
というかCMD+Shift+L でsafariが起動して喜ぶ人いるんですかね?
スクリーンショット 2019-10-17 12.04.30.png

旧人類なのでライブ入力は利用しません(最速を是とするとか書いたばかりなのにね)。
スクリーンショット 2019-10-13 16.19.45.png
入力モード切替えがctrl+spaceだとIDEによっては補完とショートカットが被って面倒なので、古いスタイルであるところのcommand+spaceに変更。
スクリーンショット 2019-10-13 19.24.02.png

spotlight検索が少し性能が上がったらしいので、飽きるまではalt+spaceをspotlightに変更。
スクリーンショット 2019-10-13 19.24.07.png

[当日追記]
使いにくい。Alfred入れました。

諸々ダウンロード

絶対抜けあるけど、とりあえずパッと思い出せるものだけ。
スクリーンショット 2019-10-13 17.09.56.png

手順2: 開発環境

HomeBrew

HomeBrew をインストールします。
公式の手順通り

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

を実行。
途中でパスワードを聞かれるので入力。

==> /usr/bin/sudo /usr/bin/xcode-select --switch /Library/Developer/CommandLineTools
Password:

Xcode周りでいろいろポップアップするので全部同意。
スクリーンショット 2019-10-13 19.12.00.png
スクリーンショット 2019-10-13 19.12.05.png

==> Installation successful! が出たらとりあえずOK。
一応確認。

$ brew -v
Homebrew 2.1.13
Homebrew/homebrew-core (git revision e058; last commit 2019-10-13)

fish shell

普段使ってる標準shellのfishをインストールします。
brewでインストールしてバージョン確認、デフォルトシェルの切替えを行ないます。

$ brew install fish
$ which fish
/usr/local/bin/fish    # これをコピー
$ sudo vim /etc/shells # コピーしたディレクトリをこのファイルの末尾に追加
$ chsh -s /usr/local/bin/fish
Changing shell for ***.
Password for ***: パスワード

この状態でターミナルを再起動すると、トップにWelcome to fish, the friendly interactive shell と出てfishが起動します。

プロンプトの変更

私は普段、[現在時刻]:今のディレクトリ > というプロンプトにしています。
初期設定のプロンプトはごちゃごちゃ使いにくいので修正します。

~/.config/fish/functions/fish_prompt.fish
function fish_prompt --description 'Write out the prompt'
	set color_cwd $fish_color_param
    set suffix '>'
    if test -z $WINDOW
        echo (set_color $color_cwd)'['(date "+$c2%H$c0:$c2%M$c0:$c2%S")']'(set_color normal):(set_color $fish_color_cwd)(prompt_pwd)(set_color normal)" $suffix "
    else
        echo (set_color $color_cwd)'['(date "+$c2%H$c0:$c2%M$c0:$c2%S")']'(set_color normal)'('(echo $WINDOW)')'(set_color $fish_color_cwd)(prompt_pwd)(set_color normal)" $suffix "
    end
end

コマンドの作成

先にpecoをインストールしておきます。
pecoが何かについては公式を読んでください。神ツールです。

$ brew install peco

History

コマンド履歴の一覧を取得しpecoで選択、実行できるようにします

~/.config/fish/functions/peco_select_history.fish
# `peco_select_history (option: args)` or `ctrl+r`
function peco_select_history
  if test (count $argv) = 0
    set peco_flags --layout=bottom-up
  else
    set peco_flags --layout=bottom-up --query "$argv"
  end

  history|peco $peco_flags|read cmd

  if [ $cmd ]
    commandline $cmd
  else
    commandline ''
  end
end

Process Kill

起動しているコマンドの一覧を取得し、pecoで選択してkillできるようにします。

~/.config/fish/functions/peco_kill.fish
# `peco_kill (option: args)` or `ctrl+k`
function peco_kill
  if test (count $argv) = 0
    set peco_flags
  else
    set peco_flags --query "$argv"
  end

  ps ax -o pid,time,command | peco $peco_flags | awk '{print $1}' | xargs kill
end

sshを簡単にできるように

~/.ssh/config、あるいは指定ファイルから環境を指定してsshできるようにします。

~/.config/fish/functions/sshc.fish
# `sshc (option: file_name)`
function sshc
    set conf "$HOME/.ssh/config"
    if test (count $argv) = 0
        echo 'default'
    else
        set conf $argv[1]
        echo $conf
    end
    set host (grep 'Host ' $conf | awk '{print $2}' | peco)
    if test $conf
        echo "ssh -F $conf $host"
        ssh -F $conf $host
    end
end

ショートカット作成

config.fishに登録してあげればOK。

~/.config/fish/config.fish
function fish_user_key_bindings
    bind \cr 'peco_select_history'
    bind \ck 'peco_kill'
end

node

nodeを入れnで管理します。

$ brew install node
$ npm install -g n
$ sudo n latest

go

$ brew install go
$ cd `適当なgoプロジェクト`
$ go run ***
# 依存関係のインポートが始まってプログラムが動けばOK
go: finding github.com/**/** v*.*.*
go: finding github.com/**/** v*.*.*
go: finding github.com/**/** v*.*.*
...

・・・と、これ系の処理は無限に発生するので必要が出てき次第、順次インストール。

vim

最速で設定するのはVim Bootstrapに任せてます

# vim
$ curl 'https://vim-bootstrap.com/generate.vim' --data 'langs=go&langs=javascript&langs=rust&langs=scala&langs=typescript&langs=python&langs=html&langs=ruby&editor=vim&frameworks=vuejs' > ~/vimrc

# nvim
$ curl 'https://vim-bootstrap.com/generate.vim' --data 'langs=go&langs=javascript&langs=rust&langs=scala&langs=typescript&langs=python&langs=html&langs=ruby&editor=nvim&frameworks=vuejs' > ~/.config/nvim/init.vim

・・・で、nvimはいいのですが、標準のvimはクリップボードが使えないので役に立たない使いにくいです。
使いやすいように対応します。

# 今のvimはどれだっけ?
$ which vim
/usr/local/bin/vim

# 邪魔っす。無慈悲に名前変更
$ sudo mv /usr/local/bin/vim /usr/local/bin/old_vim

# 新しくvimを取得
$ brew install vim

# clipboard使えるか確認
$ /usr/local/Cellar/vim/***/bin/vim --version | grep clip

# linkを貼って元のファイルに上書き
$ sudo ln /usr/local/Cellar/vim/***/bin/vim /usr/bin/

# 切り替わってますね
$ ls -la (which vim)
 /usr/local/bin/vim -> ../Cellar/vim/***/bin/vim

# 更新完了
$ vim --version | grep clipboard
+clipboard         +keymap            +printer           +vertsplit
+emacs_tags        -mouse_gpm         -sun_workshop      -xterm_clipboard

# .vimrcの適当なところに `set clipboard+=unnamed` を追加

3. 各種アプリの設定

Vidual Studio Code

codeコマンドの追加

code で実行できるようにします。

  1. VSCode起動
  2. Command + Shift + P
  3. >Shell Command: Install 'code' command in PATH
    を実行
スクリーンショット 2019-10-14 17.06.53.png

VSCode内のターミナルをfishに変更

zshが標準で開いてしまい困るので(zshの設定を入れればいいだけの話だけど)、fishを使うように変更します。

  1. command + , で環境設定を開く
  2. 検索窓に terminal.integrated.shell.osxを入れる
スクリーンショット 2019-10-14 19.12.51.png 3. settings.jsonが開くので以下のように変更
settings.json
{
    "terminal.integrated.shell.osx": "/usr/local/bin/fish"
}

JetBrain製品

こちらもzshが開いてしまうのでfishに変更。
環境設定Terinalshell path
ここでfishのパスを指定。
スクリーンショット 2019-10-14 19.22.04.png

Karabiner-Elements

カジュアルに動かなくなっていて困った。

以下のように警告文が出るので、karabiner_grabberkarabiner_observerの両方を許可してあげればいいのだけど・・・
スクリーンショット 2019-10-15 14.11.52.png

karabiner_grabberしか候補に出てこない
スクリーンショット 2019-10-15 14.12.54.png

幸い該当のファイルはどちらも同じディレクトリ(/Library/Application\ Support/org.pqrs/Karabiner-Elements/bin)に入っているので、右クリックなどでファイルの場所を開き、ドラッグアンドドロップで入れてあげればOK
image.png

後は好きに設定(よくキモいと言われる設定)
スクリーンショット 2019-10-15 14.38.36.png

clippy

とりあえず100項目くらいあれば困らんやろ精神。
スクリーンショット 2019-10-13 19.34.32.png

Shiftit

上寄せとか下寄せってあんま使わないんですよね。
Windowsぽいようなそうでもないような設定にします。
スクリーンショット 2019-10-15 2.44.02.png

まとめ

今回はどうしてもやらざるをえない状況におかれてしまったので頑張ったけど、正直なところ大人しく移行アシスタントとか使ったほうが絶対に楽。
すごい時間かかった二度とやらん:frowning:

ただ、不要なファイルや、消えていいんだかどうだかわからんファイルとかが綺麗さっぱり消えてるので、環境自体はすっきりした:relaxed:

2
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?