Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

Consult download and search through IETF RFC documents from your terminal

Project description

# rfc_reader
The CLI RFC reader :
- Open any published RFC with your favorite program
- Quickly search through RFC summaries with `rfc -k <keyword>`
- Full offline access `~/.rfc/`

## Installation :
Either clone the repo and run
```shell
python setup.py install
```
or simply use pip :
```shell
pip install rfc_reader
```

## Usage :
Type `rfc -h` or `rfc --help` to invoke the following help :

```shell
usage: rfc [-h] [--update] [--pager PAGER] [-k KEYWORD] [--version]
[RFC_NUMBER]

rfc is the python RFC reader. It stores a local copy of all the RFC documents
and allows one to search a read through them.For more info and contact : See
https://github.com/monsieurh/rfc_reader

positional arguments:
RFC_NUMBER Opens the RFC_NUMBER for reading

optional arguments:
-h, --help show this help message and exit
--update Updates the local copy of RFC documents with the
latest (weekly) publication of the IETF
--pager PAGER, -p PAGER
Uses the given program to open RFC documents. Default
program is env var $PAGER or `less` if not found
-k KEYWORD, --keyword KEYWORD
Prints the summary of all known RFC documents matching
the keyword and exits
--version show program's version number and exit

Released under GPLv3


```

## Behavior :
rfc_reader will download and/or update all RFC txt documents from [rfc-editor-website](https://www.rfc-editor.org/) and store them in `~/.rfc/`.

## Examples :
`rfc 2119` opens the Key words RFC in the default `$PAGER` program (usually `less`)

`rfc -p gedit 2119` opens the same document in gedit

`rfc -k UDP` outputs the summary of all RFC documents including the word 'UDP'

## History :
- 1.0 :
- adds XDG compliant storage path ([MartijnBraam](https://github.com/MartijnBraam))
- doesn't show ugly `^L` characters with default pager ([objectified](https://github.com/objectified))
- v0.9 :
- bugfix
- v0.8 :
- `-k` is now case insensitive
- Now compatible with python2 ([joshfriend](https://github.com/joshfriend))

- v0.7 :
- Fixes `-k` ordering by RFC number

## Running tests :
Simply use `python2 -m unittest discover -v` or `python3 -m unittest discover -v`

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for rfc_reader, version 1.0
Filename, size File type Python version Upload date Hashes
Filename, size rfc_reader-1.0-py2.py3-none-any.whl (8.0 kB) File type Wheel Python version py2.py3 Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page