Commit Graph

52 Commits

Author SHA1 Message Date
tastytea b72d3f3420
Color matches bright magenta. 2021-05-25 11:00:05 +02:00
tastytea d3c3062cc0
Add Termcolor dependency and bundle it in dist/. 2021-05-25 10:55:44 +02:00
tastytea ce015954ea
Only initialize search::options once. 2021-05-25 10:02:34 +02:00
tastytea 4644c2afd4
Support CMake 3.12.
continuous-integration/drone/push Build is passing Details
Ubuntu 20.04 has 3.16, so requiring 3.17 is a bit mean.
2021-05-25 07:38:07 +02:00
tastytea be229d25d6
Don't demand required options if --help or --version is requested.
continuous-integration/drone/push Build is passing Details
Bump version to 0.1.2.
2021-05-25 07:15:04 +02:00
tastytea e1d29c5893
Don't replace stuff in search::cleanup_text() if nothing matched. 2021-05-24 20:02:27 +02:00
tastytea 09090a1c13
Fix bugs in search::context().
- Don't add context if words == 0
- Handle beginning / end of text correctly.
2021-05-24 19:57:15 +02:00
tastytea 1f25daed26
Add basic error handling to search. 2021-05-24 19:10:00 +02:00
tastytea c790c4952c
Extract page numbers. 2021-05-24 18:56:43 +02:00
tastytea bb4a4c719f
Wrap headlines in <H> and </H> during cleanup. 2021-05-24 18:08:40 +02:00
tastytea 8ab7d0f655
Extract headlines. 2021-05-24 17:27:30 +02:00
tastytea 8b21f4a8b9
Don't output empty fields. 2021-05-24 16:37:43 +02:00
tastytea 972ce1d0fe
Don't strip headlines. 2021-05-24 16:37:30 +02:00
tastytea bb1a43ca92
Move cleanup_text(), document functions. 2021-05-24 16:23:07 +02:00
tastytea 84e2b387e5
Clean up text before searching. 2021-05-24 16:01:41 +02:00
tastytea 1979956f03
Add basic search functionality and context output. 2021-05-24 15:35:49 +02:00
tastytea 4e01032c6f
Put regex type and --grep in search::options. 2021-05-24 13:13:15 +02:00
tastytea b2e70a6faa
Mark everything [[nodiscard]], fix some comments. 2021-05-24 13:00:03 +02:00
tastytea 9c769f664d
Clarify documentation: NUM → NUMBER. 2021-05-24 08:23:52 +02:00
tastytea 44ffeb07ec
Add calls to search::search() to main().
All that's missing now is the actual search functionality. 😊
2021-05-24 08:15:04 +02:00
tastytea 3222019c69
Add default value (0) to --context. 2021-05-24 08:14:29 +02:00
tastytea 1f82d9927a
Add skeleton for search::search().
- Type for matches
- Type for options.
2021-05-24 07:52:36 +02:00
tastytea f388dd0511
Add --raw and --context switches. 2021-05-24 07:50:50 +02:00
tastytea 5ac7f92f1d
Add hint to man page. 2021-05-24 06:03:32 +02:00
tastytea 3ad4e49e3d
Don't dump zip files to stdout. 2021-05-24 05:46:12 +02:00
tastytea 2ab4705475
Make --regexp required, show help if it is not given. 2021-05-24 05:45:42 +02:00
tastytea 4b2fbecf93
Print all options at start.
continuous-integration/drone/push Build is passing Details
2021-05-23 16:52:32 +02:00
tastytea 03e07dfc3e
Rework option parsing a bit.
- Add --basic-regexp
- Add --grep
- Remove --input-file
- Make it possible to have multiple --regexp
2021-05-23 16:23:07 +02:00
tastytea e773d4b78a
Implement zip::read_file() – Read file in archive; add test.
Also added zip::open_file() and zip::close_file() to deduplicate code.
2021-05-23 08:56:58 +02:00
tastytea 6334b7051f
Newline before printing error messages. 2021-05-23 08:55:15 +02:00
tastytea 28c6c80def
Set C locale, treat EPUB file names as UTF-8.
EPUB file names MUST be UTF-8. ASCII is a subset of UTF-8.
2021-05-23 06:32:56 +02:00
tastytea 6c040fa951
Add first test.
continuous-integration/drone/push Build is failing Details
- Compile everything in src/ except main.cpp into a static library
- Link the static library into tests
- Add test for zip::list()
2021-05-21 09:27:31 +02:00
tastytea 8c8a19b86b
Cosmetic changes. 2021-05-21 07:10:46 +02:00
tastytea a941bcced3
Initialize the variables where they're needed. 2021-05-21 07:05:44 +02:00
tastytea 354583bcbd
Add short descriptions. 2021-05-21 06:54:01 +02:00
tastytea 7ecb634473
Return failure on zip error. 2021-05-21 04:12:58 +02:00
tastytea 1229e295ef
Set locale for std::cerr. 2021-05-21 04:10:11 +02:00
tastytea 1a80f770ff
Fix error messages. 2021-05-21 04:04:17 +02:00
tastytea 4e8c6e7489
Add exception for zip processing.
continuous-integration/drone/push Build is failing Details
- New dependency: libfmt.
- Translate error messages.
2021-05-21 03:25:42 +02:00
tastytea 222f802015
Basic zip file support.
continuous-integration/drone/push Build is passing Details
Dumping the TOC works.
2021-05-21 01:56:37 +02:00
tastytea 031e2f0db6
Use sub-namespaces for functionality-groups. 2021-05-21 01:50:13 +02:00
tastytea 10e84a7707
Translate Error messages in main(). 2021-05-21 01:48:55 +02:00
tastytea 7007d5e89a
Add single letter options. 2021-05-20 11:51:08 +02:00
tastytea 231ec20cd5
Rename input → input-file. 2021-05-20 11:43:35 +02:00
tastytea 9a136b87a9
Add --regexp and --input, add both as positional options. 2021-05-20 11:33:33 +02:00
tastytea bfb59da98d
std::filesystem compatibility for older GCC.
continuous-integration/drone/push Build is passing Details
The header was in experimental a while ago and the implementation was a
separate library.
2021-05-20 10:37:45 +02:00
tastytea cf8fb95777
Switch to fs::path where appropriate.
continuous-integration/drone/push Build is failing Details
2021-05-20 10:20:42 +02:00
tastytea f57555fb3a
Fix documentation of get_config_path(). 2021-05-20 10:03:09 +02:00
tastytea 370382d44d
Add basic error handling. 2021-05-20 09:05:52 +02:00
tastytea f95389d76c
Add support for config file. 2021-05-20 09:05:39 +02:00