Scrivener 的导入和导出

2018.01.08 15:59

从使用习惯上来说,很多人可能和我一样平时更多使用的写作软件是 Pages 或者是支持 MarkDown 语法的编辑器,构思和大纲整理阶段也偏好颜值更高的 MindNode,网页素材的收集用的是 Evernote,对待 Scrivener 的态度更像是把它作为专业软件来面对,「正襟危坐」撰写或组织长篇的场景才会打开 Scrivener。曾经也尝试把它融入到平时的工作流当中,例如,使用 Scrivener 的「便签簿」(⇧⌘↩︎)来快速记录、在 Scapple 里绘制思维导图,不过效果并不是很理想,归根结底可能是习惯和使用场景上并没有迫切的需求。

Scrivener 的输入和输出是分两个层面来实现的,一个是「编译」输出,这种方式是针对整个项目文稿的,支持的格式和可供调整的参数也丰富,不过给人的感觉略微繁琐一些。另一种是「导入/导出」,导入和导出可以只针对单个的文件,操作起来更灵活,可供输出和输入的格式上更少一些,对文本内容支持的更好,媒体内容则只能导入到「Research」资源文件夹。

编译输出的格式

编译界面中选择「编译对象」,可以看到 Scrivener 支持的多种输出格式,分为文档类的 .rtf、.doc、.odt;文本类的 .txt、.html;剧本类的 .fdx、.fountain;电子书类的 .ePub、.mobi;以及 MarkDown 格式。

PDF 只适合单向的打印和呈现,还原度最好,但是无法修改。所以文档交换中使用更多的是 .rtf、 .doc 和 .docx 格式,同时支持文本和图片。

DOC 和 DOCX 格式在处理正文缩进、列表项的时候会有些问题,并不能完美的转换。编译输出成 DOC 格式以后,标题、编号这些会保留最终的字体和字号形态,但是不会包含样式,在 Word 中打开后需要重新定义样式,推荐使用「选择相似文本」来快速的重新格式化内容。

ePub 格式里会多一个封面的选择,可指定「Research」资源文件夹中所包含的图片作为「封面图像」,另外,ePub 格式的定义中还可以进一步定义 CSS 样式表。

编译输出 MarkDown 格式会自动添加章节递进的 # 号标志,支持脚注和图片(以文件夹形式将文本和图片一起导出)。MarkDown 格式因为规范和标准问题,也不能做到完全的兼容,大纲层级和脚注方面没有问题,正文部分同样有和 DOC 格式相同的问题,不能识别和转换正文中的缩进和列表项。

需要注意的是,默认导出 MarkDown 格式时,标题前后都有 # 号,可以在格式定义中去掉「向标题添加结束哈希」的勾选只保留标题前的井号标记。

导入和导出格式

和编译的繁琐相比,导入导出要简单很多,也是整合外部内容的主要途径。导入的文档有两个地方可去,一个是「草稿」(Draft)文件夹,一个是「资源」(Research)文件夹,两者的区别是,草稿文件夹只能导入文本内容,资源文件夹可以单独导入媒体内容和网页。

导入和导出在格式的支持上近似,区别是导出时还提供了可选内容项:便笺、元数据、快照等。利用这个特性,可以快速的导出一份项目文稿的大纲。

「草稿」文件夹只支持文件不支持网页和媒体(图片、音频)的导入,「Research」 文件夹支持导入媒体文件和网页。导入 DOC 文件时还需要注意其中包含的图片的格式定义,Scrivener 会忽略图片排列方式不是「随文本移到」,文本绕排不是「内联」或嵌入式的图片。说简单一点就是只支持最基础的图片排列方式。所以在使用 Pages(Pages 导出为 DOCX) 或 Word 和 Scrivener 交换文件时,需要调整和检查各自的图片格式,否则图片会被「吃掉」。

导入菜单里还有一个比较特殊的点──「导入并拆分」文件,例如,导入 MarkDown 文件时支持按 MarkDown 标题拆分结构。导入到 Scrivener 后原来 md 文件中的标题会变成几个单独的节文件。其他文本内容也同样支持按定义的分隔符来拆分内容成单独的「节」。

如何合并文件呢?选择多个小节菜单里选择「文档 - 合并」(⇧⌘M),单篇内容拆分选择段落后用 ⌘K 就变成了不同的小节。

OPML 是思维导图的格式,能方便 Scrivener 和 MindNode 进行内容交换和协作,节点和分支将一一对应,备注可以转换成正文的部分(偏好设置中可定义 OPML 备注的处理方式)。

导入的文件会顺序插入到当前选择文件的后面,如果选择的是文件夹,会插入到当前文件夹并排列在最后。

Scrivener 的偏好设置界面能查看到导入和导出所支持的几种格式以及可供设置的参数。导入部分值得注意的是对 OPML 和 Scapple 备注的处理方式,然后是导出中图片分辨率的处理,如果是做印前准备,JPEG 压缩建议调到最大以保证图片的清晰度。,PDF 图像转换是针对文档中包含的 PDF 矢量图片的,这里可以定义矢量转成位图的分辨率,默认是 150 dpi,印刷推荐选择至少 300 dpi。

导入网页到 Research

Scrivener 的组织结构中,「资源」(Research)文件夹是个比较特殊的文件夹,可以导入单独的媒体文件和网页。网页的导入有两种方式:一种方式是直接导入 Safari 浏览器保存的「网页归档」文件(导入 - 文件),一种是通过 Scrivener 的导入菜单输入网址导入网页。

偏好设置中如果勾选了 HTML 部分的「Web 页转为文本」,可以在导入的网页时只保留文本的部分。作为参考素材使用时,还是图文并茂的网页更直观,切分窗口显示模式下可以边浏览边写作。

图片、PDF、音频、视频既可以通过导入菜单「文件 - 导入 - 文件」的方式导入,也支持直接拖拽到 Research 文件夹。

按 ⌘ del 组合键可以删除 Draft 和 Research 文件夹中文件,被删除的文件会保留在 Scrivener 边栏底部的废纸篓(Trash)当中,如果要清空废纸篓需要通过菜单项「项目 - 清空废纸篓」实现。

与外部文件夹同步

和导入导出并列「同步」是另一种特殊的内容整合方式,利用同步可以实现不同设备上内容的一致。Scrivener 的同步会在打开和关闭项目是自动检测内容变化并同步, 也可以通过菜单项「文件 - 同步 - 立即使用外部文件夹」手动同步。

同步设置中可以定义同步整个「草稿」文件夹,也可以仅同步集合中包含的文档。为了避免同步导致的内容修改丢失,建议勾选上「更新前对受影响的文档拍摄快照」。

Scrivener for iOS 至今仍未上架中国区,所以「与移动设备」的同步的部分一直未测试。

图示里,同步文件夹我指向的是 Dropbox 下新建的一个 Scrivener(以项目名称命名会更合适) 文件夹,只勾选了同步「草稿」文件夹,所以同步后的结果会是 Dropbox/Scrivener/草稿,所有的节会生成为 RTF 文件,自动编号按顺序排列。

如果在 Dropbox 中用其他软件编辑修改了 RTF 的内容,下次打开 Scrivener 或者执行手动同步时会自动更新现有的文件,并将发生变化的文件列举在「更新的文档」集合当中。为了避免修改的不可逆,默认同步时会先创建「快照」,所以通过检查器面板能方便的回滚和对比变化。

鉴于同步文件夹下都是 RTF 格式, Word 对它的支持又很良好,那么利用「与外部文件夹同步」实现多人协作编辑也就变成了可能。

只需要一个人安装 Scrivener,通过 Scrivener 发布项目并完成最终合并,其他人安装有 Word、Dropbox 即可。

  • 团队成员安装 Dropbox ,并共享同一个 Dropbox 文件夹;
  • 在 Scrivener 中创建写作项目,创建和命名好各个小节;
  • 设定「与外部文件夹同步」,在 Dropbox 共享文件夹下创建项目的文件夹;
  • 执行同步操作,Dropbox 下会新增一堆 RTF 的项目文件;
  • 按照分工,不同成员使用 Word 编辑 Dropbox 中的小节;
  • Scrivener 安装者负责定期同步和合并。

注意事项:Word 参与编辑者不要修改文件名,文件名只能在 Scrivener 中修改。不要同时修改同一个 RTF 文件。

「同步」和「导入导出」的核心都是文件格式的转换,Scrivener 的文件(.scriv)结构是以 RTF 为主的,实际测试 Word 能很好的兼容 Scrivener 生成的 RTF 格式,格式和图片都能得以保留。Mac 平台下的 Pages 和内容预览并不支持 RTF 图片的部分,推荐使用虚拟机里的 Word 来进行文档交换和外部编辑。

文档的恢复

Scrivener 里⌃Z 只适用于正文编辑时的撤销,「快照」只是针对单个文件的,基于文件层面的操作如果想反悔,只能从「备份」进行还原。在操作「导入」外部文件、「同步」、「合并」文件(文档 - 合并)、「拆分」文件(文档 - 拆分)前了解这一点很重要。

Scrivener 的备份和还原是半自动的方式,备份方便(自动备份),还原麻烦。菜单项「在 Finder 中显示支持文件夹」可以快速跳转到「备份」的目录,如果「偏好设置」中勾选了压缩,备份文件是以 zip 文件形式存在,要还原先需要解压缩,然后自行复制到其他文件夹。

偏好设置中可以定义自动备份的触发条件(例如,关闭项目是自动备份)和备份的数量。如果启用了「同步」,建议同时勾选备份中的「与移动设备同步之前备份」,这样在导入一堆和预期不一样的结果时还能退回去。

备份按照时间先后自行替换最早的一个,按数量依次循环。除了自动备份,通过菜单项「文件 - 备份 - 立即备份」可以手动创建备份。手动备份频率如果很密集的话建议把备份数量设置的更高一些。

除了 Scrivener 自己的备份体系,作为一个文件,还可以利用系统的 Time Machine 来还原 .scriv 文件到某一个时间点,当然,前提示你在系统偏好设置中启用了「Time Machine」,并且没有将你保存 .scriv 的文件夹排除在外。平时使用中个人更喜欢这种回退方式,比还原 Scrivener 的 zip 备份方便,而且颗粒度更细一些。

Comments
Write a Comment