[[Neovim]]のデフォルトターミナルは以下の点が使いにくい。
- シェルが[[cmd]]になっている
- 現在の[[ウィンドウ (Vim)|ウィンドウ]]で開かれてしまう
- ターミナル以外の[[ウィンドウ (Vim)|ウィンドウ]]と相互移動するのが面倒
## 設定
以下3つを設定として追加した。
```lua
-- デフォルトのシェルをPowerShellに
vim.opt.shell = "pwsh"
-- 現在の下に小さいウィンドウを分割で開き、挿入モードで開始
key('n', '<C-j>t', ':split | wincmd j | resize 15 | terminal<CR>i', { noremap = true })
-- ESCでノーマルモード
key('t', '<ESC>', '<C-\\><C-n>', { noremap = true })
```
> [!add] #2023/11/18 追記
> `preserve_window_proportions = true` も追加する。詳細は [[📝Neovimでnvim-tree.luaを開くと、分割ウィンドウで開いたターミナルサイズが変わってしまう]] を参照。
## 残課題
[[Neovim]]でターミナルウィンドウに移動すると、カーソルの形状が見にくくなる。クリティカルな問題ではないので今のところはいい。
## 参考
<div class="link-card">
<div class="link-card-header">
<img src="https://zenn.dev/images/logo-transparent.png" class="link-card-site-icon"/>
<span class="link-card-site-name">Zenn</span>
</div>
<div class="link-card-body">
<div class="link-card-content">
<div>
<p class="link-card-title">NeovimのTerminalモードをちょっと使いやすくする</p>
</div>
<div class="link-card-description">
</div>
</div>
<img src="https://res.cloudinary.com/zenn/image/upload/s--aeId60TA--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:Neovim%25E3%2581%25AETerminal%25E3%2583%25A2%25E3%2583%25BC%25E3%2583%2589%25E3%2582%2592%25E3%2581%25A1%25E3%2582%2587%25E3%2581%25A3%25E3%2581%25A8%25E4%25BD%25BF%25E3%2581%2584%25E3%2582%2584%25E3%2581%2599%25E3%2581%258F%25E3%2581%2599%25E3%2582%258B%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:ryo_kawamata%2Cx_203%2Cy_98/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL3plbm4tdXNlci11cGxvYWQvYXZhdGFyLzU2N2NiMTI0ZWYuanBlZw==%2Cr_max%2Cw_90%2Cx_87%2Cy_72/og-base.png" class="link-card-image" />
</div>
<a href="https://zenn.dev/ryo_kawamata/articles/improve-neovmi-terminal"></a>
</div>