我的目标是,
README.md
1)从我的 GitHub 存储库中的文件中读取 Markdown 源代码。
2) 将 Markdown 转换为 HTML 代码。
3) 将输出 HTML 应用到<div>
.
仅使用客户端技术。
我知道如何使用 jQuery 将 Markdown 代码转换为 HTML,但不知道如何从 GitHub 存储库的 README.md 文件中动态读取 MD 源。
http://markdown.io/<url_readme_file>
. 假设我的 readme.md 文件的 url 是http://raw.github.com/pankajparashar/nerdy-css/master/README.md
. 因此,新的 url 变为http://markdown.io/http://raw.github.com/pankajparashar/nerdy-css/master/README.md
#md-content
现在使用 jQuery 的 load 方法使用这个新的 url 并从页面的 id 中提取内容。此处提供上述步骤的完整演示 - 已删除非工作链接
你应该检查一下:
https://github.com/zmckinnon/jquery-gh-readme
它使用 GitHub API 通过以下调用检索自述文件的内容:
获取 /repos/:owner/:repo/readme
然后它转换 base64 加密内容。
然后它使用标记将降价内容转换为 html。
README.md
文件原始文件是您要加载的实际 URL。
创建一个 PHP(或您使用的任何服务器端语言)文件,load.php
专门用于加载远程文件(如您的 RAW 文件)。PHP 脚本将接受一个$_GET['url']
变量。将变量传递给file_get_contents()
,并输出结果。请注意,下面的代码是一个非常简单的示例。
echo file_get_contents($_GET['url']);
现在,只需使用load
jQuery 中的函数从 PHP 文件中引入数据内容。您的 URL 的格式可能与此类似...
.load("load.php?url=https://raw.github.com/user/project/master/README.md")
最后,使用您已经描述的任何方式转换为 Markdown。
file_get_contents()
: http: //php.net/manual/en/function.file-get-contents.phpload()
:http ://api.jquery.com/load/值得注意的是,HTML 确实在 ReadMe.md 文件中起作用。有了这个清晰的理解,我想很多这样的问题都会被自动回答,比如 - 如何在自述文件中制作粗体字体,或者如何插入图像等。另外请注意,这在很大程度上取决于您使用的应用程序/文本编辑器和在操作系统上也很多。最近我在 Github 的 Readme.md 文件中插入空行字符时遇到了麻烦。
我个人更喜欢那里的 < br /> 标签,并且我有一篇完整的帖子描述了相同的内容:http: //www.w3lc.com/2017/05/new-line-in-readme-file-github-fixing.html
我已经在帖子中解释的 Github 存储库中演示了 git commit 的更改。这种理解对于处理这个问题是非常必要的,并且还需要找到为什么你可能需要这样做的许多其他用途!
此外,要直接回答您的问题,您需要两个步骤: 1. 找到原始版本的 ReadMe.md 文件的 URL。例如看一个:https ://raw.githubusercontent.com/Anwar-Faiz/forkrap/master/README.md 2.现在如果你想使用服务器端使用php的file_gets_content等,你可以加载url。或者,如果你想使用 jquery,你可以使用 Load()。
请注意,如果您查看原始 URL 页面的源代码,您只会看到纯文本。所以,你也不需要做太多的文本解析工作:) 这是一个好消息。
接下来,您可以使用 unescape 函数或 codebeautify 之类的工具来取消转义可以改变 HTML 外观和感觉的字符,例如“<”等。