Skip to content

[pm3] accept tags in either .txt or .toml - #348

Open
shish wants to merge 1 commit into
masterfrom
pr348
Open

[pm3] accept tags in either .txt or .toml#348
shish wants to merge 1 commit into
masterfrom
pr348

Conversation

@shish

@shish shish commented Mar 17, 2026

Copy link
Copy Markdown
Owner

Looking at

  • custom .txt format
  • json
  • yaml
  • toml

with the goals of

  • be human readable + writable
  • be machine readable + writable
  • work consistently across multiple implementations (upload, edit, processmedia, lint, scripts)

txt:

  • the most compact format (the only format which supports chained tags directly)
  • looks very simple
  • quoting is confusing (source: http://youtube.com/asdfas is a bug)
  • no support for newlines
  • needs a custom implementation for each service (upload, processmedia, and scripts are already incompatible...)

json:

  • most languages have support built-in, no need to even use a library
  • not as human-friendly as the alternatives
  • more verbose than the alternatives
  • jq is a nice command line tool

yaml:

  • weird quoting rules (en is a string, jp, is a string, kr is a string, no is a boolean)

toml:

  • seems consistent across languages
  • easy enough for humans

I'd like to have one format which all tools support, but temporarily having support for multiple formats in parallel means we can migrate by parts

Looking at
- custom .txt format
- json
- yaml
- toml

with the goals of
- be human readable + writable
- be machine readable + writable
- work consistently across multiple implementations (upload, edit, processmedia, lint, scripts)

txt:
- the most compact format (the only format which supports chained tags directly)
- looks very simple
- quoting is confusing (`source: http://youtube.com/asdfas` is a bug)
- no support for newlines
- needs a custom implementation for each service (upload, processmedia, and scripts are already incompatible...)

json:
- most languages have support built-in, no need to even use a library
- not as human-friendly as the alternatives
- more verbose than the alternatives
- jq is a nice command line tool

yaml:
- weird quoting rules (`en` is a string, `jp`, is a string, `kr` is a string, `no` is a boolean)

toml:
- seems consistent across languages
- easy enough for humans

I'd like to have one format which all tools support, but temporarily having support for multiple formats in parallel means we can migrate by parts
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant