#fountain #html #格式 #转换 #解析 #剧本 #fdx

bin+lib jumpcut

JumpCut 是一个库和 CLI 工具,可以将 Fountain 格式的文本文件转换为 FDX 和 HTML 格式

2 个版本

0.7.1 2024 年 6 月 16 日
0.7.0 2024 年 6 月 16 日

1252解析实现

MIT 许可证

110KB
2K SLoC

Rust 1.5K SLoC // 0.1% comments Handlebars 436 SLoC

JumpCut

JumpCut 是一个 Rust 工具,用于将 Fountain 剧本标记格式 转换为 Final Draft FDX 文件(好莱坞行业标准)或转换为 HTML。

JumpCut 可以用作命令行工具、Rust 库或 WASM 包。因此,该项目使用 cargo 功能,以便可以关闭不同的部分(如命令行工具),从而节省二进制文件大小。

安装

如果您想将 JumpCut 用作命令行工具,您可以通过 Cargo 进行安装。

cargo install jumpcut

如果您想将 JumpCut 用作库,您可以在 Cargo.toml 中指定以下内容,以便不将命令行功能添加到您的项目中

jumpcut= {版本= "0.7",默认-功能= false,功能= ["lib-only"] }

使用方法

安装完成后,您可以将文本文件传递给 JumpCut,它将解析它并以 FDX、HTML 或 JSON 的形式输出。以下列出了帮助文本中的全部选项。

USAGE:
    jumpcut [OPTIONS] <input> [output]

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

OPTIONS:
    -f, --format <format>    Formats (FDX, HTML, JSON) [default: fdx]

ARGS:
    <input>     Input file, pass a dash ("-") to receive stdin
    <output>    Output file, stdout if not present

要在 Rust 程序中使用 JumpCut,您可以查看 main.rs 文件以获取调用库的示例,但基本原理如下所示

let mut screenplay: Screenplay = parse(&content); // content is a String provided by your application
let output_fdx: String = screenplay.to_final_draft();
let output_html: String = screenplay.to_html();

开发计划

我没有当前计划扩展此项目。我已经使用它内部几年了,并且它满足了我的当前需求(在本地上转换我的剧本并支持我的网站 FountainLoader.com)。

我已将其开源,以防它对其他开发者和编剧有用。

变更日志

  • 0.7.1:改进文档。
  • 0.7.0:首次公开发布。支持 FDX、HTML 和 JSON 输出。

许可证

JumpCut 根据 MIT 许可证许可。

依赖关系

~4–6.5MB
~115K SLoC