Commit graph

46 commits

Author SHA1 Message Date
Arthur Léothaud
2407599922 Add avandu-mark-article-unread function 2016-12-26 18:26:27 +01:00
891a847b0f Add unsubscribe command 2014-04-12 23:26:16 +02:00
0c818bfc59 Add category completion to feed subscription
Change the `avandu-categories' function to return a hash table of
title/id value pairs for each category from tt-rss. This makes it easier
to use it in some other places.
2014-04-12 22:49:31 +02:00
9297b07df1 Add command to subscribe to feeds 2014-03-06 00:08:00 +01:00
ed0144ffe7 Fix warnings
Fix warnings about calling `t' as a function.
2014-03-05 22:43:52 +01:00
ea4cb85730 Return to deriving from special-mode
Deriving from view-mode causes errors.
2014-03-03 21:45:24 +01:00
d148be81db Update requires 2014-02-15 16:39:09 +01:00
76c12f0af7 Add commands for navigating links in articles 2014-02-15 16:38:54 +01:00
2ce3859d0d Go to the beginning of the buffer after rendering 2014-02-15 16:38:26 +01:00
b3bf16c58b Derive article mode from view mode
Since we are viewing an article, it seems more appropriate.
2014-02-15 16:37:45 +01:00
28a390e785 Change default article rendering function
A lot of articles are HTML-based and the `shr' library, which is also
used by GNU, renders HTML well. It is also included with Emacs (at least
in v24.3+).
2014-02-15 13:55:59 +01:00
66bc2bec98 Show button in article to browse original
Not all articles are fully available through the RSS feed, and not all
of them provide a link to the full article.
2014-02-15 13:55:02 +01:00
76a4cbd0cc Fix a bunch of docstring-related warnings 2014-02-14 01:17:11 +01:00
aef68eb804 Sort and group headlines
Even though sorting by feed id is completely meaningless, it is easy.
2014-02-14 00:38:20 +01:00
e8a8a700a4 Add raw option to avandu--send-command-sync
This is useful for functions that need to check something outside of
the "content" list of the result.  Probably all of them should though.

* avandu.el (avandu--send-command-sync): New parameter: raw.  Return
  the content part of the results if RAW is nil, otherwise return the
  results onmodified.

  (avandu-login): Pass a RAW argument to `avandu--send-command-sync'.
2012-08-23 09:21:47 +02:00
a9d0b80d81 Add possibility of choosing rendering functions
* avandu.el (avandu-article-render-function): New defcustom.

  (avandu-view-possibly-external):
  (avandu-view-w3m): New functions.

  (avandu-view-article): Call rendering function at the end so that
  the buffer has been loaded and minor modes and such _should_ load
  correctly.
2012-08-22 23:08:42 +02:00
91e25431c4 Add some asynchronous commands
* avandu.el (avandu--prep-params):
  (avandu--send-command-async): New functions.

  (avandu--send-command-sync): Renamed from `avandu--send-command'.
  Use `avandu--prep-params' to prepare the data sent to the server.

  (avandu-update-article):
  (avandu-feed-catchup):
  (avandu-logout): Use `avandu--send-command-async' to send data. We
  should get a report on its success, but we don't need to work with
  the result.
2012-08-22 22:05:16 +02:00
6d056c6a63 Add article view
* avandu.el: Add Tiny Tiny RSS url to Commentary.

  (avandu-article-title):
  (avandu-article-author): New faces.

  (avandu-html2text-command): New user option.

  (avandu-article-button-map): Wrap a lambda around the call to
  `avandu-mark-article-read'.

  (avu-prop): New macro.

  (avandu--get-session-id):
  (avandu--get-status-id):
  (avandu--send-command):
  (avandu-logged-in-p):
  (avandu-new-articles-count):
  (avandu-tt-rss-api-level):
  (avandu-tt-rss-version):
  (avandu-overview): Use `avu-prop'.

  (avandu--insert-article-title): Show the article screen when
  activating an article button instead of showing its URL.

  (avandu-categories):
  (avandu-feeds):
  (avandu-headlines): No more need to call `cdr' and `assq' on the
  result of `avandu--send-command'.

  (avandu-get-article): New function.

  (avandu-mark-article-read): Just send a command to the server, don't
  do anything with the UI.

  (avandu-ui-mark-article-read): New function.  Split off from
  `avandu-mark-article-read'.

  (avandu-article-mode): New major mode.

  (avandu-view-article): New function.
2012-08-22 12:44:50 +02:00
93461d87cd Fill titles
So they don't run on too long off the screen.
2012-08-07 10:57:23 +02:00
a382f10aac Show message after some operations
After marking an article as read or opening an article, show a message
that it has been done.
2012-08-07 10:56:47 +02:00
4cae7937c0 Typo fix 2012-08-07 09:49:18 +02:00
e96da80199 Abstract the parsing and creation of single lines
Don't use `replace-regexp-in-string' in so many places, use
`avandu--oneline'.
2012-08-07 09:49:08 +02:00
2d67666547 Add auth-source as explicit requirement 2012-08-07 09:47:43 +02:00
32f394cbfa Make avandu use auth-source
* avandu.el (avandu--clear-data): Only use `clear-string' if
  `avandu-password' is a string, otherwise just set it to nil.

  (avandu--get-credentials):
  (avandu--password): New functions.

  (avandu-login): If either `avandu-user' or `avandu-password' is nil,
  call `avandu--get-credentials' to fill them.  Just pass along
  `avandu-user' and use `avandu--password' to get the password.
2012-08-06 21:16:03 +02:00
0516b22b9a Add avandu-update-article function
* avandu.el (avandu-mark-article-read): Use `avandu-update-article'
  instead of calling `avandu--send-command'.
2012-08-04 20:39:59 +02:00
7a7b7fb8b3 Have avandu-headlines use a plist
Calling `(avandu-headlines -4 :view-mode "unread" :show-excerpt t)'
seems much cleaner than
`(avandu-headlines -4 nil nil nil t nil "unread")'.
2012-08-04 18:07:23 +02:00
a92da69dea Rename avandu-list to avandu-overview
As it's `avandu-overview-mode' and the everything else says overview,
this really is a better name.
2012-08-04 16:10:42 +02:00
b3bc3c4804 Add avandu-headlines function
This function returns a vector of articles.

* avandu.el (avandu-list): Use `avandu-headlines' instead of calling
  `avandu--send-command' directly.
2012-08-04 03:14:54 +02:00
ed39e627de Add avandu-categories function
Remove texinfo documentation abount avandu-feeds, as it is not a
command it should not (yet) be documented in the info manual.
2012-08-04 02:28:18 +02:00
fb8e52c1dc Add avandu-feeds command
This command only returns a vector of feeds, it is not yet useful for
users but will be used later to allow for different views of feeds.
2012-08-04 01:31:55 +02:00
ea83dd8c2c Show unread count in mode-line
* avandu.el (avandu-new-articles-count): Only show a message in the
  echo area if it has been called interactively in any way.

  (avandu-overview-mode): Set MODE-NAME to the format of
  "Avandu:Overview[#]" where `#' is replaced by the number of unread
  articles.
2012-08-04 00:33:03 +02:00
7546b86c4b Add avandu-tt-rss-version command
Also add some doc fixes.
2012-08-04 00:05:24 +02:00
74d96c4a93 Add avandu-version 2012-08-03 23:58:15 +02:00
08a2b3c8dd Add avandu-tt-rss-api-level command
This command gets the api level from tt-rss, this doesn't serve any
purpose yet, but it could be used later-on to determine which features
are and aren't available.
2012-08-03 23:54:35 +02:00
457242bf26 Make a user option out of avandu-user
There is no harm in specifying your username in a config file.
2012-08-03 23:37:27 +02:00
469df11333 Rearrange
Hopefully this will make it a little clearer.  More rearranging might
happen in the future.
2012-08-03 22:46:15 +02:00
9f7c64aa6e Explicitly require url and simple
This is to prevent warnings/errors from appearing.
2012-08-02 22:24:45 +02:00
205178fa07 Use defcustom for avandu-tt-rss-api-url
* avandu.el: Change `avandu-tt-rss-api-url' from a `defvar' to a
  `defcustom' to make it easier for users to change.
2012-08-02 22:24:11 +02:00
5e9acf6f30 Add some documentation 2012-08-02 22:22:34 +02:00
b138eea723 Add logout command
If you ever want to manually reset your session.
2012-07-28 22:52:57 +02:00
cdccaa9311 Clean up data when login fails
Before, when attempting to log in, and failing, the username and
password were retained and subsequent attempts would also fail.  Now
the data is deleted and new login requests will start fresh.
2012-07-28 22:49:18 +02:00
3d4e26cbe0 Add   as replaceable entity
Replace it with ` '.
2012-07-27 02:31:58 +02:00
939a7f94ba Pass-off cleaning up of text to separate function
* avandu.el (avandu-entity-replacement-alist): An alist that keeps
  track which titled entities should be replaced by which character.

  (avandu-clean-text): New function.

  (avandu--insert-article-excerpt): Don't run endless chains of
  `replace-regexp-in-string', leave (almost) all cleanup to
  `avandu-clean-text'.  Don't print an excerpt if it is empty.
2012-07-27 01:44:14 +02:00
529c17e7c1 Add excerpt to articles
* avandu.el (avandu-overview-excerpt): New face.

  (avandu--insert-feed-title): Replace `newline' with `insert-char' to
  prevent newlines from continuing indentation.

  (avandu--insert-article-title): Replace `newline' with
  `insert-char'.

  (avandu--insert-article-excerpt): New function.

  (avandu-list): Ask tt-rss to send along an excerpt of each article
  and print this excerpt after the article's title.
2012-07-26 00:49:18 +02:00
a0882bf8da Add/improve docstrings 2012-07-26 00:43:30 +02:00
810732f559 Initial commit 2012-07-25 01:49:02 +02:00