neix is a simple, work in progress terminal feed reader for all common RSS/Atom feeds on the web out there. So you can read your news without advertisments or other annoying stuff. Just the informations you need. You can import your existing collection of feeds from an OPML file or just configure them manually. You also have the ability to render the text with w3m, elinks or which program you want. How to configure neix, take a look into the configuration section. You got the full control of your news you want to read!
- Installation
- Uninstall
- Unit tests
- Usage
- Configuration
- Contributing
- TODO / Roadmap
- Issues / Bugs
- Libaries in usage
- License
- Screenshots
Before you can install neix make sure you have installed all required packages.
After the successful installation you have to configure the feeds.conf
file with the feeds you want to read.
Here you can see the proper format.
Follow the steps below for installing:
$ git clone https://github.com/tomschwarz/neix.git
$ cd neix
$ cmake . # to enable unit-tests: cmake -DENABLE-TESTS=ON
$ make
$ sudo make install
Available package managers:
Right now, there are no package manager available.
Soon available package managers:
- openSuse:
zypper install neix
For some custom build packages or scripts see the packages section on the wiki.
Follow the steps below for uninstalling:
$ cd neix # should be the same directory where the repository was cloned into
$ sudo make uninstall
If there is an error during the uninstall process or you don't have the directory anymore following the steps below:
$ sudo updatedb
$ locate neix # $ locate neix | grep /usr - if the output is to large
$ sudo rm {PATH}/neix # where {PATH} is the full path to the binary
Follow the steps below for unit testing after the installation guide:
$ ./bin/tests
Hint: you have to be in the main directory of neix!
To run only a specific test follow the steps below:
$ ./bin/tests --gtest_filter=<TEST_CASE>
To list which tests are available follow the steps below:
$ ./bin/tests --gtest_list_tests
For more informations see GoogleTest.
$ neix
If neix is completely launched you got the following key's to navigate:
Key | Function |
---|---|
q | Close the current opened article or quit neix when you on the not reading an article. |
ENTER | Open the selected article to read. |
o | Open the current article in the browser (or with the programm you configured in the main config file). |
j | Select the next article in the current feed list. |
k | Select the previous article in the current feed list. |
Shift + j | Select the next feed of the loaded feed list. |
Shift + k | Select the previous feed of the loaded feed list. |
neix has some command line options you can use. See below the available options:
Option | Argument | Description |
---|---|---|
-v | - |
Prints the installed version of neix and exits. |
-i | <path> |
Import feeds of given OPML file and exits. Path can be absolute or relative. |
-e | <path> |
Export feeds to given file or path. Creates an OPML 2.0 file. Path can be absolute or relative. |
Usage of option -v
:
$ neix -v
Usage of option -i
:
$ neix -i ~/Downloads/import.xml
Usage of option -e
:
$ neix -e ~/Downloads/export.xml
For more informations see the man-page:
$ man neix
Default directory of the config files: ~/.config/neix/
During the installtion process, neix create's the default directory with the needed configuration files.
neix needs two configuration files. One for itself and one for the feeds which should be loaded.
File | Description |
---|---|
neix.conf | This is the main configuration. It include's the date format, locale and more options. |
feeds.conf | This is the feed list. An entry represents a single news feed. |
This is the main config file of neix.
Option | Value |
---|---|
dateFormat | String which represents the format for the feed date. Here are all possible formats. [REQUIRED] |
locale | Here you can set the locale for your language (see here). Run locale -a to see all locales you got installed. [REQUIRED] |
openCommand | Here you can set which programm should be used to open the article link. Default is xdg-open. You can use what you want. [REQUIRED] |
renderText | You can set here how the text should be formatted. Default is w3m -dump -T text/html. You can use elinks or others. [OPTIONAL] |
This file contains the list of feeds you want to read.
This is the required format of an single entry (every entry should be in a seperate line):
TITLE = PROTOCOL://[username[:password]@]DOMAIN.TOP-LEVEL-DOMAIN[/DIRECTORIES[/FILE]]
If you want to contribute check the CONTRIBUTING.md
- rapidXML is used for XML parsing
- GoogleTest is used for TDD