Open3
M1/M2Macbookのセットアップ
セットアップスクリプト
Python や node.js などのバージョンは asdf により管理する。
setup.sh
# HomeBrewのインストール
if [ ! -x "`which brew`" ]; then
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew update
fi
brew install google-japanese-ime --cask
brew install google-chrome --cask
brew install visual-studio-code --cask
brew install docker --cask
brew install iterm2 --cask
brew install discord --cask
brew install wireshark --cask
brew install clipy --cask
brew install obsidian --cask
brew install alfred --cask
brew install deepl --cask
brew install gyazo --cask
brew install spectacle --cask
brew install ffmpeg --cask
brew install imagemagick --cask
brew tap aws/tap
brew install git
brew install wget
brew install asdf
brew install nvm
brew install postgresql
brew install mysql
brew install starship
brew install docker-compose
brew install yarn
brew install imagemagick
brew install awscli
brew install aws-sam-cli
brew install openssh
brew install gh
# asdf setup
asdf plugin add ruby https://github.com/asdf-vm/asdf-ruby.git
asdf plugin add python
asdf plugin add nodejs https://github.com/asdf-vm/asdf-nodejs.git
asdf install ruby 3.0.2
asdf install nodejs 15.14.0
asdf install python 3.8.11
# Common Settings
# 英字の長押しを許可
sudo defaults write -g ApplePressAndHoldEnabled -bool true
# カーソル速度
defaults write -g com.apple.mouse.scaling 8
defaults write -g com.apple.trackpad.scaling 8
# キーリピート速度
defaults write -g InitialKeyRepeat -int 12
defaults write -g KeyRepeat -int 1
.zshrc
.zshrc
# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.
# Initialization code that may require console input (password prompts, [y/n]
# confirmations, etc.) must go above this block; everything else may go below.
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
fi
# starship
eval "$(starship init zsh)"
# 補完
bindkey -v
autoload -U compinit
compinit -u
# asdf
. /opt/homebrew/opt/asdf/libexec/asdf.sh
# コマンド履歴
export HISTFILE=${HOME}/.zsh_history
export HISTSIZE=1000
export SAVEHIST=100000
setopt extended_history
# 他のzshと履歴を共有
setopt inc_append_history
setopt share_history
# パスを直接入力してもcdする
setopt AUTO_CD
# 環境変数を補完
setopt AUTO_PARAM_KEYS
# aliases
alias ls='ls -G'
alias la='ls -a'
alias be='bundle exec'
alias r='bin/rails'
alias d='docker'
alias g='git'
alias get_idf='. $HOME/esp/esp-idf/export.sh'
alias arm64e='arch -arm64e zsh'
alias x86_64='arch -x86_64 zsh'
### Added by Zinit's installer
if [[ ! -f $HOME/.local/share/zinit/zinit.git/zinit.zsh ]]; then
print -P "%F{33} %F{220}Installing %F{33}ZDHARMA-CONTINUUM%F{220} Initiative Plugin Manager (%F{33}zdharma-continuum/zinit%F{220})…%f"
command mkdir -p "$HOME/.local/share/zinit" && command chmod g-rwX "$HOME/.local/share/zinit"
command git clone https://github.com/zdharma-continuum/zinit "$HOME/.local/share/zinit/zinit.git" && \
print -P "%F{33} %F{34}Installation successful.%f%b" || \
print -P "%F{160} The clone has failed.%f%b"
fi
source "$HOME/.local/share/zinit/zinit.git/zinit.zsh"
autoload -Uz _zinit
(( ${+_comps} )) && _comps[zinit]=_zinit
# Load a few important annexes, without Turbo
# (this is currently required for annexes)
zinit light-mode for \
zdharma-continuum/zinit-annex-as-monitor \
zdharma-continuum/zinit-annex-bin-gem-node \
zdharma-continuum/zinit-annex-patch-dl \
zdharma-continuum/zinit-annex-rust
### End of Zinit's installer chunk
# powerlevel10k
source ~/.zsh/poerlevel10k/powerlevel10k.zsh-theme
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zs
# zsh plugins with zinit
zinit light johnhamelink/env-zsh
zinit light scmbreeze/scm_breeze
zinit light zsh-users/zsh-autosuggestions
zinit light zdharma/fast-syntax-highlighting
zinit light mollifier/anyframe
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
## anyframe
autoload -Uz chpwd_recent_dirs cdr add-zsh-hook
add-zsh-hook chpwd chpwd_recent_dirs
# aliases
alias a-cd='anyframe-widget-cdr' # 訪れたことのあるディレクトリへ移動
alias a-his='anyframe-widget-execute-history' # コマンド履歴の検索
alias a-br='anyframe-widget-checkout-git-branch' # gitブランチ
alias a-ghq='anyframe-widget-cd-ghq-repository' # リポジトリの一元管理
## Python
alias py='python'
# pipenv
export PIPENV_VENV_IN_PROJECT=true
# pokemon
export PATH=$PATH:~/.local/bin
iTermセットアップ
参考
手順
-
zinit インストール
-
zinit を使ってプラグインを導入
- プラグイン
-
johnhamelink/env-zsh
-
.env
を自動的にロードしてくれるプラグイン。
-
-
scmbreeze/scm_breeze
- Gitを便利にしてくれるプラグイン。Gitコマンドのaliasが充実している。
-
zsh-users/zsh-autosuggestions
- fishのようにコマンドラインのサジェストをしてくれるプラグイン。
-
zdharma/fast-syntax-highlighting
- コマンドラインのシンタックスハイライト。
-
mollifier/anyframe
- pecoとかfzfによるあいまい検索の機能を提供してくれるプラグイン。
-
johnhamelink/env-zsh
- プラグイン
-
ctrl + p / n など、便利なキーが使えないので設定する。
# hex code の調べ方 : 下のコマンドを実行 → キー入力 → Enter read key; echo "$key" | hexdump
anyframe
peco のラッパー。超便利なコマンドが楽に使える。
# ~/.zshrc
# aliases
alias a-cd='anyframe-widget-cdr' # 訪れたことのあるディレクトリへ移動
alias a-his='anyframe-widget-execute-history' # コマンド履歴の検索
alias a-br='anyframe-widget-checkout-git-branch' # gitブランチ
alias a-ghq='anyframe-widget-cd-ghq-repository' # リポジトリの一元管理
その他ツール群
VSCode
複数PCの同期設定は便利だが、同期したくない設定もある。
一部の設定のみ同期しない場合は settingsSync.ignoredSettings
を使う。
Alfred
Alfredを使いこなせてない君に!【Alfredの使い方完全版】 - Qiita
Google日本語入力
- インストール
- 有効化
- 再起動
- システム環境設定 > キーボード > 入力ソース
-
+
からGoogle日本語入力のソースを追加、-
でデフォルトの入力ソースを削除
Spectacle 👓
ウィンドウのサイズ・配置をいじるツール。
ログイン時に起動して欲しいので Launch Spectacle at login
を有効にする。
AltTab
Alt+Tab によるアクティブなアプリケーションの切り替えを実現。
デフォルトだと option + tab になっているので、alt + tabに変更しておく。
Spark 📥
iPhone、iPad、Mac、Windows、そしてAndroidで使える最高のメールクライアント | Spark
Dash
スニペットツール。
- スニペット呼び出し用の文字列を登録
- Dash を常駐させる
- 登録したスニペット呼び出し用文字列を入力
- 勝手にスニペットに置換される
` や ^ のように、普段使うことがない文字列からスタートするスニペットにしておくといい。
APIドキュメントを高速に持ってきたりすることもできるらしいが、そこまで手を付けれていない。