>> >> > 09) close other tabs with 'C-x t 1' >> >> > 10) change window layout with 'C-x 1' and 'C-x ' >> >> > 11) restore frameset with 'C-x r j a' >> >> > 12) BUG: it shows 03 tabs, must should show only 1 >> >> >> >> We need to clarify the semantics of 'C-x r f': >> >> what it's expected for it to do with tabs? >> > >> > Theoretically, tabs are not part of a frameset, so I think the >> > expectations here are incorrect. >> >> However, for example, in the desktop file tabs are part of a frameset, >> and tabs are restored by restoring the frameset from the desktop file. > > I'm confused: if framesets support tabs and their restoration, then > why did you say that we need to clarify what "C-x r f" does with tabs? I don't use "C-x r f" and didn't know what it does, so needed to look at 'frameset-to-register', and surprisingly it uses the same 'frameset-save' that is used by the desktop. But the problem is that its filters didn't use 'copy-tree' for tabs, so any changes in tabs within the current session also modified the data saved in the register too. I didn't find a suitable existing filter in 'frameset-filter-params' that uses 'copy-tree' on saving, so added a new filter ':copy-tree':