I was vaguely aware of them but presumed they’d been added mostly for those who were more used to that UI convention: not something long-time users of Emacs might really need but Emacs (as usual) trying to accommodate all types of usage styles or preferences.

But, trying it out the other day briefly out of curiosity, I noticed that tabs could hold their own window configuration/layout (which, like, makes sense but hadn’t dawned on me).

And I started thinking that I could use them in the same way I tend to use desktop workspaces: organizational buckets to put groups of windows in.

I’ve used registers to save particular window layouts but that has the added effect of, also, saving the point, as well (which, while I could keep saving to that register so I don’t end up at a totally different portion of the file when I try to go to the layout, it’s certainly less than ideal).

Tabs seem to keep track of your most recent buffer, per tab, – as well – so I can have each tab be their own little environment. I could open up Elfeed in one (along with all of the new buffers that might generate), a Magit buffer and various files from that repo. in another, and Wanderlust to check my E-mail in a third. And, whenever I switch to one, whatever other buffer I’d been working in before the current buffer of the tab is just a switch away because each tab keeps the correct buffer order of what was done in it.

Maybe this isn’t new to anyone else but I rarely see people talk about tabs (other than brief, once-in-a-blue-moon mentions) but, while maybe not suitable for every person’s workflow, this is yet another way the flexibility and power of Emacs just blows anything else out of the water, to me. It’s such a useful iteration on the common UI structure.

Just wondering if anyone else uses them, found any pitfalls with them, etc. Mostly curious about people’s experiences and if it’s as infrequently used as my impression originally was.

  • oantolin@discuss.online
    link
    fedilink
    arrow-up
    1
    ·
    7 days ago

    As you say, they are basically just window configurations, so I do use them ocassionally. If, in addition to remembering an Emacs window configuration I also want to remember whether the frame is maximized or not, I will use frames instead of tabs. I used to put window configurations into registers, before tabs existed, but tabs are better because when you put a window configuration into a register it even remembers the location of point in every buffer. This means that when you restore the window configuration from the register, points get restored to where they were when you stored the configuration, not to the last time you were using it. In this sense tabs are like window configuration registers that automatically update every time you switch away from them.

  • Trent@lemmy.ml
    link
    fedilink
    English
    arrow-up
    4
    arrow-down
    1
    ·
    8 days ago

    I use them with the activities package. It’s handy to be able to open a tab with a given arrangement of windows with specific files open in them.

  • aard@kyu.de
    link
    fedilink
    arrow-up
    2
    ·
    7 days ago

    And I started thinking that I could use them in the same way I tend to use desktop workspaces: organizational buckets to put groups of windows in.

    I use eyebrowse for that - also gives me that functionality without wasting space with useless UI elements

    • oantolin@discuss.online
      link
      fedilink
      arrow-up
      1
      ·
      7 days ago

      Tabs only have “useless UI elements” if you want them to! This is Emacs, after all. To use tabs without displaying any UI element set tab-bar-show to nil.

  • bledley@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    8 days ago

    Don’t find much use for them personally but some are in the tabs frame of mind and some are in the buffers, whatever works for you… I just think in buffers and the buffer list. Maybe if I have a very separate set of work going on I might want to put it in a tab. I think of tabs in Emacs more like a workspace or session (ala Tmux)

    • tomenzggOP
      link
      fedilink
      English
      arrow-up
      3
      arrow-down
      1
      ·
      8 days ago

      But I’m not talking about jumping to any buffer, right? I’m talking about jumping to any window configuration.

      Incidentally, you can easily still use tabs without taking up any further space. Turning off tab-bar mode will hide the tab bar, at the top, but you can still switch tabs (just without the visual cue).

  • j4k3@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    arrow-down
    2
    ·
    edit-2
    8 days ago

    Keeping my buffers tabbed helps. I’ve been keeping my packages config with another for gptel while comparing all of the Deepseek R1 distilled mergers with Qwen 2.5 Coder models I can find, and another for my actual project of trying to connect a MSP430 uC from scratch… or hopefully soon. Tabs help keep the three scopes mentally sorted but I also use the menu and file bar.

    Edit: Someone track this down vote troll and ban them please