Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GitHub Pagesとその他公開方法 #27

Open
k3kaimu opened this issue Nov 15, 2013 · 2 comments
Open

GitHub Pagesとその他公開方法 #27

k3kaimu opened this issue Nov 15, 2013 · 2 comments

Comments

@k3kaimu
Copy link
Owner

k3kaimu commented Nov 15, 2013

現在のd-manualを閲覧する方法としては、唯一GitHub上でmarkdownを閲覧できるだけである。
GitHubにはGitHub Pagesという優れた機能があるので、これを活用すべきである。

また、PDFやEPUBなど他のフォーマットでも配布できるような態勢を作らなければいけない。
そのためには、Markdownの文法をPandocに統一し、Pandocから全て生成させる方法が良い。

結論として、文法をPandocスタイルに改め、PandocによってGFM含めた他のフォーマットへ変換したものを提供すべきである。
また、HTMLやMarkdownとして生成したものについてはGitHub Pagesで閲覧できるようにすべきである。

@k3kaimu
Copy link
Owner Author

k3kaimu commented Nov 27, 2013

変換する際にもっとも難しいのは、アンカータグである。
Pandoc拡張なMarkdownでは、ヘッダーに{#foo}のようにタグを設定できるが、GFMではそのような記法は許されていない。

また、GitHub上で(GitHub Pagesではなく)見る場合には、リンク先として[...](foo.md/#bar)のように指定しなければいけない。
逆に1つに結合した場合には、このようなリンクは不正である。

@k3kaimu
Copy link
Owner Author

k3kaimu commented Nov 27, 2013

タグについての仕様を、PandocのJSONフィルターを用いて変換すること前提にして裁定する必要がある。

記法について

まず、見出しへのリンクする際に使用する記法は[....](filename.md#level1/level2/.../levelN)とする。

  • filename.mdには、たとえばhello_world.mdなど、markdownファイルの名前とする。
  • level1, level2, ... levelNについては、見出し名を親子関係にして書く。

以下の文章のhogeに関するタグは、foo.md#ふぉお/B/a/hogeとなる。

// foo.md

# ふぉお

## A

### a

#### hoge

#### bar

### b

## B

JSON-FIlterでの処理

見出し文中にアンダーバー以外の特殊文字が出現した場合には、タグについては、それらすべてをアンダーバー_で置き換えることとする。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant