mirror of
https://github.com/skoelle/kctl-tui.git
synced 2026-09-17 20:10:24 +00:00
feat: add Windows Terminal native split-pane option
Add multiplexer config option to switch between tmux/psmux (default) and Windows Terminal's native split-pane on Windows. This avoids the psmux focus-freeze issue when switching away from the terminal window. - Add Multiplexer field to config with MultiplexerBackend() getter - Add startWtSession() using wt.exe split-pane command - Dispatch startTmuxSession() based on OS and config - Document option in config.example.yaml
This commit is contained in:
@@ -73,6 +73,11 @@ type Config struct {
|
||||
// AutoUpdateCheck controls whether kctl-tui checks for updates on
|
||||
// startup. Defaults to true when omitted.
|
||||
AutoUpdateCheck *bool `yaml:"auto_update_check"`
|
||||
|
||||
// Multiplexer selects the terminal multiplexer for the session.
|
||||
// "tmux" (default) uses tmux/psmux. "wt" uses Windows Terminal's
|
||||
// native split-pane (only effective on Windows).
|
||||
Multiplexer string `yaml:"multiplexer"`
|
||||
}
|
||||
|
||||
// IsAutoUpdateCheckEnabled returns true unless the user has explicitly set
|
||||
@@ -84,6 +89,15 @@ func (c Config) IsAutoUpdateCheckEnabled() bool {
|
||||
return *c.AutoUpdateCheck
|
||||
}
|
||||
|
||||
// MultiplexerBackend returns the configured multiplexer backend,
|
||||
// falling back to "tmux" if not set.
|
||||
func (c Config) MultiplexerBackend() string {
|
||||
if c.Multiplexer == "" {
|
||||
return "tmux"
|
||||
}
|
||||
return c.Multiplexer
|
||||
}
|
||||
|
||||
// LoginCommand returns the configured AWS SSO login command, falling back
|
||||
// to DefaultAWSSSOLoginCommand if none is set.
|
||||
func (c Config) LoginCommand() string {
|
||||
|
||||
Reference in New Issue
Block a user