ЁЯЪА Flexible text parsing and storing system

Pros:
* Removed text update (now it is always updated and parsed from the file each time)
* Removed text storage (smaller app size)
* Dramatically sped up loading in Browse (10 books in ~1s)

Cons:
* Longer Reader loading time (~3x, partly fixable)
* More dependency on the file (fixable)

Resolves: #134
This commit is contained in:
Acclorite 2024-12-30 18:29:37 +02:00
parent aa657790d0
commit 3853727ae7
70 changed files with 294 additions and 1609 deletions

View file

@ -13,11 +13,8 @@
<string name="add_books">рдХрд┐рддрд╛рдмреЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ ?</string>
<string name="move_books">рдХрд┐рддрд╛рдмреЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░реЗрдВ?</string>
<string name="delete_book">рдХрд┐рддрд╛рдм рд╣рдЯрд╛рдПрдВ?</string>
<string name="confirm_update">рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ?</string>
<string name="enable_check_for_updates">рдЕрдкрдбреЗрдЯреНрд╕ рдХреА рдЬрд╛рдБрдЪ рдЪрд╛рд▓реВ рдХрд░реЗрдВ?</string>
<string name="update_book">рдХрд┐рддрд╛рдм рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ?</string>
<string name="move_books_description">рд╡рд╣ рд╢реНрд░реЗрдгреА рдЪреБрдиреЗрдВ рдЬрд┐рд╕рдореЗрдВ рдЖрдк рд╕рднреА рдЪрдпрдирд┐рдд рдкреБрд╕реНрддрдХреЛрдВ рдХреЛ рд▓реЗ рдЬрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ(%1$s)ред рд╕рднреА рдЪрдпрдирд┐рдд рдкреБрд╕реНрддрдХреЗрдВ рдЪрдпрдирд┐рдд рд╢реНрд░реЗрдгреА рдореЗрдВ рд▓реЗ рдЬрд╛рдИ рдЬрд╛рдПрдБрдЧреАред</string>
<string name="confirm_update_description">рдЗрд╕ рдкреБрд╕реНрддрдХ рдХреЗ рдкрд╛рда рдФрд░ рдЕрдзреНрдпрд╛рдпреЛрдВ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВред рдЬрдм рддрдХ рдкреИрд░рд╛рдЧреНрд░рд╛рдлрд╝реЛрдВ рдХрд╛ рдХреНрд░рдо рдирд╣реАрдВ рдмрджрд▓рд╛ рдЬрд╛рддрд╛, рддрдм рддрдХ рдкреНрд░рдЧрддрд┐ рдЕрдкрд░рд┐рд╡рд░реНрддрд┐рдд рд░рд╣рдиреА рдЪрд╛рд╣рд┐рдПред</string>
<string name="update_app_description">рдирдпрд╛ рдРрдк рд╡рд░реНрд╢рди рдорд┐рд▓рд╛ред рдХреНрдпрд╛ рдЖрдк рдЖрдЧреЗ рдмрдврд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рд░рд┐рд▓реАрдЬрд╝ рдкреЗрдЬ рдкрд░ рдЬрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?</string>
<string name="error_something_went_wrong">рдХреБрдЫ рдЧреЬрдмреЬ рд╣реБрдЖ рд╣реИ ред</string>
<string name="error_wrong_file_format">рдЧрд╝рд▓рдд рдкреНрд░рдХрд╛рд░ рдХрд╛ рдлрд╛рдЗрд▓ ред</string>
@ -43,8 +40,6 @@
<string name="copy">рдХреЙрдкреА рдХрд░реЗрдВ</string>
<string name="translate">рдЕрдиреБрд╡рд╛рдж рдХрд░реЗрдВ</string>
<string name="dictionary">рд╢рдмреНрджрдХреЛрд╖</string>
<string name="retry">рдкреБрди: рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ</string>
<string name="confirm">рдкреБрд╖реНрдЯрд┐ рдХрд░реЗрдВ</string>
<string name="next">рдЕрдЧрд▓рд╛</string>
<string name="yes_go_to_help">рд╣рд╛рдВ, рд╕рд╣рд╛рдпрддрд╛ рдкрд░ рдЬрд╛рдПрдВ</string>
<string name="no">рдирд╣реАрдВ</string>
@ -105,7 +100,6 @@
<string name="delete_history_description">рдпрд╣ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдкреВрд░рд╛ рдЗрддрд┐рд╣рд╛рд╕ рдорд┐рдЯрд╛ рджреЗрдЧрд╛ред рдкреВрд░рд╛ рдЗрддрд┐рд╣рд╛рд╕ рдорд┐рдЯрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдХрд┐рддрд╛рдмреЛрдВ рдХрд╛ рдХреНрд░рдо рдлрд┐рд░ рд╕реЗ рд╕реЗрдЯ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред</string>
<string name="error_permission">рд╣рдореЗрдВ рдХрд┐рддрд╛рдмреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рд╕реНрдХреИрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднрдВрдбрд╛рд░рдг рдЕрдиреБрдорддрд┐ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ</string>
<string name="enable_check_for_updates_description">┬лрдЕрдкрдбреЗрдЯ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ┬╗ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдХреЗ, рдРрдк рд╣рд░ рдмрд╛рд░ рдРрдк рд╢реБрд░реВ рд╣реЛрдиреЗ рдкрд░ ┬лapi.github.com┬╗ рд╕реЗ рдирд╡реАрдирддрдо рд░рд┐рд▓реАрдЬрд╝ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдЧрд╛ред рдХреНрдпрд╛ рдЖрдк рдЖрдЧреЗ рдмрдврд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ ┬лрдЕрдкрдбреЗрдЯ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ┬╗ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?</string>
<string name="update_book_description">рдЯреЗрдХреНрд╕реНрдЯ рдХрд╛ рдЕрдкрдбреЗрдЯ рдорд┐рд▓ рдЧрдпрд╛ рд╣реИ. рдирд╡реАрдирддрдо рдкрд╛рд░реНрд╕рд░ рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрджреНрдпрддрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣ рдСрдлрд╝рд▓рд╛рдЗрди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИред рдЬрдм рддрдХ рдмрдбрд╝реЗ рдкрд░рд┐рд╡рд░реНрддрди рдирд╣реАрдВ рд╣реЛрддреЗ, рддрдм рддрдХ рдЖрдкрдХреА рдкреНрд░рдЧрддрд┐ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рд╣реЛрдЧреАред рдХреНрдпрд╛ рдЖрдк рдЕрдкрдбреЗрдЯ рдЬрд╛рд░реА рд░рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?</string>
<string name="error_no_description">рдХреЛрдИ рд╡рд░реНрдгрди рдирд╣реАрдВред</string>
<string name="error_something_went_wrong_with_file">рдХреБрдЫ рдЧрдбрд╝рдмрдбрд╝ рд╣реЛ рдЧрдИ рд╣реИред рдХреГрдкрдпрд╛ рдЬрд╛рдБрдЪреЗрдВ рдХрд┐ рдЗрд╕ рдкреБрд╕реНрддрдХ рдХреА рдлрд╝рд╛рдЗрд▓ рджреВрд╖рд┐рдд рддреЛ рдирд╣реАрдВ рд╣реИред</string>
<string name="error_file_empty">рдпрд╣ рдлрд╝рд╛рдЗрд▓ рдЦрд╛рд▓реА рдпрд╛ рджреВрд╖рд┐рдд рд╣реИред</string>
@ -148,9 +142,6 @@
<string name="perception_expander_option">рдзрд╛рд░рдгрд╛ рд╡рд┐рд╕реНрддрд╛рд░рдХ</string>
<string name="perception_expander_option_desc">рдХреЗрдВрджреНрд░ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рдХреЗ рдЕрдкрдиреА рдкрдврд╝рдиреЗ рдХреА рдЧрддрд┐ рдмрдврд╝рд╛рдПрдБ</string>
<string name="perception_expander_padding_option">рдзрд╛рд░рдгрд╛ рд╡рд┐рд╕реНрддрд╛рд░рдХ рд▓рд╛рдЗрди рдкреИрдбрд┐рдВрдЧ</string>
<string name="check_for_text_update_option">рдЯреЗрдХреНрд╕реНрдЯ рдЕрдкрдбреЗрдЯ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ</string>
<string name="check_for_text_update_option_desc">рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдЯреЗрдХреНрд╕реНрдЯ рдЕрдкрдбреЗрдЯ рд╣реИ рдпрд╛ рдирд╣реАрдВ</string>
<string name="check_for_text_update_toast_option">\"рдЯреЗрдХреНрд╕реНрдЯ рдЕрдк-рдЯреВ-рдбреЗрдЯ рд╣реИ\" рдЯреЛрд╕реНрдЯ рджрд┐рдЦрд╛рдПрдВ</string>
<string name="browse_files_structure_option">рдлрд╝рд╛рдЗрд▓ рд╕рдВрд░рдЪрдирд╛</string>
<string name="browse_layout_option">рдкреНрд░рджрд░реНрд╢рди рдореЛрдб</string>
<string name="browse_grid_size_option">рдЧреНрд░рд┐рдб рдХрд╛ рдЖрдХрд╛рд░</string>
@ -225,8 +216,6 @@
<string name="red_color">рд▓рд╛рд▓</string>
<string name="no_updates">рдРрдк рдХрд╛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдкрд╣рд▓реЗ рд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓ рд╣реИред</string>
<string name="cover_reset">рдХрд╡рд░ рдЫрд╡рд┐ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд░реАрд╕реЗрдЯ рдХрд░ рджреА рдЧрдИред</string>
<string name="file_not_found">рдлрд╝рд╛рдЗрд▓ \"%1$s\" рдирд╣реАрдВ рдорд┐рд▓реАред</string>
<string name="book_updated">рдкреБрд╕реНрддрдХ рдХрд╛ рдкрд╛рда рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдЕрджреНрдпрддрди рдХрд┐рдпрд╛ рдЧрдпрд╛ред</string>
<string name="move_this_book">рдХрджрдо</string>
<string name="delete_this_book">рдорд┐рдЯрд╛рдирд╛</string>
<string name="details_book">рд╡рд┐рд╡рд░рдг</string>
@ -257,7 +246,6 @@
<string name="help_desc_how_to_add_books_2">рдмреНрд░рд╛рдЙрдЬрд╝</string>
<string name="help_desc_how_to_add_books_4">рдкреБрд╕реНрддрдХрд╛рд▓рдп</string>
<string name="history_element_deleted">рдЗрддрд┐рд╣рд╛рд╕ рддрддреНрд╡ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ред</string>
<string name="nothing_changed">рдкрд╛рда рдЕрджреНрдпрддрд┐рдд рд╣реИред</string>
<string name="file_name">рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо</string>
<string name="unknown">рдЕрдЬреНрдЮрд╛рдд</string>
<string name="internal_storage">рдЖрдВрддрд░рд┐рдХ рд╕реНрдЯреЛрд░реЗрдЬ</string>