Latex verbatim:how to show the file directoy created by tree command?

1k Views Asked by At

I want to insert a file directory diagram created by tree command using verbatim enviroment. But in the output document, only file names are kept, and the connection lines are disapeared.

\documentclass{article}
\usepackage{fancyvrb}
\begin{document}

\begin{Verbatim}
 .
 ├── app
 ├── bakery
 ├── build
 ├── CHANGELOG.md
 ├── composer.json
 ├── composer.lock
 ├── docker
 ├── sponsors
 ├── STYLE-GUIDE.md
 └── webserver-configs

 \end{Verbatim}

 \end{document}

I have tried using fancyvrb package by setting showtabs true, but the connection lines are still not printed in the document.

Is there any way?

1

There are 1 best solutions below

4
On BEST ANSWER

The problem is that these unicode characters are not included in the default mono font. If you use an unicode-capable engine, such as xelatex, and a font which contains them, e.g. DejaVu Sans Mono, the will be visible in the document:

% !TeX TS-program = xelatex

\documentclass{article}
\usepackage{fancyvrb}


\usepackage{fontspec}
\setmonofont{DejaVu Sans Mono}

\begin{document}

\begin{Verbatim}
 .
 ├── app
 ├── bakery
 ├── build
 ├── CHANGELOG.md
 ├── composer.json
 ├── composer.lock
 ├── docker
 ├── sponsors
 ├── STYLE-GUIDE.md
 └── webserver-configs

 \end{Verbatim}

 \end{document}

enter image description here


If you prefer pdflatex, the pmboxdraw package can be used:

\documentclass{article}
\usepackage{fancyvrb}

\usepackage[utf8]{inputenc}
\usepackage{pmboxdraw}

\begin{document}

\begin{Verbatim}
 .
 ├── app
 ├── bakery
 ├── build
 ├── CHANGELOG.md
 ├── composer.json
 ├── composer.lock
 ├── docker
 ├── sponsors
 ├── STYLE-GUIDE.md
 └── webserver-configs

 \end{Verbatim}

 \end{document}

enter image description here