LoginSignup
65
65

More than 1 year has passed since last update.

【Ventura】ぼくのかんがえたさいきょうの Mac 初期設定

Last updated at Posted at 2023-02-06

はじめに

2023年2月3日、Apple が新型の MacBook Pro / Mac mini を発売しました。
おもわず財布の紐が緩んでポチってしまった方も多いと思います。
そこで、Mac を買ったらやっておきたい初期設定を記事にまとめました😀

参考おれのおれによるおれのためのMacおすすめ設定

Chrome のインストール

まず最初に Chrome をインストールし、アカウントにログインします。
初期設定の過程でいろいろと調べものをしたり、Google ドライブに保存しておいた設定ファイルなどを取り出したりしたいからです。

システム設定関連

1. 入力周りをカスタマイズする

これから設定を進める上で、入力でモタつくとイライラするので、まずは入力周りをカスタマイズします。

トラックパッドを最適化

システム設定 > トラックパッド > 軌跡の速さを最速にします。
同時にタップでクリックをオンにします。

図2.png
また、システム設定 > アクセシビリティ > ポインタコントロール > トラックパッドオプションを選択し、スクロールの速さを調節します。
図14.png

修飾キーを変更

システム設定 > キーボード > キーボードショートカットを選択し、修飾キーから以下を設定します。

「⌘ Command」と「^ Control」を入れ替える下記の設定は、私固有のトリッキーな設定です。普通の人は「Caps Lock」と「Control」を入れ替えるだけで十分と思います。

図9.png

入力ソース切替のショートカットキーを変更

システム設定 > キーボード > キーボードショートカットを選択し、入力ソースから以下を設定します。

「⌘スペース」で日本語入力のオン/オフを切り替える下記の設定は、私固有のトリッキーな設定です。

図24.png

仮想デスクトップ切替のショートカットキーを設定

システム設定 > キーボード > キーボードショートカットを選択し、Mission Controlから以下を設定します。

「⌘H」「⌘N」で仮想デスクトップを左右に切り替える下記の設定は、私固有のトリッキーな設定です。普通の人が設定する場合は「⌘J」「⌘L」としておけば幸せになれるかもしれません。

図23.png
ちなみに、なんでキーボード周りがこんなトリッキーな設定になるかというと、私が「KINESIS+Dvorak」という極めて変態的なセットアップを使っているからです😂

タブ切替のショートカットキーを設定

システム設定 > キーボード > キーボードショートカットを選択し、アプリケーションから以下を設定します。
図22.png

キーリピートの高速化

ターミナルから次のコマンドを入力し、「キーのリピート」と「リピート入力認識までの時間」を高速にします。

ターミナル
defaults write NSGlobalDomain KeyRepeat -int 2
defaults write NSGlobalDomain InitialKeyRepeat -int 20

参考Mac OS X High Sierra のキー入力速度を速くする

2. 見た目をカッコよくする

見た目によって操作効率が上がる(気がする)ので、次に外観を設定します。

アイコンを変更

自分のお気に入りのアイコンを設定します。
システム設定 > ユーザとグループ を選択し、自分のアイコンをクリックします。
図3.png
次に写真を選択し、iCloud にある画像のなかからアイコン画像を選びます。

ローカルに保存してある画像をアイコンとして選ぶことはできません。
そのため、アイコン画像は事前に iCloud にアップロードしておく必要があります。

図4.png
はじめちゃんかわいい!!
:warning:中身はただのおっさんです😭

壁紙を設定

お気に入りの壁紙は、あらかじめ Google ドライブに保存しておきます。
システム設定 > 壁紙と選択し、フォルダを追加から壁紙を入れたフォルダを選択します。
図21.png

Dock とメニューバーを設定

システム設定 > デスクトップとDockを選択し、Dock のサイズと「自動的に表示 / 非表示」を設定します。
また、「最近使ったアプリケーションを Dock に表示」をオフにします。
さらに、「メニューバーを自動的に表示 / 非表示」を「常に」に設定します。
図4.png
なお、表示 / 非表示を切り替える速度がデフォルトでは相当遅いので、ターミナルから下記のコマンドを打つことで高速化します。

ターミナル
# Dockが出てくるまでの時間
defaults write com.apple.dock autohide-delay -float 0 && killall Dock

# Dockが表示アニメーションの時間
defaults write com.apple.dock autohide-time-modifier -float 0.7 && killall Dock

コンピュータの名前を変更

デフォルト設定のままだと、ターミナルや Bluetooth 上でのコンピュータの名前が「○○のMacmini」などとなっていてカッコ悪いので、こだわりのコンピュータ名に変更します。

システム設定 > 一般 > 情報 > コンピュータ名 をクリックし、コンピュータの名前を変更します。
図2.png
ちなみに、私はコンピュータに南の島の名前をつけることに決めています。

参考南の島に思いを馳せながらコンピュータを使う

3. メニューバーをカスタマイズする

システム設定 > コントロールセンター からメニューバーに表示するアイコンを最適化します。
特に、サウンド・Bluetooth は表示させておいた方が便利でしょう。

図27.png

また、システム設定 > コントロールセンター > 時計のオプションと進めば、メニューバー右上に表示される時計の表示をカスタマイズできます。
私は「秒を表示」するようにしています。

図30.png

4. セキュリティを設定する

私のメインマシンは自宅外に持ち出さない据え置き Mac mini なので、一般の推奨設定を緩和します。

各項目に注意書きを入れていますが、自宅外に持ち出す MacBook の場合は、きっちりセキュリティ対策をしておきましょう

ファイアウォールの有効化

ネットワーク > ファイアウォール を選択し、ファイアウォール をオンにします。

図25.png

スリープ復帰時のパスワード省略

スリープ解除でいちいちパスワード入力を求められるのは面倒なので、設定を変更します。

システム設定 > ロック画面を選択し、「スクリーンセーバの開始後またはディスプレイがオフになったあとにパスワードを要求」で「しない」を選択します。

自宅外に持ち出す MacBook の場合は、この設定はやらない方がよいと思います。

図26.png

自動ログインの設定

システム設定 > ユーザとグループ を選択し、「自動ログイン」を設定します。

同様に、MacBook の場合は設定しない方がよいと思います。

図3.png

なお、ディスクの暗号化(FireVault)は設定しません。
参考:FileVaultを利用するメリットとデメリットと、設定と解除方法について

5. Finder を使いやすくする

Finder について、下記の5つを設定します。

  • サイドバーの表示項目の設定
  • すべての拡張子を表示
  • パスバーを表示
  • 隠しファイルを表示
  • .DS_Store ファイルの生成を抑制

サイドバーの表示項目の設定

Finder > 設定 > サイドバーと選択し、サイドバーに表示する項目をカスタマイズします。

スクリーンショット 2023-02-04 16.29.40.png

すべての拡張子を表示

Finder > 設定 > 詳細 の「すべてのファイル名拡張子を表示」にチェックを入れます。
(「ファイル名拡張子」って変な日本語だな…😒 誤訳じゃないのこれ)

スクリーンショット 2023-02-04 16.32.21.png

パスバーを表示

Finder > 表示 の「パスバーを表示」を有効にします。
有効にすると Finder の下部に絶対パスが表示されます。

図31.png

隠しファイルを表示

Finderを開いて、Command(⌘) + shift(⇧) + ドット(.) を入力します。
このコマンドを入力するたびに、隠しファイルの表示 / 非表示を切り替えられます。

参考【Mac】隠しファイル・隠しフォルダを表示する方法

.DS_Store ファイルの生成を抑制

.DS_Store ファイルが生成されてうっとうしいので、生成されないようにします。

ターミナル
# ネットワークドライブ上への .DS_Store ファイルの生成を抑制
defaults write com.apple.desktopservices DSDontWriteNetworkStores true

# USB上への .DS_Store ファイルの生成を抑制
defaults write com.apple.desktopservices DSDontWriteUSBStores -bool true

6. その他の設定

サウンドのフィードバックを再生

音量を変更したときに、その変更によってどれくらいの音量で音が鳴るかを知りたいことがあります。
システム設定 > サウンド音量を変更するときにフィードバックを再生をオンにします。

図29.png

スタックを設定

「スタック」とは、デスクトップ上のファイルを自動的にグループ分けしてくれる機能です。
デスクトップの上で右クリックし、「スタックを使用」をオンにします。

スクリーンショット 2023-02-05 15.39.45.png

デスクトップと Dock を最適化

下記を設定します。

  • 操作スペースを自動的に並べ替える → オフ
  • ディスプレイごとに個別の操作スペース → オン

図30.png

スクリーンショットの影を消す

(この記事を書いていた段階では、この設定を忘れていたのですが...)
デフォルトのままウィンドウのスクリーンショットを撮ると、縁取りのように影がついているのですが、下記のコマンドを打つことで、この影がつかないようにすることができます。

ターミナル
defaults write com.apple.screencapture disable-shadow -boolean true killall SystemUIServer

参考Macのスクリーンショットの影を消す方法

アプリケーションのインストールと設定

1. Microsoft 365 のインストール

Mac でも Word, Excel, PowerPoint あたりは使いたいのでインストールします。同時にインストールできる PC の数は5台なので、ライセンスの管理が重要です。

上記リンクからインストーラをダウンロードしましょう。インストーラを実行すれば、すぐにセットアップが完了します。

スクリーンショット 2023-02-04 19.21.56.png

2. 開発用アプリのインストール

仕事熱心なエンジニアは、もちろん商売道具から準備していきます。
そうだよね!😏

Homebrew

まずはパッケージマネージャ Homebrew をインストールします。

ターミナル
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Homebrew をインストールし、.Brewfileさえ設定してしまえば、だいたいのアプリケーションは $ brew bundle で一発インストールできるのですが、私はいつも手作業でインストールしています。

参考brew bundleでMacのアプリをまとめてインストール・管理

また、brew install したバイナリは /opt/homebrew/bin 以下にインストールされるので、/etc/paths の先頭に /opt/homebrew/bin を追加します。

$ sudo vim /etc/paths
/opt/homebrew/bin ← 追加
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin

git

これがないと仕事になりません。brew でインストールできます。

ターミナル
brew install git

Emacs

私は Emacs 使いです。VSCode は使いません。
Mac に最適化された Emacs(Mac Port 版)を brew でインストールします。

ターミナル
brew tap "railwaycat/emacsmacport"
brew install --cask emacs-mac
私の init.el(抜粋)はこちら
init.el
;; コマンドキーを Ctrl キーにする
(setq mac-command-modifier 'control)

;; オプションキーを Meta キーにする
(setq mac-option-modifier 'meta)

;; パスを通す
(defun add-to-load-path (&rest paths)
  (let (path)
    (dolist (path paths paths)
     (let ((default-directory (expand-file-name (concat user-emacs-directory path))))
        (add-to-list 'load-path default-directory)
         (if (fboundp 'normal-top-level-add-subdirs-to-load-path)
             (normal-top-level-add-subdirs-to-load-path))))))
(add-to-load-path "elisp" "conf" "public_repos")

;; 言語の設定
(set-language-environment 'Japanese)
(prefer-coding-system 'utf-8)

;; パッケージ管理
(require 'package)
(setq package-archives
      '(("gnu" . "http://elpa.gnu.org/packages/")
        ("marmalade" . "https://marmalade-repo.org/packages/")
        ("melpa" . "http://melpa.org/packages/")
        ("org" . "http://orgmode.org/elpa/")))
(package-initialize)

;; キーバインディングの設定
(define-key global-map (kbd "C-q") 'Control-X-prefix)
(define-key global-map (kbd "C-j") 'mode-specific-command-prefix)
(define-key global-map (kbd "C-q C-o") 'save-buffer)
(define-key global-map (kbd "C-q C-j") 'save-buffers-kill-emacs)
(define-key global-map (kbd "C-q C-a") 'write-file)
(define-key global-map (kbd "C-l") 'set-mark-command)
(define-key global-map (kbd "C-t") 'kill-line)
(define-key global-map (kbd "C-z") 'kill-region)
(define-key global-map (kbd "C-u") 'forward-char)
(define-key global-map (kbd "C-x") 'backward-char)
(define-key global-map (kbd "C-q x") 'switch-to-buffer)
(define-key global-map (kbd "C-q C-u") 'find-file)
(define-key global-map (kbd "C-r") 'isearch-backward)
(define-key global-map (kbd "C-p") 'other-window)
(define-key global-map (kbd "C-o") 'split-window-horizontally)
(define-key global-map (kbd "M-u") 'forward-word)
(define-key global-map (kbd "M-x") 'backward-word)
(define-key global-map (kbd "M-q") 'execute-extended-command)
(define-key global-map (kbd "C-j C-l") 'comment-region)
(define-key global-map (kbd "C-j C-r") 'uncomment-region)
(define-key global-map (kbd "M-p") 'previous-buffer)
(define-key global-map (kbd "M-k") 'next-buffer)
(define-key global-map (kbd "C-q g") 'magit-status)
(define-key global-map (kbd "C-j t j") 'quickrun)

;; ¥の代わりにバックスラッシュを入力する
(define-key global-map [?¥] [?\\])

;; ウィンドウの色の設定
(load-theme 'doom-dark+ t)
(if window-system (progn
    (set-frame-parameter nil 'alpha 93) ;透明度
    ))

;; フレームの設定
(setq default-frame-alist
      (append (list
               ;; サイズ・位置
               '(width . 170)  ; 横幅(文字数)
               '(height . 59)  ; 高さ(行数)
               '(top . 120)    ; フレーム左上角 y 座標
               '(left . 2500)  ; フレーム左上角 x 座標
               )
              default-frame-alist))

;; スクロールは1行ごとに
(setq mouse-wheel-scroll-amount '(1 ((shift) . 5)))

;; スクロールの加速をやめる
(setq mouse-wheel-progressive-speed nil)

;; 行番号の表示
(progn
  (global-display-line-numbers-mode)
  (set-face-attribute 'line-number nil
                      :foreground "#808080"
                      :background "#0f0f0f")
  (set-face-attribute 'line-number-current-line nil
                      :foreground "gold"))

;; 対応する括弧をハイライトする
(show-paren-mode t)
(setq show-paren-style 'mixed)

;; メニューバーとツールバーを表示しない
(menu-bar-mode 0)
(tool-bar-mode 0)

;; scratch の初期メッセージを表示しない
(setq initial-scratch-message "")

;; 起動時のメッセージを表示しない
(setq inhibit-startup-message t)

;; Tabキーを無効化する
(setq-default indent-tabs-mode nil)

;; 自動再読み込み
(global-auto-revert-mode t)

;; 画像ファイルを表示する
(auto-image-file-mode t)

;; バックアップとオートセーブファイルを~/.emacs.d/backups/へ集める
(add-to-list 'backup-directory-alist
(cons "." "~/.emacs.d/backups/"))
(setq auto-save-file-name-transforms
`((".*" ,(expand-file-name "~/.emacs.d/backups/") t)))

;; オートセーブファイル作成までの秒間隔
(setq auto-save-timeout 15)

;; オートセーブファイル作成までのタイプ間隔
(setq auto-save-interval 60)

;; 終了時にオートセーブファイルを削除する
(setq delete-auto-save-files t)

;; yes-or-no を y-or-n で応えるようにする
(fset 'yes-or-no-p 'y-or-n-p)

;; 行の先頭で C-k を一回押すだけで行全体を消去する
(setq kill-whole-line t)

;; 最後に改行を入れる。
(setq require-final-newline t)

;; タイトルバーにファイル名をフルパスで表示する
(setq frame-title-format (format "emacs@%s : %%f" (system-name)))

;; 時刻表示
(display-time)

;; 以前編集したファイルのカーソル位置を覚える設定
(require 'saveplace)
(save-place-mode 1)

;; C-hv とか ファイル名補完時のウィンドウを自動的にリサイズする。
(temp-buffer-resize-mode t)

;; default scroll bar消去
(scroll-bar-mode 0)

;; フォント設定
(set-frame-font "PlemolJP light 19")

;;; フォントサイズ変更の設定
(global-set-key [(control +)] (lambda () (interactive) (text-scale-increase 1)))
(global-set-key [(control -)] (lambda () (interactive) (text-scale-decrease 1)))
(global-set-key [(control ?0)] (lambda () (interactive) (text-scale-increase 0)))

;; 自動補完
(leaf company
  :doc "Modular text completion framework"
  :req "emacs-24.3"
  :tag "matching" "convenience" "abbrev" "emacs>=24.3"
  :url "http://company-mode.github.io/"
  :emacs>= 24.3
  :ensure t
  :leaf-defer nil
  :bind ((company-active-map
          ("M-n" . nil)
          ("M-p" . nil)
          ("C-s" . company-filter-candidates)
          ("C-n" . company-select-next)
          ("C-p" . company-select-previous)
          ("<tab>" . company-complete-selection))
         (company-search-map
          ("C-n" . company-select-next)
          ("C-p" . company-select-previous)))
  :custom ((company-idle-delay . 0)
           (company-minimum-prefix-length . 1)
           (company-transformers . '(company-sort-by-occurrence)))
  :global-minor-mode global-company-mode)

(leaf company-c-headers
  :doc "Company mode backend for C/C++ header files"
  :req "emacs-24.1" "company-0.8"
  :tag "company" "development" "emacs>=24.1"
  :added "2020-03-25"
  :emacs>= 24.1
  :ensure t
  :after company
  :defvar company-backends
  :config
  (add-to-list 'company-backends 'company-c-headers))

;; Undohist
(require 'undohist)
(undohist-initialize)

;; Smartparens
(leaf smartparens
  :ensure t
  :hook (after-init-hook . smartparens-global-strict-mode) ; strictモードを有効化
  :require smartparens-config
  :custom ((electric-pair-mode . nil))) ; electric-pair-modeを無効化

;; flycheck
(leaf flycheck
  :doc "On-the-fly syntax checking"
  :req "dash-2.12.1" "pkg-info-0.4" "let-alist-1.0.4" "seq-1.11" "emacs-24.3"
  :tag "minor-mode" "tools" "languages" "convenience" "emacs>=24.3"
  :url "http://www.flycheck.org"
  :emacs>= 24.3
  :ensure t
  :global-minor-mode global-flycheck-mode)

;; elpy
(elpy-enable)
(setq elpy-rpc-virtualenv-path 'current)
(setq python-shell-completion-native-disabled-interpreters '("python3"))

;; autopep8
(require 'py-autopep8)
(add-hook 'elpy-mode-hook 'py-autopep8-mode)

;; isort
(require 'py-isort)
(add-hook 'python-mode-hook
          '(lambda()
             (add-hook 'before-save-hook 'py-isort-before-save)))

参考Dvorak 配列でも快適に使えるように Emacs のキーバインドを魔改造する

iTerm2

Mac 標準のターミナルはクソダサいので、iTerm2 をインストールします。

ターミナル
brew install --cask iterm2

Dracula テーマを適用し、ウィンドウを半透明にするなど外観をゴリゴリとカスタマイズすると、最終的にこんな感じになります。カッコいい。

スクリーンショット 2023-02-04 19.42.06-2.png
参考エンジニアだったらターミナルの見た目にはこだわった方がいいんじゃない?

Ricty Diminished

プログラミング用フォントとして名高い「Ricty Diminished」一択だと思います。

このフォントは、大きな不具合を残したまま今後メンテナンスされないことが確定しました。メンテナンスが継続している他のフォントを使う方が無難とのことです。
参考RictyフォントとRicty Diminishedフォントが正式にサポート終了となった話
@sounisi5011さん、情報提供ありがとうございました!

私は PlemolJP に逃げました。

ターミナル
brew tap "homebrew/cask-fonts"
brew install --cask font-plemol-jp

Docker Desktop

Docker Hub から Docker Desktop for Mac(with Apple Silicon)をダウンロードして、インストールします。

TablePlus

シンプルな GUI で直感的に使いやすい SQL クライアントです。

ターミナル
brew install --cask tableplus

Slack & Zoom

どちらも必須のコミュニケーションツールですね。
画面共有できるようにアクセシビリティを許可しておくことを忘れないようにしましょう。

ターミナル
brew install --cask slack zoom

zsh の設定

zsh の機能を強化するパッケージを導入し、.zshrcを設定します。

ターミナル
brew install zsh-completions zsh-autosuggestions zsh-syntax-highlighting
私の .zshrc(抜粋)はこちら
.zshrc
typeset -U path PATH
path=(
  /opt/homebrew/bin(N-/)
  /opt/homebrew/sbin(N-/)
  /usr/bin
  /usr/sbin
  /bin
  /sbin
  /usr/local/bin(N-/)
  /usr/local/sbin(N-/)
  /Library/Apple/usr/bin
)

if type brew &>/dev/null; then
    FPATH=$(brew --prefix)/share/zsh-completions:$FPATH
    source $(brew --prefix)/share/zsh-autosuggestions/zsh-autosuggestions.zsh
    autoload -Uz compinit && compinit
fi

PROMPT='[%n@%F{green}%\%m:%F{white}%\%1~]$ '

alias h='ls -lLhG'
alias ha='ls -lhaHLG'
alias df='df -h'
alias cd='pushd'
alias p='popd'
alias cp='cp -r'
alias python='python3'
alias vi='vim'

setopt share_history
setopt hist_ignore_all_dups
setopt hist_ignore_space
setopt hist_reduce_blanks
setopt extended_glob
setopt correct

Parallels Desktop

Windows を使いたいときもあるので、Parallels をインストールします。

3. 便利系アプリのインストール

アプリはいろいろとインストールしていますが、私にとって必須となるのは次の5つです。

  • BetterTouchTool
  • AltTab
  • PopClip
  • Desktop Calender Plus
  • LINE

BetterTouchTool

もはやこれがないと Mac を使えないと感じるほど、手になじんだアプリ。

ターミナル
brew install --cask bettertouchtool

ちなみに、ウィンドウスナップと移動のパートで下記のように設定すると、Command キーを押しているとき、カーソルの移動に吸いつくようにウィンドウを移動させることができて便利になります。

図1.png

参考Trackpad は TipTap で幸せになれる

AltTab

Windows から Mac に乗り換えた人には必須になるであろうアプリ。
ウィンドウを「Alt(Option)+Tab」で切り替えることができるようになります。

ターミナル
brew install --cask alt-tab

参考AltTab - Windows風のAlt+TabをmacOSで実現

PopClip

AppStore からインストールします。
2023年2月時点で 2800 円もするアプリだけど、もはやこれなしでは Mac を操作できない。

スクリーンショット 2023-02-04 20.40.37.png

参考選択したテキストやURLをさまざまなものに保存、加工できるPopclipの便利な厳選拡張機能

Desktop Calender Plus

AppStore からインストールします。
2023年2月時点で 1100 円のアプリ。デスクトップ上にカレンダーや時計が表示できます。

スクリーンショット 2023-02-04 20.44.10.png

LINE

AppStore からインストールします。

おわりに

新しい PC をイチから自分好みにセットアップするって楽しいですよね。個人的なこだわりで商売道具を俺色に染めていく過程がなんともウズウズします。
もしおすすめの設定があれば、コメント欄で教えていただけると嬉しいです!

それでは皆さん、よい Mac ライフを。
長い記事を最後まで読んでくださって、ありがとうございました!

65
65
2

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
65
65