科学网

 找回密码
  注册

tag 标签: markdown

相关帖子

版块 作者 回复/查看 最后发表

没有相关内容

相关日志

带格式的文本编辑器Typora 之介绍
dingsir 2020-6-30 01:01
这几天发现一个不错的文本编辑软件,可以编写具有格式的文本文档(基于GFM Markdown),很好用. 特色与优点 支持Markdown语法, 比富文本格式和Word等格式要简洁得多. 精确的说,它使用的是Github风格的Markdown(一种Markdown的语法分支),考虑到Github的用户基数, 它具有较好的群众基础.如果在Markdown中没有提供的语法,可以使用HTML语法来实现(这是Markdown的共同特色). 同一界面内,控制格式的源码与效果都可实现. 选中时显示源码,离开时显示实际效果, 非常简洁与方便,无需在效果/源码之间切换. Typora把这一特色称之为现场预览(Live Preview). 在右键的弹出菜单中,设置了比较方便的各种格式设置能力,非常快捷方便. 对图像的支持, 链接的支持很简单. 支持多种方式使用图片: 直接编写Markdown语句(也很简单), 拖放过来, 从当地文件选择, 从剪贴板粘贴.这个用起来确实方便. 还可以设定如何处理这一图像(Markdown文件本身是文本文档,不能像Word那种复合文档一样可以在文件内存储图像,) ! (/path/to/img.jpg) ! (/path/to/img.jpg Optional title) 强调, 加粗, 高亮( 文本 ), 斜体, 等等,使用得文本格式控制简洁而够用. 如果选择了合适的格式(如有序列表, 无序列表等),回车之后即可以自动沿续编码.这个特点也比较方便. 支持不少扩展功能, 其中特别提供称道的有: 支持Latex语法的数学公式编辑,(基于MathJax库的支持). 而且在编辑公式时就可以看到公式的效果(以提示的形式弹出,很贴心). 嵌入式的公式用\\$ \\$包括起来, 多行的用\\$\\$ \\$\\$包围起来. 嵌入式的比如 圆的面积公式$ S=\\pi{}r^2$, 球的体积公式$V=\\frac{4}{3}\\pi{}r^3$, 又比如 允许使用简化的 上标形式 ^(在$ $包括的范围内使用), 如 $4^3=64$, 简化的下标形式~(可以不用$$包括). 比如酒精的分子式. CH 3 CH 2 OH 支持化学方程式的表示.它内建了一个mhchem扩展(可能是mhchem for MathJax),可以渲染化学表达式. 作为一个化学生,我特别喜欢这种功能.举例如下 ​ mhchem的介绍可以参见网页 https://mhchem.github.io/MathJax-mhchem/ , 比Latex表示的语法更简单方便. 比如LiPF6到二氟磷酸锂的水解反应(上面是效果,下面的mhchem的表示方式,简单不?) ​ ​ 我们再来看看正磷酸是怎么变成六氟磷酸的: ​ 它的逆过程是: ​ 这个mhchem很有意思, 下次再仔细翻译来介绍一下它的功用. (因为科学网的控件不支持mhchem,有些方程式的效果出不来,但是在typora中效果杠杠的). 支持表格, 支持脚注, 支持删除线( 删除文本 ). 不过下划线还是要用HTML语法,如 有下划线的文本 支持Emoji,如 😄 , 😢 用*** 或 --- 可以划一根水平线,用于分隔. 用 命令可以生成目录. 有点像Word的目录域. 用包围一个URL就可以得到一个地址,如 dingsir@qq.com , www.baidu.com 支持代码块的输入,还能够选择代码的语言,从而调用相应的语法高亮显示. 可以自定义快捷键, 点击 设置-通用-打开高级设置 可以打开一个JSON文件进行编辑而进行设置.稍有点麻烦但对熟悉JSON的人来说非常简单. 智能的粘贴. 比如从网页中复制过来的格式文本或图片,会转换成Markdown格式. 自动保存和文件恢复.这个是很多编辑软件的功能,很有用. 视图中有一个专注模式,感觉很有意思.只突出显示当前编辑的段落,其它段自动显示为浅灰色. 竟然还可以导出为 PDF/Word/RTF等诸多格式, 意外的惊喜! 当然,最大的好处是,这么多功能的软件,完全免费,界面还是中文的, 并且在Windows,Linux, MacOS都有相应的版本. 希望改进的地方: 增加字体设置的快捷方式. 即使是用HTML语法来实现,也希望有个快捷的方式,这个比较常用. 增加表格宽度控制的能力,目前这一块还比较弱. 增强打印文件的功能, 这一块现在是直接输出文件,有些该有的打印对话框设置没有出来. 结论: 以120M左右的体积而实现了这么多的功能, 就像一个简化版的Word, 适合用来做一些相对比较简单但又需要格式控制的文本编辑的工作, 比如 会议记录, 简报, 交流摘要 等 . 如果你安装了Typora可以下载这个markdown文件试试效果.我把原文件和Typora中的显示效果抓屏如下. 简洁实用的软件Typora.md
个人分类: 软件杂谈|4715 次阅读|2 个评论
Typroa
xiaoairen322 2020-6-11 15:49
markdown---Typroa 多级标题 有序列表 无序列表 任务列表 插入表格 行内代码 代码块 插入图片 文本内容 插入链接 字体加粗 斜体 高亮显示 绘制水平线 插入引用 插入删除线 插入上标 插入下标 插入表情 插入下划线 插入注释 多级标题 标题 输入 数字 .+ space + 对象名称 快捷键 ctrl + (1-6) 实例: ## 二级标题 二级标题 快捷方式 ctrl +2 取消方式 ctrl + 0 有序列表 数字. +space +内容 增加方式:space 快捷方式 ctrl+shift + 中国 福建 广东 澳门 西藏 实例 任务列表 - (photo)----插入图片 实例: 文本内容 插入链接 链接: 实例: hao123 字体加粗 加粗字体: ** 字体 ** 实例: 中国人民大学 斜体 斜字体: ·*斜 * 实例: 斜 高亮显示 高亮显示 ` ==text== 实例: == 高亮显示 == 绘制水平线 水平线绘制 实例: ` --- 插入引用 插入引用: + space 实例: https://www.jianshu.com/p/7944aab87102 插入删除线 插入删除线 :alt +shift+5 ~~兰州~~ 实例: 战略 插入上标 插入上标: ^+文字+^ 实例 : y^2^=4 插入下标 插入下标 h~2~o 实例: H~2~O 插入表情 插入表情::sad: 😄 实例: 😓 插入下划线 插入下滑线: u内容/u 实例 u 中国人民大学 插入注释 插入注释 插入注释 :我的天空 于成华
个人分类: markdown|2678 次阅读|0 个评论
Markdown注册与图片载入
liufushou 2020-3-4 10:37
Markdown注册与图片载入.md markdownpad pro注册与图片载入 注册 引用:https://blog.51cto.com/watchmen/1928268 邮箱:Soar360@live.com 许可秘钥:GBPduHjWfJU1mZqcPM3BikjYKF6xKhlKIys3i1MU2eJHqWGImDHzWdD6xhMNLGVpbP2M5SN6bnxn2kSE8qHqNY5QaaRxmO3YSMHxlv2EYpjdwLcPwfeTG7kUdnhKE0vVy4RidP6Y2wZ0q74f47fzsZo45JE2hfQBFi2O9Jldjp1mW8HUpTtLA2a5/sQytXJUQl/QKO0jUQY4pa5CCx20sV1ClOTZtAGngSOJtIOFXK599sBr5aIEFyH0K7H4BoNMiiDMnxt1rD8Vb/ikJdhGMMQr0R4B+L3nWU97eaVPTRKfWGDE8/eAgKzpGwrQQoDh+nzX1xoVQ8NAuH+s4UcSeQ== 图片载入 1、下载Google Chrome 2、安装扩展程序:新浪微博图床 3、使用插件“新浪微博图床”上传载入图片,生成Markdown载入地址,进行复制,然后在Markdownpad软件的图像载入界面进行粘贴,即可载入图像。
个人分类: 工具文档|1448 次阅读|0 个评论
如何高效写长文?
热度 1 wshuyi 2019-11-18 18:26
毕业论文字数要求太多,写起来很苦恼?把我新发现的写作利器分享给你。 非线性 史蒂芬平克在《风格感觉》一书中提到: 写作之难,在于把 网状 的思考,用 树状 的语法结构,转换成 线性 字符串。(“The Web, the Tree, and the String”)。 你看,思维是 网状 的,语法结构是 树状 的。可我们起草稿件,总是直接用 线性 的文本方式,这对吗? 这种不自然的方式,你却早习以为常。 不少同学,接到长文写作任务,就打开 word ,从第一个字开始写。 写到 文思枯竭 ,写到 头痛欲裂 ,写到 生无可恋 。 许多大作家,却早早掌握了 诀窍 ,写得轻松愉快,质量还高。 《 你一写长文章就焦虑拖延? 》一文里,我给你推荐了 非线性卡片式 写作。 这种写作方法,使你不必瞻前顾后。无须管那些框定头脑的纲要,让思维飞跃浮动。 你偶然想到的点子,也 不必 立即放到某个最后呈现的 固定 位置。只需要不断堆砌积累就好。 你知道它是拼图的一角,最终总会有合适的位置。 头脑风暴 和 燕子衔泥 相结合的方式,可以有效帮你快速延伸整理思路,积累资料。 写作的 草稿建构 过程,从一种折磨,变成了一个游戏,一种享受。 纳博科夫,就是此中高手。他不无骄傲地和记者谈及这种写作的手段,让无数人羡慕和受益。 但问题是,如今我们的写作,从材料积累开始,便已经是数字化。让你退回到索引卡片年代,你恐怕很难适应。 按照卡片为单位写作,太过凌乱。如果没有有效的管理方式,这些卡片,当你真的需要拼装的时候,往往根本不胜其烦。 况且,你还需要把写出来的内容,再次数字化,也就是敲到计算机里。 纳博科夫能够优雅地面对这种境况,是因为所有的整理、校对和打印工作,都是 他太太 帮助完成的。 那时候也没有 个人电脑 。所以,老先生完全不必纠结编辑工具的选择。 而今天,我们活在一个不得不加速变化的数字年代里, 效率 很重要。 痛苦 我尝试过多种不同的卡片式写作应用。但是实话实说,效果都不好。 例如 Milanote ,最大优点在于灵活。你可以在一张很大的画板上,随意摆放排布文字、图片、链接。这在内容搜集阶段,很有用处。思考和积累素材的时候可以天马行空,许多设计师 大呼过瘾 。 但是它的问题,也出在 太灵活 。最终,当你需要梳理逻辑的时候,还是得 手动 把一堆卡片用框子框住,以防止到处乱飞。否则导出的时候,我至今也没有搞明白,自由的卡片们,从左到右和从上到下两个方向,究竟哪个优先级更高。 而且一旦框定了,你恐怕也懒得将其在不同分组之间进行挪动了。架构调整的灵活性于是大打折扣。 要价不菲的 Scrivener ,允许你把卡片二维排布起来。我花钱购买,原本就是看中了这个卡片板(corkboard)功能。但是如果你需要实现逻辑上的嵌套和组合关系,还是需要跳来跳去的。 而且导出最后的文稿,还得设置一堆烦人的参数。我这个人比较懒,着实受不了这种虐待。 Workflowy 这样的树状大纲工具挺好用。把不同分支进行挪动也很便捷。可一旦你列出一棵树状大纲,你的思维也就跟着这棵树在走。 不知不觉地,你会在搜集材料阶段,因为内容与当前体系不兼容,直接抛弃掉,错过很多 远程联想 的机会。 一款真正好用的创意写作工具,应该是让你在网状、树状和线性结构之间游刃有余,迅速切换。从而让你的写作行云流水。 只可惜,原本我就没有找到这样的工具。于是写了《 如何高效写作公众号文章? 》一文后,有的读者就很不满意地吐槽: 写个公众号还得用这么多工具,那我还是不写了吧。 作为懒人,我很能理解你的想法。 我也知道工具的切换,会给人带来很大的认知负荷,同时也会降低写作的积极性与愉悦感。 但在当时,我并没有更好的办法。只能两害相衡取其轻,以不同工具的组合,达到一种让人尽量满意的写作效率。 今天,告诉你一个好消息,我找到了这款 一站式 非线性卡片写作工具。 它的名字,叫做 Gingko。 特色 见到一款新软件,至于那么兴奋吗? 听我给你说说它的特点,你就明白了。 二维树状结构 树状结构,会比直接码字儿,更能有效积累和梳理你头脑中不同模块的非线性关系。 但是,传统树状结构编辑工具,会让你只见树木,不见森林,忽视了这棵树以外的世界。 Gingko 的做法,很有新意。就是把树用 二维方式 展示。 而且,还用分栏帮你区分了树的层级。 你不需要在一开始,就逐渐展开树枝树叶,把思维框定成自顶向下模式。 哪里有话,就先写哪里。没话的地方,先跳过,等着后面再补充。 分类的逻辑,也不用吹毛求疵。如果一开始,你分类不是很恰当,那是 再正常不过 。 一旦写了很多字儿,你恐怕就懒得在编辑器里变动架构了。因为伤筋动骨, 成本很高 。 Gingko 有意思的地方在于,你可以在这个二维平面上直接拖拽,后续下级节点都跟着一起走,这样可以最大限度降低结构调整的成本。使你更愿意仔细端详逻辑架构,做出调整。 这样,大部分材料都 不会写废 。 因为所谓的废品,就是摆在不合适位置上的资源嘛。 调调位置,每张卡片的价值,也许就会大有改观。 Markdown 格式 许多在线的写作工具,都把最小的单位定义成一个组块。这个组块,可以是文字,可以是图像,也可以是代码块。但往往不能同时既包括图片,又包括图像。 这样导致的结果,是对于图文创作来说,最小的写作单位就不能放在一张 “卡片” 上。不管是组合,还是移动,都给创作者带来额外的负担。 Gingko 不存在这个问题。它的每一张卡片,都是一个 HTML 单元。编辑的方式是 Markdown 。这样一来,别说你想在一张卡片里面混合图文,就是打算把一本书放到一张卡片上,也毫无问题。 对每一张卡片,都可以用 Cmd + Enter 键,进入编辑模式。 可以插图,可以外链,只要 Markdown 能支持的功能,在一张卡片的小小天地间,你可以尽情挥洒。 编辑好之后,只需要再次按下 Cmd + Enter 键,这张卡片就变成了浏览模式,效果一目了然。 Gingko 的全文 Markdown 输出,也就顺理成章。你不用担心软件自动帮你把输出,定义为 Markdown 的 某种方言 ,还得需要你自己进行手动转化。 颇有意思的是,因为加入到 Gingko 里面正常显示的图片,本身就已经都是在线版本了。发布到写作平台的时候,连 “上传图片到图床” 这个流程,都 可以省略 。 沉浸写作 跟你一样,我在写作的时候,也希望可以专注,避免其他应用提示的打扰,以便迅速进入心流状态。 Gingko 的每张卡片,都可以采用这种全屏沉浸模式来编辑。你只需要用 Shift + Enter 组合激活编辑功能,就可以把全部注意力集中在一张卡片的修订上。 写作之后,依然是 Cmd + Enter ,回到预览模式。 全键盘操作 前面我给你演示了用鼠标拖拽,便可以让卡片自由游动,拆分组合调整逻辑结构。 但是,手离开键盘这件事儿本身,有时候也比较让人烦恼。因为思路容易被打断,灵感可能转瞬即逝,再也找不回来。 好在 Gingko 的操作上,这些都不是问题。因为在浏览模式下,你可以用方向键直接在结构树上游走。甚至,如果你足够极客,还可以选择用 vim 模式的 hjkl 方向键。 同样,不论是拖拽着一整棵树杈满屏乱跑,还是把节点与前后内容合并、拆分,全都可以用快捷键完成。 当你很快熟悉了按键组合后,文稿在你手里就像一个面团,想怎么捏就怎么捏,架构也会锤炼迭代得越发合理。 结构化导入 我原来是比较害怕在卡片式写作中导入外部文稿的。因为我必须在导入内容时,对大段内容进行拆分,并且按照逻辑顺序重新组装。否则,跟原先的大纲逻辑树难以兼容。 而 Gingko 中导入 Markdown 格式的内容,就很有意思。你只需要在一张卡片上粘贴全部内容后,使用 Shift + Cmd + Enter 键,这张卡片里的 Markdown 内容,就会根据标题的结构,自动排列成合适的若干卡片,组合在一个新枝杈上面。 这样,你把不同文档内容揉捏组合在一起的时候,可以省去重新识别和排布层级。对于多人分工或者迭代升级的写作项目,非常便利。 协作 提到分工协作, Gingko 的功能,远不止融入外部文稿那么简单,而是可以直接支持多人在线协作。 当然,实践之前,你需要点击项目标题,然后选择协作者。 这里你可以通过链接或邀请方式,把当前文档分享给协作者。你们就可以一起写,一起改了。 为了给你演示,我这里用自己的另一个邮箱注册了账号。自己邀请自己。 于是,在我的教育网邮箱看来,主用邮箱就在编辑内容。 而主用邮箱那里,编辑完成之后,也会看到教育网邮箱正在浏览自己编辑的内容。 这样一来,同事、同学、师生之间协作写稿,就容易多了。 支持 Latex 因为每张卡片,都是一个 HTML 网页。因此内容里面,可以内嵌 Latex 公式。这意味着如果你是学术界的用户,写作和编辑公式,都不需要另外打开其他工具了。 例如这里我们写一个 Latex 公式: $$A\\bowtie{B}$$ 显示出来的效果,就是这个样子: Gingko 不但支持卡片写作中融入 Latex 数学公式,就连整个儿文档,都可以用 Latex 来导出。 这就意味着你可以用它写一篇完整的学术论文,或者毕业论文。 甚至,在 Gingko 默认的内置模板中,就给你提供了一个学术论文的样例。 Web 应用 Gingko 目前的主版本是个 Web 应用。这意味着只要你记得住账号密码,打开任何一个浏览器就能用。这样一来,不管是在图书馆,还是在宿舍,你都可以随时用自己的笔记本电脑,或者公共计算机来编辑和完善文稿。 更有意思的是,因为 Gingko 的每一张卡片,本身就是 HTML ,所以很多浏览器上可运行的在线工具,都是默认支持的。例如学术写作神器 grammarly ,就可以在写作的时候,帮你检查每一张卡片上的英文语法和拼写。 当然,我不大推荐你在公共计算机上编辑你的毕业论文,这里有个安全性问题。但是下面这个场景中,Web 应用的特性就很有用了。 幻灯 在《 如何用 Markdown 做幻灯? 》一文中,我给你讲过,如何把 Markdown 内容 转换 成幻灯。 但是对于 Gingko 来说,你还转换干什么? 它的默认导出形式之一,就是 impress.js 幻灯。 而且可以在新标签页里打开,直接开始幻灯播放。 于是,简单用 Markdown 组织思绪,写好一个框架之后,你可以直接放映,特别霸气。 出门做演示,只要有网,你连优盘都不用带。浏览器打开链接,轻点两三下鼠标,就可以播放了。 版本 对了,这里我得提示你一下,目前 Gingko 有两种不同的版本选择。 1.x 版本,就是我在文中给你演示的线上版本。各种写作和导出功能齐全,缺点是必须在线使用,而且没有版本管理与控制功能。 2.x 版本,目前提供了客户端。你可以离线使用,而且自带版本控制。 但请注意,目前 Gingko 2.x 只在后台记录版本,却没有给用户提供版本浏览和回退操作。而且这个版本也不支持 Latex 等附加功能。 我个人比较推荐你先使用 1.x 在线版本,等到 2.x 版本成熟时,再做切换。针对版本管理上的缺陷,你可以选择一键导出 JSON 的功能,把项目以纯文本方式,存储到本地,进行备份。 小结 这篇文章,我为你介绍了 Gingko ,一个在我看来很好用的非线性卡片写作工具。它包含了以下特色: 二维树状结构。有效帮助你在网状思维、树状语法与线性文本之间转换; Markdown 全面支持。你不需要去了解奇怪的新语法,或者只有导出后才能回归熟悉的 Markdown 格式。图片本身在线,无须上传图床发布; 沉浸写作。让你免除打扰,享受心流; 全键盘操作。焦点自由游动,卡片组合拆分简便; 结构化导入。把外部 Markdown 文稿直接以树状结构链接到原先大纲上,不用重复拆分排布; 多人协作。可以集思广益,一起同时码字儿; 支持 Latex 。满足科研工作者和数学爱好者们的表达需要; Web 应用。可以与第三方工具集成,例如在每张卡片上用 Grammarly 直接检查语法; 幻灯播放。默认支持 impress.js 格式导出。写完大纲,幻灯自动生成。 这些功能,在我看来,很好地解决了许多长文写作者的痛点需求。 我唯一不明白的是,为什么没有早点儿听说过它?害得自己在工具选择上走了这么多弯路? 感谢读者 dujiahei 。他在我那篇《你一写长文章就焦虑拖延》后留言,才让我第一次听说这款工具。 愿你也能利用好这款工具,愉悦书写,高效创作! 读过本文,如果觉得有收获,请 点赞 。 要读更多的文章,微信关注我的公众号 “玉树芝兰”(nkwangshuyi) 。别忘了 加星标 ,以免错过新推送提示。 如果本文对你身边的亲友有帮助,也欢迎你把本文通过微博或朋友圈分享给他们。 延伸阅读 你可能也会对以下话题感兴趣。点击链接就可以查看。 如何把 Markdown 文件批量转换为 pdf? 如何用 iPad 运行 Python 代码? 如何用 Sikuli 自动录入成绩? 如何高效学 Python ? 《文科生数据科学上手指南》分享 题图 Photo by Lukas Blazek on Unsplash
4818 次阅读|2 个评论
如何用 Markdown 做幻灯?
热度 2 wshuyi 2019-1-18 10:55
轻松书写,快速生成,即时预览,通用便携。 需求 作为一个老师,我经常需要制作幻灯。 但作为一个懒人,我是不愿意 在形式上 ,花太多时间的。 展示出来的效果,还得让我满意。 至少,得满足以下几点: 简洁明快 分步显示 多媒体支持 尝试过若干种工具后,我最终选择了 reveal.js 作为幻灯工具。 它生成的幻灯,其实就是 HTML5 网页。因此各种链接和媒体格式(包括图片、声音和视频等),都支持得很好。 由于是网页,只需要浏览器,就可以演示,因此做出来的幻灯能应对各种操作系统。走到哪儿去,带一个优盘(和翻页器),就够了。 如果让我一页页写 HTML 代码,我才不要。 我希望的,是只列出想要表达的内容。所有格式问题,都由软件 自动化处理 。 发现了黑魔法 Pandoc 以后,我的这个目标基本达成。 现在,我只需要写一个简单的 Markdown 文件(特别简单的轻量标记文本),它就是幻灯了。 可手动运行 pandoc 脚本,输入一堆参数。我也觉得很 麻烦 。 嗯,就是懒到这种地步。 于是,我用 Python 写了个脚本。 每次运行的时候,只需要填写 Markdown 文件名,就可以轻松转换成幻灯。 我用曾经用这个脚本,给你提供了 思维导图转换成幻灯 功能。 大家很喜欢这个工具,可惜它有以下两个缺陷: 首先,它是用 Python 2.7 写的。今天,大多数人都用 Python 3 了,二者缺乏足够的兼容性。 其次,因为使用了 Automator ,它只能在苹果自家的 macOS 运行。很多 Windows 用户表示,也很想使用。 因为它完全满足我个人需求,因此我一直懒得改动。 最近,因为开设 INFO 5731 课程,我又得开始大规模做新幻灯了。 在这个过程中,我发现了原先工具的一些问题,于是决心加以改进。 改进的方向包括: 首先要使用 Python 3 ,这样可以更好处理 utf-8 编码,而且还能上 pathlib 等一些新的功能。 其次要跨平台,开放 Python 脚本给不同操作系统上的用户使用。 第三,我还把代码使用面向对象(Object Oriented Programming, OOP)方式进行了重构。如果你熟悉 Python ,可以更加轻松地对它进行扩展,快速增添你自己想要的功能。 其实,是为了顺带复习一下面向对象编程,好在课程里讲授。 用这个工具,你只需要写简单的几行文本,说明内容和媒体链接。然后,只一行 Python 语句,你就能获得以下效果: 想不想尝试一下? 环境 为了使用咱们的工具,你需要在电脑上安装 Anaconda,Visual Studio Code 和 Pandoc 。 下面我们来说说步骤。 首先,到 这个链接 ( http://t.cn/RW92Dcn )下载最新版的 Anaconda 。系统会自动给你显示适合你操作系统的版本。注意一定要选择 Python 3.x 版。 然后,根据提示,一步步进行安装即可。 如果你之前没有安装过 Anaconda ,或者对使用终端命令行方式没有经验,没关系。 我这里有一段 视频教程 ,从头演示给你。 请点击 这个链接 ,查看视频。 到了 Anaconda 安装的末尾,它会提示你是否安装 Visual Studio Code。如果你的电脑上还没有安装,请勾选一并安装好。 之后,请到 这个链接 ( http://t.cn/E5h4tQj )下载 Pandoc 的最新安装文件,也是根据提示一步步安装就好。 工具 有了运行环境,咱们下载工具。 我把工具放在了 Github 上。访问 这个链接 ( http://t.cn/E5PXpoC )就可以看到。 如果你觉得好用,别忘了在页面上给我加一个 Star ,谢谢! 如果你对 Github 的使用很熟悉,可以直接使用 git clone 命令下载。或者,请点击 这个链接 ,直接下载压缩包。 把压缩包解压后,你会在其中看到以下内容。 其中的 config.json 文件,和 example 目录下文会讲解到。 reveal.js 目录是生成幻灯的支撑环境。 工具准备好了,下面我们来看看使用方法。 配置 首先要做一下配置,非常简单,打开解压后目录中的 config.json 即可。你只需要配置 一次 。 用 Visual Studio Code 打开 config.json 。 可以看到,只有以下 5 行内容。 { revealjs_export_dir : export , author_name_english : ShuyiWang , author_name_chinese : 王树义 , revealjs_theme : league , revealjs_transition : convex } 一一解释一下。 revealjs_export_dir 是幻灯最终输出的目录。这里默认的,是当前目录下,会新建一个 export 目录。你可以修改它,设置成硬盘上的任意路径; author_name_english ,填写你的英文名; author_name_chinese ,填写你的中文名; revealjs_theme ,是 reveal.js 幻灯的主题样式。你可以点击 这个链接 ,查看都有哪些可选项,以及显示效果如何; revealjs_transition ,是幻灯页面间过场动画效果,你可以查看 这个链接 ,看都有哪些选项。 总结一下,你需要把中英文名字设置成自己的,其余各项可以保留 默认值 。 说明一下,为什么这里会要求你输入中文英文两个姓名? 因为这个转换工具会根据你幻灯主标题里是否包含中文,自动选择使用你的英文或者中文名字,而且加入对应的日期语言和格式。 怎么样?挺智能吧? 编辑 我为你做了一个 Markdown 源文件样例,在 example 目录下,叫做 myslide.md 。 在 Markdown 文件旁边,还有一个目录,叫做 assets 。打开看看。 这就是图片、视频、音频等媒体的建议放置路径了。 里面我放了一张图片,和一段视频。你可以分别打开浏览一下。 好了,回到 example 目录。 请使用 Visual Studio Code 打开 myslide.md 文件。 这就是我们的样例幻灯 Markdown 源文件了。 如果你对 Markdown 的语法不熟悉,我这里简要给你说一下。 # 后面的内容,代表一级标题。在咱们的幻灯样例里,它代表你的幻灯题目,会显示在首页上; ## 后面的内容,代表二级标题。这里,你可以把幻灯组织成几个不同的部分(Section)。二级标题,就代表了每个部分的名称; ### 后面的内容,代表三级标题。我们的样例里,它会作为一页幻灯的标题部分; 两个 ### 之间的内容,代表了一页幻灯要显示的东西。你可以直接写文字,那就会显示在最终的幻灯里。如果你在文字前面加上 - 的标记,它就会作为一个条目,顺次出现; ![] 后面加上圆括号的标记,是图片。把你的链接,填写到圆括号中,就可以了。可以用绝对链接,例如 /Users/yourname/Downloads/screenshot.png ,也可以用相对链接。例如你看到样例中的 assets/2019-01-16-20-20-09.png 。这里要保证 assets 和 Markdown 文件在相同目录中。另外,你还可以用网络链接,例如样例中的 https://upload-images.jianshu.io/upload_images/64542-ffa6aaec43eff788.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1000/format/webp ; 。 好了,这 几乎 就是你需要的全部 Markdown 语法知识了。做一般的幻灯,这些基本上够用了。如果你还需要插入代码、引言和数学公式等,请参考 这个链接 ( http://t.cn/zHRA1bn )。 如果你想即时看看,图片插入得是否正确。可以在 Visual Studio Code 中使用 Cmd + k, v ,进行预览。 运行 一通编辑过后,假设目前的 myslide.md 文件,就是你要的幻灯内容了。 下面你可以用一行语句,生成幻灯。 使用 Anaconda Prompt ,进入到命令行状态,并且采用 cd 命令,到达解压后的 markdown2slides-master 目录下面。 如果你对上述命令不熟悉,没关系,复习一下我专门为你制作的 Anaconda 安装和命令行运行教程。链接在 这里 。 执行下面这一条语句: python 3 md 2 slide.pyexample/myslide.md 如果一切正常,你会看到浏览器自动弹出,并且打开你的幻灯进行预览。点击 f 按键,可以进入全屏演示。 我把转换效果也制作成为了一个视频,你可以点击 这个链接 查看。 结果 生成的文件呢? 如果你没有改动 config.json 里面的输出位置,此时在你的目录下,会有一个 export 文件夹。 打开这个文件夹。 其中的 assets 目录,包含了全部的媒体文件,例如图片和视频。就连你原先指定的网上链接图片,也一并为你下载了,存储在里面。 这个 export 目录里,已经包含了你需要拷贝到优盘带走的全部内容了。 拿着它,用你精湛的演讲艺术,让观众惊艳吧。 讨论 你尝试过后,效果如何? 如果遇到了问题,欢迎你反馈给我。如果你有改进的建议,也欢迎一并告诉我。期待能为你提供更好的 Markdown 幻灯转换工具。 祝顺利! 喜欢请点赞。还可以微信关注和置顶我的公众号 “玉树芝兰”(nkwangshuyi) 。 如果你对 Python 与数据科学感兴趣,不妨阅读我的系列教程索引贴《 如何高效入门数据科学? 》,里面还有更多的有趣问题及解法。
7339 次阅读|2 个评论
博客平台、Markdown编辑器与hexo admin简介
GISdsq 2018-9-19 16:30
今天来介绍下一些博客平台,顺带也介绍几个笔者用过的Markdown编辑器,以及最近刚刚开始使用的博客后台管理的神器hexo-admin。 1 博客平台 关于如何写博客这个事情确实是一件比较有意思的事情,尽管最近网易、新浪等博客平台纷纷宣布倒台,但是感觉在程序猿界并没有多少影响。业内比较出名的博客平台实在太多,笔者目前也是多个博客平台同步更新。所以也简单提下可以使用的博客平台。 1.CSDN: CSDN (Chinese Software Developer Network) 创立于1999年,是中国的IT社区和服务平台,为中国的软件开发者和IT从业者提供知识传播、职业发展、软件开发等全生命周期服务,满足他们在职业发展中学习及共享知识和信息、建立职业发展社交圈、通过软件开发实现技术商业化等刚性需求。 2.简书: 简书是一个创作社区,任何人均可以在其上进行创作。用户在简书上面可以方便的创作自己的作品,互相交流。简书成为国内优质原创内容输出平台。 3.开源中国: 开源中国成立于2008年8月,是目前国内最大的开源技术社区,拥有超过200万会员,形成了由开源软件库、代码分享、资讯、协作翻译、码云、众包、招聘等几大模块内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。 4.知乎: 知乎是网络问答社区,连接各行各业的用户。用户分享着彼此的知识、经验和见解,为中文互联网源源不断地提供多种多样的信息。 5.掘金: 掘金是一个帮助开发者成长的社区,是给开发者用的 Hacker News,给设计师用的 Designer News,和给产品经理用的 Medium。 6.阿里云栖社区: 云栖社区是面向开发者的开放型技术平台。源自阿里云,服务于云计算技术全生态。包含博客、问答、培训、设计研发、资源下载等产品。 7.腾讯云+社区 :云+社区致力于打造开发者的技术分享型社区。营造云计算技术生态圈,专注于提高开发者的技术影响力。 8.科学网: 科学网是由中国科学院、中国工程院和国家自然科学基金委员会主管,科学时报社主办的综合性科学网站,主要为网民提供快捷权威的科学新闻报道、丰富实用的科学信息服务以及交流互动的网络平台,目标是建成最具影响力的全球华人科学社区。 以上均来自某度 以上的前7个应当是程序猿比较熟悉,偏向IT的博客和交流论坛,第8个属于科研学术界的博客。当然除了以上8个还有很多,如segmentfault,各个学科的各种论坛(气象家园、地信论坛、小木虫、人大经济论坛等等等)。 目前我主要在CSDN、简书、开源中国、科学网、阿里云栖社区以及自己搭载的博客平台(hexo + github)更新博客。从使用来说,CSDN作为老牌IT社区,博客对Markdown的支持十分丰富,几乎所有Markdown拓展都有,应当是之前使用最舒服的一个博客平台,简书整个网站风格不错,而且文章内容也多元化,不仅仅是技术干货,偶尔也能满足你的情怀,Markdown支持基本的拓展,不过像公式和流程图类的不支持。开源中国对markdown支持程度与简书差别不大,而且最近发现对博客文字的审核较为严格,偶然出现的一些敏感词汇也是通不过的。阿里云栖社区目前刚刚加入,直观感受跟开源中国和简书支持较为类似,是否支持公式和流程图不确定。科学网不支持Markdown编辑,还是传统的富文本编辑,毕竟科学网面对的是科研人员,并非大家都很熟悉Markdown。但是在谷歌浏览器上只需要使用Markdown Here拓展即可实现Markdown到富文本的转换非常方便。之前我在更新博客的时候,习惯在CSDN上写,然后在其他平台复制粘贴。不过后面发现CSDN的图床似乎最近有些小问题,之前图片在各个平台都能通用,现在似乎不太支持。这也是我更换了博客管理平台的原因。 2 Markdown编辑器 可能讲了这么久一些人还不太了解Markdown。这里简要介绍(依旧是度娘资料)。 Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。Markdown具有一系列衍生版本,用于扩展Markdown的功能(如表格、脚注、内嵌HTML等等),这些功能原初的Markdown尚不具备,它们能让Markdown转换成更多的格式,例如LaTeX,Docbook。总结起来就是人类为了懒搞出来的一套标记语言。想进一步了解的可以自行搜索。这里推荐两篇我常用的博客,由于笔者仍在从事科研,写公式是一大特点。所以我很喜欢Markdown的LaTex拓展。下面两篇文章就是在讲述这方面的内容。 LaTeX 各种命令,符号 Markdown中编写LaTeX数学公式 接下来讲讲Markdown编辑器,笔者一共用过cutemarked,Markdownpad,Cmd Markdown和Visual Studio Code四个相关的编辑器。前两个里面Cutemarked用得比较久,支持实时预览,导出html,PDF,也支持数学公式。流程图也是支持的,但是是基于mermaid插件,而不是flowchart。语法有变化,后面有空来讲就这两个的流程图语法(下面也有篇博客讲这方面的内容)。而Markdownpad用的时间不长。似乎是导出的功能不够完善。Cmd Markdown是目前还一直在用的,几乎所有拓展都支持,各种体验还不错,强力推荐,导出方面略有不足(免费会员支持的不多,付费各种格式均支持),而且同步功能给好评。Visual Studio Code的话,其实不仅仅是为了当Markdown编辑器,只不过我尝试着做了个配置,将它配成也能适合Markdown编辑的平台。除了这些还有很多编辑器,详情见下面的文章链接。 Markdown里面的流程图 整理:几款好用的Markdown编辑器 10款流行的Markdown编辑器,总有一款适合你 最受欢迎的10个Markdown编辑器,有一个被称神的编辑器 3 hexo admin 由于自己搭载的hexo github平台是完全基于Markdown的,在之前CSDN的图床出问题之后,我就将利用七牛云重新做了一个属于自己的图床。于是在思考有没有快捷的方式来写博客。在Github上搜索一番后,发现了如下两个神器。 hexo admin hexo admin qiniu hexo admin是一个基于hexo的博客管理页面。界面如下,可以用来写博客,设置各种相关内容。 而hexo admin qiniu是基于hexo admin基础上做的改进。主要增加了以七牛云作为图床的功能,这样子,利用qq截完图,直接在hexo admin界面里,粘贴即可生成图片链接,非常简洁。安装只需要如下的语句。 npm install --save hexo-admin-qiniu 接着必须在站点配置文件(博客文件夹里的_config.yml,不是主题文件夹里的)里修改配置文件。配置内容如下。 #Qiniu admin: qiniuCfg: imageslim: true # 启动图片瘦身,仅华东区bucket可以使用 AccessKey: 'your qiniu AK' SecretKey: 'your qiniu SK' BucketName: 'your BK Name' bucketHost: 'you BK Host' 具体的安装配置也可以见 官网 。运行的话只需要定位到博客路径。 hexo server -d hexo server -d -p 5000 #当4000端口被占的时候,更换为5000端口 当然也有人专门开发了一个编辑器HexoEditor。也很不错,详情链接在下面。 HexoEditor ​
个人分类: 技术干货|2683 次阅读|0 个评论
如何把 Markdown 文件批量转换为 pdf?
wshuyi 2018-9-12 07:52
需求 有个朋友提出,希望把目录中的许多 markdown 文件,批量转换为对应名称的 pdf 格式文件。我于是编写了一个 Python 脚本,并且分享给你。如果你有类似的需求,欢迎使用。 由于使用了 pandoc 作为转换工具,因此 Markdown 文件里的图片链接,不论是本地存储的(只测试了绝对路径情况),还是图床上的,都可以正确转换并且显示到 pdf 文件里。 环境 因为提出需求的朋友,使用的是 macOS 系统,因此这里我们以 macOS 系统的安装方式为准。注意下述工具实际上都是 跨平台 的。因此如果你使用的是 Windows 或者 Linux ,理论上也都是可以使用的。 这个脚本在 macOS 下测试通过,欢迎你把其他平台测试的结果告诉我。 python 3 建议使用 anaconda 软件包。请到 这个地址 下载适合自己操作系统的 Python 3 版本,并且进行安装。我曾经做了一个视频教程,完整展示和讲解了 anaconda 的安装流程,并且介绍了如何进行相关的命令行操作。欢迎点击 这个链接 ,观看相关的介绍说明。 pandoc 请到 这个链接 ,下载最新版本的 pandoc 并且进行安装。 tinytex 因为需要转换的 markdown 文件,大部分都是中文文档,因此转换到 pdf 的时候,需要 xelatex 的支持。 xelatex 可以用各种 latex 集成包来安装使用,例如 texlive 等。但是这里推荐谢益辉的 tinytex 包,简单小巧。 不过使用之前,建议删除掉系统里面原有的 texlive 等包。否则可能会造成冲突。 在终端窗口下,执行这个命令: curl-sL https://yihui.name/gh/tinytex/tools/install-unx.sh tinytex 就安装好了。 之后,为了能够更好地辅助我们进行转换,需要执行下列命令,安装扩展: tlmgrinstallunicode-mathfilehookxecjkxltxtrarealscriptsfancyhdrlastpagectexmscjkulemenvirontrimspaceszhnumbercollection-fontsrecommended 代码 请到 这个 github repo 下载运行代码。或者直接点击 这个链接 ,下载压缩包并且解压。 压缩包里面,有两个文件。 其中的 batch-markdown-to-pdf.py 是运行脚本, template.tex 是转换是采用的模板,这个模板并非我做的,它来自于 这个 github 项目。 如果你对 latex 有研究,可以自行修改 template.tex 的内容,以控制输出 pdf 的样式。 准备 请把要转换的全部 markdown 文件( 需要用.md结尾 ),都放在同一个目录中。 注意我的样例目录,使用的是 macOS 的下载文件夹下面的“测试目录”,路径如下: ~/Downloads/测试目录/ 你的目录,大概会与此不同,所以请你在使用之前,先打开 batch-markdown-to-pdf.py ,并且把其中第一行的路径,替换成自己电脑上的目录名称。 运行 运行起来,就很简单了。 进入终端,通过 cd 命令转换到解压后的代码所在目录。如果你对 cd 命令不是很清楚,请回顾刚才我提到的 视频教程 。 之后,执行: pythonbatch-markdown-to-pdf.py 如果一切正常,你会看到程序在运行,不过没有什么输出提示的。 因为转换 pdf 的工作需要一些时间。所以如果你的 Markdown 文件很多,可能需要等一会儿。 请不要着急。去喝杯茶,看看书,休息一下。 当你回来的时候,(但愿)已经转换完毕了。 你会看到,在原先的 markdown 文件所在目录下面,生成了一个新的文件夹,叫做 pdf 。 你的转换后 pdf 文件,应该已经在里面了。 如果遇到问题,欢迎反馈给我。 祝使用愉快! 喜欢请点赞和打赏。还可以微信关注和置顶我的公众号 “玉树芝兰”(nkwangshuyi) 。 如果你对 Python 与数据科学感兴趣,不妨阅读我的系列教程索引贴《 如何高效入门数据科学? 》,里面还有更多的有趣问题及解法。
16125 次阅读|0 个评论
Markdown 语法简记
dingsir 2018-6-7 17:14
Markdown是一种表示文本格式的语法,最近几年受到一定的重视.它没有HTML语法那么复杂,在某些情况下用于简单的控制格式比较方便. 我在某个思维导图软件中发现过它的应用,稍微研究了下,总结了一点格式的要点供自己学习为主。学习时推荐用markdownPad2来学习和使用这种语法,它提供了几种不同的Markdown处理器供用户选择:markdown, markdown extended, commonMark等. 由于markdown的分支比较多,不同的分支除了支持相同的基本语法,都多少有一些自己的扩展的语法.因此,有些语法表达在另一种分支(或者称翻译器,解释器)中可能不受支持.比如用~~符号来表示删除线,在基本的markdown中是没有的.此外,还有表格字符,上标,下标,自动链接,脚注等也是原markdown标准没有而扩展的Markdown分支中添加的. 入门的文章这2篇我觉得写得比较好, Markdown语法简要介绍 Markdown语法总结 下面说下容易上手的编辑器markdownpad 2的几处要点: Markdownpad2 的最大好处是可以提供实时的预览,非常适合学习。一些功能的设置如果你暂时记不住,它的菜单界面上也有相应的功能按钮。(如果在win10下安装,你可能还需要安装awesomium_v1.6.6_sdk_win.exe以提供实时预览的支持,否则会显示预览加载失败,该程序包请自行搜索下载) 可以设置不同的Markdown解释器 Markdown文本的显示效果实际上是用CSS指定的,比如 左边是Markdown文本写法,存为.md文件或.mdown文件。右边是显示效果(也可以设置到下面预览) 如果只看图片,就是这个 (用Markdown的格式来写Markdown的语法) 由于markdown的设计意图只是简化文本的格式化,功能上远不如HTML语言那么强大.它设计最后是转化为HTML来显示效果.因此,markdown设计为兼容HTML语言,也就是说.Markdown没有支持的语法,可以借助HTML的语法来表示,比如字体颜色设置. 此外,经常用到的一些特殊字符,除了用转义可以处理一部分,也可以用HTML的语法来实现,这里列出一部分特殊字符在HTML中的表示方法. 更新: 搜索并试用对比后发现,这个CuteMarkEd也蛮小巧易用的,安装比markdownpad2还简单一些.只是版本稍老了一点. 2018-6-12
个人分类: 软件杂谈|4119 次阅读|0 个评论
快速生成Github README.md的目录
GISdsq 2018-3-19 20:37
熟悉Github的同学可能知道创建一个Repo,通常都会生成一个README.md。好的README能增加代码的可阅读性。另外通常也可以将README作为开发文档。而这个README本身是遵循Markdown语法的,但是Markdown本身并没有绝对标准,Github的渲染方式与一些常用博客渲染方式不相同,导致在使用时有些麻烦。这里推荐一个Github上的教程。 GFM教程 GFM教程博客地址 事实上大部分和普通Markdown还是类似的,但是目录的语法差别蛮大,刚好对于笔者而言,最近需要在Github上文档上建立目录来使用,但是又不想写GFM的语法。这个时候刚好搜索到了一些可以用的开源代码。这里简单介绍一个目前使用的方法。 1 Github+百度搜索结果 事实上解决方案还蛮多的(Github大法好)。 当时还在百度上搜索了下,找到了这个方案。 ghtoc Github地址(pyhon) ghtoc博客 2 解决方案:gh-md-toc 后面发现了gh-md-toc这个神器。 gh-md-toc Github地址 但是这个东西在Mac和Linux很友好,windows似乎不那么友好。不过这里也给了windows的解决方案。 就是github-markdown-toc.go。 github-markdown-toc.go Github地址 如果你有GO语言(又是你)的编译环境,可以尝试自己编译,如果没有,可以直接下载编译好的二进制文件。 二进制文件 下载下来之后,发现没有后缀名无法识别,实际上这是个exe文件,所以只需要暴力地在后面加上.exe就可以开始愉快使用了。 首先将README.md文档复制到gh-md-toc.exe的根目录下。 接着按住shift键同时右击。 打开Powershell窗口后,直接键入。 ./gh-md-toc.exe README.md 接下来只需将这段话复制粘贴到README.md里面即可。 ​
个人分类: 技术干货|3913 次阅读|0 个评论
markdown 插入数学公式语法汇总
yijiaobai 2017-12-24 18:35
本篇参考: Cmd Markdown 公式指导手册 1 数学公式的写法 插入数学公式有两种:行中公式和独立公式。 行中公式放在文中与其它文字混编,独立公式单独成行。 行中公式可以用如下方法表示: $ 数学公式 $ 独立公式可以用如下方法表示: $$ 数学公式 $$ 1.1 行中公式 比如行中公式: 下面是这个公式:\\$ x^2 + \\sqrt{y} = z \\$,感觉怎么样。 1.2 独立公式 独立公式: 下面是这个公式:\\$\\$ x^2 + \\sqrt{y} = z \\$\\$,感觉怎么样。 2 常用希腊字母 整体而言,规则如下: 输入 \\小写希腊字母英文全称 和 \\首字母大写希腊字母英文全称 来分别输入小写和大写希腊字母。 3,常用操作 3.1 上下标 ^表示上标, _表示下标。如果上下标的内容多于一个字符,要用{}把这些内容括起来当成一个整体。上下标是可以嵌套的,也可以同时使用。 例子: \\$\\$ x^{y^z}=(1+{\\rm e}^x)^{-2xy^w} \\$\\$ 3.2 空格和换行 在$ $中,空格会被忽略,因此空格前面加上\\ ,换行是\\\\ 3.3 分数 通常使用 \\frac {分子} {分母} 命令产生一个分数,分数可嵌套。 例子: \\$\\$\\frac{a-1}{b-1} \\$\\$ 3.4 开方 使用 \\sqrt {被开方数} 命令输入开方 例子: \\$\\$\\sqrt{2} \\quad and \\quad \\sqrt {3}\\$\\$ 显示 4 各种运算符 关系运算符 集合运算符 对数运算符 三角运算符 各种带帽符号 5,矩阵常用方法 在开头使用 begin{matrix},在结尾使用 end{matrix},在中间插入矩阵元素,每个元素之间插入 ,并在每行结尾处使用 \\ 。 使用矩阵时必须声明 $ 或 $$ 符号。 5.1 无边界矩阵 例子 \\$\\$ \\begin{matrix} 1 x x^2 \\\\ 1 y y^2 \\\\ 1 z z^2 \\\\ \\end{matrix} \\$\\$ 显示 5.2 有边界矩阵 在开头将 matrix 替换为 pmatrix bmatrix Bmatrix vmatrix Vmatrix 例子 $ \\begin{matrix} 1 2 \\\\ 3 4 \\\\ \\end{matrix} $ $ \\begin{pmatrix} 1 2 \\\\ 3 4 \\\\ \\end{pmatrix} $ $ \\begin{bmatrix} 1 2 \\\\ 3 4 \\\\ \\end{bmatrix} $ $ \\begin{Bmatrix} 1 2 \\\\ 3 4 \\\\ \\end{Bmatrix} $ $ \\begin{vmatrix} 1 2 \\\\ 3 4 \\\\ \\end{vmatrix} $ $ \\begin{Vmatrix} 1 2 \\\\ 3 4 \\\\ \\end{Vmatrix} $ 显示 5.3 输入带省略符号的矩阵 例子 $$ \\begin{pmatrix} 1 a_1 a_1^2 \\cdots a_1^n \\\\ 1 a_2 a_2^2 \\cdots a_2^n \\\\ \\vdots \\vdots \\vdots \\ddots \\vdots \\\\ 1 a_m a_m^2 \\cdots a_m^n \\\\ \\end{pmatrix} $$ 显示 6,常用符合 6.1 直积和直和的写法 6.2 估计值的带帽参数 例子: $ \\widehat{\\beta} $ 显示: $ \\widehat{\\beta} $ 6.3 混合线性方程组示例 例子: \\$\\$\\ begin{bmatrix} X'X X'Z \\\\ Z'X Z'Z + A^{-1}K \\end{bmatrix} \\begin{bmatrix} \\widehat{\\mu} \\\\ \\widehat{\\alpha} \\end{bmatrix} = \\begin{bmatrix} X'Y \\\\ Z'Y \\end{bmatrix} \\$\\$ 显示:
个人分类: 便捷操作|11346 次阅读|0 个评论
使用Markdown排版科学网博客
热度 1 yjjh143 2017-11-22 08:26
在科学网写博客,最痛苦的事莫过于排版了。以前写博客都是先在OneNote中码好字,插好图片,排好版,再Ctrl+C, Ctrl+V粘贴到科学网的富文本编辑器中。科学网自带的编辑器对微软文档编辑软件的兼容性还好,排好版的字体格式基本都能保持原样。可是图片就麻烦了,必须再一个一个手动添加到编辑器中。如果图片少的话倒还好,大不了麻烦一下,动动手添加几张图片,而如果文章中的图片多的话,那可就不能忍了,加图片加的都想吐,对人的耐性简直是极大的考验。 好在混迹科学网的人,大部分都是重内容而轻形式的,并且许多人对科学网博客文本编辑器的用户体验也都有一些了解,对排版的要求也就不那么高了,只要将就着能看也就行了。 可是,对于追求完美主义(其实就是强迫症ヾノ≧∀≦)o)的我而言,排版太烂的文章,简直不忍直视。那么,有没有什么方法,能让我的博客排版比较精致,同时又不需要花费太多精力在排版上呢(懒癌又犯了ヾノ≧∀≦)o)?另外,最近在自学生物信息学,有时候会在科学网博客上分享一些学习笔记,而科学网的编辑器对计算机代码的支持不太好,显示非常不美观,有什么方法能改善代码在博客上的显示效果呢? 我一直在寻找解决这两个问题的方法,直到我发现了Markdown和Markdown Here这一对最佳搭档。Markdown语法和Markdown Here插件的结合,完美解决了我的科学网博客排版问题。 1. 什么是Markdown Markdown 是一种轻量级标记语言,创始人为约翰·格鲁伯(John Gruber)。它允许人们「使用易读易写的纯文本格式编写文档,然后转换成有效的XHTML(或者HTML)文档 」—— 维基百科 虽然称作 「标记语言」,但简单理解 Markdown 就是在文本前增加符号来表示文本格式。你不需要关心标题多大号,列表缩进多少,是否对齐,只要使用了同一种符号标记,Markdown 已经帮你做好了排版。——为知笔记 Markdown 新手指南 刚开始接触Markdown时,我对语法记忆是非常抗拒的,感觉要花费脑细胞记忆什么语法规则,好像学习成本很高的样子。 其实,我们常用的标记也就十几个,记忆好的话五分钟就能记住,再加上写一篇博客的练习,就能轻松掌握常用语法了。相对于更为复杂的HTML 标记语言来说,Markdown 可谓是十分轻量的,学习成本也不需要太多,且一旦熟悉这种语法规则,会有一劳永逸的效果。 关于Markdown常用的标记,可参考 为知笔记 Markdown 新手指南 。 2. Markdown编辑器 就像我们平常写东西习惯用Word一样,Markdown也有专用的编辑器。这里提供一个参考: 好用的Markdown编辑器一览 ,可以根据自己的操作系统,选择适合自己的Markdown编辑器。 我用的操作系统是Windows,使用的编辑器是 为知笔记 ,可以在线同步自己的文章,在实验室和家里都能方便地进行创作。这也是一个全平台的软件,我在电脑上写的东西,也可以非常方便地在我的iPhone和iPad上查看。另外,另一款国产笔记类软件 有道云笔记 也支持Markdown,用户体验也不错。网页版编辑器,推荐 简书 ,可以在网页中进行创作,不用安装任何软件,也支持云端存储。 如果你是一个极客,当然也可以使用最简单的记事本等纯文本处理软件进行Markdown的写作,写作完成后,复制-粘贴到博客的编辑器中,可以得到同样的渲染效果。 3. 使用新浪微博图床 Markdown有一点比较特殊,就是图片不能直接插入到文本中,我们需要把要插入的图片先存储在图床上,再以链接的形式插入到文本中。在这里推荐新浪 微博图床 ,和其他图床比,相对稳定和可靠,而且结合Chrome插件使用,可以直接将要使用的图片拖拽到微博图床插件中,自动生成链接,复制粘贴到文本中即可,非常方便。在这里查看 微博图床使用教程。 4. Markdown Here 科学网博客不支持Markdown语法,我们需要借助Markdown Here对Markdown文本进行渲染,得到我们想要的排版格式。 Markdown Here 是个浏览器插件(Chrome/Firefox/Safari),可以将浏览器中编辑器里的 Markdown 文本转换成渲染过后的 HTML。 最初,Markdown here是为在email中排版Markdown而开发的,可是现在已经被广泛应用于微信公众号、知乎专栏等众多写作平台的排版中。 5. Markdown Here渲染CSS的修改 Markdown Here非常人性化的一点就是,我们可以根据自己的喜好,对其渲染的CSS进行修改,可以修改渲染的字体、颜色、行间距等,形成自己独特的风格。 我个人非常喜欢 李笑来的Markdown Here 渲染风格 ,并且李笑来老师已经公开了 源代码 。不过,由于其排版方式是专门为微信公众号优化的,有些地方不太适合电脑网页浏览,并且不支持代码块。因此,我在李笑来老师代码的基础上,进行了修改,使标题的显示更加适合电脑网页,并添加了代码块的支持,目前的渲染结果我还是比较满意的。 经Markdown Here渲染,科学网博客不仅支持常规的文字加粗、斜体、链接等格式,还支持Markdown的表格,并且可以完美支持代码块的显示。 我修改后的CSS渲染代码放在文章末尾,可直接替换Markdown Here 的CSS渲染代码使用。 6. 如何使用Markdown Here 关于如何使用Markdown here进行排版,这里有一篇 简单的教程 ,我就不再重复造轮子了。 简单说就是: 1. 将文章在Markdown 编辑器中编辑好; 2. 复制-粘贴到科学网博客的编辑器中; 3. 点击浏览器中的Markdown Here图标或使用快捷键Ctrl+Alt+M进行一键渲染; 4. 渲染成功,并检查无误后,直接发布。 5. 具体的渲染结果,可参考本文。 注:本文以Markdown语法写作,并经Markdown Here渲染而成。 附: 我修改后的Markdown Here CSS渲染代码,可直接替换Markdown Here基本渲染CSS的代码: /* 说明: 1.本CSS在李笑来老师的Markdown Here的CSS代码的基础上修改而来。 2.修改过程还参考了Markdown Here的默认渲染CSS。 主要做了如下调整。 (1)标题由居中改为靠左 (2)增加了Markdown Here默认渲染CSS的代码块 ————曹务强 2017.11.19 */ /* * NOTE: * - The use of browser-specific styles (-moz-, -webkit-) should be avoided. * If used, they may not render correctly for people reading the email in * a different browser than the one from which the email was sent. * - The use of state-dependent styles (like a:hover) don't work because they * don't match at the time the styles are made explicit. (In email, styles * must be explicitly applied to all elements -- stylesheets get stripped.) */ /* This is the overall wrapper, it should be treated as the `body` section. */ . markdown - here - wrapper { font - size : 16px ; line - height : 1.8em ; letter - spacing : 0.1em ; } /* To add site specific rules, you can use the `data-md-url` attribute that we add to the wrapper element. Note that rules like this are used depending on the URL you're *sending* from, not the URL where the recipient views it. */ /* .markdown-here-wrapper ul { color: red; } */ pre , code { font - size : 14px ; font - family : Roboto , 'Courier New' , Consolas , Inconsolata , Courier , monospace ; margin : auto 5px ; } code { margin : 0 0.15em ; padding : 0 0.3em ; white - space : pre - wrap ; border : 1px solid #EAEAEA; background - color : #F8F8F8; border - radius : 3px ; display : inline ; /* added to fix Yahoo block display of inline code */ } pre { font - size : 1em ; line - height : 1.2em ; } pre code { white - space : pre ; overflow : auto ; /* fixes issue #70: Firefox/Thunderbird: Code blocks with horizontal scroll would have bad background colour */ border - radius : 3px ; border : 1px solid #CCC; padding : 0.5em 0.7em ; display : block ! important ; /* added to counteract the Yahoo-specific `code` rule; without this, code blocks in Blogger are broken */ } strong , b { color : #BF360C; } em , i { color : #009688; } hr { border : 1px solid #BF360C; margin : 1.5em auto ; } /* In edit mode, Wordpress uses a `* { font: ...;} rule+style that makes highlighted code look non-monospace. This rule will override it. */ . markdown - here - wrapper code span { font : inherit ; } /* Wordpress adds a grey background to `pre` elements that doesn't go well with our syntax highlighting. */ . markdown - here - wrapper pre { background - color : transparent ; } /* This spacing has been tweaked to closely match Gmail+Chrome paragraph (two line breaks) spacing. Note that we only use a top margin and not a bottom margin -- this prevents the blank line look at the top of the email (issue #243). */ p { /* !important is needed here because Hotmail/Outlook.com uses !important to kill the margin in p. We need this to win. */ margin : 0 0 1.2em 0 ! important ; } table , pre , dl , blockquote , q , ul , ol { margin : 1.2em 0 ; } ul , ol { padding - left : 2em ; } li { margin : 0.5em 0 ; } /* Space paragraphs in a list the same as the list itself. */ li p { /* Needs !important to override rule above. */ margin : 0.5em 0 ! important ; } /* Smaller spacing for sub-lists */ ul ul , ul ol , ol ul , ol ol { margin : 0 ; padding - left : 1em ; } /* Use Roman numerals for sub-ordered-lists. (Like Github.) */ ol ol , ul ol { list - style - type : lower - roman ; } /* Use letters for sub-sub-ordered lists. (Like Github.) */ ul ul ol , ul ol ol , ol ul ol , ol ol ol { list - style - type : lower - alpha ; } dl { padding : 0 ; } dl dt { font - size : 1em ; font - weight : bold ; font - style : italic ; } dl dd { margin : 0 0 1em ; padding : 0 1em ; } blockquote , q { border - left : 4px solid #DDD; padding : 0 1em ; color : #777; quotes : none ; } blockquote :: before , blockquote :: after , q :: before , q :: after { content : none ; } h1 , h2 , h3 , h4 , h5 , h6 { margin : 1.3em 0 1em ; padding : 0 ; font - style : bold ! important ; color : #009688 !important; text - align : left ! important ; } h1 { font - size : 24px ! important ; border - bottom : 1px solid #ddd !important; } h2 { font - size : 20px ! important ; border - bottom : 1px solid #eee !important; } h3 { font - size : 18px ; } h4 { font - size : 16px ; } table { padding : 0 ; border - collapse : collapse ; border - spacing : 0 ; font - size : 1em ; font : inherit ; border : 0 ; margin : 0 auto ; } tbody { margin : 0 ; padding : 0 ; border : 0 ; } table tr { border : 0 ; border - top : 1px solid #CCC; background - color : white ; margin : 0 ; padding : 0 ; } table tr : nth - child ( 2n ) { background - color : #F8F8F8; } table tr th , table tr td { font - size : 16px ; border : 1px solid #CCC; margin : 0 ; padding : 5px 10px ; } table tr th { font - weight : bold ; color : #eee; border : 1px solid #009688; background - color : #009688; } p code { color : rgb ( 217 , 33 , 66 ); };
个人分类: 技术教程|4964 次阅读|1 个评论
用Markdown写博文,md->html
blazing216 2016-10-30 20:07
## Welcome to MarkdownPad 2 ## MarkdownPad is a full-featured Markdown editor for Windows. Built exclusively for Markdown Enjoy first-class Markdown support with easy access to Markdown syntax and convenient keyboard shortcuts. Give them a try: Bold (Ctrl+B) and Italic (Ctrl+I) Quotes (Ctrl+Q) Code blocks (Ctrl+K) Headings 1, 2, 3 (Ctrl+1, Ctrl+2, Ctrl+3) Lists (Ctrl+U and Ctrl+Shift+O) Chinese Support 中文 Equation \(E=mc^2\) (\\(E=mc^2\\) or $$E=mc^2$$) use script type=text/javascript src=http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=default/script to enable Tex-like mathematical expression. $$ E=mc^2 $$ import sysprint sys.pathSee your changes instantly with LivePreview Don't guess if your hyperlink syntax is correct; LivePreview will show you exactly what your document looks like every time you press a key. Make it your own Fonts, color schemes, layouts and stylesheets are all 100% customizable so you can turn MarkdownPad into your perfect editor. A robust editor for advanced Markdown users MarkdownPad supports multiple Markdown processing engines, including standard Markdown, Markdown Extra (with Table support) and GitHub Flavored Markdown. With a tabbed document interface, PDF export, a built-in image uploader, session management, spell check, auto-save, syntax highlighting and a built-in CSS management interface, there's no limit to what you can do with MarkdownPad.
个人分类: Markdown|4 次阅读|0 个评论
Javascript版本的Markdown
Jerkwin 2014-5-5 02:55
Javascript版本的Markdown 2014–04–01 12:48:40 最近几天折腾了下js版本的markdown实现, 本来的想要实现的功能是不依赖于外部程序, 直接使用浏览器来解析渲染markdown文件. 目前来说, 这是最简单可行的跨平台方案. js版本的markdown解析程序很多, 到 GitHub 上搜索一下markdown, js的实现数目远远超过其他的. 这些实现有好有差, 我没有时间一一查看, 主要试用了下面的几个: chjj的 marked : 星级很高, 速度也很好 Jakwings的 Strictdown : 扩展更多, 语言更严格些, 上不成熟 dnordstrom的 parseMarkdown : 最简单的实现, 可作为扩展的起点 这些实现, 大部分是基于Node.js的, 在浏览器中使用的话, 需要添加相应的脚本, 也可以通过修改js源码实现. 下面是修改marked.js使其支持浏览器直接使用的方法. 在其最后添加如下代码 document.addEventListener ( 'DOMContentLoaded' , function ( ) { var input = document.getElementById ( 'main' ) ; input . innerHTML = marked ( input . innerHTML ) ; input . innerHTML = marked ( input . innerHTML ) ; } , false ) ; 在html文件中, 将markdown代码插入 div id=“main” /div 之中. 其他的也可类似修改实现. 虽然最终我基本实现了想要的功能, 可实际使用中发现, 对少量文本这些代码问题都不大, 一旦文本很大, 基于js的解析代码速度明显就不行了. 参考资料 调用Javascript获取div内容 Strictdown标记语言语法(草稿) 使用javascript读写本地文件的方法 JavaScript本地文件读写 使用 HTML5 File API 实现客户端 log 通过 File API 使用 JavaScript 读取文件 How to execute shell command in Java script JavaScript and the SHELL Command js的输入输出的相关操作说明举例 javascript 文档加载后根据标题动态生成目录 js控制div层的显示跟随滚动条滚动而滚动 层跟随滚动条下拉,向下移动效果 JavaScript仿淘宝智能浮动——侧栏跟随
个人分类: 我的工具箱|5702 次阅读|0 个评论
图片与文本共舞: gnuplot的svg终端
Jerkwin 2014-2-24 12:30
图片与文本共舞: gnuplot的svg终端 2014–02–23 21:29:17 在整理工作的时候, 我们经常需要在文档中插入所得数据的图像. 通常的作法是先用绘图软件(如Excel, Origin, gnuplot等)将数据做成图片(一般为eps或png格式), 再将图片插入文档中. 这种作法使得数据, 图片, 文档三者互相分离, 当数据改变时, 图片必须重新绘制后再插入文档中, 不适合快速整理数据的需要, 此外作图时的处理方法也不易保存. 目前, 我一般用Markdown整理文档, 使用gnuplot绘图, 这两者都很方便, 但图片的插入仍嫌麻烦. 查阅了一下gnuplot的文档, 发现gnuplot支持canvas和svg终端, 利用这两种终端, 可以方便地将作图输出为网页支持的形式. 其中的svg为矢量格式, 可以任意放大而不会出现马赛克现象, 更好一些. 利用svg终端, 我们就可以实现为gnuplot代码添加相应的svg图形功能. 在Markdown中直接插入gnuplot代码, gnuplot处理后自动插入所得的svg文本. 这样就省却了先作图, 再插图的过程, 文档中既保存了 gnuplot的绘图脚本, 也保存了相应的图片, 修改十分方便. 下面的代码就可以直接输出为svg图形到html文件供查看. 数据文件作图 set xl t ( ps ) ; set yl E ( kJ / mol ) plot G : / topol ~ ETP . xvg u 1 : 2 w l t Total Energy 直接数据作图 plot - u 1 : 2 w lp lw 4 ps 2 , - u 1 : 3 w lp lw 4 ps 2 1 2 6 3 5 7 5 4 5 e 1 2 6 3 5 7 5 4 5
个人分类: 我的工具箱|4938 次阅读|0 个评论
转战Markdown
热度 1 Jerkwin 2014-2-14 10:08
转战Markdown2014–02–02 11:08:34 刚开始写博客时是直接写, 后来觉得调格式很麻烦, 就利用HTML代码. 也做过测试, 可惜很多都不支持, 无奈之下只能取道Word. 也曾试过txt2tag之类的工具, 写HTML可以省点心, 却终于不顺手. 最近发现所谓的轻量级标记语言正大行其道, 写博客的方式也变化了很多. 查阅了下相关的资料, 选择了最流行的Markdown. 试了一下, 感觉还可以, 既用来写博客, 也用来做笔记. 关于Markdown, 网上的资料很多, 不劳多说. 于我的感觉, 就是这个所谓的轻量级标记语言至今还没有标准, 发明者也不再参与开发, 很影响了它的发展. 如果将目前市面上几种轻量级标记语言各取所长, 然后标准化一下, 应该可以减少混乱, 促进其发展. 参考 一般介绍 轻量级标记语言 Markdown–引领未来科技写作的博客利器 开源项目之憾 Markdown的未来 语法 Markdown 语法说明 (简体中文版) 不同风格 GitHub wikis and Markdown 各种实现 汇总 速度很快的sundown 扩展的MultiMarkdown 编译好的peg-Markdown 基于awk的, 可自定义解析 可用编辑器 总结 谷歌浏览器插件 Dillinger在线编辑器 Markable在线编辑器 Cmd在线编辑器 电子邮件插件MarkdownHere 由于解析比较容易, Markdown的实现很多, 扩展也有不少. 目前我使用的是MultiMarkdown. 与原始的Markdown相比, 它功能更强大一些, 如支持上下标, 脚注, 图片属性, 引用, 定义列表等. 有了这些功能基本就够用了. 若还有些特殊需要, 那就只能通过直接插入HTML代码来完成了. 于我, 还是习惯编程的方式, 写完之后, 一键编译查看, 没有必要所见即所得. 我用的三个主打文本编辑器Notepad2-mod, SciTE和EmEditor都可以支持Markdown语法高亮, 稍加定制就能满足我的要求. 样式格式 Markdown遵从内容和样式分离的原则, 只标记内容, 不管内容显示时的样式和格式. 转成HTML后, 样式和格式可以由CSS控制, 也可以使用javascript控制. 数学公式 数学公式的支持可利用 MathJax . 在转换出的HTML头部添加如下内容, 用于支持中文和MathJax公式. meta http-equiv=Content-Type content=text/html; charset=UTF-8 script type=text/x-mathjax-config MathJax.Hub.Config({ tex2jax:{inlineMath: , ], skipTags: }});/script script type=text/javascript src=file://F:/MathJax/MathJax.js?config=TeX-AMS-MML_HTMLorMML/script 代码高亮 代码高亮显示一般是通过javascript和CSS来实现的, 并不能直接在Markdown里面直接实现. 我现在的做法是利用 Prism , 比较简单, 适合我用. 可惜直接贴到科学网的博客里格式就乱了. 如果使用自己的空间就容易多了. 科学网博客系统支持 从下面示例代码的显示情况可以看到, 科学网的支持尚可, 但标题和代码格式支持不好. 示例代码显示 标题 一级标题 H1二级标题 H2一级标题 H1二级标题 H2 段落 段落 强制换行 段落 引用 引用 引用 嵌套引用 恢复 引用中的H3标题 引用中的 列表项 引用中的_列表项_ 引用中的 列表项 引用中的__列表项__ 或者 引用中的 一级 列表项_ 二级 三级 换行 引用中的 列表项 引用中的代码 return shell_exec(echo $input | $markdown_script); 代码块 主程序 Hello如下 # Lanuage: markup meta http-equiv = Content-Type content = text/html; charset = UTF-8 link rel = stylesheet href = file://C:/Users/Jicun/F_Prg/Markdown/MD.css link rel = stylesheet href = file://C:/Users/Jicun/F_Prg/Markdown/prism.css script src = file://C:/Users/Jicun/F_Prg/Markdown/prism.js style type = text/css body{font-family:Times New Roman,georgia;font-size:20px;font-weight:normal;color:#276904;background-color:#FAFFD0} script type = text/x-mathjax-config MathJax.Hub.Config({ tex2jax:{inlineMath: , ], skipTags: }}); script type = text/javascript src = file://C:/Users/Jicun/F_Prg/MathJax/MathJax.js ?config = TeX-AMS-MML_HTMLorMML h1 id = 转战markdown 转战Markdown h2 id = 2014-02-0211:08:34 2014–02–02 11:08:34 # Lanuage: bash function CntAtm { usage = \ CntAtm ( COM ) Usage : CntAtm { Icnt1 } { Icnt2 } { R12Max } { XYZ } Default : CntAtm 1 1 5 XY Icnt1 | 2 : #Iatm to define the center R12Max : Only print configuration with #Icnt1-#Icnt2 distance R12Max XYZ : Apply PBC to X | Y | Z ] { echo $usage; exit; } File = ${1%\.gro} ; shift Icnt1 = 1 ; Icnt2 = 1 ; R12Max = 5 ; YesXYZ = XY ; YesCOM = 1 ] { Icnt1 = $1 ; } ] { Icnt2 = $2 ; } ] { R12Max = $3 ; } ] { YesXYZ = $4 ; } } 水平线 超链接 网址超链接 http://example.com/ I get 10 times more traffic from Google than from Yahoo or MSN . 引用数字超链接 I get 10 times more traffic from than from or . 引用名称超链接 I get 10 times more traffic from 上下标 A i A n A i,j,k A m,n Latex数学公式 行内公式 e i π + 1 = 0 对齐公式 x y = cos t = sin t 表格 Tables Are Cool col 3 is right-aligned $1600 col 2 is centered $12 zebra stripes are neat $1 测试表格 Grouping First Header Second Header Third Header Content Long Cell Content Cell Cell New section More Data And more With an escaped ‘|’ 脚注1 ↩
个人分类: 我的工具箱|4723 次阅读|2 个评论

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-5-25 05:31

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部