
Life in Text Mode - miles
http://aperiodic.net/phil/archives/Geekery/text-mode-guerrilla.html
======
SageRaven
Nice to see like-minded folks out there. Like him, I run X mostly for having
multiple full-height rxvt+screen sessions (three per virtual desktop).

I only use three graphical apps: Firefox, pidgin (grudgingly), and the Qt
interface for VirtualBox. The rest are text apps and custom shell scripts for
accomplishing tasks in tandem with those apps (such a "find | random | mpg123"
for shuffling music directories).

I highly recommend "evilwm" for managing such a setup. Its single-pixel window
borders with no window decorations is desktop minimalism as its finest. It's
also got the lightest memory footprint of all the minimal WMs out there.
Windows can be moved, re-sized, and snapped to locations with keystrokes. For
fine-tuned placement of regularly-used apps, a simple shell script can be
crafted to launch them with the precise geometry you require (or
ALT+MOUSE_LEFT to lift the window). I have hot-keys defined (using
"xbindkeys") that will populate virtual desktops to exact specifications.

My only gripe with this setup is the competition for key chords amongst emacs,
screen, and evilwm itself. That, and every once in a while, some web page will
throw a Firefox window that I simply _cannot_ close without the "x" screen
decoration (at least not without closing Firefox itself -- grrr...).

~~~
Adaptive
Haven't tried evilwm, but the reasons you list for liking it apply also to
XMonad, which I use and love.

I've tried awesome, wmii, dwm and a couple other tiling window managers and
XMonad is by far my favorite.

Bit of a learning curve if you aren't into Haskell already, but it's very
sensible and intuitive syntax that you can easily grasp from the many examples
in the XMonad config archive.

Highly recommended. Active community, easy to extend. Lot's of reference
configs. Changed my entire computing life...

It's tiles, all the way down.

~~~
wwortiz
I've tried quite a few window managers but I must say the automatic tiling wm
actually make me prefer gnome, what really seems to do well with me is
ratpoison or stumpwm. The control of tiling seems to work great and both are
quite customizable (especially stumpwm). (I use C-, for my prefix and C-t in
tmux) Recently I just use gnome though because my laptop just works there and
have a full screen web browser and a full screen tmux (so I at least have some
tiling).

------
wyclif
I've replaced _screen_ with _tmux._

~~~
wglb
What are the advantages of tmux? (I have been using screen for persistent
sessions on production servers.)

~~~
sigil
I still use screen on a few servers but have switched to tmux everywhere else.
They're quite similar, but tmux has a number of small advantages that add up.

* Better support for panes and splits. Besides vertical splits (which you can get in screen if you're willing to patch), with tmux you can for instance quickly join two existing windows together with a split, break a pane out of a split and into its own window, or arrange panes into a predefined layout.

* You also have the ability to name windows, reorder them, swap them, and generally move them around with tmux.

* With tmux, activity notifications are persistent and per-window. While screen can monitor windows for activity -- I always monitor one window that runs mutt, and another that runs irssi -- screen notifies you by flashing the caption once, briefly or until a keystroke, and doesn't mark the active window until the caption gets redrawn. This doesn't work so well if you're typing away in your editor window. ;) I got really tired of missing notifications, especially chats. Not an issue anymore with tmux, which immediately marks the active window.

* Session sharing works without having to setuid the tmux binary.

* Copy mode is mostly the same, but tmux maintains a stack of paste buffers, and keeps a viewable history of everything you've copied. One thing screen has though that tmux still doesn't (afaik) is the ability to copy rectangular blocks of text, not just complete lines.

* The scripting / programmatic interface for tmux is much nicer.

~~~
wglb
Thank you.

------
crazydiamond
Does anyone still use "mc" ?

I like vifm (vi-like file manager), although i can't say i fire it up too
often.

microemacs (jasspa's) has a nice inbuilt file manager (F10).

~~~
Teckla
> Does anyone still use "mc" ?

Midnight Commander is great!

I use it for file management on my wife's iMac (I'm usually ssh'd in, while
she uses the console). I also use it to keep her small business web site
updated (it supports ftp, which is what my wife's web host uses).

~~~
vog
_> it supports ftp, which is what my wife's web host uses_

Ouch!

By all means, please switch to a protocol of the 21th century!

Midnight commander supports secure protocols like SCP or SFTP as well.

Also, there's sshfs which allows you to handle the remote directory like a
local one without any special features of mc (or KDE or Gnome). However, I
don't know whether sshfs is available on the Mac.

Anyway, there's hardly any reason to use FTP, unless your hosting provider
doesn't care a lot about security.

~~~
pyre
MacFUSE exists, and sshfs is usually the 'flagship' file system for FUSE, so I
would gamble that it exists. It's off-topic, but a few years ago I remember
someone creating a bunch of nifty file system plugins to MacFUSE to do things
like create a file system that represented the open applications and/or
windows on OSX. They seemed to be mostly tech demos, but I found it
interesting.

------
brian6
I was just about to badmouth his tool choices when I noticed that the post is
from 2006.

~~~
crazydiamond
what are your updated/better choices ? Thanks.

I use links (i/o lynx). And vim.

~~~
brian6
I think he made a lot of good choices. These days I would pick tmux over
screen and newsbeuter over snownews.

ion really was a great and influential window manager, but now, it'd probably
be better to pick XMonad, awesome, or i3.

vimperator has been a lifesaver for me, but I'm switching to luakit because it
doesn't seem to allow flash to steal the keyboard focus.

~~~
crazydiamond
Is luakit a Linux only software, or does it work on OSX, too.

~~~
sielskr
I saw compiler flags for OSX in the source tarball [1] but to install on OSX
probably requires installing from source, and if my experience with using
macports to install Conkeror and uzbl is any indication, installing all of the
dependencies correctly is likely to be something that requires hours of
tedious effort unless one is an expert. The reason for that is that luakit
(and Conkeror and probably uzbl) rely on a very large stack of "non-Mac-like"
software including the GTK toolkit and the X windowing system.

If you can get around in Linux, I would test drive the software on Linux to
make sure it is as useful to you as you imagine it to be before doing the work
of figuring out how to install it on OSX.

I will add that the difficulty of installing relatively unpopular Linux
packages on OSX is one of the biggest disadvantages of OSX for me. (The
unavailability of laptops in which everything Just Works is of the biggest
disadvantages of Linux for me.).

I've tentatively given up on relying on software that requires X while I am
using OSX: I plan to keep on test-driving such software (on Linux), and if I
decide I have got to have access to it, I will switch back to Linux.

[1] [https://github.com/mason-
larobina/luakit/blob/develop/config...](https://github.com/mason-
larobina/luakit/blob/develop/config.mk)

------
thristian
Last year my laptop got stolen, and while I shopped for a replacement at work,
I had to use my (previously headless) server machine for other tasks at home.
Beyond what the linked article discusses, I'll also mention:

elinks (<http://elinks.or.cz/>) is far more featureful than links, w3m or
lynx, to the point where it even supports CSS and a little JS.

libcaca (<http://caca.zoy.org/>) comes with an image-viewing tool, "cacaview",
which is handy when somebody sends you a picture and you don't have a
graphical framebuffer handy.

~~~
asciiphil
The page is a little dated now. I use elinks instead of w3m these days.
cacaview is pretty neat-looking, though!

------
wnoise
Ugh. procmail is disgusting. Consider maildrop instead (part of the courier
mail server suite: <http://www.courier-mta.org/maildrop/> )

~~~
SageRaven
Procmail exemplifies the leanness, speed, and precision that all Unix
utilities should strive for.

That said, I've never used maildrop, being quite smitten with procmail myself.
But since the size of maildrop's source distribution is ten times that of
procmail, I'll stick with the latter out of principle.

------
RoyG
Good list, but where's ffmpeg?

Though I come from the design world, I realized how much speed and power
advantage there is in the command line, and spent the time – over several
years – learning how to use it. The speed advantage is so apparent in
comparison to GUIs, and now Web Apps, but I guess that's the geek appeal;)

~~~
crazydiamond
I use ffmpeg a lot to extract the audio from video's I've downloaded from
youtube. Does anyone use any command-line youtube downloaders that _still_
work? I use one written in awk (pete krumins). The others stopped working a
while back.

~~~
brian6
youtube-dl!

------
vog
The title is ambiguous. I expected to see a text mode implementation of
Conway's Game of Life. ;-)

------
geoka9
Here's what I'd add to this nice list:

\- emacs-jabber: the best IM client in the world and you can use various
"jabber2any" gateways to stay in touch with your "legacy" contacts. emacs-
jabber allowed me to get off using pidgin grudgingly :)

\- ratpoison for managing shell windows under X (and I've heard stumpwm is
great, for all you lisp lovers :))

\- conkeror (or vimperator) for keyboard-driven web browsing: not character
mode, but surely helps a lot when most of your software is.

\- urxvt (rxvt-unicode).

\- gnus for mailer: probably. I've heard it's even better than mutt, but I
don't use email often enough to warrant the switch yet.

~~~
pyre

      > and I've heard stumpwm is great, for all you lisp lovers :)
    

IIRC, the creator of ratpoison is also the creator of stumpwm (though I could
be mis-informed).

    
    
      > gnus for mailer: probably. I've heard it's even better than
      > mutt, but I don't use email often enough to warrant the
      > switch yet.
    

A couple of years back I tried to get Gnus working, but I ran into: (i)
confusing documentation, (ii) not much help through blogs/Google, and (iii)
Gnus users on IRC telling me "not to bother" trying to learn Gnus because
there were better solutions out there. I've also heard complaints on a number
of occasions that Gnus is a dog when trying to load up large mailboxes (and
that mutt is better at this).

------
cmykgrayscale
Another simple yet efficient cli todo is todo.txt
<http://ginatrapani.github.com/todo.txt-cli/>

and for all vim users out there, I would highly recommend
<http://code.google.com/p/vimwiki/> which is a portable wiki right inside vim.

------
helmut_hed
Love to see posts like this. I've the feeling I'll be happier in keyboard+text
land but haven't had the courage to take the leap yet. My favorite use of
screen space is a ginormous editor window.

If anyone is interested, the October issue of Linux Journal has a pretty good
roundup of command-line tools. It should be online soon (first of December?)

------
BoppreH
Why would you do that?

I can understand using only the __keyboard __, because it's faster and easier
to automate and whatnot, but giving up on a normal browser just to be "in text
mode"? Why not Firefox + Vimperator, for example?

~~~
Nick_C
Typically in a tiling window manager you will have a main window open with,
say, an editor, and other windows open with man pages or documentation.

Sometimes you just want to browse through something that is text, online
documentation for example. In a tiling window manager, your browser might be
in a window that is, say, only a quarter of the screen's real estate, so you
definitely don't want the browser to be filled with cruft like scroll bars or
menus. Since the viewport is so small, you want all of it to be "content" and
none of it to be "browser". So a text browser makes a lot of sense.

I do this all the time, usually with elinks. Mind you, I still have chrome
open in a different group (or tab).

~~~
binomial
Google "uzbl".

------
hogu
if anyone's curious, well, I was, So I just started up 30 terminals under
awesome wm.

I did 30 gnome-terminals, and then 30 xterms, and then 30 urxvts

I start out at 150 mb of ram, and then with 30 gnome-terminals I go up to 250.
With 30 xterms, I end up at 230. With 30 urxvts, I ended up at around 210

I used htop to measure memory.

I've always wondered how much lighter the lighter terminals are, they aren't
enough to make me switch, but there you go, there's definitely a difference,
since I'm usually at least running 1 graphical we browser(like chrome) that
always dominates my memory usage

~~~
SageRaven
Now, try that with different shells and report back to us. ;-)

I'm _pretty_ sure that "pdksh" is the smallest (or very close), but I think
it's static, so in the context of opening up 30 instances of that shell at
once, one of the others (most of which are dynamically linked) might beat it.

------
RexRollman
One of my favorite bloggers is K. Mandla, who runs command line only systems
on older hardware:

<http://kmandla.wordpress.com/>

------
entropie
He surely misses mpd. <http://mpd.wikia.com/wiki/Music_Player_Daemon_Wiki>

------
WSBOBO
I agree with you . ttp://www.braceletpandora.uk.co
ttp://www.pandorajewellerymall.uk.co That’s very interting.

------
hogu
If you're an emacs user, why don't you just use org-mode for todo lists?

