w3m With Way Less

d0ebbe4 New feature! power-script

~vdupras pushed to ~vdupras/w3l git

1 year, 7 months ago

8d2952b Fix clang warnings

~vdupras pushed to ~vdupras/w3l git

1 year, 7 months ago
w3l: w3m With Way Less

w3l is a pager with WWW capabilities, that is, it is capable of rendering HTML
contents in the terminal and provides an interface to navigate links and fill
forms in that content.


w3l is a fork of w3m v0.5.3. It is an attempt at making w3m more maintainable
by removing a good chunk of its code. The idea is to:

* Target users-who-are-also-programmers. The author of this fork tends to agree
  with suckless (https://suckless.org/) philosophy. When you can assume that
  your user is a programmer, it simplifies the code a lot.
* Accept that this is a POSIX application. Trying to make it as portable as
  possible is ok, but not if it means excessive ifdef-ing.
* Use POSIX regex, or a library if it turns out to be needed.
* Use libcurl
* Possibly use ncurses, but it might not be worth it.
* Don't internationalize. Don't go overboard trying to show non-latin contents.
* Remove bookmarks. Ad-hoc bookmarks with fzf work much better.
* Possibly remove multi-tabs feature if it's too expensive in terms of
  complexity. A (configurable) tmux invocation could replace it.
* Replace inline image hack with a convenient way to invoke an external image
* Minimize GC usage.


* POSIX regex transition done
* libcurl transition done for all supported protocols
* Among features that were dropped, some weren't meant to be dropped
  permanently and are planned for re-implementation through libcurl:
  * Proxy
  * User SSL certs
  * HTTP auth
  * Multipart formdata


Before building, some dependencies need to be met:

* POSIX platform with the usual build tools (including perl, awk, sed, etc.)
* Boehm GC (https://www.hboehm.info/gc/)
* libcurl (https://curl.haxx.se/libcurl/)

From a fresh git checkout, you can build with the traditional "./configure &&
make". The configure script is generated with autoconf. You can refresh it with


First, refer to "man w3l". Then, for more specific topics, look at the "doc/"