kovidgoyal / kitty

Cross-platform, fast, feature-rich, GPU based terminal
https://sw.kovidgoyal.net/kitty/
GNU General Public License v3.0
23.97k stars 969 forks source link

--keep-focus and --dont-take-focus don't seem to do anything in a session file #7915

Closed Percentnineteen closed 2 days ago

Percentnineteen commented 2 days ago

Describe the bug Trying to create a session setup file for a splits layout, I was unable to get launch --keep-focus or launch --dont-take-focus to do anything inside the session file. Works fine as remote commands. I did not test mappable actions.

To Reproduce Steps to reproduce the behavior:

  1. write a session with this contents: launch --tab-title=one --window-title=one launch --window-title=two --keep-focus launch --window-title=three
  2. launch kitty with "kitty --session /path/to/session
  3. the sequence of the windows (left to right, by name) will be one, two, three

Converting this to kitty remote commands like this: kitty @ launch --type=tab --window-title=one kitty @ launch --window-title=two --keep-focus kitty @ launch --window-title=three results in the sequence one, three, two

Environment details

kitty 0.36.2 (15ac33a058) created by Kovid Goyal
Darwin macbookair.lan 24.0.0 Darwin Kernel Version 24.0.0: Mon Aug 12 20:49:48 PDT 2024; root:xnu-11215.1.10~2/RELEASE_ARM64_T8103 arm64
ProductName:        macOS ProductVersion:       15.0 BuildVersion:      24A335
OpenGL: '4.1 Metal - 89.3' Detected version: 4.1
Frozen: True
Fonts:
  medium: Menlo-Regular: /System/Library/Fonts/Menlo.ttc
          Features: ()
    bold: Menlo-Bold: /System/Library/Fonts/Menlo.ttc
          Features: ()
  italic: Menlo-Italic: /System/Library/Fonts/Menlo.ttc
          Features: ()
      bi: Menlo-BoldItalic: /System/Library/Fonts/Menlo.ttc
          Features: ()
Paths:
  kitty: /Applications/kitty.app/Contents/MacOS/kitty
  base dir: /Applications/kitty.app/Contents/Resources/kitty
  extensions dir: /Applications/kitty.app/Contents/Resources/Python/lib/kitty-extensions
  system shell: /bin/zsh
Loaded config files:
  /Users/knick/.config/kitty/min.conf

Config options different from defaults:
allow_remote_control yes
enabled_layouts      ['splits']
Removed shortcuts:
    cmd+, →  edit_config_file
    cmd+enter →  new_window
    cmd+h →  hide_macos_app
    cmd+k →  clear_terminal to_cursor active
    cmd+m →  minimize_macos_window
    cmd+n →  new_os_window
    cmd+q →  quit
    cmd+t →  new_tab
    cmd+w →  close_tab
    ctrl+cmd+, →  load_config_file
    ctrl+cmd+f →  toggle_fullscreen
    opt+cmd+h →  hide_macos_other_apps
    opt+cmd+r →  clear_terminal reset active
    opt+cmd+s →  toggle_macos_secure_keyboard_entry
    shift+cmd+/ →  open_url https://sw.kovidgoyal.net/kitty/
    shift+cmd+[ →  previous_tab
    shift+cmd+] →  next_tab
    shift+cmd+d →  close_window
    shift+cmd+w →  close_os_window

Important environment variables seen by the kitty process:
    PATH                                /Users/knick/.nix-profile/bin:/nix/var/nix/profiles/default/bin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/Applications/kitty.app/Contents/MacOS
    LANG                                en_US.UTF-8
    SHELL                               /bin/zsh
    USER                                knick
    XDG_DATA_DIRS                       /usr/local/share:/usr/share:/Users/knick/.nix-profile/share:/nix/var/nix/profiles/default/share

Additional context The behavior is the same with --config=NONE, except I have to set the layouts and can't do the remote test.

kovidgoyal commented 2 days ago

Yes those dont work in session files use the ficus specification commands that are specific to session files see the docs for it.