I dunno if this is appropriate for this community, so mods, please delete if not.

I have been writing a screen clone in rust.

https://github.com/cameroncros/PoorMansScreen/tree/better_screen (The main branch is how I currently use it, not at all screen-like, the better_screen branch is much closer to a screen replacement.)

It all currently works fine, albeit quite simple, and I suspect not following best practices. Please talk shit about my code so I can fix that :D

For my next stage of development, I would like to use some combo of vt100 and ratatui to wrap the shell in a border, or add a menu bar at the top or bottom to make it clear when the user is inside a “screen”. Does anyone have any thoughts on how to go about doing that? I am very unskilled at ratatui.

  • XTL@sopuli.xyz
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    4 days ago

    My first thoughts was also “Don’t. Clone tmux instead.” But don’t use ctrl-b. It’s a massively awkward and annoying combo on common keyboards. And don’t make it necessary to release ctrl before the second key.

    • BB_C@programming.dev
      link
      fedilink
      arrow-up
      3
      ·
      4 days ago

      But don’t use ctrl-b

      What migrant from screen didn’t start by adding this to tmux config? 😄

      set-option -g prefix C-a
      unbind-key "C-b"
      bind-key "C-a" send-prefix
      
      • sugar_in_your_tea@sh.itjust.works
        link
        fedilink
        arrow-up
        1
        ·
        46 minutes ago

        I do the same, but with ctrl-t. Ctrl-a means select all, and t means “tmux” and happens to be under my right middle finger on my layout (dvorak).