zellij-org / zellij

A terminal workspace with batteries included
https://zellij.dev
MIT License
21.62k stars 652 forks source link

Resurrection seems to stop changing CWD after reattaching #3041

Open Parry-97 opened 10 months ago

Parry-97 commented 10 months ago

Issue description

As the title implies, the serialized CWD after resurrection does not change. before reattaching the directory changes ok and after reattaching it stops.

Minimal reproduction

  1. I start off inside a test folder,
  2. In here I recreated the default config with zellij setup --dump-config >> basic.kdl
  3. I edited it to include serialization_interval 1 (no other changes)
  4. I created a session named example with zellij --config basic.kdl a example
  5. I move to a different directory called first
  6. I quit from zellij
  7. I reattach to the example session hence resurrecting it
  8. I can see that the working directory is first
  9. I move to another directory called second
  10. I quit from zellij
  11. I reattach to the example session
  12. The working directory is still first
  13. I move to another directory called third
  14. I quit from zellij
  15. I reattach to the example session
  16. The working directory is still first

Other relevant information

Various zellij action dump-layout for troubleshooting:

  1. The result of dump-layout when starting Zellij:
    layout {
    cwd "/home/pops/test"
    tab name="Tab #1" focus=true hide_floating_panes=true {
        pane size=1 borderless=true {
            plugin location="zellij:tab-bar"
        }
        pane command="zellij" focus=true {
            args "action" "dump-layout"
            start_suspended true
        }
        pane size=2 borderless=true {
            plugin location="zellij:status-bar"
        }
    }
    new_tab_template {
        pane size=1 borderless=true {
            plugin location="zellij:tab-bar"
        }
        pane
        pane size=2 borderless=true {
            plugin location="zellij:status-bar"
        }
    }
    swap_tiled_layout name="vertical" {
        tab max_panes=5 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane split_direction="vertical" {
                    pane
                    pane {
                        children
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
        tab max_panes=8 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane split_direction="vertical" {
                    pane {
                        children
                    }
                    pane {
                        pane
                        pane
                        pane
                        pane
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
        tab max_panes=12 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane split_direction="vertical" {
                    pane {
                        children
                    }
                    pane {
                        pane
                        pane
                        pane
                        pane
                    }
                    pane {
                        pane
                        pane
                        pane
                        pane
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
    }
    swap_tiled_layout name="horizontal" {
        tab max_panes=5 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane
                pane
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
        tab max_panes=8 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane {
                    pane split_direction="vertical" {
                        children
                    }
                    pane split_direction="vertical" {
                        pane
                        pane
                        pane
                        pane
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
        tab max_panes=12 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane {
                    pane split_direction="vertical" {
                        children
                    }
                    pane split_direction="vertical" {
                        pane
                        pane
                        pane
                        pane
                    }
                    pane split_direction="vertical" {
                        pane
                        pane
                        pane
                        pane
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
    }
    swap_tiled_layout name="stacked" {
        tab min_panes=5 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane split_direction="vertical" {
                    pane
                    pane stacked=true {
                        children
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
    }
    swap_floating_layout name="staggered" {
        floating_panes
    }
    swap_floating_layout name="enlarged" {
        floating_panes max_panes=10 {
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 1
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 2
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 3
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 4
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 5
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 6
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 7
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 8
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 9
            }
            pane focus=true {
                height "90%"
                width "90%"
                x 10
                y 10
            }
        }
    }
    swap_floating_layout name="spread" {
        floating_panes max_panes=1 {
            pane {
                x "50%"
                y "50%"
            }
        }
        floating_panes max_panes=2 {
            pane {
                width "45%"
                x "1%"
                y "25%"
            }
            pane {
                width "45%"
                x "50%"
                y "25%"
            }
        }
        floating_panes max_panes=3 {
            pane focus=true {
                height "45%"
                width "45%"
                y "55%"
            }
            pane {
                width "45%"
                x "1%"
                y "1%"
            }
            pane {
                width "45%"
                x "50%"
                y "1%"
            }
        }
        floating_panes max_panes=4 {
            pane {
                height "45%"
                width "45%"
                x "1%"
                y "55%"
            }
            pane focus=true {
                height "45%"
                width "45%"
                x "50%"
                y "55%"
            }
            pane {
                height "45%"
                width "45%"
                x "1%"
                y "1%"
            }
            pane {
                height "45%"
                width "45%"
                x "50%"
                y "1%"
            }
        }
    }
    }
  2. The result of dump-layout after changing the folder once
    layout {
    cwd "/home/pops/test/first"
    tab name="Tab #1" focus=true hide_floating_panes=true {
        pane size=1 borderless=true {
            plugin location="zellij:tab-bar"
        }
        pane command="zellij" focus=true {
            args "action" "dump-layout"
            start_suspended true
        }
        pane size=2 borderless=true {
            plugin location="zellij:status-bar"
        }
    }
    new_tab_template {
        pane size=1 borderless=true {
            plugin location="zellij:tab-bar"
        }
        pane
        pane size=2 borderless=true {
            plugin location="zellij:status-bar"
        }
    }
    swap_tiled_layout name="vertical" {
        tab max_panes=5 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane split_direction="vertical" {
                    pane
                    pane {
                        children
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
        tab max_panes=8 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane split_direction="vertical" {
                    pane {
                        children
                    }
                    pane {
                        pane
                        pane
                        pane
                        pane
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
        tab max_panes=12 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane split_direction="vertical" {
                    pane {
                        children
                    }
                    pane {
                        pane
                        pane
                        pane
                        pane
                    }
                    pane {
                        pane
                        pane
                        pane
                        pane
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
    }
    swap_tiled_layout name="horizontal" {
        tab max_panes=5 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane
                pane
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
        tab max_panes=8 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane {
                    pane split_direction="vertical" {
                        children
                    }
                    pane split_direction="vertical" {
                        pane
                        pane
                        pane
                        pane
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
        tab max_panes=12 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane {
                    pane split_direction="vertical" {
                        children
                    }
                    pane split_direction="vertical" {
                        pane
                        pane
                        pane
                        pane
                    }
                    pane split_direction="vertical" {
                        pane
                        pane
                        pane
                        pane
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
    }
    swap_tiled_layout name="stacked" {
        tab min_panes=5 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane split_direction="vertical" {
                    pane
                    pane stacked=true {
                        children
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
    }
    swap_floating_layout name="staggered" {
        floating_panes
    }
    swap_floating_layout name="enlarged" {
        floating_panes max_panes=10 {
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 1
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 2
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 3
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 4
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 5
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 6
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 7
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 8
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 9
            }
            pane focus=true {
                height "90%"
                width "90%"
                x 10
                y 10
            }
        }
    }
    swap_floating_layout name="spread" {
        floating_panes max_panes=1 {
            pane {
                x "50%"
                y "50%"
            }
        }
        floating_panes max_panes=2 {
            pane {
                width "45%"
                x "1%"
                y "25%"
            }
            pane {
                width "45%"
                x "50%"
                y "25%"
            }
        }
        floating_panes max_panes=3 {
            pane focus=true {
                height "45%"
                width "45%"
                y "55%"
            }
            pane {
                width "45%"
                x "1%"
                y "1%"
            }
            pane {
                width "45%"
                x "50%"
                y "1%"
            }
        }
        floating_panes max_panes=4 {
            pane {
                height "45%"
                width "45%"
                x "1%"
                y "55%"
            }
            pane focus=true {
                height "45%"
                width "45%"
                x "50%"
                y "55%"
            }
            pane {
                height "45%"
                width "45%"
                x "1%"
                y "1%"
            }
            pane {
                height "45%"
                width "45%"
                x "50%"
                y "1%"
            }
        }
    }
    }
  3. The result of dump-layout after changing the folder twice
    layout {
    cwd "/home/pops/test/second"
    tab name="Tab #1" focus=true hide_floating_panes=true {
        pane size=1 borderless=true {
            plugin location="zellij:tab-bar"
        }
        pane command="zellij" focus=true {
            args "action" "dump-layout"
            start_suspended true
        }
        pane size=2 borderless=true {
            plugin location="zellij:status-bar"
        }
    }
    new_tab_template {
        pane size=1 borderless=true {
            plugin location="zellij:tab-bar"
        }
        pane
        pane size=2 borderless=true {
            plugin location="zellij:status-bar"
        }
    }
    swap_tiled_layout name="vertical" {
        tab max_panes=5 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane split_direction="vertical" {
                    pane
                    pane {
                        children
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
        tab max_panes=8 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane split_direction="vertical" {
                    pane {
                        children
                    }
                    pane {
                        pane
                        pane
                        pane
                        pane
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
        tab max_panes=12 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane split_direction="vertical" {
                    pane {
                        children
                    }
                    pane {
                        pane
                        pane
                        pane
                        pane
                    }
                    pane {
                        pane
                        pane
                        pane
                        pane
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
    }
    swap_tiled_layout name="horizontal" {
        tab max_panes=5 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane
                pane
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
        tab max_panes=8 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane {
                    pane split_direction="vertical" {
                        children
                    }
                    pane split_direction="vertical" {
                        pane
                        pane
                        pane
                        pane
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
        tab max_panes=12 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane {
                    pane split_direction="vertical" {
                        children
                    }
                    pane split_direction="vertical" {
                        pane
                        pane
                        pane
                        pane
                    }
                    pane split_direction="vertical" {
                        pane
                        pane
                        pane
                        pane
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
    }
    swap_tiled_layout name="stacked" {
        tab min_panes=5 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane split_direction="vertical" {
                    pane
                    pane stacked=true {
                        children
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
    }
    swap_floating_layout name="staggered" {
        floating_panes
    }
    swap_floating_layout name="enlarged" {
        floating_panes max_panes=10 {
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 1
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 2
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 3
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 4
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 5
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 6
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 7
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 8
            }
            pane {
                height "90%"
                width "90%"
                x "5%"
                y 9
            }
            pane focus=true {
                height "90%"
                width "90%"
                x 10
                y 10
            }
        }
    }
    swap_floating_layout name="spread" {
        floating_panes max_panes=1 {
            pane {
                x "50%"
                y "50%"
            }
        }
        floating_panes max_panes=2 {
            pane {
                width "45%"
                x "1%"
                y "25%"
            }
            pane {
                width "45%"
                x "50%"
                y "25%"
            }
        }
        floating_panes max_panes=3 {
            pane focus=true {
                height "45%"
                width "45%"
                y "55%"
            }
            pane {
                width "45%"
                x "1%"
                y "1%"
            }
            pane {
                width "45%"
                x "50%"
                y "1%"
            }
        }
        floating_panes max_panes=4 {
            pane {
                height "45%"
                width "45%"
                x "1%"
                y "55%"
            }
            pane focus=true {
                height "45%"
                width "45%"
                x "50%"
                y "55%"
            }
            pane {
                height "45%"
                width "45%"
                x "1%"
                y "1%"
            }
            pane {
                height "45%"
                width "45%"
                x "50%"
                y "1%"
            }
        }
    }
    }
  4. The result of dump-layout after quitting and resurrecting
    layout {
    cwd "/home/pops/test/second"
    tab name="Tab #1" focus=true hide_floating_panes=true {
        pane size=1 borderless=true {
            plugin location="zellij:tab-bar"
        }
        pane command="zellij" focus=true {
            args "action" "dump-layout"
            start_suspended true
        }
        pane size=2 borderless=true {
            plugin location="zellij:status-bar"
        }
    }
    new_tab_template {
        pane size=1 borderless=true {
            plugin location="zellij:tab-bar"
        }
        pane cwd="/home/pops/test/second"
        pane size=2 borderless=true {
            plugin location="zellij:status-bar"
        }
    }
    swap_tiled_layout name="vertical" {
        tab max_panes=5 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane split_direction="vertical" {
                    pane
                    pane {
                        children
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
        tab max_panes=8 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane split_direction="vertical" {
                    pane {
                        children
                    }
                    pane {
                        pane
                        pane
                        pane
                        pane
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
        tab max_panes=12 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane split_direction="vertical" {
                    pane {
                        children
                    }
                    pane {
                        pane
                        pane
                        pane
                        pane
                    }
                    pane {
                        pane
                        pane
                        pane
                        pane
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
    }
    swap_tiled_layout name="horizontal" {
        tab max_panes=5 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane
                pane
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
        tab max_panes=8 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane {
                    pane split_direction="vertical" {
                        children
                    }
                    pane split_direction="vertical" {
                        pane
                        pane
                        pane
                        pane
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
        tab max_panes=12 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane {
                    pane split_direction="vertical" {
                        children
                    }
                    pane split_direction="vertical" {
                        pane
                        pane
                        pane
                        pane
                    }
                    pane split_direction="vertical" {
                        pane
                        pane
                        pane
                        pane
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
    }
    swap_tiled_layout name="stacked" {
        tab min_panes=5 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane split_direction="vertical" {
                    pane
                    pane stacked=true {
                        children
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
    }
    swap_floating_layout name="staggered" {
        floating_panes
    }
    swap_floating_layout name="enlarged" {
        floating_panes max_panes=10 {
            pane cwd="/home/pops/test/second" {
                height "90%"
                width "90%"
                x "5%"
                y 1
            }
            pane cwd="/home/pops/test/second" {
                height "90%"
                width "90%"
                x "5%"
                y 2
            }
            pane cwd="/home/pops/test/second" {
                height "90%"
                width "90%"
                x "5%"
                y 3
            }
            pane cwd="/home/pops/test/second" {
                height "90%"
                width "90%"
                x "5%"
                y 4
            }
            pane cwd="/home/pops/test/second" {
                height "90%"
                width "90%"
                x "5%"
                y 5
            }
            pane cwd="/home/pops/test/second" {
                height "90%"
                width "90%"
                x "5%"
                y 6
            }
            pane cwd="/home/pops/test/second" {
                height "90%"
                width "90%"
                x "5%"
                y 7
            }
            pane cwd="/home/pops/test/second" {
                height "90%"
                width "90%"
                x "5%"
                y 8
            }
            pane cwd="/home/pops/test/second" {
                height "90%"
                width "90%"
                x "5%"
                y 9
            }
            pane cwd="/home/pops/test/second" focus=true {
                height "90%"
                width "90%"
                x 10
                y 10
            }
        }
    }
    swap_floating_layout name="spread" {
        floating_panes max_panes=1 {
            pane cwd="/home/pops/test/second" {
                x "50%"
                y "50%"
            }
        }
        floating_panes max_panes=2 {
            pane cwd="/home/pops/test/second" {
                width "45%"
                x "1%"
                y "25%"
            }
            pane cwd="/home/pops/test/second" {
                width "45%"
                x "50%"
                y "25%"
            }
        }
        floating_panes max_panes=3 {
            pane cwd="/home/pops/test/second" focus=true {
                height "45%"
                width "45%"
                y "55%"
            }
            pane cwd="/home/pops/test/second" {
                width "45%"
                x "1%"
                y "1%"
            }
            pane cwd="/home/pops/test/second" {
                width "45%"
                x "50%"
                y "1%"
            }
        }
        floating_panes max_panes=4 {
            pane cwd="/home/pops/test/second" {
                height "45%"
                width "45%"
                x "1%"
                y "55%"
            }
            pane cwd="/home/pops/test/second" focus=true {
                height "45%"
                width "45%"
                x "50%"
                y "55%"
            }
            pane cwd="/home/pops/test/second" {
                height "45%"
                width "45%"
                x "1%"
                y "1%"
            }
            pane cwd="/home/pops/test/second" {
                height "45%"
                width "45%"
                x "50%"
                y "1%"
            }
        }
    }
    }
  5. The result of dump-layout after 4 and after changing the directory one more time
    layout {
    cwd "/home/pops/test"
    tab name="Tab #1" focus=true hide_floating_panes=true {
        pane size=1 borderless=true {
            plugin location="zellij:tab-bar"
        }
        pane command="zellij" focus=true {
            args "action" "dump-layout"
            start_suspended true
        }
        pane size=2 borderless=true {
            plugin location="zellij:status-bar"
        }
    }
    new_tab_template {
        pane size=1 borderless=true {
            plugin location="zellij:tab-bar"
        }
        pane cwd="/home/pops/test/second"
        pane size=2 borderless=true {
            plugin location="zellij:status-bar"
        }
    }
    swap_tiled_layout name="vertical" {
        tab max_panes=5 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane split_direction="vertical" {
                    pane
                    pane {
                        children
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
        tab max_panes=8 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane split_direction="vertical" {
                    pane {
                        children
                    }
                    pane {
                        pane
                        pane
                        pane
                        pane
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
        tab max_panes=12 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane split_direction="vertical" {
                    pane {
                        children
                    }
                    pane {
                        pane
                        pane
                        pane
                        pane
                    }
                    pane {
                        pane
                        pane
                        pane
                        pane
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
    }
    swap_tiled_layout name="horizontal" {
        tab max_panes=5 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane
                pane
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
        tab max_panes=8 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane {
                    pane split_direction="vertical" {
                        children
                    }
                    pane split_direction="vertical" {
                        pane
                        pane
                        pane
                        pane
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
        tab max_panes=12 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane {
                    pane split_direction="vertical" {
                        children
                    }
                    pane split_direction="vertical" {
                        pane
                        pane
                        pane
                        pane
                    }
                    pane split_direction="vertical" {
                        pane
                        pane
                        pane
                        pane
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
    }
    swap_tiled_layout name="stacked" {
        tab min_panes=5 {
            pane size=1 borderless=true {
                plugin location="zellij:tab-bar"
            }
            pane {
                pane split_direction="vertical" {
                    pane
                    pane stacked=true {
                        children
                    }
                }
            }
            pane size=2 borderless=true {
                plugin location="zellij:status-bar"
            }
        }
    }
    swap_floating_layout name="staggered" {
        floating_panes
    }
    swap_floating_layout name="enlarged" {
        floating_panes max_panes=10 {
            pane cwd="/home/pops/test/second" {
                height "90%"
                width "90%"
                x "5%"
                y 1
            }
            pane cwd="/home/pops/test/second" {
                height "90%"
                width "90%"
                x "5%"
                y 2
            }
            pane cwd="/home/pops/test/second" {
                height "90%"
                width "90%"
                x "5%"
                y 3
            }
            pane cwd="/home/pops/test/second" {
                height "90%"
                width "90%"
                x "5%"
                y 4
            }
            pane cwd="/home/pops/test/second" {
                height "90%"
                width "90%"
                x "5%"
                y 5
            }
            pane cwd="/home/pops/test/second" {
                height "90%"
                width "90%"
                x "5%"
                y 6
            }
            pane cwd="/home/pops/test/second" {
                height "90%"
                width "90%"
                x "5%"
                y 7
            }
            pane cwd="/home/pops/test/second" {
                height "90%"
                width "90%"
                x "5%"
                y 8
            }
            pane cwd="/home/pops/test/second" {
                height "90%"
                width "90%"
                x "5%"
                y 9
            }
            pane cwd="/home/pops/test/second" focus=true {
                height "90%"
                width "90%"
                x 10
                y 10
            }
        }
    }
    swap_floating_layout name="spread" {
        floating_panes max_panes=1 {
            pane cwd="/home/pops/test/second" {
                x "50%"
                y "50%"
            }
        }
        floating_panes max_panes=2 {
            pane cwd="/home/pops/test/second" {
                width "45%"
                x "1%"
                y "25%"
            }
            pane cwd="/home/pops/test/second" {
                width "45%"
                x "50%"
                y "25%"
            }
        }
        floating_panes max_panes=3 {
            pane cwd="/home/pops/test/second" focus=true {
                height "45%"
                width "45%"
                y "55%"
            }
            pane cwd="/home/pops/test/second" {
                width "45%"
                x "1%"
                y "1%"
            }
            pane cwd="/home/pops/test/second" {
                width "45%"
                x "50%"
                y "1%"
            }
        }
        floating_panes max_panes=4 {
            pane cwd="/home/pops/test/second" {
                height "45%"
                width "45%"
                x "1%"
                y "55%"
            }
            pane cwd="/home/pops/test/second" focus=true {
                height "45%"
                width "45%"
                x "50%"
                y "55%"
            }
            pane cwd="/home/pops/test/second" {
                height "45%"
                width "45%"
                x "1%"
                y "1%"
            }
            pane cwd="/home/pops/test/second" {
                height "45%"
                width "45%"
                x "50%"
                y "1%"
            }
        }
    }
    }
Parry-97 commented 10 months ago

For what it's worth, I noticed that after the resurrection the "top level" cwd (first line of dump-layout) seems to be correct whereas the wrong one are the cwd of some nested pane elements (dumps 4 to 5), which are not even present in the dump-layout before resurrection (dumps 1 to 3).

jelenv commented 3 months ago

This looks like a duplicate of: https://github.com/zellij-org/zellij/issues/2978