Git Product home page Git Product logo

newscanoe's Introduction

Newscanoe

Newscanoe aims to be a minimal reimplementation of the glorious newsboat:

  • for UNIX systems and terminal emulators supporting standard VT100 escape sequences (i.e. xterm-derived)
  • written in Go but rigorously nonglamorous (i.e. vim-like)
  • meant to be lighter and easier to build from source and to distribute.

A tool for all of you information junkies, as simple as you always secretly desired, to organize the internet and make sense of the web.

Configuration

A plain text file (named as config) is used to configure the app: it consists of a list of feed urls with a name preceded by a pound sign (#) (see the example file in this repo) and it is located in the directory $XDG_CONFIG_HOME/newscanoe (or $HOME/.config/newscanoe).

If such file does not already exist, it will be created at the first execution of the app and you will be prompted to manually insert a url by typing a. You can then edit such file with any text editor (vi is the default, unless EDITOR environment variable is set) by running: newscanoe -e.

Once loaded, feeds are cached in the directory $XDG_CACHE_HOME/newscanoe (or $HOME/.cache/newscanoe). The cache can be cleaned up by running newscanoe -c

Keybindings

Supported key bindings:

  • r, load/reload the currently selected feed
  • R, load/reload all the feeds
  • q, quit the app
  • BACKSPACE, go back to previous section
  • ENTER, go into the currently highlighted element
  • l, open an article with lynx (if installed in the system)
  • o, open an article with the default (according to xdg-settings) browser for the user's desktop environment
  • ^, v, move the cursor to the previous/next row
  • Page Up, Page Down, move the cursor to the previous/next page
  • a, insert a new feed url by typing it letter-by-letter or pasting it with CTRL+SHIFT+v

Installation

Build from source:

:~$ git clone https://github.com/giulianopz/newscanoe.git
:~$ go build -o newscanoe cmd/newscanoe/main.go && cp ./newscanoe /usr/local/bin

Or download the latest pre-compiled binary from GitHub and then install it into your PATH.

asciicast


Credits

Much of the wizardry used to control the terminal was inspired by the well-written tutorial Build Your Own Text Editor by Paige Ruten, which explains in depth the source code of kilo, the infamous small text editor conceived by Salvatore Sanfilippo aka antirez.

newscanoe's People

Contributors

giulianopz avatar

Stargazers

 avatar  avatar

Watchers

 avatar

newscanoe's Issues

Map keystrokes to UI events

At the moment a single keystroke is mapped to a number of ASCII codes, each one triggering an unnecessary re-rendering of the UI. The window should rather be redrawn only in response to specific events.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.