Markdown Monster
Markdown Monster 是一款易用且可扩展的 Windows Markdown 编辑器、查看器和博客发布工具。我们的目标是为 Windows 提供最好的 Markdown 专用编辑器,并让创建 Markdown 文档变得尽可能简单。我们提供了一个核心编辑器和预览器,以及一些非侵入式辅助工具,帮助您以最小的努力将图片、链接、表格、代码等内容嵌入到文档中。
测试
表达您的支持
如果您喜欢这里看到的内容,请考虑为此仓库加星(点击本页面右上角的 :star:)。如果您有最喜欢的 Markdown Monster 功能,非常欢迎您在推特上提及它并标记 @markdownmonstr。请帮助我们传播这个消息。
安装
下载安装程序
您可以使用自包含的安装程序下载 Markdown Monster:
Chocolatey
您可以使用 Chocolatey 从 Windows 命令提示符安装(由我们维护 - 始终保持最新)
c:\> choco install markdownmonster
WinGet
您还可以使用内置的 Windows WinGet 工具(不由我们维护):
c:\> winget install markdown-monster
Scoop
您也可以使用 Scoop 来安装和更新。您需要使用 extras
bucket。(不由我们维护)
c:\> scoop install markdown-monster
许可证
Markdown Monster 是一款需要许可的产品,虽然我们提供功能完整的免费下载版本,但持续使用需要购买合理定价的许可证。
有关许可的更多详细信息,请访问以下链接:
源代码不再在此提供
由于少数不良行为者滥用许可证和误用源代码,此仓库不再包含任何 Markdown Monster 的源代码。源代码已移至私有仓库,可以通过申请获得访问权限。
此仓库作为 GitHub 信息页面,用于下载和功能展示,以及在问题部分反馈错误报告和增强请求。对于更一般的问题,您还可以使用我们的支持留言板中的 Markdown Monster 部分。
概览
以下是使用默认深色主题的 Markdown Monster 界面:
以下是浅色主题:
注意,您可以单独自定义编辑器、预览以及预览器中代码片段显示的主题。
高效
Markdown Monster 功能丰富,但我们努力确保在不需要这些功能时不会妨碍您。如果您只想写作,MM 提供了一个简约的编辑体验,在内容周围提供舒适的空白,还有可选的无干扰模式。但如果您想提高生产力,使用快捷方式和辅助工具来增强您的编辑体验,我们为您提供了许多有用的工具,通过周到的生产力功能来提升您的编辑体验。大多数命令都有键盘快捷键,可以通过一两次按键完成。
只需几次按键,就能轻松嵌入图片、链接、表格、代码片段等内容,还有智能链接修复功能。由于图片是内容创作的重要组成部分,我们的图片嵌入支持特别丰富,支持从剪贴板粘贴图片、使用图片文件/URL 对话框嵌入、从资源管理器或浏览器拖放,甚至还有内置的图片捕捉工具。
可定制
Markdown Monster 高度可定制,提供主界面、编辑器和预览显示的主题。编辑器和预览主题可以使用基于 HTML 和 CSS 的模板轻松定制,让您可以个性化 Markdown Monster。还有许多选项可以自定义编辑器的字体、大小和多种显示选项。
您还可以在无干扰模式下运行,移除工具栏、菜单、预览、侧边栏和其他干扰,让您专注于代码。或者使用演示模式,专注于阅读内容而不显示编辑器视图。
可扩展
Markdown Monster 可以使用 .NET 代码扩展。您可以使用我们的 Snippets 或 Commander 插件创建自定义文本扩展,或使用 .NET 代码片段自动化常见任务。完整的插件扩展模型允许与 Markdown Monster 的大多数功能和 UI 深度集成,使用直观的插件模型创建复杂的扩展。还有一个插件管理器,让您轻松安装、更新和管理可用的插件。
博客发布
如果您有博客,很可能可以使用 Markdown Monster 创建内容并将其发布到您的博客服务。Markdown Monster 可以发布到许多常见的博客引擎,包括 WordPress、Medium 和任何使用 MetaWeblog API 的服务。MM 自动处理将 Markdown 内容转换为 HTML,修复链接,并将您的 Markdown 内容干净地发布和重新发布到博客服务。
新建博客文章功能自动在 Weblog Posts 目录层次结构中设置文章文件夹,让您可以在共享的 DropBox 或 OneDrive(如果可用)文件夹中组织文章,以便您可以轻松地在多台机器上处理文章。
Markdown Monster 的集成 Git 功能也非常适合任何基于 Git 的服务,如 Jekyll、Ghost、Hugo 或 Wyam,可以在本地写文章并立即将它们推送到远程 Git 仓库进行发布。Git 集成内置于 MM 中,可以单独或批量提交更改,或者您可以打开您喜欢的 Git 客户端,将更改发布到您托管的内容博客。
链接
插件
请报告您遇到的任何问题!
如果您在使用 Markdown Monster 时遇到问题,请通过提交问题或在 GitHub 上提出功能请求来告诉我们。我们想知道哪里不起作用并加以修复。帮助我们改进 Markdown Monster!我们知道您的时间很宝贵,但我们非常感谢您的任何反馈。
功能
Markdown Monster 提供了许多有用的功能:
Markdown 编辑器
- 语法高亮的 Markdown 编辑
- 实时同步的 HTML 预览
- 为 Markdown 新手提供温和的可选工具栏支持
- 内联拼写检查
- 行数和字数统计
- 同步文档大纲
- 无干扰模式
- Markdown 折叠
- 分屏视图
预览器
- 滚动同步的预览窗口
- 可选的外部预览器,支持多屏显示
- 在网页浏览器中预览
- 支持演示模式
- 支持无干扰模式
- 通过嵌入的 Markdown 链接进行文档导航
图像功能
- 从剪贴板粘贴图像
- 智能选择并嵌入来自磁盘或 URL 的图像
- 从文件夹浏览器拖拽图像
- 从资源管理器拖拽图像
- 在您选择的图像编辑器中编辑图像
- 内置屏幕截图
- 自动压缩粘贴的图像
编辑功能
- 轻松从剪贴板或磁盘嵌入链接
- 嵌入代码片段并查看高亮的语法着色
- 双向表格编辑器,用于交互式创建和编辑表格
- 通过 Snippets 插件 使用 C# 代码进行文本片段扩展
- 嵌入表情符号
- 智能、不引人注目的工具栏和快捷键帮助
- 从文本模板扩展片段
- 用于导航大型文档的文档大纲
- 众多编辑器自定义选项
输出和选择
- 将渲染输出保存为独立 HTML 或 HTML 片段
- 将渲染输出保存为 PDF
- 将 Markdown 选择复制为 HTML
- 将 HTML 文本粘贴为 Markdown
- 在您喜欢的网页浏览器中打开渲染输出
- 将渲染输出打印到打印机或 PDF 驱动程序
- 生成并嵌入文档目录
主题支持
- 深色和浅色应用程序主题
- 可自定义的编辑器主题
- 可自定义的预览主题
- 可自定义的输出语法着色主题
- 每种主题类型都可以单独应用
- 使用 HTML 和 CSS 自定义预览和编辑器主题
文件操作
- 编辑器默认记住打开的文档(可选)
- 自动保存和自动备份支持
- 每个文件的多种文件操作
- Shell 查看器
- 使用其他程序打开...
- 在适当的编辑器中编辑
- 在配置的应用程序中查看/编辑图像
- 压缩图像
- 提交到 Git
- 在 Github 上打开(如果是 Github 仓库)
- 加密保存文件
- 从资源管理器和文件夹浏览器拖放文档
- 打开终端、资源管理器或 Git 客户端
组织和文件访问
- 集成的文件和文件夹浏览器
- 快速文件搜索
- 在文件中查找(搜索文件和内容)
- 收藏夹侧边栏 - 保存、组织和搜索
- 将文件分组到项目中
- 在任何地方拖放文件
Git 集成
- 在文件夹浏览器中显示 Git 状态
- 提交和推送对话框
- 提交和推送活动文件、文件夹浏览器文件
- 提交和推送所有待处理的更改
- 在配置的 Git Diff 客户端中比较更改
- 撤销更改
- 添加被忽略的文件
- 克隆仓库
- 在 Git 客户端中打开
博客发布
- 使用 Markdown 创建或编辑博客文章
- 直接将您的 Markdown 发布到您的博客
- 随时重新发布文章
- 文章数据作为 YAML 元数据存储在 Markdown 中
- 随文章发送自定义元数据
- 支持 MetaWebLog、Wordpress 和 Medium(有限)
- 支持基于文档的博客(Jekyll、Hugo、Wyam、Ghost 等)
- 下载并编辑现有文章
- 非常快速的发布和下载过程
- 支持多个博客
- Dropbox 和 OneDrive 共享文章存储
非 Markdown 功能
- HTML 文件编辑,带实时预览
- 还可以编辑许多其他文件格式:
JSON、XML、CSS、JavaScript、TypeScript、FoxPro、C# 等 - 可选的云驱动共享配置
- 高 DPI 显示器感知
命令行功能
- 使用
mm
或markdown
启动 Markdown Monster - Markdown Monster 路径已添加到用户路径
mm readme.md
- 打开单个文件mm readme.md changelog.md
- 打开多个文件mm .
- 在当前文件夹中打开文件夹浏览器mm reset
- 重置所有 Markdown Monster 设置mm uninstall
- 删除所有非本地系统设置
可扩展性
- 使用 Commander 插件 通过 C# 自动化 Markdown Monster
- 使用 .NET 代码创建插件
- 提供 Visual Studio 项目模板
- 简单的接口,易于实现
- 访问 UI、菜单和活动文档
- 访问文档和应用程序生命周期事件
- 添加自定义 Markdown 解析器
- 替换预览渲染引擎
- 向左右侧边栏面板添加标签页
- 一些已发布的插件:
为什么要另一个 Markdown 编辑器?
如今 Markdown 无处不在,它正成为许多开发人员、作家和文档专家用来创建各种不同类型内容的首选格式。Markdown 在许多不同的地方使用:
- 源代码文档文件(如本文)
- 博客文章
- 产品文档
- 留言板消息输入
- 应用程序文本输入,用于格式化文本
就我个人而言,我在我的博客、留言板、当然还有 GitHub 上使用 Markdown,以及在一些允许格式化文本的自由格式文本字段的应用程序中使用 - 例如,在我们的网上商店中,产品描述就是用 Markdown 编写的。
拥有一个不妨碍您工作的专用 Markdown 编辑器,同时提供一些有用的功能并允许您添加自定义功能,使您的内容创作过程更加高效,这一点很重要。查看这篇文章,了解为什么使用专用的 Markdown 编辑器而不是通用文本编辑器来创建 Markdown 文档是有意义的。轻松将 Markdown 发布到任何支持 MetaWebLog 或 Wordpress API 端点的功能也很有用,因为它允许您轻松发布到博客或支持这些格式的任何应用程序。
Markdown Monster 想要吞噬您的 Markdown!
Markdown Monster 是一款适用于 Windows 的 Markdown 编辑器和查看器,让您可以创建、编辑或简单地预览 Markdown 文本。它提供了基本的编辑功能,并附带一些优秀的可用性功能,用于快速嵌入图像、链接、代码、表格、屏幕截图和其他标记。您可以获得一个响应迅速的文本编辑器,它具有 Markdown 语法高亮、可折叠的实时预览(以便您可以看到输出效果)、内联拼写检查以及一些优化的菜单选项,帮助您标记文本并将内容嵌入和链接到 Markdown 文档中。此外,实用功能还允许您快速跳转到命令行或资源管理器窗口、将文档提交到 Git,甚至在您喜欢的图像编辑器中编辑图像。
表格编辑器
Markdown Monster 包含一个强大的双向表格编辑器,可让您交互式编辑表格中的内容。您可以使用丰富的表格编辑器输入表格内容,并在以后重新打开 Markdown 表格代码进行编辑和重新格式化。
文件夹浏览器
Markdown编辑通常需要管理相关内容,如图片或多个链接文件等,Markdown Monster提供了一个文件夹浏览器,让你在编辑器中查看和导航文件。浏览器内置Git状态支持,你可以立即看到文件夹树中哪些文档发生了变化,并且可以轻松地查看和撤消更改。浏览器允许你导航文件夹,创建、删除和移动文件,还有许多选项可以查看、打开和编辑文件。
文件夹浏览器还支持搜索、移动和重命名文件,就像你期望的文件浏览器一样。
文档大纲
在处理长文档时,快速导航文档结构非常重要,文档大纲使你能够一目了然地看到文档结构,并快速跳转到任何部分。大纲还允许你选取文档ID,以便快速嵌入同一文档的链接。
Git集成
如今,使用Markdown通常意味着要处理Git仓库,Markdown Monster集成了编辑过程中需要执行的常见Git任务。你可以轻松地查看、提交和推送更改,以及克隆和创建新的仓库。
屏幕截图
屏幕截图插件支持两种不同的截图模式:
- Techsmith公司广受欢迎且功能多样的SnagIt屏幕截图工具
- 内置屏幕截图插件
要进行截图,只需点击截图按钮(相机图标),主应用程序会最小化,然后SnagIt或集成的截图工具会弹出,让你选择要截取的对象。使用SnagIt时,你可以使用大多数SnagIt原生的截图模式;对于内置工具,你可以选择屏幕上的窗口和控件。截图后会预览并提供编辑选项,完成后,截取的图像会直接嵌入并链接到Markdown内容中。
以下是SnagIt屏幕截图的运行效果:
这是自带的内置屏幕截图模块:
模板扩展
内置的代码片段插件允许你创建模板——包括使用C#代码的动态模板——可以通过输入扩展关键字、交互式选择或预定义的快捷键来展开文本。
博客发布
Markdown的一个常见用途是创建包含嵌入链接和内容的丰富博客文章,Markdown Monster使从各种来源整合内容变得容易。你可以轻松地通过从剪贴板粘贴、链接URL或文件中的图像,或使用内置的屏幕截图插件或SnagIt支持来嵌入图像。
撰写长篇博客文章和文章,并协调大量相关内容是我最初构建这个工具的主要原因之一,同时也是为了轻松地将内容发布和更新到各种类型的博客和内容生成器。
你可以使用博客发布功能将任何Markdown转换为博客文章。如果你使用WordPress、MetaWeblog API博客、Medium或Jekyll,你可以点击工具栏上的博客按钮并设置你的博客(MetaWebLog、WordPress或Medium),然后指定博客详细信息,如标题、摘要、标签和要发布的网站。只需点击一下按钮,就可以轻松发布和重新发布文章。你还可以从博客下载现有的博客文章,以Markdown格式编辑,然后重新发布。
可定制
Markdown Monster中的大多数编辑和UI功能都是可选的,可以打开和关闭。想要无干扰地工作,不看预览或拼写检查提示?你可以关闭它们。想要将配置数据存储在共享的云文件夹中?你也可以这样做。
想要一个不同于默认深色的编辑器主题,或者一个与你的博客或品牌相匹配的预览主题?你可以轻松切换到众多内置的编辑器主题之一。对于预览,你可以使用几个内置主题之一,或者使用简单的纯HTML/CSS模板添加自己的主题。你甚至可以创建链接到自己在线样式的主题。
编辑器和预览器基于HTML和JavaScript,因此你还可以应用任何自定义样式,如果你想要超越基本配置,甚至可以连接自定义JavaScript代码。预览主题很容易修改,因为它们只是简单的HTML和CSS模板。
可通过.NET插件扩展
Markdown Monster的关键特性之一,也是我构建它的主要原因是它是可扩展的,这样你和我可以在不使主产品变得臃肿的情况下插入额外的功能。
你可以在工具菜单中的Markdown Monster插件管理器中找到可安装的公共插件:
插件提供了各种功能。以下是一些例子:
目前注册表中的插件还不多,但这里有几个你可以查看的插件:
-
控制台
允许你将一个始终活动的终端控制台窗口固定在Markdown Monster的底部。 -
Commander C#脚本
一个基于C#的脚本插件,让你可以使用脚本代码自动化任务。对于简单的任务,这比创建完整的插件更快更容易。 -
保存图像到Azure Blob存储
让你将图像保存为Azure Blob存储项目,并在Markdown中嵌入上传资源的链接。 -
Gist
这个插件允许你从Gist打开和保存为Gist,还可以创建代码片段并将它们作为Gist嵌入到你的Markdown内容中。 -
Pandoc Markdown 解析器 这个插件提供了一个 PanDoc Markdown 处理器,可以用来替代默认的 MarkDig 解析器。这个插件还提供了大量文档转换选项,可以通过交互式对话框将 Markdown 转换为 PDF、DOC、EPub 和其他几种格式。
基于 .NET 的可扩展性
Markdown Monster 插件可以访问一个插件模型,让你可以操作和自动化任何打开的文档和编辑器,加载新文档,启动外部进程,添加菜单选项和其他 UI 功能,打开新的侧边栏,与整个 UI 进行交互,并附加到生命周期事件以获取各种应用程序事件的通知,如文档的打开和关闭、文档的保存以及应用程序的关闭等。
插件的复杂程度可以有很大的差异,从非常简单的自动化工具(如将终端窗口固定到 Markdown Monster 的控制台插件),到像 KavaDocs 插件这样复杂的工具,它管理着一个完整的文档应用程序,包含许多集成到 Markdown Monster 中的自定义窗口和侧边栏。
插件可以访问 Markdown Monster 的大多数功能,而且创建起来相当容易。我们以及一些第三方已经使用这个强大的插件模型创建了许多有用的插件,我鼓励你浏览这些插件,看看你能做些什么。
创建插件
Markdown Monster 的一个关键特性是你可以使用基于 .NET 的 Markdown Monster 插件模型创建自己的插件。创建新插件非常容易,我们提供了一个Visual Studio 项目模板扩展来帮助你开始创建插件。我们所有的插件也都在 GitHub 上开源,所以你可以很容易地查看其他插件是如何创建的。
你可以在这里找到创建插件的文档:
Markdown Monster 插件注册表
你可以为自己的使用创建插件,只需将它们复制到 %appdata%\Addins
文件夹中,或者如果你创建了一个你认为可能对他人有用的插件,你可以将其发布到 Markdown Monster 插件注册表。该注册表包含在 Markdown Monster 的插件管理器中显示的公共插件:
你可以在这个 GitHub 仓库中找到更多关于如何发布插件的信息:
其他插件 - 你想构建什么?
我能想到一些插件想法 - 一个快速提交到 Git 并推送的方法对于文档解决方案或基于 Git 的博客会很有用,这样你就可以轻松地将更改持久化到 GitHub 仓库。嵌入各种内容,如参考链接、AdSense 链接、亚马逊产品链接,一个新的文章模板引擎等等。
或者也许你有使用 Markdown 文本并提供 API 的自定义应用程序,允许你将 Markdown(或 HTML)发布到服务器。很容易构建一个自定义插件,让你获取 Markdown 文本或渲染后的 HTML,并将其推送到自定义应用程序的 REST 接口。
致谢
这个应用程序heavily依赖于几个第三方库,没有它们这个工具就不可能实现。非常感谢这些在 Markdown Monster 中广泛使用的库的制作者:
-
Ace Editor Ace Editor 是一个强大的基于 HTML 的编辑器平台,使得在浏览器中实现语法高亮的软件式编辑变得容易。Markdown Monster 使用 Ace Editor 作为主要的 Markdown 编辑体验,它嵌入在一个与 WPF 应用程序交互的 Web 浏览器控件中。
-
MarkDig Markdown 解析器 这个可扩展的 Markdown 解析器库用于在 Markdown Monster 中将 Markdown 渲染为 HTML。该库速度快,支持许多有用的扩展,如 GitHub 风格的 Markdown、表格支持、自动链接和各种附加协议。功能集可通过插件管道进行扩展。
-
MahApps.Metro 这个库提供了顶级应用程序外壳的 Metro 风格窗口和主题支持。这是一个易用的库,可以轻松构建漂亮的 WPF 应用程序。
-
Dragablz 这个库为编辑器提供了标签控件支持,允许漂亮的标签重新排序和溢出。该库还支持标签拖拽和布局停靠,尽管这个功能在 Markdown Monster 中未使用。
-
nHunspell 拼写检查 拼写检查通过 hunspell 库和 nhunspell 中的 .NET 包装器处理。这个库检查拼写错误并提供错误单词的查找。单词解析在 JavaScript 中完成,拼写检查在 .NET 中进行,通过将单词列表传递给 .NET 进行检查,这比在浏览器中使用 JavaScript 进行拼写检查要快得多。
还要感谢这些使用的库:
传播 Markdown Monster
如果你喜欢 Markdown Monster,请帮助传播。让你的朋友知道,向询问 Markdown 的人提及它,帮助我们发展这个社区,鼓励构建最好的 Markdown 编辑器。
以下是一些你可以帮助传播的方式:
- 在 Twitter 上关注我们:@MarkdownMonstr
- 在 Twitter 上发布关于 Markdown Monster 的推文并提及 @MarkdownMonstr
- 为这个仓库点星,点击头部的星星图标
- 通过 Chocolatey 安装,使用 Markdown Monster 包
- 编写一个插件:创建 Markdown Monster 插件
- 写一篇博客文章,提及你如何使用 Markdown Monster
- 链接到 Markdown Monster 网站,帮助我们提高 Google 排名
到目前为止,社区在反馈、错误报告和新功能想法方面的支持非常棒,我期待这种支持能够继续,并有一个不断增长的活跃用户和贡献者社区。
许可证
Markdown Monster 有几种许可模式:评估版、单用户、多用户和网站许可。
Markdown Monster 是源代码开放的,源代码在 GitHub 上可用,但它是一个需要付费许可才能继续使用的许可产品。该软件的版权归 © Rick Strahl, West Wind Technologies, 2015-2019 所有。
提供功能完整的免费评估版供评估使用,但继续使用需要购买许可证。
可以从以下网址购买许可证:
https://store.west-wind.com/product/markdown_monster
评估许可证
评估版具有注册版的所有功能,只是偶尔会显示免费软件通知。根据评估许可,不允许篡改或删除这些通知。
您可以使用带有通知的评估版,但如果您经常使用Markdown Monster或将其用于商业用途,请注册以支持进一步的开发和维护。
购买许可证
若要继续使用或将Markdown Monster用于商业用途,需要购买许可证。付费许可证可以移除免费软件通知。
每个许可用户必须拥有单独的许可证,但单个用户可以在多台机器上使用多个Markdown Monster副本。
多用户许可证的工作方式与单用户许可证相同,适用于许可证上指定的用户数量。组织站点许可证允许单个组织内的任意数量用户运行无限数量的Markdown Monster实例。
任何购买的许可证在购买时的主要版本(即1.00-1.99)内有效,该主要版本内的小版本更新始终免费。主要版本升级通常提供半价的升级价格,我们的政策是在购买后一年内允许免费升级到下一个主要版本。
源代码
Markdown Monster是开源的,源代码可在GitHub上获取:https://github.com/RickStrahl/MarkdownMonster,但上述许可仍然适用。我们允许修改源代码以供您的组织内部使用Markdown Monster,或向Markdown Monster主仓库提交拉取请求。在任何情况下,您都不得在组织外重新打包和重新分发Markdown Monster的任何部分。
帮助我们 - 获得免费许可证
我们鼓励将功能建议或错误修复的拉取请求提交回Markdown Monster仓库。任何提供有意义改进、帮助识别和/或修复错误,或积极推广Markdown Monster的贡献者都有资格获得免费许可证(由我们自行决定)。此外,Microsoft MVP、Insider和Microsoft员工可以申请免费许可证。
免责声明:无保证!
您明确承认并同意,使用许可应用程序的风险完全由您自己承担,且与满意质量、性能、准确性和努力相关的全部风险均由您承担。在适用法律允许的最大范围内,许可应用程序及其执行或提供的任何服务("服务")均按"原样"和"可用"提供,包含所有缺陷,不提供任何种类的保证,应用程序提供商特此声明不作任何明示、暗示或法定保证和条件,包括但不限于对适销性、质量满意度、特定用途适用性、准确性、平静享用权以及不侵犯第三方权利的暗示保证和/或条件。应用程序提供商不保证不会干扰您对许可应用程序的享用,不保证许可应用程序包含的功能或执行或提供的服务将满足您的要求,不保证许可应用程序或服务的运行不会中断或无错误,也不保证许可应用程序或服务中的缺陷会得到纠正。应用程序提供商或其授权代表提供的口头或书面信息或建议均不构成保证。如果许可应用程序或服务被证明有缺陷,您将承担所有必要的维修、修理或纠正的全部费用。
在任何情况下,作者或可能修改和/或重新分发本程序和文档的任何其他方均不对因使用或无法使用本程序而产生的任何商业、特殊、偶然或间接损害承担责任,包括但不限于数据丢失或数据不准确、您或第三方遭受的损失,或程序无法与任何其他程序一起运行,即使您或其他方已被告知可能发生此类损害。
© Rick Strahl, West Wind Technologies, 2016-2021