diff options
author | Jaehwang Jung <tomtomjhj@gmail.com> | 2024-04-13 20:41:59 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-13 19:41:59 +0800 |
commit | 328a2373514a880ea80bed53d63de76e2dea2a9c (patch) | |
tree | 2291577bef39d923f0e23cf8dee415460c60dcd7 /runtime/lua/vim | |
parent | 5ce6b4a294216fb7e3cf4ee79ab3d3c7fde7cb1a (diff) | |
download | rneovim-328a2373514a880ea80bed53d63de76e2dea2a9c.tar.gz rneovim-328a2373514a880ea80bed53d63de76e2dea2a9c.tar.bz2 rneovim-328a2373514a880ea80bed53d63de76e2dea2a9c.zip |
fix(defaults): auto-close terminal for &shell with args (#28276)
Problem:
The `:terminal` auto-close logic does not support `&shell` that has
arguments, e.g., `/bin/bash -O globstar`.
Solution:
Join `argv` and match `&shell`. This is not perfect since `&shell` may
contain irregular spaces and quotes, but it seems to be good enough.
Diffstat (limited to 'runtime/lua/vim')
-rw-r--r-- | runtime/lua/vim/_defaults.lua | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/runtime/lua/vim/_defaults.lua b/runtime/lua/vim/_defaults.lua index 2f02c2b389..2afcc185e5 100644 --- a/runtime/lua/vim/_defaults.lua +++ b/runtime/lua/vim/_defaults.lua @@ -175,7 +175,7 @@ do end local info = vim.api.nvim_get_chan_info(vim.bo[args.buf].channel) local argv = info.argv or {} - if #argv == 1 and argv[1] == vim.o.shell then + if table.concat(argv, ' ') == vim.o.shell then vim.api.nvim_buf_delete(args.buf, { force = true }) end end, |