Dokumentácia API pre nástroje na úpravu e-kníh¶
Nástroje na úpravu e-kníh pozostávajú z objektu calibre.ebooks.oeb.polish.container.Container, ktorý predstavuje knihu ako kolekciu HTML a zdrojových súborov, a z rôznych nástrojov, ktoré možno použiť na vykonávanie operácií s kontajnerom. Všetky nástroje majú formu funkcií na úrovni modulu v rôznych moduloch calibre.ebooks.oeb.polish.*.
Objekt kontajnera pre knihu na danej ceste získate takto:
from calibre.ebooks.oeb.polish.container import get_container
container = get_container('Path to book file', tweak_mode=True)
Ak píšete zásuvný modul pre editor e-kníh, aktuálny kontajner pre upravovanú knihu získate takto:
from calibre.gui2.tweak_book import current_container
container = current_container()
if container is None:
report_error # No book has been opened yet
Objekt kontajnera¶
- class calibre.ebooks.oeb.polish.container.Container(rootpath=None, opfpath=None, log=<calibre.utils.logging.Log object>, clone_data=None)[zdroj]¶
Kontajner predstavuje otvorenú e-knihu ako priečinok plný súborov a súbor OPF. Existujú dva dôležité koncepty:
Koreňový priečinok. Toto je základ e-knihy. Všetky súbory e-knihy sa nachádzajú v tomto priečinku alebo v jeho podpriečinkoch.
Názvy: Sú to cesty k súborom knihy relatívne ku koreňovému priečinku. Vždy obsahujú oddeľovače POSIX a nie sú v úvodzovkách. Možno ich považovať za kanonické identifikátory súborov v knihe. Väčšina metód objektu kontajnera pracuje s názvami. Názvy sú vždy v normalizovanej forme NFC Unicode.
Klonovanie: objekt kontajnera podporuje efektívne klonovanie na disku, ktoré sa používa na implementáciu kontrolných bodov v editore e-kníh. Aby to fungovalo, nikdy by ste nemali pristupovať k súborom v súborovom systéme priamo. Namiesto toho použite
raw_data()aleboopen()na čítanie a zápis do súborov komponentov v knihe.
Pri prevode medzi href a názvami použite metódy poskytované touto triedou; predpokladajú, že všetky href sú v úvodzovkách.
- abspath_to_name(fullpath, root=None)[zdroj]¶
Prevedie absolútnu cestu na kanonický názov relatívny k
root- Parametre:
root – Základný priečinok. V predvolenom nastavení sa použije koreň tohto objektu kontajnera.
- add_file(name, data=b'', media_type=None, spine_index=None, modify_name_if_needed=False, process_manifest_item=None, suggested_id='')[zdroj]¶
Pridá súbor do tohto kontajnera. Záznamy pre súbor sa automaticky vytvoria v manifeste OPF a chrbte (spine), ak je súbor textovým dokumentom
- add_name_to_manifest(name, process_manifest_item=None, suggested_id='')[zdroj]¶
Pridá záznam do manifestu pre súbor so zadaným názvom. Vráti id manifestu.
- add_properties(name, *properties)[zdroj]¶
Pridá zadané vlastnosti do položky manifestu identifikovanej názvom.
- apply_unique_properties(name, *properties)[zdroj]¶
Zabezpečí, že zadané vlastnosti budú nastavené iba na položke manifestu identifikovanej názvom. Ak chcete vlastnosť odstrániť zo všetkých položiek, môžete ako názov zadať None.
- book_type = 'oeb'¶
Typ knihy (epub pre súbory EPUB a azw3 pre súbory AZW3)
- commit(outpath=None, keep_parsed=False)[zdroj]¶
Uloží všetky zmenené analyzované objekty do súborového systému a zapíše súbor e-knihy na výstupnú cestu.
- Parametre:
output – Cesta, kam sa má uložiť súbor e-knihy. Ak je None, použije sa cesta pôvodného súboru knihy.
keep_parsed – Ak je True, analyzované reprezentácie uložených položiek sa zachovajú vo vyrovnávacej pamäti.
- commit_item(name, keep_parsed=False)[zdroj]¶
Uloží analyzovaný objekt na disk (serializuje sa a zapíše do príslušného súboru). Ak je
keep_parsedTrue, analyzovaná reprezentácia sa zachová vo vyrovnávacej pamäti. Pozri tiež:parsed()
- dirty(name)[zdroj]¶
Označí analyzovaný objekt zodpovedajúci názvu ako zmenený. Pozri tiež:
parsed().
- exists(name)[zdroj]¶
True vtedy a len vtedy, ak existuje súbor alebo priečinok zodpovedajúci kanonickému názvu. Upozorňujeme, že táto funkcia trpí obmedzeniami podkladového súborového systému OS, najmä pokiaľ ide o rozlišovanie veľkých a malých písmen. Na súborovom systéme, ktorý nerozlišuje veľkosť písmen, teda vráti True, aj keď sa veľkosť písmen v názve líši od veľkosti písmen v podkladovom súbore. Pozri tiež
has_name()
- filesize(name)[zdroj]¶
Vráti veľkosť súboru v bajtoch reprezentovaného zadaným kanonickým názvom. Automaticky spracúva zmenené analyzované objekty. Pozri tiež:
parsed()
- generate_item(name, id_prefix=None, media_type=None, unique_href=True)[zdroj]¶
Pridá položku do manifestu s href odvodeným z daného názvu. Automaticky zabezpečí jedinečnosť href a id. Vráti vygenerovanú položku.
- get_file_path_for_processing(name, allow_modification=True)[zdroj]¶
Podobné ako open(), ale vracia cestu k súboru namiesto otvoreného objektu súboru.
- property guide_type_map¶
Priradenie typu sprievodcu ku kanonickému názvu
- has_name(name)[zdroj]¶
Vráti True vtedy a len vtedy, ak existuje súbor s rovnakým kanonickým názvom, ako je zadaný. Na rozdiel od
exists()táto metóda vždy rozlišuje veľkosť písmen.
- href_to_name(href, base=None)[zdroj]¶
Prevedie href (relatívny k základu) na názov. Základ musí byť názov alebo None, v ktorom prípade sa použije self.root.
- insert_into_xml(parent, item, index=None)[zdroj]¶
Vloží položku do rodiča (alebo pripojí, ak je index None) a opraví odsadenie. Funguje iba so samouzatváracími položkami.
- is_dir = False¶
Ak tento kontajner predstavuje rozbalenú knihu (priečinok)
- iterlinks(name, get_line_numbers=True)[zdroj]¶
Iteruje cez všetky odkazy v názve. Ak je get_line_numbers True, vracia výsledky v tvare (link, line_number, offset). Kde line_number je číslo riadka, na ktorom sa odkaz nachádza, a offset je počet znakov od začiatku riadka. Upozorňujeme, že offset môže v skutočnosti zahŕňať niekoľko riadkov, ak nie je nula.
- make_name_unique(name)[zdroj]¶
Zabezpečí, že name už v tejto knihe neexistuje. Ak existuje, vráti upravenú verziu, ktorá neexistuje.
- property manifest_id_map¶
Priradenie id manifestu ku kanonickým názvom
- manifest_items_of_type(predicate)[zdroj]¶
Názvy všetkých položiek manifestu, ktorých typ média zodpovedá predikátu. predicate môže byť množina, zoznam, reťazec alebo funkcia s jedným argumentom, ktorá sa zavolá s typom média.
- manifest_items_with_property(property_name)[zdroj]¶
Všetky položky manifestu, ktoré majú zadanú vlastnosť
- property manifest_type_map¶
Priradenie typu média manifestu k zoznamu kanonických názvov tohto typu média
- property mi¶
Metadáta tejto knihy ako objekt Metadata. Upozorňujeme, že tento objekt sa vytvára za behu pri každom požiadaní o túto vlastnosť, takže ho používajte striedmo.
- name_to_href(name, base=None)[zdroj]¶
Prevedie názov na href relatívny k základu, ktorý musí byť názov alebo None, v ktorom prípade sa ako základ použije self.root
- property names_that_must_not_be_changed¶
Množina názvov, ktoré sa nikdy nesmú premenovať. Závisí od formátu súboru e-knihy.
- property names_that_must_not_be_removed¶
Množina názvov, ktoré sa nikdy nesmú odstrániť z kontajnera. Závisí od formátu súboru e-knihy.
- property names_that_need_not_be_manifested¶
Množina názvov, ktoré môžu chýbať v manifeste. Závisí od formátu súboru e-knihy.
- open(name, mode='rb')[zdroj]¶
Otvorí súbor, na ktorý ukazuje názov, na priame čítanie a zápis. Upozorňujeme, že tým sa súbor uloží, ak bol zmenený, a odstráni sa z vyrovnávacej pamäte analýzy. S týmto súborom musíte skončiť predtým, než znova pristúpite k jeho analyzovanej verzii, inak sa stanú zlé veci.
- property opf¶
Analyzovaný súbor OPF
- opf_get_or_create(name)[zdroj]¶
Pomocná metóda, ktorá buď vráti prvý XML element so zadaným názvom, alebo ho vytvorí pod elementom opf:package a potom ho vráti, ak ešte neexistuje.
- property opf_version¶
Verzia nastavená na elemente <package> súboru OPF
- property opf_version_parsed¶
Verzia nastavená na elemente <package> súboru OPF ako n-tica celých čísel
- opf_xpath(expr)[zdroj]¶
Pomocná metóda na vyhodnotenie výrazu XPath v súbore OPF; má preddefinované predpony menného priestoru opf: a dc:.
- parsed(name)[zdroj]¶
Vráti analyzovanú reprezentáciu súboru určeného názvom. Pre súbory HTML a XML sa vráti strom lxml. Pre súbory CSS sa vráti štýl css_parser. Upozorňujeme, že analyzované objekty sa ukladajú do vyrovnávacej pamäte z dôvodu výkonu. Ak vykonáte akékoľvek zmeny v analyzovanom objekte, musíte zavolať
dirty(), aby kontajner vedel aktualizovať vyrovnávaciu pamäť. Pozri tiežreplace().
- raw_data(name, decode=True, normalize_to_nfc=True)[zdroj]¶
Vráti surové dáta zodpovedajúce súboru určenému názvom
- Parametre:
decode – Ak je True a súbor má textový typ MIME, dekóduje ho a vráti objekt Unicode namiesto surových bajtov.
normalize_to_nfc – Ak je True, vrátený objekt Unicode sa normalizuje do normalizovanej formy NFC, ako to vyžadujú formáty EPUB a AZW3.
- relpath(path, base=None)[zdroj]¶
Prevedie absolútnu cestu (s oddeľovačmi OS) na cestu relatívnu k základu (predvolene self.root). Relatívna cesta nie je názov. Použite na to
abspath_to_name().
- remove_from_spine(spine_items, remove_if_no_longer_in_spine=True)[zdroj]¶
Odstráni zadané položky (podľa kanonického názvu) z chrbtu. Ak je
remove_if_no_longer_in_spineTrue, položky sa odstránia aj z knihy, nielen z chrbtu.
- remove_from_xml(item)[zdroj]¶
Odstráni položku z rodiča a opraví odsadenie (funguje iba so samouzatváracími položkami)
- remove_item(name, remove_from_guide=True)[zdroj]¶
Odstráni položku identifikovanú názvom z tohto kontajnera. Tým sa odstránia všetky odkazy na položku v manifeste OPF, sprievodcovi a chrbte, ako aj zo všetkých interných vyrovnávacích pamätí.
- rename(current_name, new_name)[zdroj]¶
Premenuje súbor z current_name na new_name. Automaticky prepočíta všetky odkazy vnútri súboru, ak sa zmení priečinok, v ktorom sa súbor nachádza. Upozorňujeme však, že odkazy sa neaktualizujú v ostatných súboroch, ktoré by mohli na tento súbor odkazovať. Je to z dôvodu výkonu; takéto aktualizácie by sa mali vykonať raz, hromadne.
- replace(name, obj)[zdroj]¶
Nahradí analyzovaný objekt zodpovedajúci názvu objektom obj, ktorý musí byť podobný objekt, t. j. strom lxml pre HTML/XML alebo štýl css_parser pre súbor CSS.
- replace_links(name, replace_func)[zdroj]¶
Nahradí všetky odkazy v názve pomocou replace_func, ktorý musí byť volateľný objekt prijímajúci URL a vracajúci nahradenú URL. Musí mať tiež atribút ‚replaced‘ nastavený na True, ak sa vykonala nejaká skutočná náhrada. Pohodlné spôsoby vytvárania takýchto volateľných objektov sú pomocou tried
LinkReplaceraLinkRebaser.
- serialize_item(name)[zdroj]¶
Prevedie analyzovaný objekt (identifikovaný kanonickým názvom) na bajtový reťazec. Pozri
parsed().
- set_spine(spine_items)[zdroj]¶
Nastaví chrbát na spine_items, kde spine_items je iterovateľný objekt v tvare (name, linear). Vyvolá chybu, ak jeden z názvov nie je prítomný v manifeste.
- property spine_items¶
Iterátor, ktorý vracia cestu pre každú položku v chrbte knihy. Pozri tiež:
spine_iteraspine_items.
- property spine_iter¶
Iterátor, ktorý vracia item, name, is_linear pre každú položku v chrbte knihy. item je element lxml, name je kanonický názov súboru a is_linear je True, ak je položka lineárna. Pozri tiež:
spine_namesaspine_items.
- property spine_names¶
Iterátor, ktorý vracia name a is_linear pre každú položku v chrbte knihy. Pozri tiež:
spine_iteraspine_items.
Správa súborov komponentov v kontajneri¶
- calibre.ebooks.oeb.polish.replace.replace_links(container, link_map, frag_map=<function <lambda>>, replace_in_opf=False)[zdroj]¶
Nahradí odkazy na súbory v kontajneri. Iteruje cez všetky súbory v kontajneri a zmení v nich zadané odkazy.
- Parametre:
link_map – Priradenie starého kanonického názvu k novému kanonickému názvu. Napríklad:
{'images/old.png': 'images/new.png'}frag_map – Volateľný objekt, ktorý prijíma dva argumenty
(name, anchor)a vracia nový anchor. Je to užitočné, ak potrebujete zmeniť anchory v súboroch HTML. V predvolenom nastavení nič nerobí.replace_in_opf – Ak je False, odkazy sa v súbore OPF nenahrádzajú.
- calibre.ebooks.oeb.polish.replace.rename_files(container, file_map)[zdroj]¶
Premenuje súbory v kontajneri a automaticky aktualizuje všetky odkazy na ne.
- Parametre:
file_map – Priradenie starého kanonického názvu k novému kanonickému názvu, napríklad:
{'text/chapter1.html': 'chapter1.html'}.
- calibre.ebooks.oeb.polish.replace.get_recommended_folders(container, names)[zdroj]¶
Vráti priečinky odporúčané pre dané názvy súborov. Odporúčanie je založené na tom, kde sa v kontajneri nachádza väčšina súborov rovnakého typu. Ak nie sú prítomné žiadne súbory konkrétneho typu, predpokladá sa, že odporúčaným priečinkom je priečinok obsahujúci súbor OPF.
Zjednodušovanie formátu a automatická oprava chýb analýzy¶
- calibre.ebooks.oeb.polish.pretty.fix_html(container, raw)[zdroj]¶
Opraví všetky chyby analýzy v HTML reprezentovanom ako reťazec v raw. Oprava sa vykonáva pomocou algoritmu analýzy HTML5.
- calibre.ebooks.oeb.polish.pretty.fix_all_html(container)[zdroj]¶
Opraví všetky chyby analýzy vo všetkých súboroch HTML v kontajneri. Oprava sa vykonáva pomocou algoritmu analýzy HTML5.
- calibre.ebooks.oeb.polish.pretty.pretty_html(container, name, raw)[zdroj]¶
Zjednoduší formát HTML reprezentovaného ako reťazec v raw
- calibre.ebooks.oeb.polish.pretty.pretty_css(container, name, raw)[zdroj]¶
Zjednoduší formát CSS reprezentovaného ako reťazec v raw
Správa prebalov kníh¶
Rozdeľovanie a zlučovanie súborov¶
- calibre.ebooks.oeb.polish.split.split(container, name, loc_or_xpath, before=True, totals=None)[zdroj]¶
Rozdelí súbor určený názvom na pozícii určenej pomocou loc_or_xpath. Rozdelenie automaticky migruje všetky odkazy a referencie na ovplyvnené súbory.
- Parametre:
loc_or_xpath – Mal by to byť výraz XPath, ako napríklad //h:div[@id=“split_here“]. Môže to byť aj loc, ktorý sa používa interne na implementáciu rozdeľovania v paneli náhľadu.
before – Ak je True, rozdelenie nastane pred identifikovaným elementom, inak za ním.
totals – Používa sa interne
- calibre.ebooks.oeb.polish.split.multisplit(container, name, xpath, before=True)[zdroj]¶
Rozdelí zadaný súbor na viacerých miestach (všetky značky, ktoré zodpovedajú zadanému výrazu XPath). Pozri tiež:
split(). Rozdelenie automaticky migruje všetky odkazy a referencie na ovplyvnené súbory.- Parametre:
before – Ak je True, rozdelenia nastanú pred identifikovaným elementom, inak za ním.
- calibre.ebooks.oeb.polish.split.merge(container, category, names, master)[zdroj]¶
Zlúči zadané súbory do jedného súboru a automaticky migruje všetky odkazy a referencie na ovplyvnené súbory. Súbory musia byť buď všetky HTML, alebo všetky CSS.
- Parametre:
category – Musí byť buď
'text'pre súbory HTML, alebo'styles'pre súbory CSSnames – Zoznam súborov, ktoré sa majú zlúčiť
master – Ktorý zo zlúčených súborov je hlavný súbor, teda súbor, ktorý zostane po zlúčení.
Správa obálok¶
- calibre.ebooks.oeb.polish.cover.set_cover(container, cover_path, report=None, options=None)[zdroj]¶
Nastaví obálku knihy na obrázok, na ktorý ukazuje cover_path.
- Parametre:
cover_path – Buď absolútnu cestu k obrázkovému súboru, alebo kanonický názov obrázka v knihe. Ak používate obrázok v knihe, musíte tiež nastaviť možnosti, pozri nižšie.
report – Voliteľný volateľný objekt, ktorý prijíma jeden argument. Zavolá sa s informáciami o spracúvaných úlohách.
options – None alebo slovník, ktorý ovláda, ako sa obálka nastaví. Slovník môže mať záznamy: keep_aspect: True alebo False (Zachovať pomer strán obálok v EPUB) no_svg: True alebo False (Použiť SVG obal obálky na titulnej stránke EPUB) existing: True alebo False (
cover_pathodkazuje na existujúci obrázok v knihe)
Práca s CSS¶
- calibre.ebooks.oeb.polish.fonts.change_font(container, old_name, new_name=None)[zdroj]¶
Zmení rodinu písma z old_name na new_name. Zmení všetky výskyty rodiny písma v štýloch, značkách style a atribútoch style. Ak old_name odkazuje na vložené písmo, odstráni sa. Ak chcete rodinu písma odstrániť namiesto zmeny, môžete nastaviť new_name na None.
- calibre.ebooks.oeb.polish.css.remove_unused_css(container, report=None, remove_unused_classes=False, merge_rules=False, merge_rules_with_identical_properties=False, remove_unreferenced_sheets=False)[zdroj]¶
Odstráni všetky nepoužité pravidlá CSS z knihy. Nepoužité pravidlo CSS je také, ktoré nezodpovedá žiadnemu skutočnému obsahu.
- Parametre:
report – Voliteľný volateľný objekt, ktorý prijíma jeden argument. Zavolá sa s informáciami o vykonávaných operáciách.
remove_unused_classes – Ak je True, odstránia sa aj atribúty class v HTML, ktoré nezodpovedajú žiadnym pravidlám CSS.
merge_rules – Ak je True, pravidlá s rovnakými selektormi sa zlúčia.
merge_rules_with_identical_properties – Ak je True, pravidlá s rovnakými vlastnosťami sa zlúčia.
remove_unreferenced_sheets – Ak je True, odstránia sa štýly, na ktoré neodkazuje žiadny obsah
- calibre.ebooks.oeb.polish.css.filter_css(container, properties, names=())[zdroj]¶
Odstráni zadané vlastnosti CSS zo všetkých pravidiel CSS v knihe.
- Parametre:
properties – Množina vlastností na odstránenie. Napríklad:
{'font-family', 'color'}.names – Súbory, z ktorých sa majú vlastnosti odstrániť. Predvolene všetky súbory HTML a CSS v knihe.
Práca s obsahom¶
- calibre.ebooks.oeb.polish.toc.from_xpaths(container, xpaths, prefer_title=False)[zdroj]¶
Vygeneruje obsah zo zoznamu výrazov XPath. Každý výraz v zozname zodpovedá jednej úrovni generovaného obsahu. Napríklad:
['//h:h1', '//h:h2', '//h:h3']vygeneruje trojúrovňový obsah zo značiek<h1>,<h2>a<h3>.
Nástroj na úpravu knihy¶
- class calibre.gui2.tweak_book.plugin.Tool[zdroj]¶
Základ:
objectZákladná trieda pre jednotlivé nástroje v zásuvnom module Editora kníh. Užitoční členovia zahŕňajú:
self.plugin: referencia na objektcalibre.customize.Plugin, ktorému tento nástroj patrí.self.
bossself.
gui
Metódy, ktoré sa musia prepísať v podtriedach:
- name: str | None = None¶
Nastavte to na jedinečný názov; použije sa ako kľúč
- allowed_in_toolbar = True¶
Ak je True, používateľ si môže vybrať umiestnenie tohto nástroja na panel nástrojov zásuvných modulov
Ak je True, používateľ si môže vybrať umiestnenie tohto nástroja v ponuke zásuvných modulov
- toolbar_button_popup_mode = 'delayed'¶
Režim vyskakovacieho okna pre ponuku (ak existuje) tlačidla panela nástrojov. Možné hodnoty sú ‚delayed‘, ‚instant‘, ‚button‘
- property boss¶
Objekt
calibre.gui2.tweak_book.boss.Boss. Používa sa na ovládanie používateľského rozhrania.
- property gui¶
Hlavné okno používateľského rozhrania
- property current_container¶
Vráti aktuálny objekt
calibre.ebooks.oeb.polish.container.Container, ktorý predstavuje upravovanú knihu.
- register_shortcut(qaction, unique_name, default_keys=(), short_text=None, description=None, **extra_data)[zdroj]¶
Zaregistruje klávesovú skratku, ktorá spustí zadaný
qaction. Táto klávesová skratka sa automaticky stane prispôsobiteľnou používateľom v sekcii Klávesové skratky v preferenciách editora.- Parametre:
qaction – Objekt QAction, ktorý sa spustí, keď používateľ stlačí nakonfigurovanú kombináciu klávesov.
unique_name – Jedinečný názov pre túto skratku alebo akciu. Použije sa interne; nesmie ho zdieľať žiadna iná akcia v tomto zásuvnom module.
default_keys – Zoznam predvolených klávesových skratiek. Ak nie je zadaný, nenastavia sa žiadne predvolené skratky. Ak sú tu zadané skratky v konflikte s vstavanými skratkami alebo skratkami z používateľskej konfigurácie či iných zásuvných modulov, budú ignorované. V takom prípade budú musieť používatelia nakonfigurovať skratky manuálne v Nastaveniach. Napríklad:
default_keys=('Ctrl+J', 'F9').short_text – Voliteľný krátky popis tejto akcie. Ak nie je zadaný, použije sa text z QAction.
description – Voliteľný dlhší popis tejto akcie; použije sa v zázname preferencií pre túto skratku.
- create_action(for_toolbar=True)[zdroj]¶
Vytvorí QAction, ktorá sa pridá buď na panel nástrojov zásuvných modulov, alebo do ponuky zásuvných modulov v závislosti od
for_toolbar. Napníklad:def create_action(self, for_toolbar=True): ac = QAction(get_icons('myicon.png'), 'Do something') if for_toolbar: # We want the toolbar button to have a popup menu menu = QMenu() ac.setMenu(menu) menu.addAction('Do something else') subaction = menu.addAction('And another') # Register a keyboard shortcut for this toolbar action be # careful to do this for only one of the toolbar action or # the menu action, not both. self.register_shortcut(ac, 'some-unique-name', default_keys=('Ctrl+K',)) return ac
Viď aj
Metóda
register_shortcut().
Ovládanie používateľského rozhrania editora¶
Používateľské rozhranie editora e-kníh je ovládané jediným globálnym objektom Boss. Ten má mnoho užitočných metód, ktoré možno použiť v kóde zásuvného modulu na vykonávanie bežných úloh.
- class calibre.gui2.tweak_book.boss.Boss(parent, notify=None)[zdroj]¶
-
- apply_container_update_to_gui(mark_as_modified=True)[zdroj]¶
Aktualizuje všetky komponenty používateľského rozhrania tak, aby odzrkadľovali najnovšie údaje v aktuálnom kontajneri knihy.
- Parametre:
mark_as_modified – Ak je True, kniha sa označí ako zmenená, takže používateľ bude pri ukončení vyzvaný na jej uloženie.
- commit_all_editors_to_container()[zdroj]¶
Uloží všetky zmeny, ktoré používateľ vykonal v súboroch otvorených v editoroch, do kontajnera. Túto metódu by ste mali zavolať pred vykonaním akýchkoľvek akcií s aktuálnym kontajnerom
- property currently_editing¶
Vráti názov aktuálne upravovaného súboru alebo None, ak sa neupravuje žiadny súbor
- edit_file(name, syntax=None, use_template=None)[zdroj]¶
Otvorí súbor určený názvom v editore
- Parametre:
syntax – Typ média súboru, napríklad
'text/html'. Ak nie je zadaný, odhadne sa z prípony súboru.use_template – Šablóna, ktorou sa má inicializovať otvorený editor
- open_book(path=None, edit_file=None, clear_notify_data=True, open_folder=False, search_text=None)[zdroj]¶
Otvorí e-knihu na ceste
pathna úpravu. Zobrazí chybu, ak e-kniha nie je v podporovanom formáte alebo ak má aktuálna kniha neuložené zmeny.- Parametre:
edit_file – Názov súboru vnútri novo otvorenej knihy, ktorý sa má začať upravovať. Môže to byť aj zoznam názvov.
- rewind_savepoint()[zdroj]¶
Zruší predchádzajúce vytvorenie kontrolného bodu obnovenia; užitočné, ak vytvoríte kontrolný bod a potom operáciu prerušíte bez zmien
- show_current_diff(allow_revert=True, to_container=None)[zdroj]¶
Zobrazí zmeny knihy od jej posledného kontrolného bodu
- Parametre:
allow_revert – Ak je True, dialógové okno rozdielov bude mať tlačidlo, ktoré používateľovi umožní vrátiť všetky zmeny
to_container – Objekt kontajnera, s ktorým sa má porovnať aktuálny kontajner. Ak je None, použije sa predtým uložený kontrolný kontajner
