Live data from Hacker News

St – A simple terminal implementation for X

st.suckless.org

11–20 of 223 posts

Re: St – A simple terminal implementation for X

#11
post #2

Why do people care so much about terminal emulators and their supposed "bloat" and "complexity"?

There have been many times when vim starts glitching out or something because of the terminal emulator I'm using. Even well tested ones like X-term and gnome-terminal. I never had that problem using st. We hack so much into a text interface it's really easy to accumulate bugs.

Have you considered using neovim?

Re: St – A simple terminal implementation for X

#12

I like the principles behind its design, but not supporting scrollback and saying "that functionality should be provided by tmux or something similar" is baffling when it's done in the name of removing bloat and complexity. Not everybody wishes to use a terminal multiplexer in all cases, either.

They use patches of the source code for plugin style functionality so it remains as minimal as they want and we can add features at will. There is one for scrollback

Re: St – A simple terminal implementation for X

#13

I like the principles behind its design, but not supporting scrollback and saying "that functionality should be provided by tmux or something similar" is baffling when it's done in the name of removing bloat and complexity. Not everybody wishes to use a terminal multiplexer in all cases, either.

I can't believe they added serial line support and not scrollback. If you're going to claim bloat, serial line support definitely ranks lower on priority than scrollback.

Re: St – A simple terminal implementation for X

#14
I don't use C for a couple of years and I see this:

void (handler[LASTEvent]) (XEvent ) = { [ButtonPress] = buttonpress, [ConfigureRequest] = configurerequest, [DestroyNotify] = destroynotify, [EnterNotify] = enternotify, [LeaveNotify] = leavenotify, [KeyPress] = keypress, [MappingNotify] = mappingnotify, [MapRequest] = maprequest, [PropertyNotify] = propertynotify, [UnmapNotify] = unmapnotify };

What's this feature called?

Re: St – A simple terminal implementation for X

#15

I don't use C for a couple of years and I see this: void ( handler[LASTEvent]) (XEvent ) = { [ButtonPress] = buttonpress, [ConfigureRequest] = configurerequest, [DestroyNotify] = destroynotify, [EnterNotify] = enternotify, [LeaveNotify] = leavenotify, [KeyPress] = keypress, [MappingNotify] = mappingnotify, [MapRequest] = maprequest, [PropertyNotify] = propertynotify, [UnmapNotify] = unmapnotify }; What's this feature…

Designated initializers. It's in C99.

Re: St – A simple terminal implementation for X

#16

I like the principles behind its design, but not supporting scrollback and saying "that functionality should be provided by tmux or something similar" is baffling when it's done in the name of removing bloat and complexity. Not everybody wishes to use a terminal multiplexer in all cases, either.

It is explained in the info that scrollback is implemented in dvtm. Duplicating the functionality would probably go against the general minimalist Suckless design philosophy.

    Non-goals:
    unlimited scrollback buffer (done by dvtm)

Re: St – A simple terminal implementation for X

#17

I like the principles behind its design, but not supporting scrollback and saying "that functionality should be provided by tmux or something similar" is baffling when it's done in the name of removing bloat and complexity. Not everybody wishes to use a terminal multiplexer in all cases, either.

Different people want different features. There's no way they're going to remain minimal and please everyone. They have to choose the feature set, and if other programs can provide a feature that some users want, that seems like a feature ripe for pruning. I think they made the right choice.

I always find tmux's scrollback to be vastly inferior to a native terminal's though.

There are several reasons, but the biggest is that I'm pretty sure it's not possible to get more than a screenfull of text to my local X11 PRIMARY selection.

Re: St – A simple terminal implementation for X

#18

I like the principles behind its design, but not supporting scrollback and saying "that functionality should be provided by tmux or something similar" is baffling when it's done in the name of removing bloat and complexity. Not everybody wishes to use a terminal multiplexer in all cases, either.

Scrollback is implemented as a patch: http://st.suckless.org/patches/scrollback

Re: St – A simple terminal implementation for X

#19
post #17

Earlier quoted context omitted.

Different people want different features. There's no way they're going to remain minimal and please everyone. They have to choose the feature set, and if other programs can provide a feature that some users want, that seems like a feature ripe for pruning. I think they made the right choice.

I always find tmux's scrollback to be vastly inferior to a native terminal's though. There are several reasons, but the biggest is that I'm pretty sure it's not possible to get more than a screenfull of text to my local X11 PRIMARY selection.

I know that there is an option for integrating tmux's internal clipboard with X11's but I haven't bothered with them because I prefer to keep the clipboards of the various terminal apps I use separate.

Re: St – A simple terminal implementation for X

#20
post #17

Earlier quoted context omitted.

Different people want different features. There's no way they're going to remain minimal and please everyone. They have to choose the feature set, and if other programs can provide a feature that some users want, that seems like a feature ripe for pruning. I think they made the right choice.

I always find tmux's scrollback to be vastly inferior to a native terminal's though. There are several reasons, but the biggest is that I'm pretty sure it's not possible to get more than a screenfull of text to my local X11 PRIMARY selection.

I just use tmux's native copy/paste mechanism, using the keyboard. Using that it's possible to get the full scrollback buffer, or any part of it.
Post reply on HN