Commit Graph

3250 Commits

Author SHA1 Message Date
Homu 670f0e16e9 Auto merge of #33 - matthiasbeyer:add-notes, r=matthiasbeyer
Add module: notes (journal)

Module: Notes/journal

Closes #14

Tracking branch for the module implementation.
2016-01-03 04:07:48 +09:00
Matthias Beyer 9ac388c2b6 Notes: Add command_edit() 2016-01-02 20:06:31 +01:00
Matthias Beyer 8ac798687a Add File::set_data() 2016-01-02 20:06:31 +01:00
Matthias Beyer 6b105f41d2 Add: ui::external::editor::edit_content() 2016-01-02 20:06:21 +01:00
Matthias Beyer ee2d96a9a2 Notes: command_add() -> let user provide content 2016-01-02 20:06:21 +01:00
Matthias Beyer 7ac5111cde Fix let_user_provide_content() 2016-01-02 20:06:21 +01:00
Matthias Beyer 2b8bd86ce1 Runtime::editor() should provide a Command object 2016-01-02 20:06:21 +01:00
Matthias Beyer ad1a0e7f47 configuration should return editor_opts() -> String 2016-01-02 20:06:21 +01:00
Matthias Beyer d68d0088e8 main: Include Notes module 2016-01-02 20:06:21 +01:00
Matthias Beyer db7a4abbd8 Notes: Implement command_set_tags 2016-01-02 20:06:21 +01:00
Matthias Beyer 445a9885cf Notes: Implement command_rm_tags 2016-01-02 20:06:20 +01:00
Matthias Beyer e42d7f7f8d Notes: Implement command_add_tags() 2016-01-02 20:06:20 +01:00
Matthias Beyer 1bccf067bf Provide header-rebuilder helper 2016-01-02 20:06:20 +01:00
Matthias Beyer 9227c4bb9a Move header-altering helper to module generic helpers
This helper is for editing the header tags in some module-independent
way, so this piece of code is now moved to the module-generic helpers.
2016-01-02 20:06:20 +01:00
Matthias Beyer 6d02e3d486 Module trait: Module must be able to lend a Runtime object 2016-01-02 20:06:20 +01:00
Matthias Beyer 7cd429fe7e Notes: Implement command_remove 2016-01-02 20:06:20 +01:00
Matthias Beyer 852b624417 Notes: Implement command_list() 2016-01-02 20:06:20 +01:00
Matthias Beyer 591717780a Notes: Add helper to get name from header 2016-01-02 18:47:42 +01:00
Matthias Beyer 5cc4b4d079 Notes: Implement command_add() 2016-01-02 18:47:42 +01:00
Matthias Beyer 8a9f4c370e Initial import of code for Notes module 2016-01-02 18:45:10 +01:00
Matthias Beyer 1de0796507 Add interface specification for the notes module 2016-01-02 18:45:10 +01:00
Matthias Beyer 24527be3cf Add dep: pulldown-cmark 2016-01-02 18:45:10 +01:00
Homu 3bb315191f Auto merge of #37 - matthiasbeyer:refactor, r=matthiasbeyer
Refactor filter building into types which can be chained up

State before was to generate functions which can be used as filter()
arguments.

State now is that there are types which can be lined up and be executed
as filters. And/Or/Not-Filters are provided and so are helper functions
to initialize objects of these filter types.

The BM module is adapted for this.

@TheNeikos can you have a look, please?
2016-01-03 02:37:38 +09:00
Matthias Beyer a49113cb5f Refactor filter building into types which can be chained up
State before was to generate functions which can be used as filter()
arguments.

State now is that there are types which can be lined up and be executed
as filters. And/Or/Not-Filters are provided and so are helper functions
to initialize objects of these filter types.

The BM module is adapted for this.
2016-01-02 18:37:17 +01:00
Homu a2037f3909 Auto merge of #45 - matthiasbeyer:bm-command-output, r=matthiasbeyer
Bm command output

Add info-output to some BM commands.
2016-01-03 00:30:10 +09:00
Homu 9a82ccd2d1 Auto merge of #44 - matthiasbeyer:bm-open-xdg, r=matthiasbeyer
Bm open xdg

Add subcommand to `BM` to open links via xdg.

Closes #28
2016-01-03 00:25:31 +09:00
Homu b404901b42 Auto merge of #43 - matthiasbeyer:config-refactor, r=matthiasbeyer
Config refactor

Refactoring of the internal representation of the configuration file.

Also removes the possibility to set verbosity and debugging flag in the config file, as I consider this bad anyways and it allows us now to setup the logger earlier in the startup phase, which means more code which can use debugging output.
2016-01-03 00:19:14 +09:00
Matthias Beyer bdfaac0c76 Add info output to BM-add command 2016-01-02 16:15:30 +01:00
Matthias Beyer 4c95e403e9 Add information output to BM-remove 2016-01-02 16:09:44 +01:00
Matthias Beyer 89101719ad Add bm-open command 2016-01-02 16:03:01 +01:00
Matthias Beyer 121bd0a8c5 Add dep: open 2016-01-02 15:45:01 +01:00
Matthias Beyer 77d2b189fb Configuration does not store verbose/debugging flag information 2016-01-02 15:39:57 +01:00
Matthias Beyer 6272bfd3a9 Refactor configuration: Simplify codebase
- fetch_config() exits if the config parsing fails
- Simplified the build process of the Configuration object
2016-01-02 15:37:06 +01:00
Homu 522f1dccff Auto merge of #42 - matthiasbeyer:logger-depends-on-cli-only, r=matthiasbeyer
ImagLogger can be configured through the CLI only now

The logger instance cannot be configured through the configuration file, as this is kinda bulky to use and we can log to debug much earlier now.
2016-01-02 23:30:29 +09:00
Matthias Beyer 745f57e480 ImagLogger can be configured through the CLI only now 2016-01-02 15:29:11 +01:00
Homu bbcf0e2dba Auto merge of #40 - matthiasbeyer:cleanup, r=matthiasbeyer
Cleanup

Codebase cleanup
2016-01-02 07:51:58 +09:00
Homu dca295d8fd Auto merge of #39 - matthiasbeyer:fix-store-cache, r=matthiasbeyer
Fix store cache

Ensure the store always honors the cache.
2016-01-02 07:46:09 +09:00
Matthias Beyer 911c248c39 Store::remove(): Move function so we have a better order 2016-01-01 23:45:14 +01:00
Matthias Beyer c681b24ef4 Store::load() should load, not Store::put_in_cache()
Store::put_in_cache (not put_into_cache) is now called inside ::load()
if the key is not yet in the cache.

The Store::load() function cached its interface for this. It can also be
used by the other functions in the Store object to load content.
2016-01-01 23:45:14 +01:00
Matthias Beyer f802b00974 Rewrite Store::load_in_cache() to check cache before loading 2016-01-01 23:26:04 +01:00
Matthias Beyer d6bd011d95 Add try!() around write!() 2015-12-30 23:02:05 +01:00
Matthias Beyer 37f3c90914 Remove dead code 2015-12-30 23:02:05 +01:00
Matthias Beyer a2856d8671 Remove unused imports 2015-12-30 23:02:05 +01:00
Matthias Beyer 708f2bcff1 Added indent for readability 2015-12-30 18:50:09 +01:00
Matthias Beyer 37588a9f3d Remove hello-world output 2015-12-30 18:48:28 +01:00
Homu 6c92b2300c Auto merge of #36 - matthiasbeyer:bm-list-filter, r=matthiasbeyer
BM::command_list() add filter functionality

Adds missing filter functionality for BM subcommand `list`.
2015-12-30 23:16:13 +09:00
Matthias Beyer 8f46056a08 BM::command_list() add filter functionality 2015-12-30 15:14:26 +01:00
Homu 9b1ba78c1f Auto merge of #35 - matthiasbeyer:refactor, r=matthiasbeyer
Refactor

Refactor for better and more generic CLI-filter abstractions for modules.
2015-12-30 23:08:20 +09:00
Matthias Beyer 7bbe1bb6d0 Refactor: Provide generic cli-to-filter-function generator
The refactors functions from the BM module into more generic functions
for all modules.

The previous state was, that there were functions in the BM module which
were used to load from the store and applying some filters.

The new state is that there are functions to generate the filter
functions which are then used to filter the loaded files from the store,
so we can apply some more functionality on the filtered list.
2015-12-30 15:06:22 +01:00
Matthias Beyer 09aa7d9ec3 Add debug output to text-from-header fetcher function 2015-12-30 15:06:02 +01:00