This is a CLI/emacs web/gopher/file browser inspired by [[https://en.wikipedia.org/wiki/Line_Mode_Browser][Line Mode Browser]]. It utilizes [[http://pandoc.org/][pandoc]] and external downloaders such as [[https://curl.haxx.se/][curl]], adding support for Gopher directories and plaintext 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. * Installation Use ~cabal install~ to install pancake, ~M-x package-install-file RET /path/to/pancake.el RET~ to install its emacs interface. To set it as your default emacs browser: #+BEGIN_SRC elisp (require 'pancake) (setq browse-url-browser-function 'pancake-browse-url) #+END_SRC * Commands - [q]uit, [b]ack, [f]orward, [h]elp, [r]eload, [re]load config - : follow a link (or open the referenced file) - ?: show link/image URI - ?: show current URI - RET (empty): show the next 2/3 of a page, if pagination is enabled - : follow an URI, possibly relative to the current one - : same as above, but explicitly set a document type (html, txt, org, markdown, etc) - : run a query using a shortcut defined in the configuration (e.g., search) pancake-mode provides additional aliases, see built-in emacs documentation (~C-h m~) for those. * Configuration Default configuration will be written into XDG configuration directory, and would look approximately like this: #+BEGIN_SRC yaml externalViewers: png: xdg-open "${FILE}" hs: emacsclient -n "${FILE}" commands: gopher: torify curl "${URI}" ssh: scp "${URI_REGNAME}:${URI_PATH}" /dev/stdout defaultCommand: ! 'curl -4 -L "${URI}" -w " -pancake- uri: %{url_effective} type: %{content_type} "' shortcuts: g: https://m.gutenberg.org/ebooks/search.mobile/?query= ddg: https://duckduckgo.com/lite/?q= wt: https://en.m.wiktionary.org/w/index.php?search= wp: https://en.m.wikipedia.org/wiki/Special:Search?search= gp: gopher://gopherpedia.com:70/7/lookup? vs: gopher://gopher.floodgap.com/7/v2/vs? xiph: http://dir.xiph.org/search?search= historyDepth: 100 paginate: true #+END_SRC * Screenshots [[https://defanor.uberspace.net/projects/pancake/gopher.png]] [[https://defanor.uberspace.net/projects/pancake/web-gnu.png]] [[https://defanor.uberspace.net/projects/pancake/emacs.png]]