Minun on tulostettava joitain (laatikkopiirustusperheen) unicode-merkkejä asiakirjaani. Löysin tämän kysymyksen , joka on hyvin samanlainen kuin minun, mutta pätee vain XeLaTeX: ään. On olemassa kelvollinen tapa tehdä tämä pdfLaTeX: n kanssa tai minun on käytettävä sen sijaan XeLaTeX: ää?
Vastaa
Voit käyttää symboleja , jos käytettävissä näppäimistöllä tai makroilla.
\documentclass{article} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \usepackage{pmboxdraw} \usepackage{newunicodechar} \newunicodechar{└}{\textSFii} \newunicodechar{├}{\textSFviii} \newunicodechar{─}{\textSFx} \begin{document} \begin{verbatim} ├── Maildir/ └── scripts/ ├── backup.sh* └── OLD/ ├── backup_cleanup.sh.old └── backup.sh.old* \end{verbatim} \end{document}
Kommentit
Vastaa
Tämä on laajennus Herbertin s vastaukseen ja vastaus Tobian s kommenttiin .
Paketti inputenc
koodausvaihtoehdolla utf8
sallii UTF-8: n käytön TeX-syötetiedostoissa 8-bittiset TeX-moottorit. Edellytyksenä on, että Unicode-merkit ovat tiedossa, miten ne on yhdistetty TeX-koodiin. inputenc
-sarjan UTF-8-tuki yhdistää tämän fontin koodaukseen. Siksi paketti pmboxdraw
määrittelee keinotekoisen kirjasinkoodauksen pmboxdraw
ja siihen liittyvän kartoitustiedoston pmboxdrawenc.dfu
, joka ladataan sitten automaattisesti. Tämä yksinkertaistaa Herbertin esimerkkiä muotoon:
% arara: pdflatex \listfiles \documentclass{article} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \usepackage{pmboxdraw} \begin{document} \begin{verbatim} ├── Maildir/ └── scripts/ ├── backup.sh* └── OLD/ ├── backup_cleanup.sh.old └── backup.sh.old* \end{verbatim} \end{document}
Käännetty:
This is pdfTeX, Version 3.14159265-2.6-1.40.17 (TeX Live 2016)
\listfiles
-versioluettelo:
*File List* article.cls 2014/09/29 v1.4h Standard LaTeX document class size10.clo 2014/09/29 v1.4h Standard LaTeX file (size option) fontenc.sty t1enc.def 2005/09/27 v1.99g Standard LaTeX file inputenc.sty 2015/03/17 v1.2c Input encoding file utf8.def 2016/02/28 v1.1s UTF-8 support for inputenc t1enc.dfu 2016/02/28 v1.1s UTF-8 support for inputenc ot1enc.dfu 2016/02/28 v1.1s UTF-8 support for inputenc omsenc.dfu 2016/02/28 v1.1s UTF-8 support for inputenc pmboxdraw.sty 2011/03/24 v1.1 Poor man"s box drawing characters (HO) ltxcmds.sty 2011/11/09 v1.22 LaTeX kernel commands for general use (HO) kvsetkeys.sty 2012/04/25 v1.16 Key value parser (HO) infwarerr.sty 2010/04/08 v1.3 Providing info/warning/error messages (HO) etexcmds.sty 2011/02/16 v1.5 Avoid name clashes with e-TeX commands (HO) ifluatex.sty 2010/03/01 v1.3 Provides the ifluatex switch (HO) kvdefinekeys.sty 2011/04/07 v1.3 Define keys (HO) pmboxdrawenc.dfu 2011/03/24 v1.1 UTF-8 support for box drawing characters kvoptions.sty 2011/06/30 v3.11 Key value format for package options (HO) keyval.sty 2014/10/28 v1.15 key=value parser (DPC) t1cmtt.fd 2014/09/29 v2.5h Standard LaTeX font definitions ***********
LuaTeX / XeTeX-versio
LuaTeX ja XeTeX tukevat Unicode-merkkejä ja paketti inputenc
on vanhentunut. pmboxdrawenc.dfu
-tuotetta voidaan kuitenkin käyttää tuetun tuen tekemiseen merkit aktiivisia ja laajenevat symboleihin:
% arara: xelatex % or % arara: lualatex \documentclass{article} \usepackage{pmboxdraw} \begingroup \def\DeclareUnicodeCharacter#1{% \begingroup \lccode`\~="#1\relax \lowercase{\endgroup \global\catcode`~=\active \gdef~% }% }% \input{pmboxdrawenc.dfu}% \endgroup \begin{document} \begin{verbatim} ├── Maildir/ └── scripts/ ├── backup.sh* └── OLD/ ├── backup_cleanup.sh.old └── backup.sh.old* \end{verbatim} \end{document}
kommentit
- Ei. Tulevan järjestelmän käyttö Kun
apt-get install texlive-xetex texlive-fonts-recommended lmodern
on Linux Mint 18: ssa (Ubuntu 16.04), joka näyttää olevan versio 2015.20160320-1, esimerkkisi tulee esiin ilman rivimerkkejä. Minun on määriteltävä merkit nimenomaisesti\newunicodechar
. Ehkä minulta ' puuttuu jokin muu paketti? Tai i Onko TeX Live minun liian vanha? - @Tobia Kysymys oli tehdä se pdfTeX : lle, ei XeTeX: lle. Olen päivittänyt vastauksen ja lisännyt version LuaTeX / XeTeX: lle.
- Sain virheen, koska minulla oli virheellisesti vaihtoehto
[utf8x]
paketilleinputenc
. Kun olen korjannut sen arvoon\usepackage[utf8]{inputenc}
, kaikki toimi hyvin. . . BTW, etkö ole varma, mitä\listfiles
pitäisi tehdä? En tarvinnut sitä. (Pdf-LaTeX.) - @Henke
\listfiles
tuottaa vastauksessa näkyvän versioluettelon. - Joo, OK. Tuossa on järkeä. En ' ole koskaan aikaisemmin vaivautunut näistä lokeista ja tulostetiedostoista. esimerkin naarmuissani minun piti sietää hieman löytääksesi sen – painike
Logs and output files
vieressäRecompile
ja sittenOther logs & files > log file
oikeassa yläkulmassa. Kääntöpuolella oleva versio näyttää olevan suhteellisen uusi:pmboxdraw.sty 2019/12/05 v1.4 Poor man's box drawing characters (HO)
. BTW, vastauksesi (ilmannewunicodechar
) on parempi kuin hyväksytty, ja ansaitsee äänestyksen. 🙂
\newunicodechar
-määritykset? Miksi ' tpmboxdraw
ei määritä kyseisiä merkkejä ensisijaisesti?utf8
-koodaus ei tiedä ' sellaisia merkkejä. Syy, miksi sinun on määriteltävä merkki ja sen komento\newunicodechar
-tietoja sisältäviä juttuja ei tarvita. Pakettipmboxdraw
käsittelee sitä jo automaattisesti, katso vastaukseni.