Live data from Hacker News

Terminology – a new terminal emulator

enlightenment.org

61–70 of 143 posts

Re: Terminology – a new terminal emulator

#61

I used to care a lot about tabs and pane splitting in the terminal emulator. Then I discovered terminal multiplexers: screen, then tmux. Now I don't want those features in the terminal emulator anymore, as they overlap and even conflict with the terminal multiplexer.

Terminal multiplexers (screen/tmux/dtach) and native terminal emulators each provide unique features, so for me the best is a combination of both!

If you use a mac, I encourage you to try iTerm2/tmux-git. The combination allows you to reconnect to a remote tmux session and get a window with all of your tabs for that server. You'll never need to know the tmux commands again. You'll just use your native commands to switch tabs, search the history, see the list of open tabs, open new tabs, etc. This is the killer setup.

Re: Terminology – a new terminal emulator

#62
post #60
post #50

Earlier quoted context omitted.

Please open bug reports on http://trac.enlightenment.org/e/newticket or at least explain your issues here so I know what to fix. Also check in the TODO file if it's not already listed. I'm currently working on text reflow when resizing terminology.

Text reflow accurately characterizes the issues I would think you'd be working on, to fix what I've seen. I just fired up a virtualbox. All you have to do to see the misbehavior is run 'ps wuax' in a regular 80x24 terminology and then go to fullscreen. Your cursor winds up in the middle of the screen, above some of the text that used to show before the cursor, and before the cursor is a big empty space or certainly n…

It's exactly what I'm working on, thank you. See trac.enlightenment.org/e/ticket/1184 It will be there for the next release.

Re: Terminology – a new terminal emulator

#63
post #53
post #47

Earlier quoted context omitted.

Unfortunately, terminology seems to be broken for me :( [buster@Fry➔ ~] terminology terminology: symbol lookup error: /usr/lib/libelementary.so.1: undefined symbol: ECORE_X_ATOM_E_ILLUME_ACCESS_ACTION_ACTIVATE

You might get this error when your EFL stack needs upgrading. Did you use the PPA? What version of Ubuntu are you on? For me, I wasn't able to finish apt-get upgrade without uninstalling an old libefl and all of its dependencies (some libraries that have been since merged into libefl I think), then installing again. Try doing `apt-get dist-upgrade`

I had theefl-trunk installed before, but ppa-purge didn't remove everything, i suppose. Went through libe* libraries and purged whatever came from e17. Installed again.. working now, woohooo!

Re: Terminology – a new terminal emulator

#64
post #54

I used to care a lot about tabs and pane splitting in the terminal emulator. Then I discovered terminal multiplexers: screen, then tmux. Now I don't want those features in the terminal emulator anymore, as they overlap and even conflict with the terminal multiplexer.

Guys, why don't you just go ahead and get yourself a tiling window manager?? http://awesome.naquadah.org/

Or perahps I3!

http://i3wm.org/

Re: Terminology – a new terminal emulator

#65

I used to care a lot about tabs and pane splitting in the terminal emulator. Then I discovered terminal multiplexers: screen, then tmux. Now I don't want those features in the terminal emulator anymore, as they overlap and even conflict with the terminal multiplexer.

Somehow I wasn't previously familiar with tmux, and that looks _fantastic_.

I've been stacking screen sessions for years, so this is really exciting. Thanks!

Re: Terminology – a new terminal emulator

#66

I used to care a lot about tabs and pane splitting in the terminal emulator. Then I discovered terminal multiplexers: screen, then tmux. Now I don't want those features in the terminal emulator anymore, as they overlap and even conflict with the terminal multiplexer.

I still like tabs. I'm often logged into multiple remote machines where, for me, a terminal emulator's tab represents a unique SSH connection and that tab then has tmux running on the remote machine. Otherwise, I'd be running tmux on my local machine, then want to run tmux on a remote machine, and nesting terminal multiplexers is not good.

I think that's a big differentiator in people's CLI preferences. When I see prompts that don't include $HOSTNAME, and people eschewing tabs for multiplexing in all cases I just assume they rarely manage remote machines.

Re: Terminology – a new terminal emulator

#67

I used to care a lot about tabs and pane splitting in the terminal emulator. Then I discovered terminal multiplexers: screen, then tmux. Now I don't want those features in the terminal emulator anymore, as they overlap and even conflict with the terminal multiplexer.

I still like tabs. I'm often logged into multiple remote machines where, for me, a terminal emulator's tab represents a unique SSH connection and that tab then has tmux running on the remote machine. Otherwise, I'd be running tmux on my local machine, then want to run tmux on a remote machine, and nesting terminal multiplexers is not good.

As long as you keep a proper frame of reference, you'll be fine (I disable tmux's status bar on nested tmux sessions though). You can use C-a a, or something similar to send a C-a to the nested session, although it can be a little annoying.

Re: Terminology – a new terminal emulator

#68

I used to care a lot about tabs and pane splitting in the terminal emulator. Then I discovered terminal multiplexers: screen, then tmux. Now I don't want those features in the terminal emulator anymore, as they overlap and even conflict with the terminal multiplexer.

I use tmux daily but I still rely on emulator tabs when tailing verbose files as sending it through tmux will lock up my terminal.

Re: Terminology – a new terminal emulator

#69

I used to care a lot about tabs and pane splitting in the terminal emulator. Then I discovered terminal multiplexers: screen, then tmux. Now I don't want those features in the terminal emulator anymore, as they overlap and even conflict with the terminal multiplexer.

I still like tabs. I'm often logged into multiple remote machines where, for me, a terminal emulator's tab represents a unique SSH connection and that tab then has tmux running on the remote machine. Otherwise, I'd be running tmux on my local machine, then want to run tmux on a remote machine, and nesting terminal multiplexers is not good.

Nesting terminal multiplexers is very good, I do it for exactly the use case you mentioned. Escaping your escape key is easy, with a little practice you won't even realize you're doing it.

I have a shell function called 'go' that creates a new screen and labels it, connects to the remote host via SSH, and then recreates or re-attaches to the remote scren as appropriate. My top level screen session currently has 8 remote hosts I'm logged into, each running their own nested screen sessions.

My go() function also reads my ~/.ssh/config file to grab all my host aliases so I can tab complete to them. Note, I'm a Perl programmer, and rarely write shell scripts, so this function may be kinda ugly.

    go()
    {
        local OPTIND OPTARG
        local SCREENCMD="screen -dRR"

        while getopts "xn" flag; do
            case "$flag" in
                x) SCREENCMD="screen -xRR"; shift;;
                n) SCREENCMD=""; shift;;
            esac
        done

        if [ "$#" == "0" ]; then
            echo "Need someplace to go."
            return 1;
        fi

        while (( "$#" )); do
            screen -t $1 ssh -tq $1 $SCREENCMD
            shift
        done
    }

    _go_show()
    {
        local curr opts
        cur="${COMP_WORDS[COMP_CWORD]}"
        opts=$(grep 'Host ' ~/.ssh/config | cut -d' ' -f2)
        COMPREPLY=( $(compgen -W "${opts}" ${cur}) )
    }
    complete -F _go_show go

Re: Terminology – a new terminal emulator

#70

I used to care a lot about tabs and pane splitting in the terminal emulator. Then I discovered terminal multiplexers: screen, then tmux. Now I don't want those features in the terminal emulator anymore, as they overlap and even conflict with the terminal multiplexer.

Personally, I really like to be able to drag the splits between terminals, use my scroll wheel, and click between tabs.

Maybe these things can be enabled in tmux somehow? I know on a mac tmux/iTerm can do these things, but I'm on linux.

Post reply on HN