Tex fórum

Alá- és föléhúzás vonala római számoknál

Fórumok

Sziasztok.

Mikor nagyon kicsi voltam, a római számokat alá- és föléhúzással tanultam leírni, így oktatták.

Kérdésem érdekes: ki hogy írja mostanában és mikor alkalmazná ezt a fajta írásmódot?

Példák:

IV. Béla neve olyan számmal, ami sorszámnév: Hova rakod a pontot? A vonalak közé zárva, vagy a vonalak után? (a szám és a név között persze törhetetlen szóköz van.)

XX : itt tőszámnév esetén, ha mondjuk egy ókori szöveg idézetében szerepel, jól néznek ki a vonalak, épületek emeleteinél is, vagy címeknél a kerületeknél, vagy mondjuk iskolában az osztályoknál.

Tényleg érdekelne, ki mikor alkalmazná biztosan és mikor nem.

A példa és az alkalmazás: romanbar-example.pdf

--------

Külön unikum, amikor fontok léteznek római számokra, vonalak nélkül persze. Ilyenkor megfigyelhető, hogy az egalizálás más. II nem ugyanazzal a szóközzel van mint a III, de a V és a VIII sem ugyanolyan szélességű V betűvel van leírva, vagyis tömörebbé tétel van -- követve a régi számírás vizuális hagyományait.

tex és a soregyen

Fórumok

Sziasztok.

Korábban volt már szó erről, most külön alkottam egy példafájlt, amely szemlélteti, mekkora küzdelem a soregyen betartása tex-latex stb. használata esetén. Ebből megérthető, hogy ha valaki összetett dolgot ír, gyakran inkább vastagabb papírt használ, hogy a soregyenre ne kelljen figyelnie...

A főbűn egy kényelmi eszköz, melynek megengedik, hogy használjon rugalmas függőleges közöket, mint amilyen a

  • \bigskip
  • \medskip stb,
  • valamint pl. a \begin{center} stb. környezet.

Nagyon sok elem tartalmazhat a beillesztéskor olyan vertikális szünetet, amely eltolja a soregyent. Ilyenkor jól jön egy eleve vonalas lap, melyen a bűnös megfigyelhető. Ha a sor egy változtatás után nincs vonalon, ott eltolódás lesz függőlegesen...

Alant egy ilyen vonalas példafájl, melyet a legújabb texlive alatt bárki használhat kísérleti patkánynak. Ha valakinek volna ötlete arra nézve, hogy mondjuk egy \fbox{} a maga keretvonalának vastagságával ne tolja el az aktuális oldal soregyenét, jelezze... :)

Nem hinném, hogy van olyan csomag, amely megregulázza az összes létező elemet. Mindent darabonként kellene átrágni?
Gyanúm szerint igen.

 

% Példa arra, mennyi mindent kell figyelni egy soregyen tartásához. 
% A rugalmas sorközöket használó elemeket
% ki kell iktatni, kerülni kell, ami kényelmetlen, 
% de sokkal tudatosabbá tesz mindent.
% Ez a példafájl alkalmas arra, hogy megnézzük, mely környezet
% milyen körülmények közt mekkora rugalmas sorközt használ.

\documentclass[11pt]{article}
\usepackage[T1]{fontenc}
\usepackage{picture,xcolor,lipsum}
\usepackage{multirow}
\usepackage{atbegshi}
\AtBeginShipout%
{\AtBeginShipoutUpperLeft{%
  {\color{blue!30}%
   \put(0pt,-\dimexpr 1in+\topmargin+\headheight+\headsep+\topskip)%
   {\vtop to\dimexpr\vsize+\baselineskip{
    \hrule
    \leaders\vbox to\baselineskip{\hrule width\paperwidth\vfill}\vfill}%
   }
  }
 }
}

\def\soregyenigazitas{\vspace{-2ex}} % nincs sorkihagyás
%\def\soregyenigazitas{\vspace{1ex}} % van sorkihagyás

\usepackage{stackengine}
\usepackage{graphicx,wrapfig}

%\usepackage{quotchap}  % pl. ezzel összeférhetetlen a atbegshi...

\begin{document}

\lipsum[1]
\begin{wrapfigure}{l}{0.5\textwidth}
    \stackinset{l}{1em}{t}{3ex}{Belső felirat, amit kilógatunk IDE, hogy megnézzük, sorban van-e}%
    {\includegraphics[width=5cm]{example-image}}
\end{wrapfigure}
\lipsum[1]

 \soregyenigazitas
  \begin{center}
   \lipsum[1]
  \end{center}
 \soregyenigazitas
\lipsum  % Ha itt \lipsum[1] van, alatta elcsúszik a soregyen, mert e kettő is eltérő rugalmas sorközt használ

\begin{center}
 \fbox{%
 % ha az \fbox-ot letiltjuk, minden elcsúszik alatta, (igazítani kell rajta)
 % -- tehát valóban figyelni kell mindenre állandóan.
  \begin{minipage}{20em}
  \vspace{2px} % a keretvastagság miatt kell, különben megint csúszik minden
   \begin{center}
    ,,Providentia Augufti,\\
    Vere pontificis, virtus Romana\\
    Quid non domat? Sub Jugum, ecce!\\
    Rapitur \& Danubius''
   \end{center}
  \end{minipage}
 }
\end{center}

 \soregyenigazitas
  \begin{center}
   \lipsum[1]
  \end{center}
 \soregyenigazitas
  
 \lipsum
   
\end{document}


fordítási warningok a .toc fájlba íródnak

Fórumok

Eltértem az eredeti bibtex által generált irodalomjegyzéktől, a biber használatához a

\usepackage{biblatex}

csomagot kezdtem el használni. Ez egy olyan kedves jelenséget hoz létre, hogy a tartalomjegyzék .toc-ába kezdi el a fordítás közbeni üzenetet logolni... Ilyen nincs! Amint visszatérek az eredeti "generátoromhoz", minden rendben lefut.

Ezzel töltöm be az új, magyarított irodalomjegyzék-generátort:


\usepackage[autolang=hyphen,giveninits,abbreviate=false]{biblatex}
\usepackage{csquotes}
%\DeclareQuoteStyle{magyar}{,,}{''}{>>}{<<}
% Az előző sor v5.2e-nél régebbi verziójú csquotes csomag esetén kell.
%\BiblatexHungarianWarningOff
\setlength{\biblabelsep}{\labelsep}
\renewcommand{\mkbibnamefamily}{\scshape}
\renewcommand{\mkbibnamegiven}{\scshape}
\DeclareFieldFormat*{title}{\textit{#1}}
\DeclareFieldFormat[article]{journaltitle}{#1}
\DeclareFieldFormat[article]{pages}{#1}
\renewcommand{\finalnamedelim}{\addcomma\addspace}
\renewcommand{\labelnamepunct}{\addcolon\addspace}
\renewcommand{\newunitpunct}{\addcomma\addspace}
\DeclareEntryOption[boolean]{hunname}[true]{%
\DeclareNameAlias{author}{family-given}%
\renewcommand{\revsdnamepunct}{}}
\DefineBibliographyExtras{magyar}{\DeclareFieldFormat{postnote}{#1}}
\addbibresource{forras.bib}

Ahogy nézegettem, máshol is akadtak hasonló problémák, de megoldás terén még nem találtam semmi leírást.

Kíváncsi vagyok, főtt-e már valakinek pont ezzel a feje

{defaults=hu-min}{magyar.ldf} összeakadása a \cite[]{} paranccsal (megoldódott)

Fórumok
Sziasztok!

A magyarldf-et kezdtem el alaposabban tanulmányozni, rájöttem arra, hogy ebben az is szerepel, 
hogy :?! jelek és az őket megelőző szó között félszóköz van. Angol szövegben nincs félszóköz se.
Ehhez az alábbi módon kell betölteni a magyar.ldf-et:

\usepackage[T1]{fontenc}
\PassOptionsToPackage{defaults=hu-min}{magyar.ldf}
\usepackage[english,magyar]{babel}

Igen ám, de ezután az összes \cite parancsom, amely az irodalomjegyzékre mutat, megőrül, a fordító végtelen ciklusba kezd és valamit matematikai módba akar rakni -- holott semmit sem kéne neki tennie.Ha a\PassOptionsToPackage{defaults=hu-min}{magyar.ldf}sort kiiktatom, a fordító elvégzi feladatát, persze a magyar.ldf nélkül.

Mivel kavarodhattam össze?

Íme a hibaüzenet, ami semmitmondó:

! Missing $ inserted.
<inserted text> 
                $
l.59 ...aplójából -- \cite[158.~old.]{szw1942}}
                                                  
? 

Sehol a környéken matematikai mód.

Margószöveg behúzása a főszövegbe [.shape alkalmazásával megoldva]

Fórumok

Sziasztok!

Nagyon régóta foglalkozom azzal, hogyan lehetne egy \marginpar{}[] parancsot úgy definiálni, hogy beleolvadjon a főszövegbe. Sehol sincs erre megoldás, a TeX-et nem ilyesmire találták ki. Azonban könyv esetén egy helymetakarítás ezen módszer alkalmazása, tehát nem mondtam le róla.

Jelenlegi példafájlom korántsem tökéletes, egy úsztatott képpel együtt már összezavarja az adott oldalt, elég alaposan. Ráadásul a paraméterként átadott főszövegnek egy bizonyos karakterszámúnak kell lennie, az előtte- és utána álló szöveg behúzását is kézzel kell variálni, már ha van.

Eddig jutottam:
 

\documentclass[11pt,b5paper]{book}
\usepackage[T1]{fontenc}
\PassOptionsToPackage{defaults=hu-min}{magyar.ldf}
\usepackage[english,magyar]{babel}
\usepackage{ifoddpage}
\usepackage{lipsum}
\usepackage{ifthen}



\def\hajoadatok#1#2#3#4#5#6#7#8#9{
\noindent
{\scriptsize\textsc{#1}}\\ % nev
\ifthenelse{\equal{#5}{}}{}{\tiny#5\\ } %tipus
%{\huge\Pisymbol{nkarta}{165}}
\ifthenelse{\equal{#2}{}}{}{\tiny\emph{IMO:} #2\\ }
\ifthenelse{\equal{#3}{}}{}{\tiny\emph{MMSI:} #3\\ }
\ifthenelse{\equal{#4}{}}{}{\scriptsize\emph{Hívójel:} #4\\ }
%\ifthenelse{\equal{#4}{}}{}{\tiny\emph{\VHF} #4\\ }
\ifthenelse{\equal{#6}{}}{}{\scriptsize\emph{Építve:} #6\\ }
%\ifthenelse{\equal{#6}{}}{}{\tiny\emph{\Industry} #6\\ }
\ifthenelse{\equal{#7}{}}{}{\scriptsize\emph{Lobogó:} #7\\ }
%\ifthenelse{\equal{#7}{}}{}{\tiny\emph{\faFlag} #7\\ }
\ifthenelse{\equal{#8}{}}{}{\tiny$#8\,\times\, #9$\\ }
}

\newlength{\margosullyesztes}% margóba benyúlás mélysége
\setlength{\margosullyesztes}{1em}

\newcommand{\specmargo}[2]% #1 = margoszoveg, #2=főszöveg
{\par\checkoddpage\ifoddpage
  \leftskip=\dimexpr \marginparwidth+\marginparsep-\margosullyesztes\relax
  \noindent\llap{\hspace{\dimexpr -\leftskip-\margosullyesztes}%
  \smash{\parbox[t]{\marginparwidth}{
  \begin{flushright}
  #1
  \end{flushright}
  }}\hspace{\marginparsep}}%
  %\indent
  #2\par\leftskip=0em
\else
  \rightskip=\dimexpr \marginparwidth+\marginparsep-\margosullyesztes\relax
  \noindent\rlap{\hspace{\dimexpr\textwidth-\rightskip+\marginparsep}%
  \smash{\parbox[t]{\marginparwidth}{
  \begin{flushleft}
  #1
  \end{flushleft}
  }}}%
  %\indent
  #2\par\rightskip=0em
\fi}%

\begin{document}

%Itt kezdodik a foszoveg, mindenfele hajóneveket rakok marginalis megjelenitessel a lapszelre
\lipsum[1]\specmargo{\hajoadatok{St.~Maria}{9071064}{214182424}{ERXX}{Cargo}{1994}{Moldova [MD]}{101}{17~m}}{\noindent rtrr trewt rtt rwtrtwrt w twrt wrtwrt wrt wrtrewt wrt rwt rwet rwt rwetrwtwrt rw rw grew gregre gwer g reg rew ger wgre gre gre g reg re g rewg erg re g reg re gre g rewg rew gre g reg rew grew g rewg rewgre gre g erw grewg rewg rewger g rewg rew gew rg rewg rewg erg erw g reg rew g reg rew g ewrg reg ewrg re g ewg rew g erg er g rewg rewg ewrg rew grewg rewge rgrewg rewg reg rewgrewgewrg rewgre grewgrewgrew grewg rew ge rg ewr grewg er g erwg er re reg rew g ewrg reg ewrg re g ewg rew g erg er g rewg rewg ewrg rew grewgewg rewg ewrg rew grewgewg rewg ewrg rew grewgr ggwq g g rg qgr g wg rgrwg gr q gqg gr wgwgr.}
\lipsum[3]

\newpage
\lipsum[1]
\specmargo{\small Vegre mukodik a specialisan sullyeszette margo!}{\lipsum[4]}
\specmargo{\hajoadatok{Kalocsa}{}{243071112}{HGKL}{teherhajó}{1988}{Germany [D]}{37,3}{12,55\,m}}{\lipsum[4]}


\newpage

\specmargo{\hajoadatok{Viktoria}{}{269057626}{HE7626}{utasszállító}{}{Switzerland}{127}{11\,m}}{\lipsum[4]}
\specmargo{\hajoadatok{Bezdan\,1.}{}{279202182}{YT2182}{teherhajó}{}{Serbia [RS]}{69,7}{8,6\,m}}{\lipsum[4]}
\lipsum[3]
\end{document}

Postscript képfájlban szereplő betűk típusának, méretének cseréje

Fórumok

Sziasztok.

 

Adott egy nagyon sok apró térképet tartalmazó TeX szöveg. A képek vektorosak, postscript fájlok, raszteres beágyazások nélkül. Azt szeretném, ha ezen képekben a betűtípus alkalmazkodna a TeX alapértelmezett fontkészletéhez, azaz hiába szerkesztettem inkscappel a képben szereplő feliratokat, számokat, azok átvegyék a TeX által használtakat.

Van ilyesmiről valami leírás, manual, biblia, egyéb vallási anyag? Szeretném teljesen egységesíteni azt, amin dolgozom.

(Kérlek, ne azt javasoljátok, hogy bízzak meg egy grafikust! Megpróbáltam, a harmadik is értetlenül bámult, fel sem fogta, miről beszélek.)

Túlcsordult, rendesen nem elválasztható sorok

Fórumok

Sziasztok!

Amikor a TeX tördeli a sorokat és elválaszt, néha, amikor a \slopy nem aktív, túlcsordul a sor. Ilyenkor van egy olyan trükk, hogy ezen sorok végére jó nagy, fekete téglalapot varázsoltatunk -- majd végiglapozgathatjuk mind a 3434104 oldalnyi szövegünket, darabonként megkeresve ezeket és átfogalmazhatjuk egy jobban elválasztott külalak érdekében a bekezdést.

A problémát itt rajzolták le szépen:

https://www.overleaf.com/learn/latex/%5Coverfullrule

Kérdésem az, hogy ha már nagyon kevés ilyen van, hogyan lehetne megkérni a tex-et arra, hogy dábálja oldalszámmal együtt mondjuk egy ,,hibak'' nevű tárgymutatóba a túlcsordult szót oldalszámmal együtt? Gyorsabb lenne minden...

\layout

Fórumok

Sziasztok!

book osztály esetén kétoldalas a dokumentum.

A \layout azonban egyoldalasként jelenik meg kétszer, azaz nemérzékeli valamiért a kétoldalas mivoltot. Ez mitől van?

Nem óriási probléma, de ha valami oka van ennek, gyanúm szerint más makró is tévesen láthatja a kétoldalasságot -- ezért talán jó lenne utánanéznem

Speciális margószöveg

Fórumok

Sziasztok.

 

Egy érdekesmargókialakítást szeretnék megvalósítani helytakarékosság céljából. Annyit már elértem, hogy páros és páratlanoldalaknál kis nyilakkal jelzem, melyik sorban levő valamire utalok a margóra írt szöveggel. Azonban a kód meglehetősen ronda, mert a margószöveget kétszer kell leírni azért,mert a \def\ nemfogad el kaparmétert:

\documentclass{book}

\begin{document}

Páratlan oldal\marginpar[margoszoveg$\Rightarrow$]{$\Leftarrow$margoszoveg}
\clearpage
Páros oldal\marginpar[Margoszoveg$\Rightarrow$]{$\Leftarrow$margoszoveg}

\end{document}

Nem tudom, a margoszoveget hogyan adjam meg paraméternek, hogy az előtte álló sorban definiálni tudjam a \begin{document} után.

 

Amásik problémám, hogy ha a margináris megjegyzésem mondjuk hatsoros, szeretném azt mondjuk 2 cm-rel beljebb húzni oly módon, hogy ne ütközzön a főszöveggel.Mintha képet illesztenék be oda vagy táblázatot, ami kinyúlik a margóra. Ilyenre nem találtam kész megoldást a CTAN oldalain. Gyanúm szerint nincs.