Fórum Root.cz

Hlavní témata => Software => Téma založeno: noonenoone kdy 21. 02. 2024, 14:43:33

Název: LaTeX/pdfLaTeX a zalamování českých slov
Přispěvatel: noonenoone kdy 21. 02. 2024, 14:43:33
Poradíte mi někdo co dělám špatně? Mám dokument a v něm slovo "významný", které by mělo být zalomené. Přestože používám babel, tak se slovo nezalomí (podobně ani některá jiná slova). Tak se snažím slovo zalomit pomocí vlastní definice \hyphenation{výz-nam-ný}, ale to mi zase vrací chybu při kompliaci (latex i pdflatex):

Obsah souboru test.tex:

\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[czech]{babel}
\usepackage{lmodern}
\hyphenation{výz-nam-ný}
\usepackage{lipsum}
\begin{document}
\section*{prvni}
\subsection*{podkapitola}
Toto slouží jako malá ukázka možnosti definice zalomení textu, což je významný prvek v typografii.
\lipsum[2-4]
\end{document}


Chyba kterou dostanu:

pdflatex test.tex
This is pdfTeX, Version 3.141592653-2.6-1.40.22 (TeX Live 2022/dev/Debian) (preloaded format=pdflatex)
restricted \write18 enabled.
entering extended mode
(./test.tex
LaTeX2e <2021-11-15> patch level 1
L3 programming layer <2022-01-21>
(/usr/share/texlive/texmf-dist/tex/latex/base/article.cls
Document Class: article 2021/10/04 v1.4n Standard LaTeX document class
(/usr/share/texlive/texmf-dist/tex/latex/base/size12.clo))
(/usr/share/texlive/texmf-dist/tex/latex/base/inputenc.sty)
(/usr/share/texlive/texmf-dist/tex/generic/babel/babel.sty
(/usr/share/texlive/texmf-dist/tex/generic/babel/txtbabel.def)
(/usr/share/texlive/texmf-dist/tex/generic/babel-czech/czech.ldf))
(/usr/share/texmf/tex/latex/lm/lmodern.sty)
! Improper \hyphenation will be flushed.
\leavevmode ->\unhbox
                      \voidb@x
l.5 \hyphenation{vý
                    z-nam-ný}
?


Nedokážu s tím hnout už druhým dnem. Poradí mi někdo?

Děkuju
Název: Re:latex/pdflatex zalamování českých slov - hyphenation
Přispěvatel: metabug kdy 21. 02. 2024, 16:00:26
Chybu děláš v tom, že má být správně vý-znam-ný.

Ohledně TeX ti neporadím.
Název: Re:LaTeX/pdfLaTeX a zalamování českých slov
Přispěvatel: Tomas-T kdy 21. 02. 2024, 16:27:23
Zdá se, že "ý" není v daném kontextu považované Latexem za dovolený znak. 
https://tex.stackexchange.com/questions/119509/using-hyphenation-and-umlauts
Název: Re:latex/pdflatex zalamování českých slov - hyphenation
Přispěvatel: noonenoone kdy 21. 02. 2024, 16:37:59
Citace od: metabug kdy 21. 02. 2024, 16:00:26
Chybu děláš v tom, že má být správně vý-znam-ný.

Ohledně TeX ti neporadím.

Ano prosím, máš pravdu.
Název: Re:LaTeX/pdfLaTeX a zalamování českých slov
Přispěvatel: noonenoone kdy 21. 02. 2024, 16:43:50
Citace od: Tomas-T kdy 21. 02. 2024, 16:27:23
Zdá se, že "ý" není v daném kontextu považované Latexem za dovolený znak. 
https://tex.stackexchange.com/questions/119509/using-hyphenation-and-umlauts

Ano, tak to vypadá. Přidal jsem \usepackage[T1]{fontenc} a už to funguje.

Měl jsem zato, že pokud používám babel, nemusím používat fontenc. Kbyby to někdo dokázal vysvětlit, nebo ukázat osvědčenou hlavičku tex souborů pro českou sazbu, budu rád.

Název: Re:LaTeX/pdfLaTeX a zalamování českých slov
Přispěvatel: mikrom kdy 22. 02. 2024, 14:01:49
Citace od: noonenoone kdy 21. 02. 2024, 16:43:50
Měl jsem zato, že pokud používám babel, nemusím používat fontenc. Kbyby to někdo dokázal vysvětlit, nebo ukázat osvědčenou hlavičku tex souborů pro českou sazbu, budu rád.

Ja pouzivam na zalamovanie v texte prikaz \- a funguje to bez fontenc, napr. pre tvoj priklad takto:

\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[czech]{babel}
\usepackage{lmodern}
\usepackage{lipsum}
\begin{document}
\section*{prvni}
\subsection*{podkapitola}
Toto slouží jako malá ukázka možnosti definice zalomení textu, což je vý\-znam\-ný prvek v typografii.
\lipsum[2-4]
\end{document}


Vysvetlenie je napr. tu:
https://en.wikibooks.org/wiki/LaTeX/Text_Formatting#Hyphenation

t.j.

The command \- inserts a discretionary hyphen into a word. This also becomes the only point where hyphenation is allowed in this word. This command is especially useful for words containing special characters (e.g., accented characters), because LaTeX does not automatically hyphenate words containing special characters.

co v preklade znamena

Příkaz \- vloží do slova libovolnou pomlčku. To se také stává jediným bodem, kde je v tomto slově povoleno dělení slov. Tento příkaz je zvláště užitečný pro slova obsahující speciální znaky (např. znaky s diakritikou), protože LaTeX automaticky nerozděluje slova obsahující speciální znaky.


Název: Re:LaTeX/pdfLaTeX a zalamování českých slov
Přispěvatel: kopevi2 kdy 22. 02. 2024, 14:40:10
 apt-get install texlive texlive-lang-czechslovak texmaker
tohle jsem instaloval a pak používám cslatex, v tom jsem sázel diplomku 10let zpět a bylo to ok....
Název: Re:LaTeX/pdfLaTeX a zalamování českých slov
Přispěvatel: mikrom kdy 22. 02. 2024, 15:11:57
Citace od: kopevi2 kdy 22. 02. 2024, 14:40:10
apt-get install texlive texlive-lang-czechslovak texmaker
tohle jsem instaloval a pak používám cslatex, v tom jsem sázel diplomku 10let zpět a bylo to ok....
Ano kedysi bol rozsireny CSTeX (Petr Olskak) a CSLaTeX ale teraz to uz moc nevidiet pouzivat, ktovie ci sa to este vyvija. Ja som pouzival este aj AMS TeX. V poslednej dobe decka pouzivaju LaTeX + Babel a pisu to v Overleaf (https://www.overleaf.com) 
Název: Re:LaTeX/pdfLaTeX a zalamování českých slov
Přispěvatel: kopevi2 kdy 22. 02. 2024, 20:39:56
Citace od: mikrom kdy 22. 02. 2024, 15:11:57
Citace od: kopevi2 kdy 22. 02. 2024, 14:40:10
apt-get install texlive texlive-lang-czechslovak texmaker
tohle jsem instaloval a pak používám cslatex, v tom jsem sázel diplomku 10let zpět a bylo to ok....
Ano kedysi bol rozsireny CSTeX (Petr Olskak) a CSLaTeX ale teraz to uz moc nevidiet pouzivat, ktovie ci sa to este vyvija. Ja som pouzival este aj AMS TeX. V poslednej dobe decka pouzivaju LaTeX + Babel a pisu to v Overleaf (https://www.overleaf.com)
Ten overleaf vypadá dobře.... Ale dívím se, že dneska ještě někdo píše v LaTeXu....
jinak našel jsem tohle, pokud by měl tazatel náladu si to projít https://www.fit.vutbr.cz/~martinek/latex/czech.html
Název: Re:LaTeX/pdfLaTeX a zalamování českých slov
Přispěvatel: mikrom kdy 22. 02. 2024, 22:52:00
Citace od: kopevi2 kdy 22. 02. 2024, 20:39:56
Ale dívím se, že dneska ještě někdo píše v LaTeXu....
Je to stale standard na pisanie bakalarskych, diplomovych a dizertacnych prac na univerzitach, vedeckych clankov ... atd 
Název: Re:LaTeX/pdfLaTeX a zalamování českých slov
Přispěvatel: noonenoone kdy 22. 02. 2024, 22:53:38
Ahoj, děkuji všem za příspěvky!

Použití \- funguje tak jak píšeš, ale je třeba to definovat v každém výskytu daného slova narozdíl od definice v \hyphenation{}.

CsLaTex (Petr Olšák) už není vyvíjený dlouho (poslední změny v roce 2001).

Návod a texty od pana Martínka mám také prostudované a jsou také již zastaralé.

Pro českou sazbu, včetně zalamování slov, diakritiky, správných uvozovek apod. by se měl používat babel.

Overleaf používám a tam se právě chyba o které píšu vyskytuje také. LaTeX je skvělý pro diplomky a pro radost :).

Díky a hezký večer.
Název: Re:LaTeX/pdfLaTeX a zalamování českých slov
Přispěvatel: mikrom kdy 23. 02. 2024, 01:09:37
Ked pouzijem priamo v texte vý\-znam\-ný tak mi to v tomto prípade rozdeluje ako
vý-znamný, ale viem ten text napasovat aj tak, aby mi to rozdelilo na význam-ný.
Naproti tomu ked pouzijem deklaraciu \hyphenation{vý-znam-ný} tak mi to vzdy rozdeluje len ako vý-znamný. Prípad aby mi to rozdelilo aj ako význam-ný sa mi s tou deklaraciou nedari nasimulovat.
A este som zistil, ze ked uz raz pouzijem \usepackage[T1]{fontenc} tak mi to deli ako vý-znamný aj ked zakomentujem deklaraciu %\hyphenation{vý-znam-ný}.
Nie som si teda isty, ze ked uz pouzivame \usepackage[T1]{fontenc} ci este ma vyznam deklarovat aj to zalamovacie pravidlo cez \hyphenation{vý-znam-ný}
Název: Re:LaTeX/pdfLaTeX a zalamování českých slov
Přispěvatel: kopevi2 kdy 23. 02. 2024, 09:16:31
Citace od: mikrom kdy 22. 02. 2024, 22:52:00
Citace od: kopevi2 kdy 22. 02. 2024, 20:39:56
Ale dívím se, že dneska ještě někdo píše v LaTeXu....
Je to stale standard na pisanie bakalarskych, diplomovych a dizertacnych prac na univerzitach, vedeckych clankov ... atd
No já jsem si právě myslel, že jsem na výšce za exota, protože když jsem psal vědecký článek na jednu konferenci, tak to po mě vyžadovali přepsat do wordu. I můj školitel remcal, že mu práci budu odevzdávat v pdf a ne ve wordu :-) Jinak LaTeXu vděčím za zachování psychického zdraví při psaní čehokoliv na škole....
Název: Re:LaTeX/pdfLaTeX a zalamování českých slov
Přispěvatel: snugar_i kdy 23. 02. 2024, 10:11:22
Citace od: kopevi2 kdy 23. 02. 2024, 09:16:31
No já jsem si právě myslel, že jsem na výšce za exota, protože když jsem psal vědecký článek na jednu konferenci, tak to po mě vyžadovali přepsat do wordu. I můj školitel remcal, že mu práci budu odevzdávat v pdf a ne ve wordu :-) Jinak LaTeXu vděčím za zachování psychického zdraví při psaní čehokoliv na škole....
Asi záleží školu od školy. U nás jsme měli zase jenom jednoho, co psal bakalářku ve Wordu (spíš ze srandy), a všichni ostatní používali Latex
Název: Re:LaTeX/pdfLaTeX a zalamování českých slov
Přispěvatel: noonenoone kdy 23. 02. 2024, 11:30:22
Dokumenty vysázené v latexu vypadají naprosto jinak než to co je vidět ve wordu nebo v jiných kancelářských balících. Dokumenty v latexu jsou prostě krásné. To podstatné pro mě ale je, že při psaní v latexu, se můžu/musím soustředit na vlastní obsah a nemusím řešit vzhled a práci s wordprocesorem. Je to taková "čistá práce". Nemluvě o tom, že i psaní nudných prací v latexu získá nádech zábavy.
Název: Re:LaTeX/pdfLaTeX a zalamování českých slov
Přispěvatel: Karol Bujaček kdy 03. 03. 2024, 20:59:02
Citace od: noonenoone kdy 22. 02. 2024, 22:53:38
CsLaTex (Petr Olšák) už není vyvíjený dlouho (poslední změny v roce 2001).

Petr Olšák je aktívny a namiesto Cs*TeX pripravil OpTeX a OPmac – viď https://petr.olsak.net/optex/ , posledný release je z 14. 2. 2024.