포리스트: 파일 및 파일 내용이 포함된 디렉터리 목록

포리스트: 파일 및 파일 내용이 포함된 디렉터리 목록

이는 포리스트를 사용하는 파일 목록에 대한 여러 가지 질문으로 확장됩니다. 내가 원하는 것과 가장 유사한 솔루션은 다음과 같습니다.이 하나.

내가 해결책을 찾을 수 없는 공개 질문은 다음과 같습니다. 파일에 여러 줄 주석을 어떻게 생성합니까? 사실 저는 거기에 파일 내용의 몇 줄을 나열하고 싶습니다. 보너스: 일종의 구문 강조(bash 구문)를 사용하여 파일 내용의 형식을 지정할 수 있다면 완벽할 것입니다.

\documentclass[]{article}
\usepackage[edges]{forest}
\usepackage{array}
\definecolor{folderbg}{RGB}{124,166,198}
\definecolor{folderborder}{RGB}{110,144,169}
\newlength\Size
\setlength\Size{4pt}
\tikzset{%
  folder/.pic={%
    \filldraw [draw=folderborder, top color=folderbg!50, bottom color=folderbg] (-1.05*\Size,0.2\Size+5pt) rectangle ++(.75*\Size,-0.2\Size-5pt);
    \filldraw [draw=folderborder, top color=folderbg!50, bottom color=folderbg] (-1.15*\Size,-\Size) rectangle (1.15*\Size,\Size);
  },
  file/.pic={%
    \filldraw [draw=folderborder, top color=folderbg!5, bottom color=folderbg!10] (-\Size,.4*\Size+5pt) coordinate (a) |- (\Size,-1.2*\Size) coordinate (b) -- ++(0,1.6*\Size) coordinate (c) -- ++(-5pt,5pt) coordinate (d) -- cycle (d) |- (c) ;
  },
}
\forestset{%
  declare autowrapped toks={pic me}{},
  pic dir tree/.style={%
    for tree={%
      folder,
      font=\itshape,
      grow'=0,
    },
    before typesetting nodes={%
      for tree={%
        edge label+/.option={pic me},
      },
    },
  },
  pic me set/.code n args=2{%
    \forestset{%
      #1/.style={%
        inner xsep=2\Size,
        pic me={pic {#2}},
      }
    }
  },
  pic me set={directory}{folder},
  pic me set={file}{file},
}
\newcommand{\fname}[2]{\begin{tabular}{m{1cm}@{\quad}m{4cm}}#1 & \normalfont#2\end{tabular}}
\begin{document}

\begin{forest}
  pic dir tree,
  where level=0{}{% folder icons by default; override using file for file icons
    directory,
  },
  [system
    [\fname{config}{A comment about this folder}
    ]
    [lib
      [Access
      ]
      [Plugin
      ]
      [\fname{file.txt}{A comment about this file}, file
      ]
    ]
    [templates
    ]
    [tests
    ]
  ]
\end{forest}
\end{document}

관련 정보