st is a simple terminal that sucks less, but it does not have scroll back support, aka "scrollbackabilty". :)
One way to remedy this, is to use tmux or GNU screen. tmux has a disadvantage in the sense it doesn't reflow text.
tmux setup in dwm's config.h
static const char *termcmd[] = { "st", "-e", "tmux", NULL };
tmux
has some added bonuses, like keeping the width so for example tail -f /var/log/everything.log
doesn't get truncated/wrapped when you want to do a copy&paste
to a new window.
If you run a default tmux a -d
and you log into a remote machine, you need to
prefix your commands twice to for example open a new shell on the remote
machine, e.g. C-b C-b c
You can work around this like I do by setting up your local
tmux to use a
different prefix, in my case using the old bloated GNU screen
prefix, C-a
.
x220:~$ pstree
init─┬─GoogleTalkPlugi───4*[{GoogleTalkPlugi}]
├─6*[agetty]
├─bash───chromium─┬─chromium
│ ├─chromium───2*[{chromium}]
│ ├─chromium───7*[{chromium}]
│ ├─chromium───{chromium}
│ └─22*[{chromium}]
├─chromium-sandbo───chromium─┬─19*[chromium───3*[{chromium}]]
│ └─nacl_helper_boo
├─crond
├─dbus-daemon
├─dbus-launch
├─dhcpcd
├─httpd───6*[httpd]
├─ntpd
├─ssh-agent
├─sshd
├─st───tmux
├─su───bash───startx───xinit─┬─X
│ └─sh─┬─sh───dwm───3*[st───tmux]
│ └─sleep
├─syslog-ng───syslog-ng
├─systemd-udevd
├─tmux─┬─bash───ssh
│ ├─2*[bash]
│ ├─bash───pstree
│ └─bash───vim
├─usbmuxd
├─vim
├─wpa_cli
└─wpa_supplicant