Commit graph

3850 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
9ac388c2b6 Notes: Add command_edit() 2016-01-02 20:06:31 +01:00
8ac798687a Add File::set_data() 2016-01-02 20:06:31 +01:00
6b105f41d2 Add: ui::external::editor::edit_content() 2016-01-02 20:06:21 +01:00
ee2d96a9a2 Notes: command_add() -> let user provide content 2016-01-02 20:06:21 +01:00
7ac5111cde Fix let_user_provide_content() 2016-01-02 20:06:21 +01:00
2b8bd86ce1 Runtime::editor() should provide a Command object 2016-01-02 20:06:21 +01:00
ad1a0e7f47 configuration should return editor_opts() -> String 2016-01-02 20:06:21 +01:00
d68d0088e8 main: Include Notes module 2016-01-02 20:06:21 +01:00
db7a4abbd8 Notes: Implement command_set_tags 2016-01-02 20:06:21 +01:00
445a9885cf Notes: Implement command_rm_tags 2016-01-02 20:06:20 +01:00
e42d7f7f8d Notes: Implement command_add_tags() 2016-01-02 20:06:20 +01:00
1bccf067bf Provide header-rebuilder helper 2016-01-02 20:06:20 +01:00
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
6d02e3d486 Module trait: Module must be able to lend a Runtime object 2016-01-02 20:06:20 +01:00
7cd429fe7e Notes: Implement command_remove 2016-01-02 20:06:20 +01:00
852b624417 Notes: Implement command_list() 2016-01-02 20:06:20 +01:00
591717780a Notes: Add helper to get name from header 2016-01-02 18:47:42 +01:00
5cc4b4d079 Notes: Implement command_add() 2016-01-02 18:47:42 +01:00
8a9f4c370e Initial import of code for Notes module 2016-01-02 18:45:10 +01:00
1de0796507 Add interface specification for the notes module 2016-01-02 18:45:10 +01:00
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
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
bdfaac0c76 Add info output to BM-add command 2016-01-02 16:15:30 +01:00
4c95e403e9 Add information output to BM-remove 2016-01-02 16:09:44 +01:00
89101719ad Add bm-open command 2016-01-02 16:03:01 +01:00
121bd0a8c5 Add dep: open 2016-01-02 15:45:01 +01:00
77d2b189fb Configuration does not store verbose/debugging flag information 2016-01-02 15:39:57 +01:00
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
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
911c248c39 Store::remove(): Move function so we have a better order 2016-01-01 23:45:14 +01:00
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
f802b00974 Rewrite Store::load_in_cache() to check cache before loading 2016-01-01 23:26:04 +01:00
d6bd011d95 Add try!() around write!() 2015-12-30 23:02:05 +01:00
37f3c90914 Remove dead code 2015-12-30 23:02:05 +01:00
a2856d8671 Remove unused imports 2015-12-30 23:02:05 +01:00
708f2bcff1 Added indent for readability 2015-12-30 18:50:09 +01:00
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
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
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
09aa7d9ec3 Add debug output to text-from-header fetcher function 2015-12-30 15:06:02 +01:00