Accepting request 944964 from Education
- Update to version 2022.1.8+git.1641653565.c1f9b4e: * Update README.md: added AUR installation * Delete .mkpkg script - Update to version 2021.10.23+git.1641627031.7bd659d: * .mkpkg -> Makefile * Patch PKGBUILD - Update to version 2021.10.23+git.1641622438.69c2f80: * Hotfix: curses has no attrib window in termux * Added default color config * Added PKGBUILD for Arch * Adjust setup.py and pyproject.toml to include epy_extras * Cleanup on failed ebook initialization * Initial prepackaging kindleunpack with epy * Use setuptools as setup backend instead of poetry * Update version and README.md * Change history matching key from filepath to title author * Initial library implementation * Always calculate reading_progress whenever possible, just not always shown * Refactor attribute name * Fixed book metadata * Add (sup|sub)script lookup table * Implement HTMLtoLines._group_spans_by_row() * Hotfix: adjust starting_line for inline style * Add text mark/span grouper method * Initial refactor: inline styling * Add ipdb dev dependency * Hotfix: Skip adding toc entry for empty label name * Update development env using poetry OBS-URL: https://build.opensuse.org/request/show/944964 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/epy?expand=0&rev=4
This commit is contained in:
commit
012b03b37c
2
_service
2
_service
@ -1,6 +1,6 @@
|
|||||||
<services>
|
<services>
|
||||||
<service name="tar_scm" mode="disabled">
|
<service name="tar_scm" mode="disabled">
|
||||||
<param name="versionprefix">2021.10.23+git</param>
|
<param name="versionprefix">2022.1.8+git</param>
|
||||||
<param name="url">https://github.com/wustho/epy.git</param>
|
<param name="url">https://github.com/wustho/epy.git</param>
|
||||||
<param name="scm">git</param>
|
<param name="scm">git</param>
|
||||||
<param name="exclude">.git*</param>
|
<param name="exclude">.git*</param>
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
<servicedata>
|
<servicedata>
|
||||||
<service name="tar_scm">
|
<service name="tar_scm">
|
||||||
<param name="url">https://github.com/wustho/epy.git</param>
|
<param name="url">https://github.com/wustho/epy.git</param>
|
||||||
<param name="changesrevision">2ab1584d2e05b95587d209280b5a56811e651d72</param></service></servicedata>
|
<param name="changesrevision">c1f9b4e9281e0f5f26b9473ca3f4b3f78412464d</param></service></servicedata>
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:876587ebaa1726f15e3669c4702a09dd5186fb2616bf7d01e08c782e70f83b43
|
|
||||||
size 102259
|
|
3
epy-2022.1.8+git.1641653565.c1f9b4e.tar.gz
Normal file
3
epy-2022.1.8+git.1641653565.c1f9b4e.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:12f446e0a35f464c82e8d64579880ca539b26584757a82ceb79b12c6a23325e4
|
||||||
|
size 204742
|
56
epy.changes
56
epy.changes
@ -1,3 +1,59 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Jan 08 23:30:07 UTC 2022 - mcepl@cepl.eu
|
||||||
|
|
||||||
|
- Update to version 2022.1.8+git.1641653565.c1f9b4e:
|
||||||
|
* Update README.md: added AUR installation
|
||||||
|
* Delete .mkpkg script
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Jan 08 07:31:46 UTC 2022 - mcepl@cepl.eu
|
||||||
|
|
||||||
|
- Update to version 2021.10.23+git.1641627031.7bd659d:
|
||||||
|
* .mkpkg -> Makefile
|
||||||
|
* Patch PKGBUILD
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Jan 08 07:19:58 UTC 2022 - mcepl@cepl.eu
|
||||||
|
|
||||||
|
- Update to version 2021.10.23+git.1641622438.69c2f80:
|
||||||
|
* Hotfix: curses has no attrib window in termux
|
||||||
|
* Added default color config
|
||||||
|
* Added PKGBUILD for Arch
|
||||||
|
* Adjust setup.py and pyproject.toml to include epy_extras
|
||||||
|
* Cleanup on failed ebook initialization
|
||||||
|
* Initial prepackaging kindleunpack with epy
|
||||||
|
* Use setuptools as setup backend instead of poetry
|
||||||
|
* Update version and README.md
|
||||||
|
* Change history matching key from filepath to title author
|
||||||
|
* Initial library implementation
|
||||||
|
* Always calculate reading_progress whenever possible, just not always shown
|
||||||
|
* Refactor attribute name
|
||||||
|
* Fixed book metadata
|
||||||
|
* Add (sup|sub)script lookup table
|
||||||
|
* Implement HTMLtoLines._group_spans_by_row()
|
||||||
|
* Hotfix: adjust starting_line for inline style
|
||||||
|
* Add text mark/span grouper method
|
||||||
|
* Initial refactor: inline styling
|
||||||
|
* Add ipdb dev dependency
|
||||||
|
* Hotfix: Skip adding toc entry for empty label name
|
||||||
|
* Update development env using poetry
|
||||||
|
* Fix path resolver for Mobi.get_img_bytstr()
|
||||||
|
* Add tests
|
||||||
|
* Add requirements-dev.txt
|
||||||
|
* Add support for Epub==v1.0 and simplify path resolver
|
||||||
|
* Remove bad try-except block
|
||||||
|
* Refactor Epub and Mobi object
|
||||||
|
* Hotfix: Update docstr
|
||||||
|
* Fixed plethora type issues
|
||||||
|
* Added SpeakerBaseModel as TTS engine wrapper
|
||||||
|
* Use mimic instead of pico2wave. (#44)
|
||||||
|
* Update README.md: remove AUR installation instruction
|
||||||
|
* Update .gitignore
|
||||||
|
* Fixed unavailable curses.A_ITALIC and update version
|
||||||
|
* Update LICENSE
|
||||||
|
* Allow setting language for TTS. (#43)
|
||||||
|
- Remove upstreamed mimic.patch.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Dec 20 19:39:29 UTC 2021 - Matej Cepl <mcepl@suse.com>
|
Mon Dec 20 19:39:29 UTC 2021 - Matej Cepl <mcepl@suse.com>
|
||||||
|
|
||||||
|
10
epy.spec
10
epy.spec
@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package epy
|
# spec file for package epy
|
||||||
#
|
#
|
||||||
# Copyright (c) 2021 SUSE LLC
|
# Copyright (c) 2022 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@ -17,16 +17,13 @@
|
|||||||
|
|
||||||
|
|
||||||
Name: epy
|
Name: epy
|
||||||
Version: 2021.10.23+git.1636702550.2ab1584
|
Version: 2022.1.8+git.1641653565.c1f9b4e
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: CLI ebook reader
|
Summary: CLI ebook reader
|
||||||
License: GPL-3.0-only
|
License: GPL-3.0-only
|
||||||
URL: https://github.com/wustho/epy
|
URL: https://github.com/wustho/epy
|
||||||
# Source: https://files.pythonhosted.org/packages/source/e/epy-reader/epy-reader-%%{version}.tar.gz#/epy-%%{version}.tar.gz
|
# Source: https://files.pythonhosted.org/packages/source/e/epy-reader/epy-reader-%%{version}.tar.gz#/epy-%%{version}.tar.gz
|
||||||
Source: epy-%{version}.tar.gz
|
Source: epy-%{version}.tar.gz
|
||||||
# PATCH-FIX-UPSTREAM mimic.patch gh#wustho/epy#42 mcepl@suse.com
|
|
||||||
# Use mimic instead of non-free svox.
|
|
||||||
Patch0: mimic.patch
|
|
||||||
BuildRequires: fdupes
|
BuildRequires: fdupes
|
||||||
BuildRequires: python3-mobi
|
BuildRequires: python3-mobi
|
||||||
BuildRequires: python3-setuptools
|
BuildRequires: python3-setuptools
|
||||||
@ -55,6 +52,9 @@ CLI Ebook reader. Fork of epr with these extra features:
|
|||||||
%prep
|
%prep
|
||||||
%autosetup -p1 -n epy-%{version}
|
%autosetup -p1 -n epy-%{version}
|
||||||
|
|
||||||
|
# All those shebangs are just harmful
|
||||||
|
find . -name \*.py -exec sed -i "1{/#!\/usr\/bin\/env python/d}" '{}' \;
|
||||||
|
|
||||||
%build
|
%build
|
||||||
python3 setup.py build
|
python3 setup.py build
|
||||||
|
|
||||||
|
93
mimic.patch
93
mimic.patch
@ -1,93 +0,0 @@
|
|||||||
From 30596836fcd707098bbae6ebe453e67eb2caef87 Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?Mat=C4=9Bj=20Cepl?= <mcepl@cepl.eu>
|
|
||||||
Date: Mon, 20 Dec 2021 19:50:30 +0100
|
|
||||||
Subject: [PATCH] Use mimic instead of pico2wave.
|
|
||||||
|
|
||||||
Unfortunately, the language setting is gone again.
|
|
||||||
|
|
||||||
Fixes #42
|
|
||||||
---
|
|
||||||
README.md | 10 ++++------
|
|
||||||
epy.py | 22 +++++++++-------------
|
|
||||||
2 files changed, 13 insertions(+), 19 deletions(-)
|
|
||||||
|
|
||||||
--- a/README.md
|
|
||||||
+++ b/README.md
|
|
||||||
@@ -93,21 +93,19 @@ But you can enable it by setting `MouseS
|
|
||||||
|
|
||||||
To get Text-to-Speech (TTS) support, you need to install these external dependencies:
|
|
||||||
|
|
||||||
-- `pico2wave` (from `libttspico-utils` package (Ubuntu) or `svox-pico-bin` package (AUR))
|
|
||||||
-- `play` (from `sox` package)
|
|
||||||
+- `mimic` package (AUR))
|
|
||||||
|
|
||||||
eg.
|
|
||||||
|
|
||||||
```shell
|
|
||||||
$ # Ubuntu
|
|
||||||
-$ apt install libttspico-utils sox
|
|
||||||
+$ apt install mimic
|
|
||||||
|
|
||||||
$ # Arch
|
|
||||||
-$ yay -S svox-pico-bin
|
|
||||||
-$ pacman -S sox
|
|
||||||
+$ pacman -S mimic
|
|
||||||
```
|
|
||||||
|
|
||||||
-And then make sure `pico2wave` and `play` is in `$PATH`.
|
|
||||||
+And then make sure `mimic` is in `$PATH`.
|
|
||||||
|
|
||||||
## Double Spread
|
|
||||||
|
|
||||||
--- a/epy.py
|
|
||||||
+++ b/epy.py
|
|
||||||
@@ -1871,7 +1871,7 @@ class Reader:
|
|
||||||
self.jump_list: Mapping[str, ReadingState] = dict()
|
|
||||||
|
|
||||||
# TTS speaker utils
|
|
||||||
- self._tts_support: bool = any([shutil.which("pico2wave"), shutil.which("play")])
|
|
||||||
+ self._tts_support: bool = any([shutil.which("mimic")])
|
|
||||||
self.is_speaking: bool = False
|
|
||||||
|
|
||||||
# multi process & progress percentage
|
|
||||||
@@ -2334,19 +2334,16 @@ class Reader:
|
|
||||||
self.screen.refresh()
|
|
||||||
self.screen.timeout(1)
|
|
||||||
try:
|
|
||||||
- _, path = tempfile.mkstemp(suffix=".wav")
|
|
||||||
- subprocess.call(
|
|
||||||
- ["pico2wave", "-w", path, text],
|
|
||||||
- stdout=subprocess.DEVNULL,
|
|
||||||
- stderr=subprocess.DEVNULL,
|
|
||||||
- )
|
|
||||||
- speaker = subprocess.Popen(
|
|
||||||
- ["play", path, "tempo", str(self.setting.TTSSpeed)],
|
|
||||||
+ spk = subprocess.Popen(
|
|
||||||
+ ["mimic"], text=True,
|
|
||||||
+ stdin=subprocess.PIPE,
|
|
||||||
stdout=subprocess.DEVNULL,
|
|
||||||
- stderr=subprocess.DEVNULL,
|
|
||||||
+ stderr=subprocess.STDOUT,
|
|
||||||
)
|
|
||||||
+ spk.stdin.write(text)
|
|
||||||
+ spk.stdin.close()
|
|
||||||
while True:
|
|
||||||
- if speaker.poll() is not None:
|
|
||||||
+ if spk.poll() is not None:
|
|
||||||
k = self.keymap.PageDown[0]
|
|
||||||
break
|
|
||||||
tmp = self.screen.getch()
|
|
||||||
@@ -2373,12 +2370,11 @@ class Reader:
|
|
||||||
+ self.keymap.ScrollDown
|
|
||||||
+ (curses.KEY_RESIZE,)
|
|
||||||
):
|
|
||||||
- speaker.terminate()
|
|
||||||
+ spk.terminate()
|
|
||||||
# speaker.kill()
|
|
||||||
break
|
|
||||||
finally:
|
|
||||||
self.screen.timeout(-1)
|
|
||||||
- os.remove(path)
|
|
||||||
|
|
||||||
if k in self.keymap.Quit:
|
|
||||||
self.is_speaking = False
|
|
Loading…
Reference in New Issue
Block a user