V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
jiych
V2EX  ›  程序员

github page markdown 问题

  •  
  •   jiych · 2014-04-19 23:16:48 +08:00 · 2688 次点击
    这是一个创建于 3897 天前的主题,其中的信息可能已经有所发展或是发生改变。
    大家好,github支持GitHub Flavored Markdown语法。我的问题是我需要在github page的_config.yml中指定特定markdown解析器才能支持吗?我目前指定的是redcarpet(也试过kramdown),可是我发现自己的github page并不能支持GFW,比如一个回车就可以表示换行等等。这个是怎么回事呢,谢谢!
    第 1 条附言  ·  2014-04-21 09:36:08 +08:00
    有一点我没有说,这个github page是给文科生用的,ta只会直接将md文件上传到github,就是只能有github支持的parser来解析,而不能要求ta在本地利用一些额外的gem来转换:)
    9 条回复    1970-01-01 08:00:00 +08:00
    Andor_Chen
        1
    Andor_Chen  
       2014-04-19 23:36:41 +08:00
    因为每种 Markdown 转换程序支持的语法高亮句法不一样,所以 Jekyll 使用一个特别的模板标签实现:highlight。具体用法参见文档: http://jekyllrb.com/docs/posts/#highlighting_code_snippets

    Redcarpet 支持 GFM 风格的高亮语法,即 ```。但是 Jekyll 默认并没有启用,所以在 _config.yml 中要加入如下设置:

    redcarpet:
    extensions: ['fenced_code_blocks']

    另外,如果真的想“高亮”,还要加入如下选项:

    highlighter: pygments # or rouge

    再安装 pygments.rb 或 rouge
    fwee
        2
    fwee  
       2014-04-19 23:37:43 +08:00
    这些parser有的可以加gfm选项

    不满意的话可以试试这个 https://github.com/jjyr/minidown 不过不是jekyll内置,需要自定义
    jiych
        3
    jiych  
    OP
       2014-04-21 09:30:55 +08:00
    首先,谢谢ls二位,但是并没有解决我的疑问.我目前的问题是在_config.yml中配置哪种markdown parser才能支持GFM语法呢,不光是代码高亮还有回车即换行等?
    xhacker
        4
    xhacker  
       2014-04-21 10:05:52 +08:00
    似乎不能。不过你可以在本地生成好传上去,因为 GitHub Pages 支持托管静态 HTML。
    jiych
        5
    jiych  
    OP
       2014-04-21 13:07:16 +08:00
    @xhacker 那本地有图形化的操作吗,windows下的
    Andor_Chen
        6
    Andor_Chen  
       2014-04-21 13:15:41 +08:00   ❤️ 1
    @jiych

    1. Jekyll 默认已经启用了 redcarpet 的语法高亮,其他 GFM 中的语法扩展则要相应设置;
    2. krandown 可以设置 `input` 为 GFM;

    详情参阅文档: http://jekyllrb.com/docs/configuration/#markdown_options
    yangzh
        7
    yangzh  
       2014-04-21 13:16:04 +08:00
    @jiych 一楼说的不就是你需要的答案了么?1.0 版以后的 jekyll 都是 redcarpet 的。你在 _config.yml 添加如下设置:(注意缩进)

    markdown: redcarpet
    safe: true
    lsi: false

    redcarpet:
    extensions:
    - with_toc_data
    - hard_wrap
    - no_intra_emphasis
    - tables
    - fenced_code_blocks
    - autolink


    不需要额外 gem,github pages 原生支持以上所有选项。
    yangzh
        8
    yangzh  
       2014-04-21 13:17:23 +08:00   ❤️ 1
    v2ex 居然吞缩进。每一个冒号后面都要缩进一层,楼主自己斟酌一下。我上面贴的就是完成你任务的所有有关代码了。
    jiych
        9
    jiych  
    OP
       2014-04-21 13:53:18 +08:00
    @Andor_Chen
    @yangzh
    拜谢两位,感谢已发出,我试试去。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1034 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 21:42 · PVG 05:42 · LAX 13:42 · JFK 16:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.