Dokumentace API pro nástroje pro úpravu e-knih

Nástroje pro úpravu e-knih se skládají z objektu calibre.ebooks.oeb.polish.container.Container, který představuje knihu jako kolekci souborů HTML a zdrojů a různých nástrojů, které lze použít k provádění operací na kontejneru. Všechny nástroje jsou ve formě funkcí na úrovni modulů v různých modulech calibre.ebooks.oeb.polish.*.

Objekt kontejneru pro knihu v cestě získáte takto:

from calibre.ebooks.oeb.polish.container import get_container
container = get_container('Path to book file', tweak_mode=True)

Pokud píšete modul pro Editor e-knih, získáte aktuální kontejner pro upravovanou knihu 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 kontejneru

class calibre.ebooks.oeb.polish.container.Container(rootpath=None, opfpath=None, log=<calibre.utils.logging.Log object>, clone_data=None)[zdroj]

Kontejner představuje otevřenou e-knihu jako složku plnou souborů a soubor OPF. Existují dva důležité koncepty:

  • Kořenová složka. Je základem e-knihy. Všechny soubory e-knihy jsou uvnitř této složky nebo v jejích podsložkách.

  • Názvy: Jsou to cesty k souborům knihy relativní ke kořenové složce. Vždy obsahují oddělovače POSIX a nejsou URL-kódované. Lze je chápat jako kanonické identifikátory souborů v knize. Většina metod objektu kontejneru pracuje s názvy. Názvy jsou vždy v normalizační formě Unicode NFC.

  • Klony: objekt kontejneru podporuje efektivní klonování na disku, které se používá k implementaci kontrolních bodů v editoru e-knih. Aby to fungovalo, nikdy byste neměli k souborům v souborovém systému přistupovat přímo. Místo toho použijte raw_data() nebo open() pro čtení komponentních souborů v knize nebo zápis do nich.

Při převodu mezi hodnotami href a názvy používejte metody poskytované touto třídou; předpokládají, že všechny hodnoty href jsou URL-kódované.

abspath_to_name(fullpath, root=None)[zdroj]

Převede absolutní cestu na kanonický název relativní k root

Parametry:

root – Základní složka. Ve výchozím nastavení se použije kořen tohoto objektu kontejneru.

add_file(name, data=b'', media_type=None, spine_index=None, modify_name_if_needed=False, process_manifest_item=None, suggested_id='')[zdroj]

Přidá soubor do tohoto kontejneru. Záznamy pro soubor se automaticky vytvoří v manifestu OPF a ve spine (pokud je soubor textový dokument)

add_name_to_manifest(name, process_manifest_item=None, suggested_id='')[zdroj]

Přidá do manifestu záznam pro soubor se zadaným názvem. Vrátí ID manifestu.

add_properties(name, *properties)[zdroj]

Přidá zadané vlastnosti k položce manifestu identifikované názvem.

apply_unique_properties(name, *properties)[zdroj]

Zajistí, že zadané vlastnosti budou nastavené pouze u položky manifestu identifikované názvem. Jako název můžete předat None, chcete-li vlastnost odebrat ze všech položek.

book_type = 'oeb'

Typ knihy (epub pro soubory EPUB a azw3 pro soubory AZW3)

commit(outpath=None, keep_parsed=False)[zdroj]

Zapíše všechny změněné parsované objekty do souborového systému a uloží soubor e-knihy do umístění outpath.

Parametry:
  • output – Cesta, do které se má zapsat uložený soubor e-knihy. Pokud je None, použije se cesta původního souboru knihy.

  • keep_parsed – Pokud je True, parsované reprezentace zapsaných položek se ponechají v cache.

commit_item(name, keep_parsed=False)[zdroj]

Zapíše parsovaný objekt na disk (serializuje se a zapíše do podkladového souboru). Pokud je keep_parsed True, parsovaná reprezentace se zachová v cache. Viz také: parsed()

dirty(name)[zdroj]

Označí parsovaný objekt odpovídající názvu jako změněný. Viz také: parsed().

exists(name)[zdroj]

True právě tehdy, když existuje soubor nebo složka odpovídající kanonickému názvu. Pamatujte, že tato funkce podléhá omezením podkladového souborového systému operačního systému, zejména citlivosti nebo necitlivosti na velikost písmen. Na souborovém systému nerozlišujícím velikost písmen proto vrátí True i tehdy, když se velikost písmen v názvu liší od velikosti písmen v podkladovém souboru souborového systému. Viz také has_name()

filesize(name)[zdroj]

Vrátí velikost v bajtech souboru reprezentovaného zadaným kanonickým názvem. Automaticky zpracuje změněné parsované objekty. Viz také: parsed()

generate_item(name, id_prefix=None, media_type=None, unique_href=True)[zdroj]

Přidá do manifestu položku s href odvozeným od daného názvu. Automaticky zajistí jedinečnost href a id. Vrátí vygenerovanou položku.

get_file_path_for_processing(name, allow_modification=True)[zdroj]

Podobné jako open(), s tím rozdílem, že místo otevřeného objektu souboru vrací cestu k souboru.

property guide_type_map

Mapování typu průvodce na kanonický název

has_name(name)[zdroj]

Vrátí True právě tehdy, když existuje soubor se stejným kanonickým názvem, jako byl zadán. Na rozdíl od exists() tato metoda vždy rozlišuje velikost písmen.

href_to_name(href, base=None)[zdroj]

Převede href (relativní k base) na název. base musí být název nebo None; v takovém případě se použije self.root.

insert_into_xml(parent, item, index=None)[zdroj]

Vloží položku do rodičovského prvku (nebo ji připojí na konec, pokud je index None) a opraví odsazení. Funguje pouze se samozavíracími položkami.

is_dir = False

Pokud tento kontejner představuje rozbalenou knihu (adresář)

Iteruje přes všechny odkazy v name. Pokud je get_line_numbers True, vrací výsledky ve tvaru (link, line_number, offset). line_number je číslo řádku, na kterém se odkaz vyskytuje, a offset je počet znaků od začátku řádku. Pamatujte, že pokud offset není nula, může ve skutečnosti zahrnovat několik řádků.

make_name_unique(name)[zdroj]

Zajistí, že name v této knize ještě neexistuje. Pokud existuje, vrátí upravenou verzi, která neexistuje.

manifest_has_name(name)[zdroj]

Vrátí True, pokud manifest obsahuje záznam odpovídající názvu

property manifest_id_map

Mapování ID manifestu na kanonické názvy

manifest_items_of_type(predicate)[zdroj]

Názvy všech položek manifestu, jejichž media-type odpovídá predikátu. predicate může být množina, seznam, řetězec nebo funkce přijímající jeden argument, která bude zavolána s hodnotou media-type.

manifest_items_with_property(property_name)[zdroj]

Všechny položky manifestu, které mají zadanou vlastnost

property manifest_type_map

Mapování media-type manifestu na seznam kanonických názvů daného media-type

property mi

Metadata této knihy jako objekt Metadata. Pamatujte, že tento objekt se vytváří za běhu pokaždé, když je tato vlastnost vyžádána, proto ji používejte střídmě.

name_to_abspath(name)[zdroj]

Převede kanonický název na absolutní cestu závislou na OS

name_to_href(name, base=None)[zdroj]

Převede název na href relativní k parametru base, který musí být názvem nebo None; v takovém případě se jako base použije self.root

property names_that_must_not_be_changed

Množina názvů, které se nikdy nesmí přejmenovat. Závisí na formátu souboru e-knihy.

property names_that_must_not_be_removed

Množina názvů, které se nikdy nesmí z kontejneru odstranit. Závisí na formátu souboru e-knihy.

property names_that_need_not_be_manifested

Množina názvů, které mohou v manifestu chybět. Závisí na formátu souboru e-knihy.

open(name, mode='rb')[zdroj]

Otevře soubor určený hodnotou name pro přímé čtení nebo zápis. Pamatujte, že pokud je soubor označený jako změněný, zapíše ho a odstraní ho z cache parsování. Než znovu přistoupíte k jeho parsované verzi, musíte práci s tímto souborem dokončit, jinak dojde k problémům.

property opf

Parsovaný soubor OPF

opf_get_or_create(name)[zdroj]

Pomocná metoda, která vrátí první prvek XML se zadaným názvem, nebo ho vytvoří pod prvkem opf:package a poté ho vrátí, pokud ještě neexistuje.

property opf_version

Verze nastavená v prvku <package> souboru OPF

property opf_version_parsed

Verze nastavená v prvku <package> souboru OPF jako n-tice celých čísel

opf_xpath(expr)[zdroj]

Pomocná metoda pro vyhodnocení výrazu XPath nad souborem OPF; má předdefinované předpony jmenných prostorů opf: a dc:.

parsed(name)[zdroj]

Vrátí parsovanou reprezentaci souboru zadaného pomocí name. U souborů HTML a XML se vrátí strom lxml. U souborů CSS se vrátí šablona stylů css_parser. Pamatujte, že parsované objekty se kvůli výkonu ukládají do cache. Pokud v parsovaném objektu provedete jakékoli změny, musíte zavolat dirty(), aby kontejner věděl, že má aktualizovat cache. Viz také replace().

raw_data(name, decode=True, normalize_to_nfc=True)[zdroj]

Vrátí surová data odpovídající souboru zadanému pomocí name

Parametry:
  • decode – Pokud je True a soubor má textový typ MIME, dekóduje ho a místo surových bajtů vrátí objekt unicode.

  • normalize_to_nfc – Pokud je True, vrácený objekt unicode se normalizuje do normalizační formy NFC, jak vyžadují formáty souborů EPUB a AZW3.

relpath(path, base=None)[zdroj]

Převede absolutní cestu (s oddělovači OS) na cestu relativní k base (výchozí je self.root). Relativní cesta není name. K tomu použijte abspath_to_name().

remove_from_spine(spine_items, remove_if_no_longer_in_spine=True)[zdroj]

Odstraní zadané položky (podle kanonického názvu) ze spine. Pokud je remove_if_no_longer_in_spine True, položky se odstraní také z knihy, nejen ze spine.

remove_from_xml(item)[zdroj]

Odstraní položku z rodičovského prvku a opraví odsazení (funguje pouze se samozavíracími položkami)

remove_item(name, remove_from_guide=True)[zdroj]

Odstraní z tohoto kontejneru položku identifikovanou pomocí name. Tím se odstraní všechny odkazy na položku v manifestu OPF, guide a spine i ze všech interních cache.

rename(current_name, new_name)[zdroj]

Přejmenuje soubor z current_name na new_name. Pokud se změní složka, ve které se soubor nachází, automaticky přepočítá všechny odkazy uvnitř tohoto souboru na nový základ. Pamatujte však, že odkazy v ostatních souborech, které by mohly na tento soubor odkazovat, se neaktualizují. Je to kvůli výkonu; takové aktualizace by se měly provádět najednou hromadně.

replace(name, obj)[zdroj]

Nahradí parsovaný objekt odpovídající name objektem obj, který musí být podobného typu, tj. strom lxml pro HTML/XML nebo šablona stylů css_parser pro soubor CSS.

Nahradí všechny odkazy v name pomocí replace_func, což musí být volatelný objekt, který přijímá URL a vrací nahrazenou URL. Musí mít také atribut ‚replaced‘, který se nastaví na True, pokud se provede nějaké skutečné nahrazení. Pohodlné způsoby vytváření takových volatelných objektů poskytují třídy LinkReplacer a LinkRebaser.

serialize_item(name)[zdroj]

Převede parsovaný objekt (identifikovaný kanonickým názvem) na bajtový řetězec. Viz parsed().

set_spine(spine_items)[zdroj]

Nastaví spine na spine_items, kde spine_items je iterovatelný objekt ve tvaru (name, linear). Vyvolá chybu, pokud některý z názvů není přítomen v manifestu.

property spine_items

Iterátor vracející cestu pro každou položku ve spine knihy. Viz také: spine_iter a spine_items.

property spine_iter

Iterátor, který pro každou položku ve spine knihy vrací item, name a is_linear. item je prvek lxml, name je kanonický název souboru a is_linear je True, pokud je položka lineární. Viz také: spine_names a spine_items.

property spine_names

Iterátor vracející name a is_linear pro každou položku ve spine knihy. Viz také: spine_iter a spine_items.

Správa souborů komponent v kontejneru

Nahradí odkazy na soubory v kontejneru. Projde všechny soubory v kontejneru a změní v nich zadané odkazy.

Parametry:
  • link_map – Mapování starého kanonického názvu na nový kanonický název. Například: {'images/old.png': 'images/new.png'}

  • frag_map – Volatelný objekt, který přijímá dva argumenty (name, anchor) a vrací novou kotvu. To je užitečné, pokud potřebujete změnit kotvy v souborech HTML. Ve výchozím nastavení nedělá nic.

  • replace_in_opf – Pokud je False, odkazy v souboru OPF se nenahrazují.

calibre.ebooks.oeb.polish.replace.rename_files(container, file_map)[zdroj]

Přejmenuje soubory v kontejneru a automaticky aktualizuje všechny odkazy na ně.

Parametry:

file_map – Mapování starého kanonického názvu na nový kanonický název, například: {'text/chapter1.html': 'chapter1.html'}.

Vrátí složky doporučené pro dané názvy souborů. Doporučení vychází z toho, kde se v kontejneru nachází většina souborů stejného typu. Pokud nejsou přítomny žádné soubory určitého typu, za doporučenou složku se považuje složka obsahující soubor OPF.

Pěkný tisk a automatická analýza opravy chyb

calibre.ebooks.oeb.polish.pretty.fix_html(container, raw)[zdroj]

Opraví všechny chyby parsování v HTML reprezentovaném jako řetězec v raw. Oprava se provádí pomocí parsovacího algoritmu HTML5.

calibre.ebooks.oeb.polish.pretty.fix_all_html(container)[zdroj]

Opraví všechny chyby parsování ve všech souborech HTML v kontejneru. Oprava se provádí pomocí parsovacího algoritmu HTML5.

calibre.ebooks.oeb.polish.pretty.pretty_html(container, name, raw)[zdroj]

Naformátuje pro přehlednost HTML reprezentované jako řetězec v raw

calibre.ebooks.oeb.polish.pretty.pretty_css(container, name, raw)[zdroj]

Naformátuje pro přehlednost CSS reprezentované jako řetězec v raw

calibre.ebooks.oeb.polish.pretty.pretty_xml(container, name, raw)[zdroj]

Naformátuje pro přehlednost XML reprezentované jako řetězec v raw. Pokud je name názvem OPF, provede se dodatečné formátování specifické pro OPF.

calibre.ebooks.oeb.polish.pretty.pretty_all(container)[zdroj]

Naformátuje pro přehlednost všechny soubory HTML/CSS/XML v kontejneru

Správa přebalů knih

calibre.ebooks.oeb.polish.jacket.remove_jacket(container)[zdroj]

Odstraní existující přebal, pokud nějaký existuje. Vrátí False, pokud nebyl nalezen žádný existující přebal.

calibre.ebooks.oeb.polish.jacket.add_or_replace_jacket(container)[zdroj]

Vytvoří nový přebal z metadat knihy nebo nahradí existující přebal. Vrátí True, pokud byl existující přebal nahrazen.

Rozdělování a slučování souborů

calibre.ebooks.oeb.polish.split.split(container, name, loc_or_xpath, before=True, totals=None)[zdroj]

Rozdělí soubor zadaný pomocí name na pozici určené hodnotou loc_or_xpath. Rozdělení automaticky migruje všechny odkazy a reference na dotčené soubory.

Parametry:
  • loc_or_xpath – Měl by to být výraz XPath, například //h:div[@id=“split_here“]. Může to být také loc, který se interně používá k implementaci dělení v panelu náhledu.

  • before – Pokud je True, rozdělení proběhne před identifikovaným prvkem, jinak za ním.

  • totals – Používá se interně

calibre.ebooks.oeb.polish.split.multisplit(container, name, xpath, before=True)[zdroj]

Rozdělí zadaný soubor na více místech (všechny značky, které odpovídají zadanému výrazu XPath). Viz také: split(). Rozdělení automaticky migruje všechny odkazy a reference na dotčené soubory.

Parametry:

before – Pokud je True, rozdělení proběhnou před identifikovaným prvkem, jinak za ním.

calibre.ebooks.oeb.polish.split.merge(container, category, names, master)[zdroj]

Sloučí zadané soubory do jednoho souboru a automaticky migruje všechny odkazy a reference na dotčené soubory. Všechny soubory musí být buď soubory HTML, nebo CSS.

Parametry:
  • category – Musí být buď 'text' pro soubory HTML, nebo 'styles' pro soubory CSS

  • names – Seznam souborů ke sloučení

  • master – Který ze slučovaných souborů je master soubor, tedy soubor, který po sloučení zůstane.

Správa obálek

calibre.ebooks.oeb.polish.cover.set_cover(container, cover_path, report=None, options=None)[zdroj]

Nastaví obálku knihy na obrázek určený pomocí cover_path.

Parametry:
  • cover_path – Buď absolutní cesta k souboru obrázku, nebo kanonický název obrázku v knize. Při použití obrázku v knize musíte také nastavit options, viz níže.

  • report – Volitelný volatelný objekt, který přijímá jeden argument. Bude volán s informacemi o zpracovávaných úlohách.

  • options – None nebo slovník určující, jak se obálka nastaví. Slovník může obsahovat položky: keep_aspect: True nebo False (Zachovat poměr stran obálek v EPUB) no_svg: True nebo False (Použít na titulní stránce EPUB obalový prvek SVG pro obálku) existing: True nebo False (cover_path odkazuje na existující obrázek v knize)

calibre.ebooks.oeb.polish.cover.mark_as_cover(container, name)[zdroj]

Označí zadaný obrázek jako obrázek obálky.

calibre.ebooks.oeb.polish.cover.mark_as_titlepage(container, name, move_to_start=True)[zdroj]

Označí zadaný soubor HTML jako titulní stránku EPUB.

Parametry:

move_to_start – Pokud je True, soubor HTML se přesune na začátek spine

Práce s CSS

calibre.ebooks.oeb.polish.fonts.change_font(container, old_name, new_name=None)[zdroj]

Změní rodinu písma z old_name na new_name. Změní všechny výskyty rodiny písma v šablonách stylů, značkách <style> a atributech style. Pokud old_name odkazuje na vložené písmo, bude odstraněno. Nastavením new_name na None můžete rodinu písma místo změny odebrat.

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]

Odstraní z knihy všechna nepoužitá pravidla CSS. Nepoužité pravidlo CSS je takové, které neodpovídá žádnému skutečnému obsahu.

Parametry:
  • report – Volitelný volatelný objekt, který přijímá jeden argument. Volá se s informacemi o prováděných operacích.

  • remove_unused_classes – Pokud je True, odstraní se také atributy class v HTML, které neodpovídají žádným pravidlům CSS.

  • merge_rules – Pokud je True, sloučí se pravidla se stejnými selektory.

  • merge_rules_with_identical_properties – Pokud je True, sloučí se pravidla se stejnými vlastnostmi.

  • remove_unreferenced_sheets – Pokud je True, odstraní se šablony stylů, na které neodkazuje žádný obsah

calibre.ebooks.oeb.polish.css.filter_css(container, properties, names=())[zdroj]

Odstraní zadané vlastnosti CSS ze všech pravidel CSS v knize.

Parametry:
  • properties – Množina vlastností k odstranění. Například: {'font-family', 'color'}.

  • names – Soubory, ze kterých se mají vlastnosti odstranit. Výchozí jsou všechny soubory HTML a CSS v knize.

Práce s obsahem

calibre.ebooks.oeb.polish.toc.from_xpaths(container, xpaths, prefer_title=False)[zdroj]

Vygeneruje obsah ze seznamu výrazů XPath. Každý výraz v seznamu odpovídá jedné úrovni generovaného obsahu. Například: ['//h:h1', '//h:h2', '//h:h3'] vygeneruje tříúrovňový obsah ze značek <h1>, <h2> a <h3>.

Vygeneruje obsah z odkazů v knize.

calibre.ebooks.oeb.polish.toc.from_files(container)[zdroj]

Vygeneruje obsah ze souborů v knize.

calibre.ebooks.oeb.polish.toc.create_inline_toc(container, title=None)[zdroj]

Vytvoří vložený obsah (HTML) z existujícího obsahu NCX.

Parametry:

title – Název tohoto obsahu.

Nástroj na úpravu knih

class calibre.gui2.tweak_book.plugin.Tool[zdroj]

Bases: object

Základní třída pro jednotlivé nástroje v pluginu Editoru e-knih. Mezi užitečné členy patří:

Metody, které musí být přepsány v podtřídách:

name = None

Nastavte na jedinečný název; použije se jako klíč

allowed_in_toolbar = True

Pokud je True, uživatel může zvolit umístění tohoto nástroje na panel nástrojů modulů

allowed_in_menu = True

Pokud je True, uživatel může zvolit umístění tohoto nástroje do nabídky modulů

toolbar_button_popup_mode = 'delayed'

Režim vyskakovací nabídky tlačítka na panelu nástrojů, pokud nějakou má. Možné hodnoty jsou ‚delayed‘, ‚instant‘, ‚button‘

property boss

Objekt calibre.gui2.tweak_book.boss.Boss. Používá se k ovládání uživatelského rozhraní.

property gui

Hlavní okno uživatelského rozhraní

property current_container

Vrátí aktuální objekt calibre.ebooks.oeb.polish.container.Container, který představuje upravovanou knihu.

register_shortcut(qaction, unique_name, default_keys=(), short_text=None, description=None, **extra_data)[zdroj]

Zaregistruje klávesovou zkratku, která vyvolá zadaný qaction. Tuto klávesovou zkratku si uživatel bude moci automaticky přizpůsobit v části Klávesové zkratky předvoleb editoru.

Parametry:
  • qaction – Objekt QAction, který bude vyvolán, když uživatel stiskne nakonfigurovanou kombinaci kláves.

  • unique_name – Jedinečný název této zkratky nebo akce. Použije se interně a nesmí být sdílen s žádnými jinými akcemi v tomto pluginu.

  • default_keys – Seznam výchozích klávesových zkratek. Pokud není zadán, nenastaví se žádné výchozí zkratky. Pokud jsou zde zadané zkratky v konfliktu s vestavěnými zkratkami nebo se zkratkami z uživatelské konfigurace či jiných pluginů, budou ignorovány. V takovém případě budou uživatelé muset zkratky nakonfigurovat ručně v Předvolbách. Například: default_keys=('Ctrl+J', 'F9').

  • short_text – Volitelný krátký popis této akce. Pokud není zadán, použije se text z QAction.

  • description – Volitelný delší popis této akce; použije se v položce předvoleb pro tuto zkratku.

create_action(for_toolbar=True)[zdroj]

Vytvoří QAction, který bude přidán buď na panel nástrojů modulů, nebo do nabídky modulů podle for_toolbar. Napří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

Viz také

Metoda register_shortcut().

Ovládání uživatelského rozhraní editoru

Uživatelské rozhraní editoru e-knih je ovládáno jediným globálním Hlavním objektem. To má mnoho užitečných metod, které lze použít v kódu modulu k provádění běžných úkolů.

class calibre.gui2.tweak_book.boss.Boss(parent, notify=None)[zdroj]
add_savepoint(msg)[zdroj]

Vytvoří kontrolní bod obnovení s názvem zadaným jako msg

apply_container_update_to_gui(mark_as_modified=True)[zdroj]

Aktualizuje všechny komponenty uživatelského rozhraní tak, aby odrážely nejnovější data v aktuálním kontejneru knihy.

Parametry:

mark_as_modified – Pokud je True, kniha bude označena jako změněná, takže uživatel bude při ukončení vyzván k jejímu uložení.

close_editor(name)[zdroj]

Zavře editor, který upravuje soubor zadaný pomocí name

commit_all_editors_to_container()[zdroj]

Potvrdí do kontejneru všechny změny, které uživatel provedl v souborech otevřených v editorech. Tuto metodu byste měli zavolat před prováděním jakýchkoli akcí s aktuálním kontejnerem

property currently_editing

Vrátí název aktuálně upravovaného souboru nebo None, pokud se žádný soubor neupravuje

edit_file(name, syntax=None, use_template=None)[zdroj]

Otevře soubor zadaný pomocí name v editoru

Parametry:
  • syntax – Typ média souboru, například 'text/html'. Pokud není zadán, odhadne se z přípony souboru.

  • use_template – Šablona, kterou se inicializuje otevřený editor

open_book(path=None, edit_file=None, clear_notify_data=True, open_folder=False, search_text=None)[zdroj]

Otevře e-knihu v umístění path k úpravám. Zobrazí chybu, pokud e-kniha není v podporovaném formátu nebo aktuální kniha obsahuje neuložené změny.

Parametry:

edit_file – Název souboru v nově otevřené knize, jehož úpravy se mají zahájit. Může to být také seznam názvů.

rewind_savepoint()[zdroj]

Vrátí zpět předchozí vytvoření kontrolního bodu obnovení; užitečné, pokud vytvoříte kontrolní bod a poté operaci zrušíte bez provedení změn

save_book()[zdroj]

Uloží knihu. Ukládání se provádí na pozadí

set_modified()[zdroj]

Označí knihu jako upravenou

show_current_diff(allow_revert=True, to_container=None)[zdroj]

Zobrazí změny knihy oproti stavu posledního kontrolního bodu

Parametry:
  • allow_revert – Pokud je True, dialog rozdílů bude obsahovat tlačítko umožňující uživateli vrátit všechny změny

  • to_container – Objekt kontejneru, se kterým se má aktuální kontejner porovnat. Pokud je None, použije se kontejner z předchozího kontrolního bodu

show_editor(name)[zdroj]

Zobrazí editor, který upravuje soubor zadaný pomocí name

sync_preview_to_editor()[zdroj]

Synchronizuje pozici panelu náhledu s aktuální pozicí kurzoru v aktuálním editoru