Jump to content
Fi8sVrs

Pancake - CLI/Emacs web/gopher/file browser.

Recommended Posts

  • Active Members

Pancake is a CLI/Emacs web/gopher/file browser.

It utilizes pandoc and external downloaders such as curl, adding support for Gopher directories and plain text files, and invoking external applications (e.g., image and PDF viewers) depending on its configuration.

User interaction capabilities are rather basic, as it is intended to be combined with software that provides better user interfaces – such as emacs, rlwrap, tmux, screen.

See README for more information.

 

1. Other text-based web/gopher browsers

Wikipedia lists a few major text-based web browsers, including Emacs-based ones. Pancake provides a combination of the things I liked about those, and the ones I have missed in those:

  • Multi-protocol support (via curl or other pluggable downloaders).
  • Multi-format support (via pandoc).
  • Plain CLI.
  • An Emacs interface without unnecessary blocking, and general support for embedding.
  • Simplicity and small codebase, thanks to reusing the programs mentioned above.
  • Efficient UI.
  • Use of external programs to handle file types which it doesn't support.

There are some drawbacks as well:

  • A large executable file (70+ Mio uncompressed).
  • Not as hackable in Elisp as pure (or mostly) Elisp browsers.
  • Not as portable as C or Elisp ones.
  • A relatively small set of features.
  • Somewhat worse HTML parsing and rendering in some cases.
  • Quite possibly more, depending on one's preferences.

 

2. Installation

2.1 Pancake

cabal install would build and install pancake and its documentation. Alternatively, basic Debian packages and binary releases are available.

2.2 Emacs interface

M-x package-install-file RET /path/to/pancake.el RET. To set it as your default emacs browser:

(require 'pancake)
(setq browse-url-browser-function 'pancake-browse-url)

To load and show all images automatically (not just after saving them manually):

(add-hook 'pancake-display-hook 'pancake-load-images)

Though it might be desirable to write a wrapper to only show those on specific websites, e.g. webcomics, and perhaps specific images only.

 

3. Screenshots

gopher.png

web-gnu.png

emacs.png

 

https://defanor.uberspace.net/projects/pancake/

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...