{"id":20235027,"url":"https://github.com/mdom/termpub","last_synced_at":"2025-05-07T10:32:47.135Z","repository":{"id":56840787,"uuid":"166051459","full_name":"mdom/termpub","owner":"mdom","description":"Epubreader for the terminal","archived":true,"fork":false,"pushed_at":"2021-06-03T08:29:12.000Z","size":320,"stargazers_count":26,"open_issues_count":1,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-12T11:28:17.833Z","etag":null,"topics":["curses","epub","epub-reader","epubreader","python","terminal"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mdom.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-01-16T14:13:08.000Z","updated_at":"2025-01-02T12:54:17.000Z","dependencies_parsed_at":"2022-08-29T05:01:24.007Z","dependency_job_id":null,"html_url":"https://github.com/mdom/termpub","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mdom%2Ftermpub","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mdom%2Ftermpub/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mdom%2Ftermpub/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mdom%2Ftermpub/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mdom","download_url":"https://codeload.github.com/mdom/termpub/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252859895,"owners_count":21815425,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["curses","epub","epub-reader","epubreader","python","terminal"],"created_at":"2024-11-14T08:14:24.864Z","updated_at":"2025-05-07T10:32:46.800Z","avatar_url":"https://github.com/mdom.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# NAME\n\ntermpub - Epubreader for the terminal\n\n# SYNOPSIS\n\ntermpub \\[OPTIONS\\] _file_\n\n# DESCRIPTION\n\ntermpub aims to be a full featured epub reader for the terminal. It\nsupports amongst other things the following features:\n\n- display current page according to epub3 page list\n- skiping front matter\n- jumping to table of contents\n- displaying images with an external viewer\n- following interal and external urls\n- saving and restoring your last reading position\n\nMany text movement commands are compatible with _less(1)_.\n\nThe text can be hyphenated if pyphen are installed.\n\nThis project was rewritten from perl to python. Your reading state is no\nlonger saved in the epub document, but in a local sqlite file. You can\nfind the last version of the perl code under the git branch `perl`.\n\n# OPTIONS\n\n- --hyphenate\n\n    Use pyphen to hyphenate the text. Defaults to false.\n\n- --language LANGUAGE\\_TAG\n\n    Set the language used for hyphenation. Defaults to the books language or\n    'en_US' if not specified.\n\n- --width WIDTH\n\n    Set screen width. Defaults to 80.\n\n- --dump\n\n    Print rendered book to stdout\n\n# KEY BINDINGS\n\nSome commands may be preceded by a decimal number, called N in the\ndescriptions below.\n\n- h\n\n    Display help screen.\n\n- \\]\n\n    Go to the next chapter.\n\n- \\[\n\n    Go to the previous chapter.\n\n- \\{\n\n    Go to the first chapter.\n\n- \\}\n\n    Go to the last chapter.\n\n- t\n\n    Open a pager with the table of content.\n\n- m\n\n    Followed by any lowercase letter, marks the current position with\n    that letter.\n\n- '\n\n    Followed by any lowercase letter, returns to the position which\n    was previously marked with that letter. Followed by another single\n    quote, returns to the position at which the last \"large\" movement\n    command was executed.\n\n- |\n\n    Set width to N.\n\n- %\n\n    Go to a line N percent into the chapter.\n\n- g\n\n    Go to line N of the chapter, default to line 1 (beginning of\n    chapter).\n\n- G\n\n    Go to line N of the chapter, default to the end of the chapter.\n\n- o\n\n    Open link N. _termpub_ calls _xdg-open_ with the url as first\n    argument if the link references an external ressource.\n\n- C-l\n\n    Redraw scren.\n\n- C-g\n\n    Cancel numeric prefix _num_ argument.\n\n- DOWN, j, RETURN\n\n    Scroll one line down.\n\n- UP, k\n\n    Scroll one line up.\n\n- ESC-), RIGHT\n\n    Scroll horizontally right N characters, default half the screen\n    width. If a number N is specified, it becomes the default for\n    future RIGHT and LEFT commands.\n\n- ESC-(, LEFT\n\n    Scroll horizontally left N characters, default half the screen\n    width. If a number N is specified, it becomes the default for future\n    RIGHT and LEFT commands.\n\n- PAGE_DOWN, SPACE\n\n    Scroll forward one window.\n\n- PAGE_UP, BACKSPACE\n\n    Scroll backward one window.\n\n- HOME\n\n    Go to the beginning of the current chapter.\n\n- END\n\n    Go to the ned of the current chapter.\n\n- q\n\n    Exits _termpub_.\n\n- \\/\n\n    Search forward for lines containing the pattern.\n\n- ?\n\n    Search backward for lines containing the pattern.\n\n- n\n\n    Repeat previous search.\n\n- N\n\n    Repeat previous search, but in the reverse direction.\n\n- ESC-u\n\n    Undo search highlighting. If highlighting is already off because of\n    a previous ESC-u command, turn highlighting back on.\n\n- !\n\n    Asks for an external Unix command and executes it in a subshell.\n\n- \\\\\n\n    Show chapter source.\n\n# CONFIGURATION FILE\n\nWhen termpub is invoked, it will attempt to read a configuration file at\n$XDG\\_CONFIG\\_HOME/termpub/termpubrc. The following example shows some\ndefaults:\n\n    set hyphenation off\n    set language en_US\n    set widht 80\n    set status_left {title}\n    set status_right \"{chapter_counter} {percent}\"\n    map [ prev_chapter\n    map ] next_chapter\n    map CTRL-L redraw\n\n# INSTALLATION\n\nThe project can be installed with `setup.py` and depends on no external\nlibraries. Only python 3.6 or later is needed.\n\n    python setup.py install [--user]\n\nOn Arch Linux, there is a [termpub package](https://aur.archlinux.org/packages/termpub/)\nin the AUR.\n\n# BUGS AND LIMITATIONS\n\nAs mentioned, this is a fresh rewrite, so there are probably a lot\nof bugs hidden. Sorry for any inconvenience!\n\n# COPYRIGHT AND LICENSE \n\nCopyright 2020 Mario Domgoergen `\u003cmario@domgoergen.com\u003e` \n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU Affero General Public License as\npublished by the Free Software Foundation, either version 3 of the\nLicense, or (at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU Affero General Public License for more details.\n\nYou should have received a copy of the GNU Affero General Public License\nalong with this program.  If not, see \\\u003chttps://www.gnu.org/licenses/\u003e.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmdom%2Ftermpub","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmdom%2Ftermpub","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmdom%2Ftermpub/lists"}