Commit graph

5027 commits

Author SHA1 Message Date
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
d15d50d8a2 Refactor: Header helper code can use generic function 2015-12-30 15:05:52 +01:00
eed57af0bb module header helpers: Add function to get NAME from header 2015-12-30 15:05:47 +01:00
Homu
25045b7345 Auto merge of #34 - matthiasbeyer:doc, r=matthiasbeyer
Add some documentation

Still does not produce the documentation I want, though it basically works now.
2015-12-30 17:54:41 +09:00
Homu
2568c37a25 Auto merge of #31 - matthiasbeyer:ui-external, r=matthiasbeyer
Ui external

Tracking branch for implementation to call external editor and edit file contents with it.
2015-12-30 17:49:57 +09:00
c106af5618 Remove all the crap and implement temp-file editor calling 2015-12-30 09:49:15 +01:00
7248eef3be configuration fixup editor 2015-12-30 03:02:19 +01:00
bab5614247 runtime.rs: Add options to editor string 2015-12-30 02:53:41 +01:00
70fbd3914e configuration.rs: Add function to fetch editor options 2015-12-30 02:53:41 +01:00
6ff2ac3567 cli.rs: Add function to fetch editor options 2015-12-30 02:53:41 +01:00
6179c9e73f runtime.rs: Add possibility to fetch editor 2015-12-30 02:53:41 +01:00
4f8a545aac cli.rs: Add possibility to fetch editor 2015-12-30 02:53:41 +01:00
89878f7024 configuration.rs: Add possibility to fetch editor 2015-12-30 02:53:41 +01:00
1647352a13 Use modules publicly, so "cargo doc" generates documentation 2015-12-30 02:10:50 +01:00
c4a388925e Add doc to util::is_url() 2015-12-29 18:20:56 +01:00
43bf526740 Add docs to ui/file.rs 2015-12-29 18:20:56 +01:00
2334b0bc8a Add docs to FileHash 2015-12-29 18:20:56 +01:00
d25a0dd1c0 Add docs to FileIDType 2015-12-29 18:20:56 +01:00
d34143e516 Add docs to FileID 2015-12-29 18:20:56 +01:00
6bcfc0a4b2 Add docs to File 2015-12-29 18:20:56 +01:00
3a7bf9f4de Add doc to parser code 2015-12-29 18:20:56 +01:00
5791ba7b8d Add doc to Store object implementation 2015-12-29 18:20:56 +01:00
be233b8aba Add docs to BM module 2015-12-29 18:20:56 +01:00
ffcb951468 Add doc to module header helpers 2015-12-29 18:20:56 +01:00