[media-types] Re: [IANA #1448814] text/vnd.hekaya re gistration request
Darrel Miller <[email protected]> Sat, 9 May 2026 18:36:59 +0000
| Newsgroups | gmane.ietf.types |
|---|---|
| Message-ID | <SN7PR01MB808992ABF41B30154C0F1E83A33A2@SN7PR01MB8089.prod.exchangelabs.com> |
This registration looks good to proceed. Darrel ________________________________ From: Amanda Baber via RT <[email protected]> Sent: Monday, May 4, 2026 10:33 PM Cc: [email protected] <[email protected]>; Darrel Miller <[email protected]> Subject: [IANA #1448814] text/vnd.hekaya registration request Hi Darrel, Sending a reminder for this request from April 6th. thanks, Amanda On Tue Apr 07 00:27:00 2026, amanda.baber wrote: > Hi Darrel, > > Would you be able to review this new request by April 20th? > > thanks, > Amanda > > ===== > > Name: Michael K Malak > > Email: [email protected] > > Media type name: text > > Media subtype name: vnd.hekaya > > Required parameters: N/A. > > Optional parameters: charset: UTF-8 is the default and expected > charset. Other charsets are not defined for this media type. > > Encoding considerations: 8bit > > Hekaya files are UTF-8 encoded plain text. Line endings may be LF or > CRLF (both are accepted and normalized during parsing). Content may > include Arabic, Latin, and mixed-script text with Unicode > bidirectional characters. > > Security considerations: Hekaya is a plain-text screenplay markup > format parsed via regex-based tokenization. It does not contain > executable code, macros, or active content. > > The parser performs no file I/O beyond reading the input file; the > renderer and PDF generator produce static output with no embedded > scripting. > > Notes ([[...]]) and boneyard (/* ... */) sections are stripped from > output by default, preventing unintended disclosure of annotations in > exported documents. > > The parser has zero runtime dependencies. The PDF generator depends on > pdfmake-rtl (HarfBuzz-based font shaping) with no network calls. > > HTML output uses standard DOM escaping. No user-supplied content is > interpreted as markup or code. > > No additional security considerations beyond those applicable to plain > text (RFC 2046, Section 3). > > Interoperability considerations: Hekaya extends the Fountain > screenplay markup format (https://fountain.io/) with support for > right-to-left (RTL) languages, primarily Arabic. Any valid Fountain > (.fountain) file is also valid Hekaya. > > Key extensions for Arabic: > - @ prefix for character name registration (Arabic has no uppercase) > - Arabic scene heading keywords (داخلي/خارجي for INT/EXT) > - Arabic transition keywords from Egyptian film industry conventions > - Bidirectional text support with Unicode BiDi algorithm > > Direction is auto-detected from content or set explicitly via title > page metadata (Direction: rtl). All regex patterns use the Unicode > flag (u) for proper Arabic character class matching. > > Multiple implementations exist: a TypeScript parser (@hekaya/parser on > npm), HTML renderer, PDF generator, and a CLI tool. > > Published specification: The Hekaya Markup Specification is published > at: https://michaelkmalak.github.io/hekaya/docs/spec/hekaya-markup- > spec > > Source: > https://github.com/michaelkmalak/hekaya/blob/main/docs/docs/spec/hekaya- > markup-spec.md > > The specification defines all markup elements, Arabic keyword > mappings, character registry behavior, bidirectional text handling, > and Fountain backward compatibility. Current version: v0.1. > > Applications which use this media: - @hekaya/parser — TypeScript > parser (zero dependencies), available on npm > - @hekaya/renderer — HTML renderer with RTL-aware CSS, available on > npm > - @hekaya/pdf — PDF generator with Arabic font shaping, available on > npm > - @hekaya/cli — Command-line tool (parse, render, export, validate, > convert), > available on npm and as standalone binaries on GitHub Releases > - hekaya_app — Flutter desktop + web WYSIWYG editor (in development) > > All tools are open source (MIT license): > https://github.com/michaelkmalak/hekaya > npm packages: https://www.npmjs.com/org/hekaya > > Fragment identifier considerations: None defined. > > Restrictions on usage: None. This media type is freely usable by any > application. > > Provisional registration? (standards tree only): No > > Additional information: > > 1. Deprecated alias names for this type: N/A > 2. Magic number(s): N/A > 3. File extension(s): .hekaya > 4. Macintosh file type code: N/A > 5. Object Identifiers: N/A > > General Comments: > > Person to contact for further information: > > 1. Name: Michael K Malak > 2. Email: [email protected] > > Intended usage: COMMON > > Hekaya (حكاية, Arabic for "story") was created to fill the gap left by > discontinued Arabic screenplay tools (Seyaq, Miktab) and the lack of > RTL support in the Fountain ecosystem. It serves Egyptian and Arabic- > speaking screenwriters through the Cairo Indie Filmmakers Club > (https://cairoindie.com/). > > Author/Change controller: Michael K Malak > (https://github.com/michaelkmalak) _______________________________________________ media-types mailing list -- [email protected] To unsubscribe send an email to [email protected]