• tal@lemmy.today
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    5 months ago

    Tier 1: Linux virtual consoles. Switch among these with Alt-F1 through Alt-F8. Control-Alt instead of Alt if in Wayland. I have seven with a text terminal and Wayland on the eighth. This tier supports showing only one virtual console at once.

    Tier 2: Inside the Wayland virtual terminal, Sway managing virtual desktops. I use nonstandard keybindings here: Super-1 and -2 to cycle left and right, and Super-Q n to go to the n-th desktop. Beyond the first ten desktops, I can use Super-R to rename a desktop to a “named” desktop. For cycling purposes, these come after the first ten. This tier supports showing only one desktop at once.

    Tier 3: Inside a Sway virtual desktop, windows managed by Sway. This tier supports splitting, showing multiple windows at once. I use nonstandard emacs-style keybindings, Super-F/B/N/P to move among those. These are often running a virtual terminal program, foot. I don’t use a multiplexing terminal with multiple “tabs”, because I favor a more minimalist setup with fewer tiers.

    Tier 4: Inside a Sway-managed window, mosh. This tier isn’t always present; I only use this tier if I’m using a remote system. Mosh has its own concept of sessions. These can be used in conjunction with Tmux’s sessions — mosh’s system is designed to smooth over connectivity issues. Lose network connectivity and mosh will display a message. Hibernate a laptop for a month with a mosh connection open to another machine, open the lid, and mosh will transparently re-establish its connections as if there had been no interruption. I mostly use mosh to reduce perceived latency, but the connectivity stuff is neat. Not much interaction with this tier, short of force-exiting with Control-^ . and this tier only supports showing one session in a terminal at once.

    Tier 5: Inside a mosh session, tmux sessions. Tmux has its own set of sessions, which one can attach to with tmux attach. This tier only supports showing one session at once.

    Tier 6: Inside a tmux session, tmux windows. I use a nonstandard prefix key for tmux (and GNU screen) to reduce friction with emacs — Control-O. I use emacs-style keybindings to cycle among windows — Control-O Control-N/Control-P. This tier does support splitting to show multiple tmux windows at once, though I don’t use that functionality.

    Tier 7: Inside a tmux window, I run a bash shell process. Bash supports job control. Control-Z to suspend the current job and return to bash, jobs to list jobs, fg %n to activate the nth job.

    Tier 8: Inside a bash job, I might be running emacs, and that has emacs frames. If you’re using graphical emacs, each frame corresponds to a window in your windowing environment. In terminal emacs, each is basically another invisible layer that you can switch among. C-x 5 2 to create a new frame, C-x 5 o to cycle, C-x 5 0 to destroy. This tier does not support showing multiple frames at once.

    Tier 9: Emacs buffers. Each “buffer” might be a text file, a email client with mu4e, an LLM chat session with ellama, a “spreadsheet” with an org-mode table, whatever. One can show multiple emacs windows and assign a buffer to each emacs window (emacs has its own concept of windows, which kinda correspond to “panes” in most programs). Emacs has many systems for switching among these, but I mostly use one of two fairly vanilla add-on packages, either C-x b for ido-switch-buffer to switch among buffers using tab-completing names, or C-x C-b to use ibuffer, which provides menu-based selection.

    Tier 10: Usually not something I use in conjunction with emacs, but if one is running a bash instance in an emacs shell-mode buffer (M-x shell), then bash’s job control comes into the picture. Emacs shell-mode requires one to prefix each bash control key sequence with C-c, so C-c C-z to suspend the current job, and return to shell, jobs to list current jobs, and fg %n to activate the n-th job. Can only show one job at once.

    EDIT: You could maybe make an argument that there’s another tier between Tier 7 and Tier 8, because I use an emacs feature called desktop.el that persists an emacs session, including its frames and windows and open buffers and all across invocations of emacs for a given project. But I rarely use this, so it’s not normally in the stack. If it’s there, you can only have one active at once, no “split desktop.el” functionality.

    • Riskable@programming.dev
      link
      fedilink
      English
      arrow-up
      0
      ·
      5 months ago

      Crank that knob up to 11: Using multiple computers simultaneously to manage all your shit—with some having special hardware dedicated to the task!

  • Ŝan • 𐑖ƨɤ@piefed.zip
    link
    fedilink
    English
    arrow-up
    0
    ·
    5 months ago

    Lordy.

    I’ve always used virtual desktops, but my life changed when I realized I could chain tags in herbstluftwm. Now I have music player, visualize, & todos always on monitor 1. Then I have Meta-[1-5] bound to switch monitors 2 & 3 in sync between virtual workspaces:

    1: programming, web on 2, editor on 3 2: remote, terminals into VPSes and LAN computers, and gotop 3: communications, IM chats on 2, email, Matrix, irc, discourse, SMS bridge on 3 4; random, Factorio or movie on 3, and often Vial on 2, because. 5: more random, usually Darktable, Gimp, Inkscape or some combination depending.

    I don’t have 6-9 bound, because 4 or 5 are usually free for whatever.

  • magikmw@piefed.social
    link
    fedilink
    English
    arrow-up
    0
    ·
    5 months ago

    For me it’s:

    1. Workstuff
    2. Games
    3. Main browser for mail, etc.
    4. All the messenger apps

    Music player lives in yakuake dropdown terminal.

  • GreenKnight23@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    5 months ago

    shit dude, I’ve got more than 4.

    1. comms(chat/email/tickets)
    2. remote desktop access
    3. terminal/editor
    4. primary local development browser/console
    5. primary research/notes/documentation
    6. project 2 research/notes
    7. project 3 research/notes
    8. project 4 research/notes
    9. infrastructure migration project lead by PM
    10. browser for stupid shit/music
  • KazuchijouNo@lemy.lol
    link
    fedilink
    English
    arrow-up
    0
    ·
    5 months ago

    Desktop 1 is for my music, browser, socials, maybe a yt video.

    Desktop 2 is my work windows VM with spreadsheets and stuff

  • Ascend910@lemmy.ml
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    5 months ago
    1. Browser, other main stuff
    2. Games, games never leaves 2
    3. Terminal, ide, file manager
    4. Blender, libre office, teams, cad, lmms, davenci resolve
    5. Virtual box, vmware, virtmanager
    6. Moonlight, parsec, vnc, rdp.
      7-9 when I run out of space in my other desktops
    7. Music player, obs, uget, qbittorrent, xclicker, discord
  • rtxn@lemmy.worldM
    link
    fedilink
    arrow-up
    0
    ·
    5 months ago

    I miss Qtile’s hackability. I basically rewrote the entire GroupBox widget, the master/stack layout algorithm, and the behaviour of workspaces to mimic AwesomeWM’s tagging functionality.

  • QualifiedKitten@discuss.online
    link
    fedilink
    English
    arrow-up
    0
    ·
    5 months ago

    Desktop 1: The things I need to do (applying for jobs) Desktop 2: The other things I should do (building relevant career skills) Desktop 3: The things I actually do (random hobbies & volunteer work) Desktop 4: I have no fucking clue, maybe reddit?

  • HeyJoe@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    5 months ago

    I never got into these at all. My coworker thought it was crazy that I never did. I just get a bigger monitor to fit all my stuff, lol. Right now, it’s a 49" ultrawide and have no issues.

  • Caveman@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    5 months ago

    I have mine as

    1. Fronted
    2. Backend
    3. Database
    4. Browser
    5. Music
    6. Project management
    7. Messaging/Email

    All bound to Meta+h/j/k/l/y/u/i and have a bash function to run and configured to go to the right places. KDE is good

    • kernelle@0d.gs
      link
      fedilink
      arrow-up
      0
      ·
      edit-2
      5 months ago

      Ah I’ve found my people, I’m doing 9 atm to complete a 3x3 square in the overview. Only on my laptop though, using the trackpad guestures to switch or overview.

      1: Terminal 2: Editor 3: Git
      4: Terminal 5: Browser 6: Browser
      7: Terminal 8: Any GUI 9: Rest

    • Eager Eagle@lemmy.world
      link
      fedilink
      English
      arrow-up
      0
      ·
      5 months ago

      What’s the bash function doing? Moving windows to the right desktops when they’re open? Do you have them open on system startup?

      • ikidd@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        5 months ago

        Moving windows to the right desktops when they’re open?

        You can do that with Window Rules in KDE.