Skip to content

Commit d5e3c62

Browse files
committed
Complete multi-instance migration fixes
- Sanitize buffer names to avoid special characters that break :buffer commands - Update keymaps.lua to use instances table instead of single bufnr - Update file_refresh.lua to use instances table instead of single bufnr Note: Tests in terminal_spec.lua still need updating to work with instances table
1 parent a9efdf1 commit d5e3c62

3 files changed

Lines changed: 6 additions & 3 deletions

File tree

lua/claude-code/file_refresh.lua

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,8 @@ function M.setup(claude_code, config)
5757
config.refresh.timer_interval,
5858
vim.schedule_wrap(function()
5959
-- Only check time if there's an active Claude Code terminal
60-
local bufnr = claude_code.claude_code.bufnr
60+
local current_instance = claude_code.claude_code.current_instance
61+
local bufnr = current_instance and claude_code.claude_code.instances[current_instance]
6162
if bufnr and vim.api.nvim_buf_is_valid(bufnr) and #vim.fn.win_findbuf(bufnr) > 0 then
6263
vim.cmd 'silent! checktime'
6364
end

lua/claude-code/keymaps.lua

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,9 @@ end
8989
--- @param claude_code table The main plugin module
9090
--- @param config table The plugin configuration
9191
function M.setup_terminal_navigation(claude_code, config)
92-
local buf = claude_code.claude_code.bufnr
92+
-- Get current active Claude instance buffer
93+
local current_instance = claude_code.claude_code.current_instance
94+
local buf = current_instance and claude_code.claude_code.instances[current_instance]
9395
if buf and vim.api.nvim_buf_is_valid(buf) then
9496
-- Create autocommand to enter insert mode when the terminal window gets focus
9597
local augroup = vim.api.nvim_create_augroup('ClaudeCodeTerminalFocus', { clear = true })

lua/claude-code/terminal.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ function M.toggle(claude_code, config, git)
159159
-- Create a unique buffer name (or a standard one in single instance mode)
160160
local buffer_name
161161
if config.git.multi_instance then
162-
buffer_name = 'claude-code-' .. instance_id:gsub('[/\\\\]', '-')
162+
buffer_name = 'claude-code-' .. instance_id:gsub('[^%w%-_]', '-')
163163
else
164164
buffer_name = 'claude-code'
165165
end

0 commit comments

Comments
 (0)