From 120cd7f25a8209297f15b0a79b36c44b30e641fb Mon Sep 17 00:00:00 2001 From: Andreas Auernhammer Date: Sat, 4 Jan 2025 10:30:32 +0100 Subject: Add `border-native` option to `--tmux` flag (#4157) This commit adds the `border-native` resulting in the following: ``` --tmux[=[center|top|bottom|left|right][,SIZE[%]][,SIZE[%]][,border-native]] ``` By default, when not specified, the `-B` flag is passed to the `tmux popup-window` command such that no border is drawn around the tmux popup window. When the `border-native` option is present, the `-B` flag is omitted and the popup window is drawn using the border style configured in the tmux config file. Fixes #4156 Signed-off-by: Andreas Auernhammer Co-authored-by: Junegunn Choi --- src/tmux.go | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'src/tmux.go') diff --git a/src/tmux.go b/src/tmux.go index b2315dcd..e459000a 100644 --- a/src/tmux.go +++ b/src/tmux.go @@ -9,13 +9,16 @@ import ( func runTmux(args []string, opts *Options) (int, error) { // Prepare arguments - fzf := args[0] - args = append([]string{"--bind=ctrl-z:ignore"}, args[1:]...) - if opts.BorderShape == tui.BorderUndefined { + fzf, rest := args[0], args[1:] + args = []string{"--bind=ctrl-z:ignore"} + if !opts.Tmux.border && opts.BorderShape == tui.BorderUndefined { args = append(args, "--border") } + if opts.Tmux.border && opts.Margin == defaultMargin() { + args = append(args, "--margin=0,1") + } argStr := escapeSingleQuote(fzf) - for _, arg := range args { + for _, arg := range append(args, rest...) { argStr += " " + escapeSingleQuote(arg) } argStr += ` --no-tmux --no-height` @@ -33,7 +36,10 @@ func runTmux(args []string, opts *Options) (int, error) { // M Both The mouse position // W Both The window position on the status line // S -y The line above or below the status line - tmuxArgs := []string{"display-popup", "-E", "-B", "-d", dir} + tmuxArgs := []string{"display-popup", "-E", "-d", dir} + if !opts.Tmux.border { + tmuxArgs = append(tmuxArgs, "-B") + } switch opts.Tmux.position { case posUp: tmuxArgs = append(tmuxArgs, "-xC", "-y0") -- cgit v1.2.3