Lynx Browser: The Land That Time Revived (2022)
54 comments
·February 20, 2025spudlyo
bitbasher
That's why I play dungeon crawl stone soup in the terminal. I'm defending myself against fire dragons and dodging iron shots, but it looks like I'm aggressively debugging something.
cafeinux
I can't install anything on my work computer (for obvious reasons) but outbound ssh is not blocked. NetHack through SSH it is for me.
Scoundreller
Only problem is having to type https:// in front of news.ycombinator.com because lynx assumes you’re trying to make an nntp connection to anything with a “news” subdomain.
Bad YC!
celsius1414
I just tried that on mine and using `lynx news.ycombinator.com` went to the website fine. I don't see anything obvious in a quick scan of the manpage nor config that might affect that. Weird!
lynx97
Lynx (in tmux) is still my default browser. I only go for Firefox if I really have to. Its darn FAST, has no remote code execution, and is typically all you need to read text on the web. Its also a good test if the web dev is full of shit :-)
Scoundreller
> . Its darn FAST, has no remote code execution
I mean, I’m sure it has its vulnerabilities, but nobody is actively looking for them.
2mlWQbCK
I have not used Lynx interactively in ages, but when I want to save some pages of text from somewhere (typically an old web forum thread or blog) I often call lynx -dump (followed by gzip) from a script. It is an easy way to get nicely formatted text with all the HTML nonsense removed, and it also includes a list of all links from the page. Not exactly what a real archivist would do, but it works for hoarding text.
somat
I use that with mutt to view html formatted email. here is the 30 second tutorial.
In .mailcap include the line
text/html; lynx -dump -width=78 %s | sed 's/^ //'; copiousoutput; needsterminal; nametemplate=%s.html
in .muttrc include the line auto_view text/html
atiedebee
I did not know that it had that feature, and having just tried it out it does work really well. Its output kind of reminds me of the gemini protocol and its markup format[0],
geye1234
That is amazing, and just what I've been looking for to archive blogs and comments. Thanks so much!
blacksmith_tb
There are also options like Carbonyl[1] and Browsh[2] which do images and js in the terminal.
shiomiru
Another option I'm working on: https://sr.ht/~bptato/chawan
Chawan also renders CSS + images, but unlike the above two, it comes with its own browser engine (from scratch). It also does JS with QuickJS - if you're lucky :P (Lately I got Transmission's web UI to load, quite happy about that.)
aadhavans
> It doesn't need a blocker for third-party scripting, service workers ... because the browser's technology simply doesn't recognise these page components
I'd never thought about it like that, but it's a nice side-effect. You don't have to worry about obtrusive JS, if your browser doesn't know what JS is. :D
zimpenfish
> if your browser doesn't know what JS is
It's worse than that[0] - Lynx statically renders the page at load time which means any "dynamic" updates just can't happen. I did have a bash at integrating the Mozilla JS engine but gave up after realising that anything more than just `document.write("flange")` handled at load time would need the entire inner engine rewriting and that was/is far beyond me[1].
[0] This is based off my memories of the Lynx source back in the Olden Times, ~1995-2000ish.
[1] But I did do the original cookie jar and colour styles (as seen in the screenshots) work (`lynx.lss` is all my fault, sorry)
wrycoder
IMO, a most useful thing is Lynx in DIRED mode. A great read-only directory browser - just enter a local url when you start it. For example, <lynx .> or <lynx /> .
dredmorbius
FYI, w3m also supports this.
In fact w3m was originally intended as a filesystem browser and file pager, with HTML functionality added to it. See: <https://w3m.sourceforge.net/>
rsync
From the article:
"You can say goodbye to uBlock Origin, which is now virtually useless with default settings anyway."
Are they referring to difficulties running uBO on chrome or ... that uBO is losing the arms race against advertising infra generally ?
ziddoap
I have to assume it's a chrome-specific comment, because I have not noticed anything different with it (or my browsing experience) on firefox (nor heard anyone else complain about differences).
fffrantz
Second that. I do see the difference at work where it's impossible to install Firefox and/or extensions; it's god awful to browse the web without it.
I even installed it on my parents laptop and they never complained that ads suddenly started appearing.
ylee
I use two of the mentioned browsers.
I have elinks as a default `tmux` pseudoterminal. I don't use it often, but it's always there.
My emacs setup uses w3m as the parser for HTML mail in VM, my email client. It works really well. <https://news.ycombinator.com/item?id=39793342>
dredmorbius
TFA mentions FrogFind which I'd not previously known of.
That seems to be a wrapper on DuckDuckGo, though it's helpful to know that DDG has its own lite-mode interface which plays quite well with the terminal.
As noted in an earlier comment I invoke ddg search with a shell alias:
ddg ()
{
w3m "https://duckduckgo.com/lite?q=$*&kd=-1"
}
The lite page itself is <https://duckduckgo.com/lite>.Last I'd tried using Google via w3m I found it blocking me entirely, though TBF I've not even tried it in months if not years.
terminaltrove
Related to lynx, (with images)
https://terminaltrove.com/w3m/
https://terminaltrove.com/links/
https://terminaltrove.com/reader/
https://terminaltrove.com/elinks/
We are so glad that these tools exist for the terminal, we even still use w3m and lynx from time to time.
https://terminaltrove.com/lynx/
If you do use the terminal for your browsing I recommend ddgr as it integrates with all of the above browsers, except reader.
w4rh4wk5
While the article mentions alternatives like links and w3m, I'd like to hear HN's opinion on links vs w3m vs lynx.
dcassett
Linux user here.
I use links in graphical mode (links -g) quite a bit. It's easy to turn image display on and off with the '*' key. Image sizes can be scaled with the menu and they take effect immediately. If one hovers over an image link and types "i", the image itself is displayed, and there's an option to scale the image to fit the window. Getting a new links window is easy (Alt-F n). One gripe is that hitting Ctrl-C will close the window (the 'Q' key does this already)
I use lynx as a second line of defense when some sites refuse to work with links, because lynx is sometimes able to display them (different user agent?). I also have been recently using lynx within xterm (disabling the alternate screen) for forums where posted URLs are not clickable (text only) in combination with xterm's dabbrev-expand() function to quickly copy such URLs in lynx's goto prompt. As an aside: in xterm's misc.c there's a a macro (IS_WORD_CONSTITUENT) that can be easily expanded to exclude characters that are not part of a URL, such as braces.
I do worry that more and more websites will simply show "Suspicious Activity Detected" for these browsers. As mentioned so many times on HN, text browser users are a minority and text browsers are obsolete. I did once send a message to a website owner and later saw that I could access the site, but didn't get an acknowledgement by email, so I can't be sure if it was in response to my request. There still are some websites that degrade gracefully, and, despite complaints by the server, allow text input windows and submit buttons to still work.
artiliran
I always found links the most pleasant. A big factor was how often lynx asked about cookies, but now I know from the article I can set it to reject all I might revisit lynx. w3m seemed to set itself apart with the ability to show graphics which I didn't care about so never really gave it a chance.
every
I have my lynx set to accept all cookies (makes for far less bother) but somehow seem to have forgotten to tell lynx where to store them. Logout of the browser and "poof" they all disappear...
dredmorbius
elinks / elinks2, both based AFAIU on links, offer graphics support. So the option's there for you without much change in muscle memory, should you want it.
I use w3m, though largely w/o graphics support.
dredmorbius
w3m here, for a number of reasons:
- Vim-like keybindings. I've used lynx off and on for decades, but can never internalise its keybindings, and I'm constantly surprised (in a bad way) and frustrated.
- Support for table-based layout. This is less frequently encountered online these days, though some sites (HN and pg's own blog site) still use tables.
- Graphics support, should you want that.
- Extensive settings with a good management interface.
- Pretty darned good bookmarks management. My w3m bookmarks page is my default homepage for the browser, and gives ready access to a bunch of useful sites.
- Better default formatting settings, in particular concerning paragraph breaks and the like. Lynx to me is too crowded when rendering webpages.
- Most of what Lynx can do w3m does as well, in terms of basic functionality, piping input and output, etc.
I fairly regularly try out other terminal browser options (lynx, links, elinks, etc.) but w3m is my happy place.
dredmorbius
Oh, and tabs, as TFA mentions. I find this useful, and the interface is pretty manageable, though I tend to avoid the extreme tab proliferation typical of my Firefox sessions (100s or 1,000s of tabs).
magarnicle
I use lynx to view HTML emails in Neomutt, but if I want to browse the web I use w3m as it doesn't whine at me about cookie storage multiple times for every site.
synergy20
i use w3m, last time checked it's more updated than lynx. w3m is also utf8 ready,lynx not. w3m-img can display images in terminal,lynx can't
inopinatus
some web pages are best read using curl
or nc <hostname> 80
jmclnx
Last I heard, RMS does something similar to this.
lizknope
In the 1990's my university had a lot of dialup modem lines but only a small amount of them had PPP support. You would just get 1 terminal session. So I would dial in and then browse the web through lynx. It worked fine and was quicker because it wouldn't waste time loading images.
I recently tried Usenet for the first time in 20 years. I installed slrn the text based newsreader I used in the 1990's. It has very useful color support. I wish Usenet was more active instead of 90% spam. Having threads go for years and being able to go to the next post by hitting "n" instead of clicking around is a lot quicker.
This how I used to read HN at work, nobody bats an eye at text in the terminal. I'm sure I could have gotten away with sipping my coffee in the morning with the orange website plastered all over my screen, but I felt like it was important to keep up appearances--call it productivity theater.