포함 파일과 같은 다른 파일을 참조 할 수있는 마크 다운 포크가 있습니까? 특히, 자주 호출하지만 항상 그렇지는 않지만 (이 B.md라고 부르는) 링크가있는 별도의 마크 다운 파일을 만들고 싶습니다 .md 파일에서 참조로 링크 할 때 (A.md), 나는 현재 파일의 끝 (A.md)이 아닌 다른 파일 (B.md)에서 링크를 가져 오는 것이 좋습니다.
답변
짧은 대답은 ‘아니요’입니다. 긴 대답은 그렇습니다. 🙂
마크 다운은 사람들이 간단한 HTML 마크 업으로 쉽게 변환 할 수있는 간단하고 읽기 쉬운 텍스트를 작성할 수 있도록 설계되었습니다. 실제로 문서 레이아웃을 수행하지는 않습니다. 예를 들어 이미지를 오른쪽이나 왼쪽으로 정렬하는 실제 방법은 없습니다. 귀하의 질문에 관해서는, 마크 다운 버전의 파일에서 하나의 파일에서 다른 파일로의 단일 링크를 포함시키는 마크 다운 명령이 없습니다 (내가 아는 한).
이 기능에 가장 가까운 것은 Pandoc 입니다. Pandoc를 사용하면 변환의 일부로 파일을 병합 할 수 있으므로 여러 파일을 단일 출력으로 쉽게 렌더링 할 수 있습니다. 예를 들어, 책을 작성하는 경우 다음과 같은 장이있을 수 있습니다.
01_preface.md
02_introduction.md
03_why_markdown_is_useful.md
04_limitations_of_markdown.md
05_conclusions.md
동일한 디렉토리에서이 명령을 실행하여 병합 할 수 있습니다.
pandoc *.md > markdown_book.html
pandoc은 번역하기 전에 모든 파일을 병합하므로 다음과 같이 마지막 파일에 링크를 포함시킬 수 있습니다.
01_preface.md
02_introduction.md
03_why_markdown_is_useful.md
04_limitations_of_markdown.md
05_conclusions.md
06_links.md
따라서 일부는 01_preface.md
다음과 같이 보일 수 있습니다.
I always wanted to write a book with [markdown][mkdnlink].
그리고 당신의 일부는 02_introduction.md
다음과 같이 보일 수 있습니다 :
Let's start digging into [the best text-based syntax][mkdnlink] available.
마지막 파일에 다음 줄이 포함되어있는 한 :
[mkdnlink]: http://daringfireball.net/projects/markdown
… 이전에 사용 된 동일한 명령은 병합과 변환을 수행하면서 해당 링크를 전체에 포함시킵니다. 해당 파일의 시작 부분에 빈 줄을 두어 두십시오. pandoc 설명서 는이 방법을 병합 파일 사이에 빈 줄을 추가 있다고하지만, 이것은 빈 줄없이 나를 위해 일을하지 않았다.
답변
cat
입력 파일을 파이핑하기 전에 명령을 사용하여 입력 파일을 연결하면 여러 입력 파일이 들어오는 markdown_py
것과 동일한 효과 를 얻을 수 있다고 언급합니다 pandoc
.
cat *.md | markdown_py > youroutputname.html
Mac에서 Python 버전의 Markdown에 대한 위 의 pandoc 예제 와 거의 동일하게 작동합니다 .
답변
실제로 MarkdownPP ( MarkdownPP )를 사용할 수 있습니다 . 다른 답변의 가상의 책 예제를 사용 .mdpp
하여 장을 나타내는 파일 을 만듭니다 . .mdpp
파일은 다음 사용할 수있는 !INCLUDE "path/to/file.mdpp"
재귀 최종 출력에 참조 된 파일의 내용으로 지시를 교체하여 작동 지침을.
chapters/preface.mdpp
chapters/introduction.mdpp
chapters/why_markdown_is_useful.mdpp
chapters/limitations_of_markdown.mdpp
chapters/conclusions.mdpp
그런 index.mdpp
다음 다음을 포함 하는 것이 필요합니다 .
!INCLUDE "chapters/preface.mdpp"
!INCLUDE "chapters/introduction.mdpp"
!INCLUDE "chapters/why_markdown_is_useful.mdpp"
!INCLUDE "chapters/limitations_of_markdown.mdpp"
!INCLUDE "chapters/conclusions.mdpp"
책을 렌더링하려면 다음에서 전처리기를 실행하면됩니다 index.mdpp
.
$ markdown-pp.py index.mdpp mybook.md
상기 볼 잊지 마세요 readme.mdpp
에 MarkdownPP의 전처리의 박람회가 큰 문서 프로젝트에 적합한 기능에 대한 저장소.
답변
내 해결책은 m4를 사용하는 것입니다. 대부분의 플랫폼에서 지원되며 binutils 패키지에 포함되어 있습니다.
먼저 changequote()
파일에 매크로 를 포함 시켜 인용 문자를 원하는대로 변경하십시오 (기본값은` ‘). 파일이 처리되면 매크로가 제거됩니다.
changequote(`{{', `}}')
include({{other_file}})
명령 행에서 :
m4 -I./dir_containing_other_file/ input.md > _tmp.md
pandoc -o output.html _tmp.md
답변
최근에 markdown-include 라는 노드에 다음과 같이 C 스타일 구문으로 markdown 파일을 포함시킬 수있는 것을 작성했습니다.
#include "my-file.md"
나는 이것이 당신이 묻는 질문과 잘 일치한다고 생각합니다. 나는 이것이 오래된 것을 알고 있지만 적어도 업데이트하고 싶었다.
원하는 마크 다운 파일에이를 포함시킬 수 있습니다. 해당 파일에는 더 많은 포함이있을 수 있으며 markdown-include 는 내부 링크를 만들고 모든 작업을 수행합니다.
통해 다운로드 할 수 있습니다 npm
npm install -g markdown-include