Merge commit '77d3a60869e7a780c6ae069e51530e1eacece5e2'
[fanfix.git] / README.md
index 9c1c5db547af572ff100293208adefa5334eb563..43a0f40687d0fdd6caff18f7c4dd5c7eba3fa16b 100644 (file)
--- a/README.md
+++ b/README.md
@@ -10,8 +10,12 @@ Fanfix is a small Java program that can download stories from some supported web
 - ```fanfix``` --convert [*URL*] [*output_type*] [*target*] (+info)
 - ```fanfix``` --read [*id*] ([*chapter number*])
 - ```fanfix``` --read-url [*URL*] ([*chapter number*])
+- ```fanfix``` --search
+- ```fanfix``` --search [*where*] [*keywords*] (page [*page*]) (item [*item*])
+- ```fanfix``` --search-tag
+- ```fanfix``` --search-tag [*index 1*]... (page [*page*]) (item [*item*])
 - ```fanfix``` --list
-- ```fanfix``` --set-reader [*reader type*]
+- ```fanfix``` --set-reader [*GUI* | *TUI* | *CLI*]
 - ```fanfix``` --server [*key*] [*port*]
 - ```fanfix``` --stop-server [*key*] [*port*]
 - ```fanfix``` --remote [*key*] [*host*] [*port*]
@@ -23,10 +27,10 @@ Fanfix is a small Java program that can download stories from some supported web
 
 (A [TODO list](TODO.md) is also available to know what is expected to come in the future.)
 
-TODO: new screenshots + TUI screenshots
-
 ![Main GUI](screenshots/fanfix-1.3.2.png?raw=true "Main GUI")
 
+A screenshots cgallery an be found [here](screenshots/README.md).
+
 It will convert from a (supported) URL to an .epub file for stories or a .cbz file for comics (a few other output types are also available, like Plain Text, LaTeX, HTML...).
 
 To help organize your stories, it can also work as a local library so you can:
@@ -34,7 +38,7 @@ To help organize your stories, it can also work as a local library so you can:
 - Import a story from its URL (or just from a file)
 - Export a story to a file (in any of the supported output types)
 - Display a story from the local library in text format in the console
-- Display a story from the local library graphically **by calling a native program to handle it** (though Fanfix can automatically process it into HTML so any browser can open it)
+- Display a story from the local library graphically **natively** or **by calling a native program to handle it** (potentially converted into HTML before hand, so any browser can open it)
 
 ### Supported websites
 
@@ -46,7 +50,7 @@ Currently, the following websites are supported:
 - https://e621.net/: a Furry website supporting comics, including MLP
 - https://sofurry.com/: same thing, but story-oriented
 - https://e-hentai.org/: done upon request (so, feel free to ask for more websites!)
-- https://www.manga-lel.com/: a website offering a lot of mangas (in French)
+- http://mangas-lecture-en-ligne.fr/: a website offering a lot of mangas (in French)
 
 ### Support file types
 
@@ -85,6 +89,10 @@ The following arguments are also allowed:
 - ```--convert [URL] [output_type] [target] (+info)```: convert the story at URL into target, and force-add the .info and cover if +info is passed
 - ```--read [id] ([chapter number])```: read the given story denoted by ID from the library
 - ```--read-url [URL] ([chapter number])```: convert on the fly and read the story at URL, without saving it
+- ```--search```: list the supported websites (```where```)
+- ```--search [where] [keywords] (page [page]) (item [item])```: search on the supported website and display the given results page of stories it found, or the story details if asked
+- ```--tag [where]```: list all the tags supported by this website
+- ```--tag [index 1]... (page [page]) (item [item])```: search for the given stories or subtags, tag by tag, and display information about a specific page of results or about a specific item if requested
 - ```--list```: list the stories present in the library and their associated IDs
 - ```--set-reader [reader type]```: set the reader type to CLI, TUI or GUI for this command
 - ```--server [key] [port]```: start a story server on this port
@@ -112,6 +120,21 @@ There are some unit tests you can run, too:
 
 ```./configure.sh && make build test run-test```
 
+If you run the unit tests, note that some flag files can impact them:
+
+- ```test/VERBOSE```      : enable verbose mode
+- ```test/OFFLINE```      : to forbid any downloading
+- ```test/URLS```         : to allow testing URLs
+- ```test/FORCE_REFRESH```: to force a clear of the cache
+
+Note that ```test/CACHE``` can be kept, as it will contain all internet related files you need (if you allow URLs, run the test once which will populate the CACHE then go OFFLINE, it will still work).
+
+The test files will be:
+
+- ```test/*.url```  : URL to download in text format, content = URL
+- ```test/*.story```: text mode story, content = story
+
+
 ### Dependant libraries (included)
 
 Required: