Markdown写论文(markdown可以用来写论文吗)
用 Markdown 写作用什么文本编辑器
如果你心情好到想用 Markdown 写论文、出幻灯片的话,那就试试 MS Research 开源的 Madoko 在线 IDE 吧。
Madoko 除了提供一套强大且系统的 Markdown 语法拓展之外,其输出部分也是很有意思。Madoko 的输出提供 HTML 和 PDF,其中 PDF 部分交给 LaTeX(官方默认配置是 TeXLive XeLaTeX)处理。
Madoko 的 PDF 输出长这样():
相比之下 相比之下 的正经版本丑多了,毕竟没高亮没对齐(。
网页可以拖拽上传 Document Class 定义(*.cls),这些 上面都有。还有个差不多大的文档的例子:From Monads to Effects and Back
Madoko 的幻灯片输出可以用 Reveal.js 做 HTML,同时 PDF 使用 Beamer:
(删掉目录去掉 INCLUDE 就可以拉扁成普通文档…)(删掉目录去掉 INCLUDE 就可以拉扁成普通文档…)
这块实现是和 madoko 核心解耦合的:madoko: styles/presentation.mdk
自带模板:
嗯 Presentation 是那堆模板之一。嗯 Presentation 是那堆模板之一。
可以在浏览器中带语法高亮地编辑 TeX、BiB、CSS、JS(包括 MDK 里面用 TeXRaw Block 以及 script/style tag 内嵌的),当然还有 MaDoKo:
这东西还提供 HTML/mdk 实体、引用标识符自动补全,和 Visual Studio online 一样用的是作者 daan 自己写的 monaco-editor。这东西还提供 HTML/mdk 实体、引用标识符自动补全,和 Visual Studio online 一样用的是作者 daan 自己写的 monaco-editor。
另外还有诸如编程语言语法高亮可以自定义 Tokenizer 规则拓展(当然你也可以用 Prettify 之类的东西)、使用非等宽字体打印代码时支持对齐之类的特性。和这玩意比起来,StackEdit 之流的 Markdown Extra 彻底成了小打小闹。网盘同步也是有的(包括 Dropbox 和 GitHub 的三路合并和实时队友位置显示),还有 ReStructuredText 里面的手绘复杂表格也有。要注意这些都是一式两份同时给 HTML 和 TeXLive PDF 输出的哟。
详细的手册页可以看 Madoko Reference。你问作者是谁?Daan Leijen。嗯,Parsec 那个。daan 自己搞了个带副作用的面向函数编程语言 Koka,然后就造了个 Markdown in Koka。
对了,这玩意支持文件头定义导入任意 TeXLive 包(例如 ctex),并且还能导入 LaTeX 文档,同时支持用 Snippet Block 插入任何 LaTeX 片段的渲染结果(DVI - SVG)。TiKZ/pgf、tikz-uml、graphviz,爱用啥用啥。如果你要贯彻落实 Madoko 自定义 Block 的精神,自己加上 WebGraphViz、flowchart.js、js-sequence-diagrams 之类的东西,那也行,以后写在哪个文件里面当模板 INCLUDE 就好了。
我看到这玩意的各种框支持“写作……读作……”那样处理,这样可以高亮器接受到的是一般源码,最终输出的结果可以接受一大堆变换。bhuztez 的 J 语言可以自动转写成人话了。另外 tests 目录里面有一个用这玩意写成的 SKI combinator expander。
* * *
CJK 处理指南
要优化 Madoko 的 CJK 输出其实很简单。
对于 HTML 输出,使用 html-lang 属性定义 DOM 节点的 html 'lang=' attribute:
.madoko { html-lang: zh-Hans-CN; } !-- 全文定义,头上来一行就够 --
!-- 可以写成 class:--
.cn { html-lang: zh-Hans-CN } !-- 谁给个日语版的 CN block 那一段,我好改成 ja? --
.tw { html-lang: zh-Hans-TW }
……一点示例文字,那么给你们作为一个示范。
我一篇安利 MSR Redmond 大法的文章,怎麼就被选进日报去了?
{.tw} !-- 一段紧接一行加类 CSS 定义就是整段定义 --
!-- 或者这样: --
He then said, [苟利国家生死以]{html-lang: zh-Hans-CN} !-- 对方括号部分定义 --
~ CN !-- 定义 class 就是定义了一个 block --
这篇文章呢,一共就做了三件事:
1.
2.
3.
还有呢,就是为开 [MadokoCJK] 这个坑打下了理论基础,这个对……
~
[MadokoCJK]:
稍微配合一点点 before after 以及 TexRaw 魔法的话也可以让 CTeX 有意思起来。
这样浏览器会自己选择该用的字体和排版方式。
对于 XeLaTeX PDF 输出,我们可以用 ctex 宏包(@郭昊 在评论区提到的):
Package: [UTF8]ctex
!-- 类似于:
~ TexRaw
\usepackage[UTF8]{ctex}
~
--
要用 xecjk 也是一个道理,当然你也可以像 madoko 自己那样手撸 fontspec。咦,怎么谈 LaTeX 了
写作&笔记实用利器——markdown(超快上手,方便实用)
本文给大家推荐一个用来记笔记的很好用的工具——markdown!本文主要对象:针对没有使用过markdown或者不会使用并且经常需要记录 系统性、大批量、存在一些数学公式夹杂其中的笔记 的朋友们。本文不具体讲述过多的使用方法细节,会给出已经有的一些链接供朋友们查阅。
那么首先,你一定会问,什么是markdown呢?为什么我举得它是笔记神器呢?且听我大概说说。
首先引用一段维基百科的解释吧,如果你不想看那么多字,只需要记住,轻量级、标记语言、 对图、表、数学公式的支持不错 。
Markdown 是一种 轻量级标记语言 ,它允许人们“使用易读易写的纯文本格式编写文档,然后转换成有效的 XHTML (或者 HTML )文档”。
由于Markdown的轻量化、易读易写特性,并且对于图片,图表、数学式都有支持,当前许多网站都广泛使用 Markdown 来撰写帮助文档或是用于 论坛 上发表消息。例如:GitHub、reddit、Diaspora、Stack Exchange、OpenStreetMap 、SourceForge等。甚至Markdown能被使用来撰写 电子书 。--from wikipedia
这是加粗的文字
这是倾斜的文字 `
这是斜体加粗的文字
这是加删除线的文字
例子:
知乎-足球
对齐方式
我们可以设置表格的对齐方式:
-: 设置内容和标题栏居右对齐。
:- 设置内容和标题栏居左对齐。
:-: 设置内容和标题栏居中对齐。
如:
for a=1:10:
的markdown似乎不能用流程图,所以,这里就展示不出来结果了。
反正作为一种标记语言,markdown的基本功能学起来非常快,而且非常容易记忆。对于需要使用公式的一些问题,则可以参考对应latex的网址了,这里就不一一列举了,毕竟以后如果写论文还是用latex比较方便,正如我的标题所示,markdown我只是用来写作和记笔记或者写一些小的随笔的,并不用来写论文的,其排版能力相对还是比较单一的,远不能胜任论文写作。
知乎上有一篇写的已经非常全面了,直接附在这里吧,有兴趣的直接看链接的知乎文章即可操作。
使用Markdown 写毕业论文是一种怎样的体验?
要参阅的话,师哥有的。论文的导言,疑问的提出;、选题含义;、文献总述;、研讨办法;、论文构造组织。这个本来说的极好写的,论文的写作不像写一首短诗、一篇散文、一段札记那样随感而发,信手拈来,用一则资料、几段短语就表达一种思维、一种豪情;
高效排版,Markdown原来还能这么用
首发于一周进步
文字编辑早就成了我们生活中不可缺少的一部分,交课程论文要排版,打印考试资料要排版,写篇新媒体文章更要排版。
然而,我们平时用编辑软件的场景是这样的:
这段是4号字,这行是3号字,字体改成微软雅黑。对,还要加个列表跟序号,赶紧调一下,不然过会就忘了。
于是,我们在word复杂的菜单中不断寻找,左点一下,右边点一下。终于好了,诶我刚才想写点什么来着……
于是,万能的人类开发出了Markdown,因为太神奇,以至于至今没有合适中文译名的工具。
它具有以下优势:
1.排版高效美观,更专注于写作本身
通过在键盘上输入符号,就能完成排版,不需要切换鼠标的操作大大提升了效率,让我们在码字的时候更加专注于写作本身。
2.使用方法简单,便于操作
通过简单的符号完成排版,只需要掌握住几种符号,就能完成美观的排版。
先看一下这六种语法的实现效果吧。
1.标题
# 一级标题
## 二级标题
### 三级标题
共支持六级标题,标题级数与 # 的个数一一对应
与标题配合的,一个特别好用的语法是——[toc]。
通过简单3个字母,就能生成目录。
2.无序列表
无序列表的显示只需要在文字前加上 - 或 *,有序列表直接用1.2.即可
3.引用
如果要引用时,只需在文本前打符号 即可。
4.斜体与粗体
*斜体*
**加粗**
5.横线
三个星号:***,可以生成一条横线,用于分割本文。
6.图片与链接
两者十分相似,区别在于图片多了开头的!
链接:[](xxxxxx)
图片:![](xxxxxx)
我发现在互联网上,Markdown 知道的人很多,去学的人不多。认真学会的人更少了,学会后坚持使用的人是凤毛麟角。
究其原因,畏难不了解是一方面,更重要的是,多数人不知道在哪些场景中能用。
我整理了最贴近我们日常使用的四个场景,配合合适的工具。使用Markdown,就从这里开始吧。
1.印象笔记排版
印象笔记在排版方面的功能较弱,并且在高清电脑屏幕上,默认字号只有小小的一点,很费眼睛,让我苦恼了很久,直到我发现了利用Markdown的方法。
①马克飞象 Windows、Mac、网页
马克飞象的slogen是一款专为印象笔记打造的Markdown编辑器,与印象笔记配合度很高。
界面简洁,操作方面,支持同步到印象笔记,从印象笔记跳转编辑,一直以来很受欢迎。但美中不足是,这些高级功能需要付费。
所以,作为穷人的我,经常使用的是下面这款工具。
②小书匠 Windows、Mac、网页
小书匠也是一款很好用的Markdown编辑器,最关键的是,它与印象笔记的同步是免费的,我一直在使用。在界面左侧,直接能看到印象笔记的内容。
在今年8月,发生了喜大普奔的事情,印象笔记也支持Markdown编辑了。在新的测试版本的左上角,就是新增的新建Markdown笔记按钮。
但是,如果在印象笔记中使用Markdown编辑的话,再打开会默认是Markdown编辑格式,如果常要回顾与复习并不方便。
所以,我还在坚持使用上面的第三方工具,它们同步到印象笔记中后,直接是富文本格式,并且完成排版,阅读很方便。如果需要修改,就再回到工具中。
2.记日记/灵感记录
①Dayone iOS Mac
我会常写日记,但很多日记类软件操作繁琐,而我又想排版好看一点。
于是发掘了DayOne来记录,简单操作,效果很赞。
并且,作为记日记最大的优势是,在创建文章后,会自动记录当天的天气,所在位置,步数,海拔等信息。
②熊掌记(原Bear) iOS Mac
熊掌记,就是之前的Bear,上线就被苹果商店精选的应用,是一个在细节处做的很好的笔记软件。
首先,颜值很高,Markdown就是为了好看呀,同时,采用笔记本和标签的双重管理方法,方便管理搜索。
③markdown X 安卓
一直以来,安卓端优秀的Markdown编辑器很少,这次一定要照顾安卓用户的感受,推荐这款免费好用的安卓写作软件。
上面你想要的功能,它都有。并且,还能导出长图片,简直是发微博和朋友圈的利器。
3.发邮件
给导师和老板写邮件,总觉得不美观,要怎么办?
推荐一款简单好用浏览器插件:Markdown here,适用浏览器有:Chrome 火狐 opeara。
只需要两步,就收获一篇美观的邮件了。
①按照Markdown语法完成邮件内容。
②在编辑界面点击右键,选择:Markdown转换。整个邮件内容,瞬间高大上起来。
4.记录写文
其实,用Markdown工具的最终目的,就是为了能够记录写文更加方便,接下来推荐几款各有优势的工具吧。
①轻量记录:锤子便签 iOS 安卓
锤子便签是很适合小记录的工具。走在路上有灵感了,可以打开记录。
由于能够生成较美观的图片,所以社群中简短的分享,或是朋友圈微博一些感想分享,都很适合用锤子便签。
②日常记录:有道云笔记 iOS 安卓 Windows Mac
有道云笔记很多人在使用,我们常用富文本的编辑方式,实际上,它也支持Markdown的协作,适用于所有平台,同步方便。
③分享写作: iOS 安卓 Windows Mac
是分享创作内容的平台,支持Markdown写作,写完后即能上传分享文章,向各个专题投稿,自带流量,文章能被更多的人看到,适合写作者使用。
同时,也能生成长图片进行分享。
④无需安装的神器:Cmd Markdown web端 Windows Mac
?
Cmd是我觉得网页端体验做好的Markdown工具,排版和渲染很漂亮。
登录之后,所有非离线的文档数据都会同步到云端,只要曾经访问过,它就可以在离线模式中运行。
如果需要经常换电脑,推荐使用这款,不需要安装,就能在网页端快速使用。
美中不足是,上传图片附件、同步印象笔记等高级功能需要付费。
正如文中所说,Markdown知道的人多,用的人少,选择一两个适合自己习惯的工具,开始用起来,才是这篇文章的目的。
Markdown工具很好用,更重要的是养成写作和日常的积累的习惯,才是我们不断前进的力量源泉。
我们为什么要使用Markdown
Markdown 是一种正在流行起来的「标记语言」,通常为程序员群体所用。但现在,不光是程序员,对于普通的文字编辑者而言,Markdown 的优势也越来越明显了。
以前,大部分的人使用 Word 或 Pages 码字、写作、写论文,过去的文档也大都以.doc, .docx格式或是.pages格式储存。还有人为了编辑简洁、保证文稿发给谁都能正常打开,会用.txt 格式。
但会有如下问题:
为实现这一目标,Markdown 的语法几乎全部由标点符号构成,这些标点符号都是精心挑选而来,是与写作的习惯一脉相承的,每一个符号都尽量做到能望文生义。
它实际上是个非常简单、非常容易学习的语法。这个语法简单到每个人都可以在5分钟以内学会,这样低廉的学习成本可以让你毫无负担地投入它的怀抱。
用 Markdown 有如下好处:
Markdown + R 可以替代 LaTeX 完成论文写作吗
我的观点是:不可能替代。其实只要认真的思考一下什么是排版,了解过一些印刷排版的资料,有过排版长文甚至书籍的经历,在 LaTeX 中遇到过一些难以解决的棘手问题,应该会对什么是排版有所感觉,就会知道 LaTeX 不能替代的地方在哪里。因为“排版”不等同于“结构标记”。
详
细的说,仅仅从论文写作的角度来说,也就是说,只是把把想要写的内容用电脑敲出来,该画的图画出来,该计算的结果计算出来,从这个意义来
讲,Markdown+R
倒是可行,这其实也是每个作者希望的方式,其实也应该是开发者所追求的的目标——内容与格式的分离、计算结果直接输出至文档。但就现在的情况以及未来的趋
势来看,我认为Markdown+R或者+其他的某种科学计算语言(比如 SageTeX、SciPy)或者绘图程序(比如
TeXGraph、Gnuplot)不能成为 LaTeX
的替代,因为他们做的事情是书写加上简单的标记。另外需要提到的是,像这种把写作与计算相结合的尝试非常多,我觉得 R
在这里并不是关键,除了前面提到的几个例子,TeXmacs、Scientific Workplace都支持直接在写作中计算、绘图等,MATLAB
甚至直接在 MS Word 中边写文章边计算,而且用 Mathematica 直接书写效果也是差强人意。不过,他们还是无法替代 LaTeX 最为排版工具的地位(他们涉及的只是最简单的标记或者最基础层次的排版,无法对版面、文字等进行精细的设置、调整)。
其
实,我们现在的目标格式都是 PDF,说白了,那个 LaTeX
代码也是一个中间过程,我们希望的结果是:作者用简单的标记语言(比如Markdown)书写,再加上一些科学计算语言使得我们可以把计算的结果也直接得
到,然后生成“排版”规范的科技文献的PDF。纵观现在各种实现方式,最后一步都是拿 (La)TeX
来完成的(当然要出去TeXmacs、Mahtematica和Scientific Workplace),其实机器生成的 (La)TeX
代码也非常有有限,难道大家认为直接写的 (La)TeX 代码都不一定能排版好的文章,难道用这二手的机器生成的 (La)TeX
代码就完美的解决了?如果要排版,还是需要手工调整 (La)TeX 代码。如果排版要求不高,自己看的话,工作量不是很大,还可以接受,毕竟
(La)TeX 的标记要稍稍繁琐一些。但是如果是比较长的文章,对真正意义上的排版比较讲究的话,这个工作量就大了,甚至要比直接写 LaTeX
代码更加麻烦。
所以说有一定的使用价值,毕竟标记简单,但是局限性很大,不能替代 LaTeX 的地位。
再来扯淡一些:
我们来看看Markdown 是什么:
“Markdown” is two things:
(1) a plain text formatting syntax; and
(2) a software tool, written in Perl, that converts the plain text formatting to HTML. 它的哲学是:
The
overriding design goal for Markdown’s formatting syntax is to make it
as readable as possible. The idea is that a Markdown-formatted document
should be publishable as-is, as plain text, without looking like it’s
been marked up with tags or formatting instructions.
这是原始的 Markdown 语法(标记)以及转换程序(markdown.pl)。可以看出,他最初不是用来排版的,只是一些简单的格式化,并且希望能够只用纯文本就可以清晰的体现格式,让标记显得自然。
后
来Markdown由于它的这种简洁易用火了,但同时也发现了它在很多方面的不足,尽管可以直接书写 html
来实现更多的标记,但大家自然是不肯局限于此的,于是结合已有的 org-mode、rst 等等标记,又有了很多的拓展和变种。比如 Markdown
Extra, MultiMarkdown, Maruku, kramdown, Pandoc Markdown, Github
Markdown, Stackexchange Markdown
等等。他们在标记以及转换程序上都有做出了很多的修改,而且可以支持各种不同的输出格式。我最喜欢的也是我认为最有前景的 Pandoc,在
Markdown 的基础之上做出了非常多的扩展,包括跟 LaTeX
的结合、各表表格、参考文献、交叉引用、页眉页脚、图表标题都可以实现,但即使这样,作为论文排版这就够了吗?而且,在加入这这些复杂的东西之后,可以明
显感觉到,原文本并不能很好的遵循最初的设想(a Markdown-formatted document should be
publishable as-is, as plain text, without looking like it’s been marked
up with tags or formatting instructions)了。只是又造了一个轮子而已,而且还造的功能不全。
一
般大家仅仅认为TeX只是一种标记,加粗、倾斜、章节、插图、超链接等等,特别的,感觉它只是对数学公式的一个标记,于是就认为这些东西
Markdown(加上扩展) 都可以做到,这其实是对“排版”这个词的认识太有限。也正是这一点使大家认为 Markdown 就可以替代 LaTeX
了。TeX
作为一个排版程序大大家都不怎么关注,这确实也不是一般作者需要关注的东西,但是它确实在那里,有其难以撼动的的地位。实际上前面说了,如论如何,我们最
终的排版是交给 TeX 来完成的,如果直接写的 LaTeX
代码都难以很好的完成,二手代码就更难了,一些机械化的东西可以由转换来实现(比如生成表格的代码),但是排版并不完全是机械性的劳动。大家熟悉的网页的
内容的排版工作,是由浏览器完成的,标记 HTML + 样式 CSS + 辅助的程序 JS
然后就可以完成排版了,也有一些利用TeX算法来完成网页排版的JS,比如
hyphenator.js,但是网页排版跟印刷排版毕竟不同,搞网页标准化的人希望能能够搞定实际的印刷排版,但是现在来看,还是很幼稚。网页内容的排
版离印刷排版还有很大的差距,将来如何我不好作评论。