Upping version, updated readme, changed post keybind.

This commit is contained in:
Michael Lazar
2015-05-28 20:54:04 -07:00
parent 4f92844fc0
commit 2a935922bf
6 changed files with 142 additions and 91 deletions

View File

@@ -2,11 +2,27 @@
RTV Changelog RTV Changelog
============= =============
.. _1.4: http://github.com/michael-lazar/rtv/releases/tag/v1.4
.. _1.3: http://github.com/michael-lazar/rtv/releases/tag/v1.3 .. _1.3: http://github.com/michael-lazar/rtv/releases/tag/v1.3
.. _1.2.2: http://github.com/michael-lazar/rtv/releases/tag/v1.2.2 .. _1.2.2: http://github.com/michael-lazar/rtv/releases/tag/v1.2.2
.. _1.2.1: http://github.com/michael-lazar/rtv/releases/tag/v1.2.1 .. _1.2.1: http://github.com/michael-lazar/rtv/releases/tag/v1.2.1
.. _1.2: http://github.com/michael-lazar/rtv/releases/tag/v1.2 .. _1.2: http://github.com/michael-lazar/rtv/releases/tag/v1.2
-----------------
1.4_ (2015-05-16)
-----------------
Features
* Unicode support has been vastly improved and is now turned on by default. Ascii only mode can be toggled with the `--ascii` command line flag.
* Added pageup and pagedown with the `m` and `n` keys.
* Support for terminal based webbrowsers such as links and w3m.
* Browsing history is now persistant and stored in `$XDG_CACHE_HOME`.
Bugfixes
* Several improvements for handling unicode.
* Fixed crash caused by resizing the window and exiting a submission.
----------------- -----------------
1.3_ (2015-04-22) 1.3_ (2015-04-22)
----------------- -----------------

View File

@@ -1,4 +1,3 @@
=========================== ===========================
RTV: Reddit Terminal Viewer RTV: Reddit Terminal Viewer
=========================== ===========================
@@ -16,8 +15,8 @@ RTV is built in **python** using the **curses** library.
--------------- ---------------
* `Installation`_ * `Installation`_
* `Configuration`_
* `Usage`_ * `Usage`_
* `Configuration`_
* `Changelog`_ * `Changelog`_
* `Contributors`_ * `Contributors`_
* `License`_ * `License`_
@@ -47,14 +46,110 @@ The installation will place a script in the system path
$ rtv $ rtv
$ rtv --help $ rtv --help
=====
Usage
=====
RTV supports browsing both subreddits and submission comments.
Navigating is simple and intuitive.
Move the cursor using either the arrow keys or *Vim* style movement.
Move **up** and **down** to scroll through the page.
Move **right** to view the selected submission, and **left** to exit the submission.
--------------
Basic Commands
--------------
:``j``/``k`` or ``▲``/``▼``: Move the cursor up/down
:``m``/``n`` or ``PgUp``/``PgDn``: Jump to the previous/next page
:``o`` or ``ENTER``: Open the selected item as a webpage
:``r`` or ``F5``: Refresh page content
:``u``: Log in or switch accounts
:``?``: Show the help screen
:``q``: Quit
----------------------
Authenticated Commands
----------------------
Some actions require that you be logged in to your reddit account. To log in you can either:
1. provide your username as a command line argument ``-u`` (your password will be securely prompted), or
2. press ``u`` while inside of the program
Once you are logged in your username will appear in the top-right corner of the screen.
:``a``/``z``: Upvote/downvote
:``c``: Compose a new post or comment
:``e``: Edit an existing post or comment
:``d``: Delete an existing post or comment
--------------
Subreddit Mode
--------------
In subreddit mode you can browse through the top submissions on either the front page or a specific subreddit.
:``l`` or ``►``: Enter the selected submission
:``/``: Open a prompt to switch subreddits
:``f``: Open a prompt to search the current subreddit
The ``/`` prompt accepts subreddits in the following formats
* ``/r/python``
* ``/r/python/new``
* ``/r/python+linux`` supports multireddits
* ``/r/front`` will redirect to the front page
* ``/r/me`` will display your submissions
---------------
Submission Mode
---------------
In submission mode you can view the self text for a submission and browse comments.
:``h`` or ``◄``: Return to the subreddit
:``SPACE``: Fold the selected comment, or load additional comments
============= =============
Configuration Configuration
============= =============
RTV will read a configuration file located at ``$XDG_CONFIG_HOME/rtv/rtv.cfg`` or ``~/.config/rtv/rtv.cfg`` if ``$XDG_CONFIG_HOME`` is not set. ------
This can be used to avoid having to re-enter login credentials every time the program is launched. Editor
------
RTV allows users to compose comments and replies using their preferred text editor (**vi**, **nano**, **gedit**, etc).
You can specify which text editor you would like to use by setting the ``$RTV_EDITOR`` environment variable.
.. code-block:: bash
$ export RTV_EDITOR=gedit
If no editor is specified, RTV will fallback to the system's default ``$EDITOR``, and finally to ``nano``.
-----------
Web Browser
-----------
RTV has the capability to open links inside of your web browser.
By default RTV will use the system's browser.
On most systems this corresponds to a graphical browser such as Firefox of Chrome.
If you prefer to stay in the terminal, use ``$BROWSER`` to specify a console-based web browser.
`w3m <http://w3m.sourceforge.net/>`_, `lynx <http://lynx.isc.org/>`_, and `elinks <http://elinks.or.cz/>`_ are all good choices.
.. code-block:: bash
$ export BROWSER=w3m
-----------
Config File
-----------
RTV will read a configuration placed at ``~/.config/rtv/rtv.cfg`` (or ``$XDG_CONFIG_HOME``).
Each line in the file will replace the corresponding default argument in the launch script. Each line in the file will replace the corresponding default argument in the launch script.
This can be used to avoid having to re-enter login credentials every time the program is launched.
Example config: Example config:
@@ -73,69 +168,10 @@ Example config:
# Default submission link - will be opened every time the program starts # Default submission link - will be opened every time the program starts
# link=http://www.reddit.com/r/CollegeBasketball/comments/31irjq # link=http://www.reddit.com/r/CollegeBasketball/comments/31irjq
# Enable ascii-only mode and disable unicode characters # Turn on ascii-only mode and disable all unicode characters
# This may be necessary for compatability with some terminal browsers # This may be necessary for compatibility with some terminal browsers
# ascii=True # ascii=True
RTV allows users to compose comments and replys using their preferred text editor (**vi**, **nano**, **gedit**, etc).
Set the environment variable ``RTV_EDITOR`` to specify which editor the program should use.
.. code-block:: bash
$ export RTV_EDITOR=gedit
=====
Usage
=====
RTV currently supports browsing both subreddits and individual submissions. In each mode the controls are slightly different.
---------------
Global Commands
---------------
:``▲``/``▼`` or ``j``/``k``: Scroll to the prev/next item
:``a``/``z``: Upvote/downvote the selected item
:``ENTER`` or ``o``: Open the selected item in the default web browser
:``r``: Refresh the current page
:``u``: Login and logout of your user account
:``?``: Show the help screen
:``q``: Quit
--------------
Subreddit Mode
--------------
In subreddit mode you can browse through the top submissions on either the front page or a specific subreddit.
:``►`` or ``l``: View comments for the selected submission
:``/``: Open a prompt to switch subreddits
:``f``: Open a prompt to search the current subreddit
:``p``: Post a new submission to the current subreddit
:``e``: Edit the selected submission
:``d``: Delete the selected submission
The ``/`` prompt accepts subreddits in the following formats
* ``/r/python``
* ``/r/python/new``
* ``/r/python+linux`` supports multireddits
* ``/r/front`` will redirect to the front page
* ``/r/me`` will display your submissions
---------------
Submission Mode
---------------
In submission mode you can view the self text for a submission and browse comments.
:``◄`` or ``h``: Return to subreddit mode
:``►`` or ``l``: Fold the selected comment, or load additional comments
:``c``: Post a new comment on the selected item
:``e``: Edit the selected comment
:``d``: Delete the selected comment
========= =========
Changelog Changelog
@@ -155,14 +191,14 @@ License
Please see `LICENSE <https://github.com/michael-lazar/rtv/blob/master/LICENSE>`_. Please see `LICENSE <https://github.com/michael-lazar/rtv/blob/master/LICENSE>`_.
.. |python| image:: https://pypip.in/py_versions/rtv/badge.svg?style=flat-square .. |python| image:: https://img.shields.io/badge/python-2.7%2C%203.4-blue.svg?style=flat-square
:target: https://pypi.python.org/pypi/rtv/ :target: https://pypi.python.org/pypi/rtv/
:alt: Supported Python versions :alt: Supported Python versions
.. |pypi| image:: https://pypip.in/version/rtv/badge.svg?text=version&style=flat-square .. |pypi| image:: https://img.shields.io/pypi/v/rtv.svg?label=version&style=flat-square
:target: https://pypi.python.org/pypi/rtv/ :target: https://pypi.python.org/pypi/rtv/
:alt: Latest Version :alt: Latest Version
.. |downloads| image:: https://pypip.in/download/rtv/badge.svg?period=month&style=flat-square .. |downloads| image:: https://img.shields.io/pypi/dm/rtv.svg?period=month&style=flat-square
:target: https://pypi.python.org/pypi/rtv/ :target: https://pypi.python.org/pypi/rtv/
:alt: Downloads :alt: Downloads

View File

@@ -1 +1 @@
__version__ = '1.3' __version__ = '1.4'

View File

@@ -28,30 +28,29 @@ browse comments.
""" """
HELP = """ HELP = """
Global Commands Basic Commands
`UP/DOWN` or `j/k` : Scroll to the prev/next item `j/k` or `UP/DOWN` : Move the cursor up/down
`a/z` : Upvote/downvote the selected item `m/n` or `PgUp/PgDn`: Jump to the previous/next page
`ENTER` or `o` : Open the selected item in the default web browser `o` or `ENTER` : Open the selected item as a webpage
`r` : Refresh the current page `r` or `F5` : Refresh page content
`u` : Login/logout of your user account `u` : Log in or switch accounts
`?` : Show this help message `?` : Show the help screen
`q` : Quit the program `q` : Quit
Authenticated Commands
`a/z` : Upvote/downvote
`c` : Compose a new post or comment
`e` : Edit an existing post or comment
`d` : Delete an existing post or comment
Subreddit Mode Subreddit Mode
`RIGHT` or `l` : View comments for the selected submission `l` or `RIGHT` : Enter the selected submission
`/` : Open a prompt to switch subreddits `/` : Open a prompt to switch subreddits
`f` : Open a prompt to search the current subreddit `f` : Open a prompt to search the current subreddit
`p` : Post a new submission to the current subreddit
`e` : Edit the selected submission
`d` : Delete the selected submission
Submission Mode Submission Mode
`LEFT` or `h` : Return to subreddit mode `h` or `LEFT` : Return to subreddit mode
`RIGHT` or `l` : Fold the selected comment, or load additional comments `SPACE` : Fold the selected comment, or load additional comments
`c` : Post a new comment on the selected item
`e` : Edit the selected comment
`d` : Delete the selected comment
""" """
COMMENT_FILE = u""" COMMENT_FILE = u"""

View File

@@ -45,7 +45,7 @@ class SubmissionPage(BasePage):
cmd = self.stdscr.getch() cmd = self.stdscr.getch()
self.controller.trigger(cmd) self.controller.trigger(cmd)
@SubmissionController.register(curses.KEY_RIGHT, 'l') @SubmissionController.register(curses.KEY_RIGHT, 'l', ' ')
def toggle_comment(self): def toggle_comment(self):
"Toggle the selected comment tree between visible and hidden" "Toggle the selected comment tree between visible and hidden"

View File

@@ -115,7 +115,7 @@ class SubredditPage(BasePage):
global history global history
history.add(url) history.add(url)
@SubredditController.register('p') @SubredditController.register('c')
def post_submission(self): def post_submission(self):
"Post a new submission to the given subreddit" "Post a new submission to the given subreddit"