Some of us don’t particularly like using the computer mouse. It’s partly a matter of ergonomics – stretching out your arm to grab something wears thin after a couple of hours even if it’s just a few inches – and also a matter of keeping your fingers aligned on the keyboard so as to maintain touch typing. This has led to window managers like ratpoison which go in for completely removing the need for using a mouse.
I prefer i3 though it has a big problem with screen tearing so I only use it for non-graphical stuff. So video and games get to run in KDE and I have a separate VM where I do tech-stuff that’s heavy on text, terminals and so on. Some say the compositing… something-manager compton solves the issue but not for me.
We need more than just a keyboard-centric window manager to make it work. One of the most important missing pieces is browsing the web without a mouse. You could use something like w3m or lynx which is necessarily keyboard-centric as they are terminal-based. w3m can actually show images but that is obviously heresy. My solution of choice is Google Chrome with vimium. You can use Firefox with vimperator if you are so inclined.
In vimium you can press v once to start moving a caret around and another press of v starts marking a continous segment of text. Then it’s y to copy to clipboard. If you wonder why the characters vim appear so often in this context, it’s because the text editor vim is how hard core terminal junkies edit text files. It’s great but if you accidentally start vim you’ll feel like you’ve gone to crazy-town( :q and Enter will quit vim. You’re welcome). So maybe have a look at this crash course first: https://gist.github.com/dmsul/8bb08c686b70d5a68da0e2cb81cd857f
Terminal in itself
So what else do we need? Well, copy-pasting is the basis for all communication so it’s not sufficient to be able to copy paste from web browsers to text documents and terminals, but we must also be able to copy from text documents to terminals. Enter tmux! It creates virtual terminals in your terminal, sort of?

You get multiple screens and panes and can copy and paste within them, between them and also out to your system clipboard. Here’s the text copied from the screenshot:
root 5970 1 0 18:06 ? 00:00:00 /usr/lib/packagekit/pack
cjp 6017 4995 0 18:06 pts/0 00:00:00 tmux
cjp 6019 1318 0 18:06 ? 00:00:00 tmux
cjp 6020 6019 0 18:06 pts/1 00:00:00 -bash
cjp 6040 6019 0 18:06 pts/2 00:00:00 -bash
cjp 6052 6040 0 18:06 pts/2 00:00:00 ps -efd
My .tmux.conf file is pretty simple: .tmux.conf
fzf
This is a great fuzzy finder that helps you find text. Like a modern version of grep.

googler
Search Google via the terminal and open chosen result in a default or specified web browser.
ranger
A nice file browser in the terminal:

Ironical that I have to use my mouse to make screenshots of my completely keyboard-based VM.
bat
bat is like cat but for the modern era. The binary is called batcat on Ubuntu for some reason.