{"id":15437129,"url":"https://github.com/awwright/rfc-html","last_synced_at":"2025-03-20T08:47:50.958Z","repository":{"id":8027950,"uuid":"9437305","full_name":"awwright/rfc-html","owner":"awwright","description":"Converts the text/plain RFCs to pretty HTML","archived":false,"fork":false,"pushed_at":"2014-06-28T23:30:32.000Z","size":180,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-10-18T10:29:03.965Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://magnode.org/rfc","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/awwright.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-04-14T23:50:11.000Z","updated_at":"2021-11-21T00:13:31.000Z","dependencies_parsed_at":"2022-08-06T06:15:23.706Z","dependency_job_id":null,"html_url":"https://github.com/awwright/rfc-html","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/awwright%2Frfc-html","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/awwright%2Frfc-html/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/awwright%2Frfc-html/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/awwright%2Frfc-html/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/awwright","download_url":"https://codeload.github.com/awwright/rfc-html/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244583196,"owners_count":20476233,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-01T18:55:13.830Z","updated_at":"2025-03-20T08:47:50.937Z","avatar_url":"https://github.com/awwright.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RFC to HTML converter\n\nOnce upon a time, standards specifications were published as plain text documents, to be printed on character printers.\nOnes with monospaced fonts and a set number of lines per page.\nAnd no graphics, except ASCII art.\n\nThis era is behind us, but relics of this age remain.\n\nThis nifty program converts the plain-text RFCs to HTML.\n\n## Getting Started\n\nYou can download all the RFCs in use by this repository:\n\n    $ make download\n\nThen, generate their HTML files:\n\n    $ make -k\n\n(The `-k` option tells make to keep going even if one of the files produces an error. If you're really adventurous, try `-j`)\n\n## Configuration file format\n\nThe .conf files annotate the .txt files with metadata. They can be used to imbue the RFC with all sorts of semantic information.\n\nThe file is a newline-seperated list of configuration directives, in key=value format. The key is a property path, seperated by a period. The value is a JSON value or any string.\n\nFor instance, declaring a portion to be a definition list or a table, or ASCII art, etc.\n\n    line.64.format = toc\n\nThis declares that the section which starts on line 64 is a Table of Contents.\n\nThe formatters are:\n\n * toc (Table of Contents)\n * dl (Definition list)\n * abnf (an ABNF grammar definition, a type of definition list)\n * ul (unordered list)\n * ol (ordered list)\n * art (ASCII art)\n * table (An ASCII art table)\n * p (Standard paragraph)\n * note (An aside/note paragraph)\n\nNormally the formatter can make pretty good guesses as to which section is what type. Lines without any indenting are headings, lines with three spaces indent are paragraphs.\n\nIt can also be used to correct formatting mistakes, and specify the formatting conventions used (which vary from file to file).\n\nA range of lines can be specified to be modified:\n\n    line.40-50.unindent = 3\n\nThis removes up to three spaces from the beginning of lines 40 through 50 inclusive.\n\n    line.40-50.indent = 3\n\nThe indent property adds leading spaces to a line. If negative, it chops off that many characters, spaces or not. (To remove only spaces, use the \"unindent\" property.)\n\n    line.40-50.append = string\n    line.40-50.prepend = string\n\nAppends and prepends content (for now you can't use this to add whitespace, since that is stripped in the course of parsing the config file).\n\nNormally page breaks will create a new section (Perhaps by default they shouldn't create a new section unless explicitly specified, but whatever).\nIf you want to define that a page break should be ignored, then you must specify so. The second blank line after the heading, the one before the page body starts, is normally counted, and so needs to be set to be ignored:\n\n    line.1234.continue = 1\n\nThis will tell the parser to skip over that line as if it doesn't exist.\nNormally the three lines at the end of the page, before the footer, are ignored, if there are more than three blank lines due to orphan control, those need to be explicitly ignored as well.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fawwright%2Frfc-html","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fawwright%2Frfc-html","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fawwright%2Frfc-html/lists"}