2017-08-17 6 views
0

人々が大きなマークダウン文書をどのように管理しているのか疑問に思っていました。一般的に私は文書全体をコンパイルする前に小さな部分、セクション、または章が大丈夫かどうかチェックしたいと思います。彼らは私が最近しているように、私たちの多くはすでに練習しているかもしれませんが、文書全体を小さなマークダウンファイルで分割し、それらをマスター文書の「子」文書として使用します。大きなマークダウン文書の選択部分にpandocを実行

この方法の1つの問題は、すべてのコンテンツが1つのドキュメントに存在しないことと、接続と編集を行うためにいくつかのドキュメントを巡回しなければならないことです。しかし、再び、単一のファイルを保持すると、コンパイルとデバッグ全体がかなり困難になります。したがって、私は、文書の選択された部分、例えば23行目から52行目、または選択されたセクションまたはパーツにpandocを実行できる方法があるのだろうかと疑問に思っていましたか?

答えて

2

これは、bash"プロセス置換"機能を使用して達成できます。基本的には、pandocを実行しますが、ファイルの名前を与える代わりに、コマンドの出力を与えます。

pandoc <(head text.md) 

や線23のような52:

pandoc <(sed -ne '23,52p' text.md) 

または、awkと同じ:

pandoc <(awk 'NR>22 && NR<53' text.md) 
そこで、我々はこのような text.mdの最初の10行に pandocを実行することができます

#I2C Sectionチャプタータイトルの後にpandocを10行で実行してください。

pandoc <(grep -A10 "^#I2C Section" text.md) 

あなたがWindowsユーザにとっても容易になり、単純なパイプを持つすべての上記行うことができますようだ:私はまた、など、より高度なものを行うことができると思い

head text.md | pandoc 

を次のような#で始まる行を探して文書の構造を取得する:

grep "^#" text.md | pandoc > structure.html 
+0

私が欲しかったもののように聞こえます。どうもありがとうございます! –

関連する問題