草庐IT

Markdown首行缩进

manchan4869 2024-06-21 原文

利用Markdown写博客文章很方便,用很简单的方式就能快速生成带有样式排版的文章。但是Markdown毕竟是一种轻量级标记语言,复杂的排版还是需要其它方法进行支持。比如我最近有一篇文章,对格式有一定要求,需要首行缩进两字符,这在Markdown里还不能通过简单的标记进行实现,但我也找到了两个不算简单办法。

方法一

可以利用HTML特殊转义字符。

Markdown渲染时会自动忽略段前的普通空格,但是经过转义的特 殊空格是可以正常展示的。

显示说明实体名称实体编号
测 试半角空格  
测 试全角空格  
测 试不断行空格  

可以在每行文字前加上2个 或者4个 ,即可实现首行缩进两字符。如:

  中国共产党已走过百年奋斗历程。我们党立志于中华民族千秋伟业,致力于人类和平与发展崇高事业,责任无比重大,使命无上光荣。全党同志务必不忘初心、牢记使命,务必谦虚谨慎、艰苦奋斗,务必敢于斗争、善于斗争,坚定历史自信,增强历史主动,谱写新时代中国特色社会主义更加绚丽的华章。

  中国共产党已走过百年奋斗历程。我们党立志于中华民族千秋伟业,致力于人类和平与发展崇高事业,责任无比重大,使命无上光荣。全党同志务必不忘初心、牢记使命,务必谦虚谨慎、艰苦奋斗,务必敢于斗争、善于斗争,坚定历史自信,增强历史主动,谱写新时代中国特色社会主义更加绚丽的华章。

方法二

Markdown有一个特性,对于 Markdown 涵盖范围之外的标签,都可以直接在文件里面用 HTML 本身。如需使用 HTML,不需要额外标注这是 HTML 或是 Markdown,只需 HTML 标签添加到 Markdown 文本中即可。

在标签中的style中添加text-indent:2em,就可以实现缩进两字符。如:

<p style="text-indent:2em">中国共产党已走过百年奋斗历程。我们党立志于中华民族千秋伟业,致力于人类和平与发展崇高事业,责任无比重大,使命无上光荣。全党同志务必不忘初心、牢记使命,务必谦虚谨慎、艰苦奋斗,务必敢于斗争、善于斗争,坚定历史自信,增强历史主动,谱写新时代中国特色社会主义更加绚丽的华章。</p>

上面这种方法用于在线博客可能会失效

总结

以上两种方法都可以在Markdown里实现首行缩进,但缩进的效果还是有所不同的。第一种方式会在段前加入空格,在复制的时候也会带上空格;第二种方式是利用CSS样式,复制的时候是没有空格的。

可以根据习惯选择合适的方式进行缩进,我个人更看好方式一,因为在Markdown里写html还是会产生一种割裂感,也降低了Markdown的易读易写性。

其实还有一种方法,但是并不通用,即对当前编辑的文章单独引入CSS样式,调整缩进,这样做很方便但缺点很大,并不是所有查看Markdown的软件都能支持引入。

有关Markdown首行缩进的更多相关文章

  1. 语法类似于 GitHub Flavored Markdown 的 Ruby markdown 解释器? - 2

    我使用Jekyll运行博客,并认为我会解决RedcarpetMarkdown解释器,因为它是developedandusedbyGitHub.好吧,我只是碰巧遇到了一个错误,去检查问题,然后foundthis.Maintainersays,"Asyouprobablyhavenoticed(harharharhar)Idon'thavetimetomaintainRedcarpetanymore.It'snotapriorityforme(IfindMarkdownthoroughlyboring)andit'snotapriorityforGitHub,becausewenolong

  2. ruby - 代码块中的 Markdown 换行符 - 2

    使用Redcarpet,当我在Markdown中包含类似以下内容时,它不考虑任何换行符或缩进。我在行尾尝试了两个空格。代码之间的额外行。似乎没有任何效果。```xml3```我明白了:3这里是Redcarpet设置:Redcarpet::Markdown.new(Redcarpet::Render::HTML,:autolink=>true,:space_after_headers=>true,:fenced_code_blocks=>true,:no_intra_emphasis=>true,:lax_html_blocks=>true)我需要做什么才能正确换行并保留缩进,就像这里或

  3. ruby-on-rails - 我需要从 HTML 转到 markdown,有什么建议吗? - 2

    我正在使用Maruku,将Markdown(超集)转换为HTML,你知道我该怎么做才能从HTML转换为Markdown吗? 最佳答案 Google发现了一个名为reverse_markdown的ruby​​脚本.它似乎可以满足您的需求。 关于ruby-on-rails-我需要从HTML转到markdown,有什么建议吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/175162

  4. ruby - Treetop 的 Vim 缩进文件(Ruby 解析器) - 2

    有没有人见过treetop的vim缩进文件?,Ruby解析器/生成器?我找到了一个vim语法高亮文件,但还没有看到用于缩进的文件。 最佳答案 看起来很简单——我只是创建一个文件~/.vim/indent/treetop.vim并使其唯一的内容runtime!indent/ruby.vim它似乎可以支持我所需要的一切。我认为它只是没有加载Ruby的缩进文件! 关于ruby-Treetop的Vim缩进文件(Ruby解析器),我们在StackOverflow上找到一个类似的问题:

  5. ruby - 在 emacs 中即时缩进 ruby​​ 代码 - 2

    如何让Emacs自动重新缩进Ruby代码?例如,在Emacs中,defhelloputs"hello"en输入“d”后,我希望它变成这样,defhelloputs"hello"end这是Vim中的默认设置,但我如何在Emacs中实现它? 最佳答案 ruby-electric已经是旧闻了。Emacs24有一个名为electric-indent-mode的内置次要模式,它会在一些字符后自动插入换行符,你当然可以将RETURN键重新映射到newline-and-indent(默认只映射到缩进)。在Emacs24中,您可以使用electri

  6. ruby-on-rails - 如何在 Vim 中缩进 Ruby 和 Rails 代码? - 2

    我只是想知道是否可以在Vim中自动缩进Rails代码而不是这样:validates:email,:presence=>true,:format=>{:with=>email_regex},:uniqueness=>{:case_sensitive=>false}为此:validates:email,:presence=>true,:format=>{:with=>email_regex},:uniqueness=>{:case_sensitive=>false} 最佳答案 做到这一点的最好方法实际上不是使用Vim中的内置对齐,而是使

  7. ruby-on-rails - 如何验证 Markdown? - 2

    可以写成Markdown语法无效的内容。无效意味着BlueCloth库无法解析内容并抛出异常。Rails中的markdown助手不会捕获任何BlueCloth异常,因此整个页面无法呈现(呈现500服务器错误页面)。在我的案例中,允许用户编写Markdown内容并将其保存到数据库中。如果某人使用了无效语法,则该内容的所有连续渲染尝试都会失败(状态代码500-内部服务器错误)。您如何解决这个问题?是否可以在保存到数据库之前在模型级别验证Markdown语法? 最佳答案 您应该编写自己的验证方法,在其中初始化BlueCloth对象,并尝试

  8. ruby - 更改 Sass 中的缩进 - 2

    如何在使用Sass时将输出CSS文件中的缩进从2个空格更改为4个空格?我正在使用扩展样式。我对Ruby一无所知,但我尝试阅读计算机上/Library/Ruby/Gems/1.8/gems/sass-3.2.1/中的每个rb文件。 最佳答案 sass-3.2.3/lib/sass/tree/visitors/to_css.rb有许多硬编码的双空格字符串('')用于缩进。如果您将它们全部替换为四个空格的字符串,它将按照您的说明编译您的css。 关于ruby-更改Sass中的缩进,我们在Sta

  9. ruby - Jekyll 不解释 Markdown - 2

    我正在使用jekyll.rb创建网站.我有一个名为about.html的页面:{%includeabout_content.markdown%}在about_content.markdown我有一些虚拟Markdown:AFirstLevelHeader====================ASecondLevelHeader---------------------Hello!由于某些原因,当页面被渲染时,结果是这样的:resulthttp://gabrielecirulli.com/p/20120107-203135.png即使我将YAML前面的内容添加到我的markdown文件

  10. Vim 中的 Ruby 代码自动缩进 - 2

    我已经将一个Ruby示例复制到Vim中,但事实证明这弄乱了缩进。我试图让Vim应用Ruby特定的缩进。为此,我取消了全局vimrc文件中以下行的注释:ifhas("autocmd")filetypepluginindentonendif然后在Vim中按下gg=G。现在它改变了一些缩进,但它仍然有一些错误:类定义不缩进。评论不会缩进并保留在行首。 最佳答案 在从外部源粘贴之前,使用这个命令:设置粘贴然后进入插入模式粘贴。 关于Vim中的Ruby代码自动缩进,我们在StackOverflow

随机推荐