如何使用pandoc在linux命令行上转换文件

您可以在Linux上使用pandoc在40多种文件格式之间进行转换。您还可以使用它创建一个简单的文档作为代码系统,方法是使用Markdown编写文档,使用git存储文档,并以其支持的任何格式发布文档。...

您可以在Linux上使用pandoc在40多种文件格式之间进行转换。您还可以使用它创建一个简单的文档作为代码系统,方法是使用Markdown编写文档,使用git存储文档,并以其支持的任何格式发布文档。

文档转换和文档作为代码

如果你有一个文件在潘多克的许多支持的文件格式中的任何一种,将它转换成其他任何一种都是轻而易举的。这是一个方便的工具!

但是当你把它作为一个简单的docs-as代码系统的基础时,pandoc的真正威力就变得显而易见了。文档作为代码的前提是采用软件开发的一些技术和原则,并将它们应用于编写文档,特别是软件开发项目。不过,您可以将其应用于任何类型文档的开发。

软件开发人员使用他们喜欢的编辑器或集成开发环境(IDE)来编写他们的程序。他们键入的代码保存在文本文件中。这些包含程序的源代码。

他们使用版本控制系统,或者VCS(Git是最流行的),来捕获源代码在开发和增强时的变化。这意味着程序员拥有源代码文件所有版本的完整历史记录。他或她可以快速访问任何以前版本的文件。Git将文件存储在存储库中。每个开发人员的计算机上都有一个本地存储库和一个中央的、共享的、远程的存储库,这些存储库通常是云托管的。

当他们准备生成程序的工作版本时,他们使用编译器读取源代码并生成二进制可执行文件。

通过使用轻量级的、基于文本的标记语言编写文档,您可以使用VCS来控制您的编写。当您准备分发或发布文档时,可以使用pandoc生成所需的任意多个不同版本的文档,包括基于web(HTML)、文字处理或排版(LibreOffice、Microsoft word、TeX)、可移植文档格式(PDF)、电子书(ePub)等。

您可以从一组版本控制的轻量级文本文件中执行所有这些操作。

安装pandoc

要在Ubuntu上安装pandoc,请使用以下命令:

sudo apt-get install pandoc

如何使用pandoc在linux命令行上转换文件

在Fedora上,您需要的命令如下:

sudo dnf install pandoc

如何使用pandoc在linux命令行上转换文件

在Manjaro上,您需要键入:

sudo pacman -Syu pandoc

如何使用pandoc在linux命令行上转换文件

您可以使用--version选项检查已安装的版本:

pandoc --version

如何使用pandoc在linux命令行上转换文件

使用不带文件的pandoc

如果不使用任何命令行选项而使用pandoc,它也接受键入的输入。只需按Ctrl+D就可以表示您已经完成了输入。pandoc希望您输入降价格式,并生成HTML输出。

让我们看一个例子:

pandoc

如何使用pandoc在linux命令行上转换文件

我们已经键入了几行降价,即将按Ctrl+D。

如何使用pandoc在linux命令行上转换文件

一旦我们这样做,pandoc就会生成等价的HTML输出。

如何使用pandoc在linux命令行上转换文件

不过,要对pandoc做任何有用的事情,我们确实需要使用文件。

减价基础

Markdown是一种轻量级标记语言,它赋予某些字符特殊的含义。可以使用纯文本编辑器创建标记文件。

标记可以很容易地阅读,因为没有视觉上麻烦的标签来分散文本的注意力。降价文档中的格式类似于它所表示的格式。以下是一些基础知识:

  • 要用斜体强调文本,请用星号将其括起来。*我们将强调这一点*
  • 若要加粗文本,请使用两个星号。**这将以粗体显示**
  • 标题由数字符号/散列标记(#)表示。文本与哈希值之间用空格隔开。使用一个哈希值作为顶级标题,两个哈希值作为第二级标题,依此类推。
  • 要创建带项目符号的列表,请在列表的每一行开头加一个星号,并在文本前**空格。
  • 要创建带编号的列表,请在每行的开头加上一个数字和一个句点,然后在文本前**空格。
  • 要创建超链接,请将站点名称括在方括号([])中,并将URL括在圆括号[()]中,如下所示:[Link To How To Geek](https://www.tl80.cn/).
  • 要**图像,请在括号(![]). 为括号中的图像键入任何可选文本。然后,将指向图像的路径括在括号[()“]中。举个例子:![极客](HTG.png格式).

我们将在下一节中介绍更多的例子。

相关报道:什么是降价?你如何使用它?

转换文件

文件转换非常简单。pandoc通常可以从文件名中找出您正在使用的文件格式。在这里,我们将从一个降价文件生成一个HTML文件。-o(output)选项告诉pandoc我们要创建的文件的名称:

pandoc -o sample.html sample.md

如何使用pandoc在linux命令行上转换文件

我们的降价文件样本,示例.md,包含下图所示的标记的简短部分。

如何使用pandoc在linux命令行上转换文件

一个名为示例.html已创建。当我们双击文件时,我们的默认浏览器将打开它。

如何使用pandoc在linux命令行上转换文件

现在,让我们生成一个可在LibreOffice Writer中打开的文档格式文本文档:

pandoc -o sample.odt sample.md

如何使用pandoc在linux命令行上转换文件

ODT文件的内容与HTML文件相同。

如何使用pandoc在linux命令行上转换文件

整洁的触摸是图像的替代文本,也用于自动生成图形的标题。

如何使用pandoc在linux命令行上转换文件

指定文件格式

-f(from)和-t(to)选项用于告诉pandoc要从哪些文件格式转换为哪些文件格式。如果您使用的是与其他相关格式共享文件扩展名的文件格式,这将非常有用。例如,TeX和LaTeX都使用“.TeX”扩展名。

我们还使用了-s(独立)选项,这样pandoc将生成一个完整的、自包含的、格式良好的LaTeX文档所需的所有LaTeX序言。如果没有-s(standalone)选项,输出仍然是格式良好的LaTeX,可以**到另一个LaTeX文档中,因此无法作为独立的LaTeX文档进行正确的解析。

我们键入以下内容:

pandoc -f markdown -t latex -s -o sample.tex sample.md

如何使用pandoc在linux命令行上转换文件

如果你打开示例.tex“在文本编辑器中,您将看到生成的乳胶。如果您有一个LaTeX编辑器,您可以打开TEX文件来查看如何解释LaTeX排版命令的预览。缩小窗口以适应下面的图像使显示器看起来很局促,但实际上,它很好。

如何使用pandoc在linux命令行上转换文件

我们用了一个叫做Texmaker的乳胶编辑器。如果要在Ubuntu中安装,请键入以下内容:

sudo apt-get install texmaker

在Fedora中,命令是:

sudo dnf install texmaker

在Manjaro,使用:

sudo pacman -Syu texmaker

使用模板转换文件

你可能已经开始了解潘多克提供的灵活性了。您可以编写一次,并以几乎任何格式发布。这是一个伟大的壮举,但文件看起来确实有点香草。

通过模板,您可以指定pandoc生成文档时使用的样式。例如,您可以告诉pandoc使用级联样式表(CSS)文件中定义的样式和--CSS选项。

我们创建了一个包含以下文本的小CSS文件。它将更改一种样式的级别标题上方和下方的间距。它还会将文本颜色更改为白色,将背景颜色更改为蓝色:

h1 { color: #FFFFFF; background-color: #3C33FF; margin-top: 0px; margin-bottom: 1px; }

完整命令如下所示。请注意,我们还使用了独立选项(-s):

pandoc -o sample.html -s --css sample.css sample.md

pandoc使用了我们的简约CSS文件中的单一样式,并将其应用于一级头文件。

如何使用pandoc在linux命令行上转换文件

在处理HTML文件时,另一个可用的微调选项是在标记文件中包含HTML标记。这将作为标准HTML标记传递到生成的HTML文件。

不过,当您只生成HTML输出时,应该保留此技术。如果您使用多种文件格式,pandoc将忽略非HTML文件的HTML标记,它将作为文本传递给这些文件。

我们还可以指定生成ODT文件时使用的样式。打开一个空白的libreofficewriter文档,调整标题和字体样式以满足您的需要。在我们的示例中,我们还添加了页眉和页脚。将文档另存为“odt”-模板.odt.”

我们现在可以将其作为模板使用--reference doc选项:

pandoc -o sample.odt --reference-doc=odt-template.odt sample.md

如何使用pandoc在linux命令行上转换文件

将其与前面的ODT示例进行比较。此文档使用不同的字体,有彩色标题,包括页眉和页脚。然而,它是由完全相同的示例.md“降价文件。

如何使用pandoc在linux命令行上转换文件

参考文档模板可用于指示文档生产的不同阶段。例如,您可能有带有“草稿”或“供审阅”水印的模板。没有水印的模板将用于定稿文档。

生成PDF

默认情况下,pandoc使用LaTeX PDF引擎生成PDF文件。确保满足适当的乳胶依赖关系的最简单方法是安装乳胶编辑器,例如Texmaker。

这是一个相当大的安装,虽然得克萨斯和乳胶都相当大。如果你的硬盘空间有限,或者你知道你永远不会使用TeX或LaTeX,你可能更喜欢生成一个ODT文件。然后,您可以在libreofficewriter中打开它并将其保存为PDF。

作为代码的文档

使用Markdown作为写作语言有以下几个优点:

  • 在纯文本文件中工作速度很快:它们的加载速度比同样大小的字处理器文件快,而且在文档中的移动速度也更快。许多编辑器,包括gedit、Vim和Emacs,都使用语法高亮和标记文本。
  • 您将拥有文档所有版本的时间表:如果您将文档存储在VCS(如Git)中,您可以很容易地看到同一文件的任何两个版本之间的差异。然而,只有当文件是纯文本时,这才真正起作用,因为VCS希望使用纯文本。
  • 风投可以记录谁做了任何改变,以及什么时候做的改变:如果你经常在大型项目上与他人合作,这尤其有用。它还为文档本身提供了一个中央存储库。许多云托管的Git服务,如GitHub、GitLab和BitBucket,在其定价模型中都有免费的层。
  • 您可以以多种格式生成文档:只需几个简单的shell脚本,就可以从CSS和引用文档中提取样式。如果您将文档存储在与持续集成和持续部署(CI/CD)平台集成的VCS存储库中,则无论何时构建软件,都可以自动生成这些文档。

相关:什么是GitHub,它的用途是什么?

最后的想法

潘多克有更多的选择和功能,比我们在这里所涵盖的。大多数文件类型的转换过程都可以调整和微调。要了解更多信息,请查看pandoc官方网页(非常详细)上的优秀示例。

  • 发表于 2021-04-02 00:59
  • 阅读 ( 236 )
  • 分类:互联网

你可能感兴趣的文章

使用简单的shell脚本修复html格式

...修补补,你会喜欢shell脚本,因为总是有调整要做。关于如何使用这些模式作为其他脚本的基础的一些想法包括: ...

  • 发布于 2021-03-13 00:12
  • 阅读 ( 240 )

如何在linux和macos上将手册页缩短为可读的解释

... 使用tldr快速了解如何使用命令 ...

  • 发布于 2021-03-14 01:21
  • 阅读 ( 197 )

这就是软件安装程序在windows、macos和linux上的工作方式

... 让我们看看软件是如何安装在三大桌面平台上的:Windows、macOS和Linux。 ...

  • 发布于 2021-03-14 18:20
  • 阅读 ( 270 )

在linux中如何方便地在文档格式之间转换

...注意上面的参考文件中配置的字体(标题1为Arial Black等)如何显示在下面的转换文件中。您可以根据需要创建任意数量的这些引用文件(例如,每个客户机一个)。然后在编写时完全忽略格式,并在转换时一步应用样式。 ...

  • 发布于 2021-03-14 18:46
  • 阅读 ( 286 )

如何在windows命令行上转义文件路径中的空格

...这只在PowerShell中有效,但始终有效。) 我们将向您展示如何使用每种方法。 用引号(“)括起路径 确保Windows正确处理文件路径的标准方法是用双引号(“)字符将其括起来。例如,使用上面的示例命令,我们只需运行以下命...

  • 发布于 2021-04-01 11:39
  • 阅读 ( 582 )

如何使用shopt定制bashshell

...shshell的行为,您可以控制超过50个设置。我们将向您展示如何按照您喜欢的方式定制您的Linux系统。 shopt内置 shopt内置是bashshell所有版本的一部分,因此不需要安装任何东西。多年来,shopt提供的选项数量稳步增加。所以,Bash...

  • 发布于 2021-04-01 12:30
  • 阅读 ( 176 )

如何在linux上创建手册页

...的内容上,而不是和一组晦涩难懂的宏作斗争。 相关:如何使用Linux的man命令:隐藏的秘密和基础 潘多克前往救援 pandoc程序读取标记文件并生成大约40种不同标记语言和文档格式的新文件,包括手册页。它完全改变了手册页的...

  • 发布于 2021-04-01 21:08
  • 阅读 ( 276 )

如何在linux上的bash中设置环境变量

Linux上有多种类型的环境变量。了解如何查看它们,为本地和远程登录创建它们,并使它们在重新启动后仍然有效。 环境变量的工作原理 启动终端窗口及其内部的shell时,会引用一组变量,以确保shell配置正确。这些变量还确...

  • 发布于 2021-04-02 06:44
  • 阅读 ( 224 )

如何在linux上使用tail命令

...据。它甚至可以实时显示添加到文件中的更新。我们教你如何使用它。 他杀了尾巴吗? tail命令显示文件末尾的数据。通常,新数据会添加到文件的末尾,因此tail命令是查看文件中最新添加内容的一种快速简便的方法。它还可...

  • 发布于 2021-04-02 17:32
  • 阅读 ( 185 )

如何在linux中获得文件或目录的大小

...ls的输出一致,并且与两个字节的文件长度一致。 相关:如何使用ls命令列出Linux上的文件和目录 现在,我们将使用du命令查看文件大小: du geek.txt 上面说是四号,但是四号是什么? 有积木,也有积木 当du以块的形式报告文件...

  • 发布于 2021-04-02 20:13
  • 阅读 ( 133 )
W6040619
W6040619

0 篇文章

相关推荐