138 Commits

Author SHA1 Message Date
Bill Flynn
e2ad39ca08 [Fix #95] robust handling of DOIs
Added DOI regex function to utils.py which is called in add_cmd.py
upon specifying a new DOI.  DOI validation applies directly on
argument parsing by using a custom argparse.Action.
2018-01-05 19:22:00 -05:00
Olivier Mangin
3ad4a73da1 Moves query code from list_cmd to didicated module. 2018-01-05 14:34:24 -05:00
Olivier Mangin
0bd8d5b8dc Actually adds the functionality as well as a few more tests. 2018-01-05 14:34:24 -05:00
Olivier Mangin
832a20d743 Typo. 2018-01-05 14:34:24 -05:00
Olivier Mangin
84553d8eb3 [Fix #90] Adds year ranges to queries. 2018-01-05 14:34:24 -05:00
Olivier Mangin
c54de5c3b6 Refactors paper filtering from queries. 2018-01-05 14:34:24 -05:00
Olivier Mangin
3e31c4455e Fixes argument and adds tests for overwrite on import. 2017-12-11 15:49:06 -05:00
Dennis Wilson
1cd95bdeec overwrite argument on import 2017-12-11 15:28:56 -05:00
Olivier Mangin
6a26216c3e COSMIT 2017-10-19 15:46:42 -04:00
Olivier Mangin
47f5c918ea Fix #93: saves the modifications on edit -m. 2017-10-17 16:50:23 -04:00
Fabien C. Y. Benureau
0942df3b50 Fix pubs conf command 2017-08-01 23:43:06 -04:00
Fabien C. Y. Benureau
1f224a90c7 Fixes websearch in Python 3 (fix #69) 2017-07-17 15:42:06 +02:00
Olivier Mangin
4ffd62fe9f [notes] Allow different file extension for note file (see #70). 2017-07-12 10:41:51 -04:00
Olivier Mangin
e1a6ad2167 Adds basic tag completion. 2017-07-08 00:10:15 -04:00
Olivier Mangin
02c11aaaea Adds completion for citekeys. 2017-07-08 00:10:15 -04:00
Olivier Mangin
a5466c940e Prepare configuration loading for autocomplete.
In particular, tries to load configuration when no argument is given.
Also removes unused check option from load_conf.
2017-07-08 00:10:15 -04:00
Olivier Mangin
a600855c31 Fix calls to edit_file with wrong editor in conf and note commands.
Also replaces fix from PR #63.
2017-05-24 13:45:24 -04:00
Fabien C. Y. Benureau
0f84268ebf Honor custom pubsdoc in config 2016-06-06 00:25:27 +02:00
Fabien Benureau
e5b898c5c2 Cache implemented
The implementation is designed to be robust to filesystems having integers
or nanosecond stat time.

Added a requirements.txt file for the tests:
`pip install -r tests/requirements.txt` to install the necessary packages
to run the tests.

Fix #13, Fix #14
2016-01-23 02:03:02 +01:00
Fabien Benureau
e979aae85b Better rename and error dialogue
info() messages now print on stdout. warning() and error() still
print on stderr.

Fix #50
2016-01-16 21:52:36 +01:00
Olivier Mangin
ecb1910084 Better error message on UnicodeDecodeError for reading text file.
Also renames read_file to read_text_file which is what is implemented.
Fixes #51.
2016-01-15 19:02:56 -05:00
Olivier Mangin
ed2bbb4498 Removes generic handling of errors from commands.
The default behavior for commands is now to only catch exceptions that
must be handled specifically. This includes outputting a context
dependant message, cleaning up, etc. All other exceptions will be
handled by the ui.
2016-01-15 19:02:56 -05:00
Olivier Mangin
b12c6297f0 Adds exception catching in main command. 2016-01-15 19:02:56 -05:00
Fabien Benureau
98a2f1d646 Fix quadratic output in export 2016-01-10 19:40:01 +01:00
Fabien Benureau
a702d86a74 Make pubs doc subparsers required
Before, `pubs doc` alone would just exit without printing any help
2016-01-07 14:09:22 +01:00
Fabien Benureau
b6e8139bc3 Remove extraneous doc message 2015-12-20 22:22:11 +01:00
Fabien Benureau
a291114900 Remove duplicated edit_cmd code
Makes nano the default editor.

Fixes #46
2015-12-17 12:54:18 +01:00
Olivier Mangin
854702488c Fixes #46: editor command behaviors with the new config.
- Fix the previous default to 'None' (the string 'None', not None)
in the config.
- Adds support for using the $EDITOR when none is defined in the condif.
- Use ui.editor instead of content.editor in the add commnand.
2015-12-16 15:45:45 -05:00
Fabien Benureau
f843aebcbd Better handle utf-8 citekeys
Utf-8 citekeys generate errors in bibtexparser. Until this is fixed,
this commit replace the stack-trace by a clear error message.

related: #28
2015-12-16 16:38:40 +01:00
73
23890bf579 missed two somehow 2015-12-16 13:41:20 +01:00
73
5cc3f892a0 All commands that consume a citekey as an argument will now complete a
prefix.
2015-12-14 16:31:30 +01:00
73
a926c4c654 adds a *doc add|remove|export|open* command; depricates commands *open* and *attach*; fixed typos in readme.md and uis; 2015-12-13 21:34:48 +01:00
Fabien Benureau
f52a7202bb Better help for the list command 2015-12-12 15:08:22 +01:00
Fabien Benureau
796087af45 Fix missing update of dye in open command
Essentially reapply commit bd3659a432 that got swallowed in the merge.
2015-12-08 23:54:43 +01:00
Fabien Benureau
392ee0c3c1 Merge branch 'master' into feat/new_config
Add StringIO and BytesIO to FakeIO.
Fixes bytes/string problem in update()
2015-12-07 11:49:16 +01:00
Fabien Benureau
3099d353f9 Configurable colors and update improvement
Add a theme section in the configuration file to allow users to
set the colors used by different elements of the ui.

Improve the update mechanism so that incremental changes to the
configuration file can be incorporated.
2015-12-07 11:04:34 +01:00
Fabien Benureau
789db93911 Add platform-specific open and edit commands at init
The main motivation is to provide sensible default to make the
commnand "just work" without needing to fiddle with the configuration
2015-12-06 08:41:33 +01:00
Olivier Mangin
bd3659a432 Fixes missing update of dye in open command. 2015-12-06 00:58:29 -05:00
Fabien Benureau
14df0ad1cb Add pubs conf command
Allows to edit the configuration file using pubs directly.
Will check if the modified configuration file is valid.
2015-12-05 21:20:03 +01:00
Fabien Benureau
757a8b300e Add an update mechanism for old repositories
The update is done transparently, and displays a warning message explaining the change.
All the update machinery has been moved to the new update module.
2015-12-05 20:36:19 +01:00
Olivier Mangin
681ae65c9e Fixes issue #35.
pubs tag non-existing-citekey some-tag

Know fails as expected. The commit however removes the option of listing
tags as separate arguments.
2015-12-04 23:44:05 -05:00
Olivier Mangin
5480f79d8d Fixes ˇpubs tag citekey :sometagˇ not working.
Also adds a few tests for the tag command.
2015-12-04 23:20:19 -05:00
Fabien Benureau
93c54939b3 Rewritten config module
It depends on configobj, is cleaner and simpler than the previous implementation.
It adds comments in the config file, and type verification.

Related: #18
2015-12-04 20:49:05 +01:00
Fabien Benureau
4b3b2a23bd Improves interface of PrintUI
`print_out()` is replaced by `message()`, that redirect the output to
the stdout controlled by the PrintUI instance. Other than that, can be
used the same way as `print()`.
2015-12-03 16:09:54 +01:00
Fabien Benureau
cce9406670 new print ui, more robust colors 2015-12-02 16:36:27 +01:00
Fabien Benureau
8afb7a4777 Merge remote-tracking branch 'refs/remotes/origin/master' 2015-12-02 06:39:27 +01:00
Olivier Mangin
67aac0a2d7 Adds move option to add and attach commands.
When set removes original document file after copy.
2015-05-07 13:55:08 +02:00
Olivier Mangin
de2a50eeb2 Fix tests and terminology.
First this brings a change to the paper API: the terminology of bibdata
and bibentry is clarified: now bibentry is a dictionary of the form
{citekey: bibdata} where bibdata corresponds to the actual dictionary of
bibliographic fields and values {author: ..., year: ...}.
Now bibentry is an attribute of the paper object that is generated from
citekey and bibdata.

This commit fixes all tests in particular an issue with citekey in
bibentry not updated.

Also removes prints in tests and deprecated assertEquals.

Usecase tests now fail if the command ask for unexpected inputs.

Removes queries for user input in attach and add commands (for deletion
of a copied document file). The input was not coherent with tests and is
annoying.
2015-05-07 13:17:44 +02:00
Fabien Benureau
3aa64d4cd2 minor dialog update 2015-04-15 16:52:10 +02:00
Fabien Benureau
ec330571e8 option for listing all references without pdfs 2015-04-15 16:51:15 +02:00