• null_dot@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    0
    ·
    1 month ago

    What on earth is a modern terminal?

    There’s lots of terminal emulators. I like ghostty. You can just install it.

    • drspod@lemmy.ml
      link
      fedilink
      arrow-up
      0
      ·
      1 month ago

      First paragraph after the introduction:

      what is a “modern terminal experience”? Here are a few things that are important to me, with which part of the system is responsible for them:

      • multiline support for copy and paste: if you paste 3 commands in your shell, it should not immediately run them all! That’s scary! (shell, terminal emulator)
      • infinite shell history: if I run a command in my shell, it should be saved forever, not deleted after 500 history entries or whatever. Also I want commands to be saved to the history immediately when I run them, not only when I exit the shell session (shell)
      • a useful prompt: I can’t live without having my current directory and current git branch in my prompt (shell)
      • 24-bit colour: this is important to me because I find it MUCH easier to theme neovim with 24-bit colour support than in a terminal with only 256 colours (terminal emulator)
      • clipboard integration between vim and my operating system so that when I copy in Firefox, I can just press p in vim to paste (text editor, maybe the OS/terminal emulator too)
      • good autocomplete: for example commands like git should have command-specific autocomplete (shell)
      • having colours in ls (shell config)
      • a terminal theme I like: I spend a lot of time in my terminal, I want it to look nice and I want its theme to match my terminal editor’s theme. (terminal emulator, text editor)
      • automatic terminal fixing: If a programs prints out some weird escape codes that mess up my terminal, I want that to automatically get reset so that my terminal doesn’t get messed up (shell)
      • keybindings: I want Ctrl+left arrow to work (shell or application) being able to use the scroll wheel in programs like less: (terminal emulator and applications)

      There are a million other terminal conveniences out there and different people value different things, but those are the ones that I would be really unhappy without.

      So basically it’s the features that have been standard in shells and terminal emulators for the past couple of decades.