Open8

macの開発環境構築

renoinnrenoinn

ひとまず、bashをzshに変更。
カスタマイズはpreztoで行う。
https://github.com/sorin-ionescu/prezto

chsh -s /bin/zsh

git clone --recursive https://github.com/sorin-ionescu/prezto.git "${ZDOTDIR:-$HOME}/.zprezto"

setopt EXTENDED_GLOB
for rcfile in "${ZDOTDIR:-$HOME}"/.zprezto/runcoms/^README.md(.N); do
  ln -s "$rcfile" "${ZDOTDIR:-$HOME}/.${rcfile:t}"
done

.zpreztorcを編集してモジュールを追加する。

zstyle ':prezto:load' pmodule \
  'environment' \
  'terminal' \
  'editor' \
  'history' \
  'directory' \
  'spectrum' \
  'utility' \
  'completion' \
  'history-substring-search' \
  'prompt' \
+ 'archive' \
+ 'autosuggestions' \
+ 'git' \
+ 'syntax-highlighting'

# Auto set the tab and window titles.
+ zstyle ':prezto:module:terminal' auto-title 'yes'
renoinnrenoinn

homebrewでNeoVimをインストールする。
設定周りはAstroNvimで管理する。

https://astronvim.com

brew install neovim
git clone --depth 1 https://github.com/AstroNvim/AstroNvim ~/.config/nvim
nvim
renoinnrenoinn

ターミナルにWarpをインストールする。

brew install --cask warp
renoinnrenoinn

AstroNvimのカスタマイズ。

ユーザー独自の設定は.config/nvim/lua/userに置く。user/init.luaに全部書いてもいいけど、特定のファイル名にすると、それを自動で対応する設定に反映してくれたりするので、そっちを利用するのが一般的っぽい。
https://astronvim.com/Configuration/config_options

user/plugins/kanagawa.lua
 return {
  "rebelot/kanagawa.nvim",
  name = "kanagawa",
}

これで、追加のプラグインとしてColorSchemeのkanagawaがインストールされるので、colorscheme.luaで設定する。

user/colorscheme.lua
return "kanagawa"

また、heirlineの設定もuser/plugins/heirline.luaで行う。

user/plugins/heirline.lua
return {
  "rebelot/heirline.nvim",
  opts = function(_, opts)
    local status = require("astronvim.utils.status")
    opts.statusline = { -- statusline
      hl = { fg = "fg", bg = "bg" },
      status.component.mode { mode_text = { padding = { left = 1, right = 1 } } }, -- add the mode text
      status.component.git_branch(),
      status.component.file_info { filetype = false, filename = {}, file_modified = {} },
      status.component.git_diff(),
      status.component.diagnostics(),
      status.component.fill(),
      status.component.cmd_info(),
      status.component.fill(),
      status.component.lsp(),
      status.component.treesitter(),
      status.component.nav(),
      -- remove the 2nd mode indicator on the right
    }

    -- return the final configuration table
    return opts
  end,
}
renoinnrenoinn

telescopeのLiveGrepするためにripgrepを入れる。

brew install ripgrep
renoinnrenoinn

lazygitcommitizenをインストールして連携させる。(AstroNvim経由でlazygitを使える)

~/Library/Application\ Support/lazygit/config.ymlに下記を追加。

customCommands:
  - key: "C"
    command: "git cz c"
    description: "commit with commitizen"
    context: "files"
    loadingText: "opening commitizen commit tool"
    subprocess: true
renoinnrenoinn

tree-sitterのパーサーでエラーが出たので対処した。
checkhealthしたところ、luaでエラーが出てたので、TSUpdateする。

:checkhealth nvim-treesitter
:TSUpdate lua