Za drogo? Ustaw alerty cenowe na e-booki i kupuj taniej!

Masz problemy z podziałem wyrazów w Calibre? Zmień konfigurację wtyczki Hyphenate This!

Niedawna aktualizacja programu Calibre do wersji 5.0 przyniosła trochę problemów, z którymi powoli sobie radzimy. 

Jak pamiętamy, program został przepisany w 3 wersji Pythona, a to spowodowało konieczność zaktualizowania wszystkich wtyczek. Przez jakiś czas np. nie mieliśmy dostępnej wtyczki Hyphenate This!, odpowiadającej za dzielenie wyrazów w plikach EPUB/AZW3.

Działanie tej wtyczki opisywałem tutaj dwukrotnie:

Wtyczka została zaktualizowana, ale zauważyłem, że czasami dzieli wyrazy… dość dziwnie.

Problem

Oto przykład z książki Euro. W jaki sposób wspólna waluta zagraża przyszłości Europy autorstwa Josepha Stiglitza.

Przy niektórych słowach polskie znaki znajdują się nieprawidłowo w następnym wierszu.

Np. rozwi-ązaniami, albo zamkni-ętymi.

Co się stało?

Wtyczka Hyphenate This! korzysta z dostępnego publicznie pliku słownika hyph_pl_PL.dic, który ma wiele lat i stosowany jest choćby w programie Libre Office. Nawet ustawienia wtyczki odsyłają do Libre Office.

Co więcej, z identycznego pliku korzysta program Calibre, który w ramach funkcji „Dopracuj książkę” ma również dodawanie łączników opcjonalnych – jako „Add soft hyphens”.

No i podział przez „Dopracuj książkę” działał, przez wtyczkę już nie.

I tu czas na dygresję: skoro ta funkcja jest wbudowana w Calibre, po co korzystać z dodatkowej wtyczki? Z dwóch powodów.

Pierwszy jest taki, że wtyczka daje dodatkowe możliwości – np. pominięcie nagłówków i krótkich wyrazów.

Drugi, że „Dopracuj książkę” działa co najmniej dziwne – jeśli poprawimy w ten sposób plik EPUB, to przy konwersji do MOBI program z niego… nie korzysta, a bierze niezmodyfikowaną kopię oryginału, oznaczoną jako „ORIGINAL EPUB”. Uznałem że to błąd, zgłosiłem w bugtrackerze Calibre, na co odpowiedział mi sam Kovid Goyal, twórca Calibre, że tak ma być. No cóż, niezbadane są ścieżki myślenia developerów.

Jeśli uprzemy się przy korzystaniu z „Dopracuj książkę”, w zaawansowanych ustawieniach Calibre można tworzenie kopii wyłączyć – ustawiamy następujący parametr:

save_original_format_when_polishing = False

Dobre i to.

Rozwiązanie

Na rozwiązanie wpadł nasz czytelnik Dariusz.

Okazuje się, że plik hyph_pl_PL.dic korzystał ze starego kodowania znaków, popularnego w swoim czasie w internecie ISO 8859-2. Obecnie większość stron, ale również e-booków zapisywana jest w formacie UTF-8.

I wystarczyło przekodować plik słownika do UTF-8. Tu możecie go pobrać. Jeśli otwiera się zamiast zapisywania, skorzystajcie z opcji „zapisz link jako…” lub podobnej pod prawym klawiszem myszki. Ewentualnie link do pliku ZIP.

Sprawdziłem na paru książkach i już jest w porządku. Wracamy do Stiglitza.

Plik instalujemy tak jak opisywałem we wcześniejszych artykułach. Z menu wtyczki Hyphenate This (będzie dostępna w głównym pasku Calibre jako „Dziel wyrazy”) wybieramy „Settings”.

Następnie dodajemy z dysku plik słownika („hyph_pl_PL.dic”). Jest to czynność jednorazowa. Potem możemy już przerabiać pliki EPUB lub AZW3.

Jeśli mieliście podobnie jak ja problemy z podziałami wyrazów, sprawdźcie nowy plik słownika.

PS. Jeśli ktoś wysyła przekonwertowane w Calibre pliki na Kindle w formacie MOBI „both” (patrz artykuł 50 twarzy MOBI), może zauważyć, że ostatnio część plików konwertuje się nieprawidłowo. Napiszę o tym niedługo artykuł, tymczasem wspomnę tylko, że konieczne jest tutaj użycie konwersji przy pomocy amazonowego programu Kindle Previewer.

Czytaj dalej:

Artykuł był przydatny? Jeśli tak, zobacz 6 sposobów, na jakie możesz wspomóc Świat Czytników. Dziękuję!

Ten wpis został opublikowany w kategorii Książki na czytniki i oznaczony tagami , , . Dodaj zakładkę do bezpośredniego odnośnika.
Hosting: Zenbox

18 odpowiedzi na „Masz problemy z podziałem wyrazów w Calibre? Zmień konfigurację wtyczki Hyphenate This!

  1. rudy102 pisze:

    Ja po prostu nie aktualizuję calibre bo i po co skoro działa

    0
    • Robert Drózd pisze:

      No, biorąc pod uwagę te problemy, żałowałem że nie zostałem przy wersji 4.x. Ale problem z PS. występuje też przy 4.23, którą w desperacji zainstalowałem, więc pozostanie nie rozwiązuje wszystkiego.

      Zaletą Calibre 5 jest jednak znacznie większa szybkość, np. konwersji, ale również wyszukiwarki. Jak w starym wpisałem w wyszukiwarce tytuł książki, międlił i międlił dysk przez kilkanaście sekund nawet. W nowym działa to natychmiast (co nie jest pewnie zaletą pythona tylko nowego formatu bazy danych, może wreszcie indeks dodali).

      1
  2. Marek pisze:

    Ja od jakiegoś czasu zamiast Hyphenate This! używam epubQTools, jest nawet nowsza wersja przekonwertowana na pythona3 – https://github.com/johnykvsky/epubQTools ostatnio na nią trafiłem, sprawdzałem i działa, chociaż nie jest to oficjalne wydanie (program jest już nierozwijany?)

    Plik po konwersji wygląda lepiej niż po Hyphenate – tak to ustawiłem, że mam skrypt, który wszystkie pliki w danym katalogu konwertuje, jak kupuję książkę, to zapisuję do niego, odpalam skrypt, mieli, jak gotowe, to dodaję do calibre epub i mobi.

    0
  3. Adam pisze:

    „Następnie dodajemy z dysku wtyczkę.” – chyba chodzi o słownik?

    0
  4. QRAKAO pisze:

    Ktoś mógłby mi wyjaśnić jak pobrać ten przekodowany słownik z podanego linku w artykule? Moja przeglądarka go wyświetla zamiast pobrać (Opera i Egde).

    0
  5. Agnen pisze:

    No nie wiem, czy jest dobrze po przekonwertowaniu do utf-8? Po podmianie słownika w czytniku nadal występują kwiatki typu: stoj – ący.

    0
    • Robert Drózd pisze:

      Upewniłbym się czy na czytniku nie masz starej wersji książki. No i przed ponownym podzieleniem trzeba usunać podziały (remove soft hyphens), a także jeśli trzeba, przekonwertować z epub do mobi.

      0
      • Agnen pisze:

        Już to robiłem. Podział przy pomocy wtyczki i słownika w utf-8, zamiana słowników w czytniku, usunięcie słownika z czytnika. Wynik za każdym razem do d… Przypuszczam, że jest to konflikt wtyczka – opcja w dopracuj książkę. Zadałem sobie trud odszukania w słowniku błędnie podzielonego słowa i w słowniku był zakaz dzielenia w tym miejscu (o zakazie lub możliwości dzielenia decyduje parzysta lub nieparzysta cyfra). W chwili obecnej używam „dopracuj książkę” , słownik wywalam z czytnika, w css ustawiam blokadę podziału nagłóków.

        1

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Przed dodaniem komentarza zapoznaj się proszę z zasadami komentowania i polityką prywatności

Komentarze do tego artykułu można śledzić także w formacie RSS.