diff --git a/filename-extension.scm b/filename-extension.scm new file mode 100644 index 0000000..3b45392 --- /dev/null +++ b/filename-extension.scm @@ -0,0 +1,43 @@ +(id ".scm") +(stands-for "Scheme") +(description "Source code for any implementation or standard") + +(id ".sps") +(stands-for "Scheme program source") +(description "R6RS program") + +(id ".sls") +(stands-for "Scheme library source") +(description "R6RS (library ...) form") + +(id ".sld") +(stands-for "Scheme library definition") +(description "R7RS (define-library ...) form") + +(id ".rkt") +(stands-for "Racket") +(description "Racket source code with #lang at the top") + +(id ".scr") +(stands-for "Scribe") +(description "Text document written using Scheme Scribe") + +(id ".scrbl") +(stands-for "Scribble") +(description "Text document written using Scribble") + +(id ".ss") +(stands-for "Scheme source") +(description "Equivalent to .scm") + +(id ".sc") +(stands-for "Scheme") +(description "Equivalent to .scm [rare]") + +(id ".sch") +(stands-for "Scheme") +(description "Equivalent to .scm [rare]") + +(id ".sps7") +(stands-for "Scheme program source") +(description "R7RS program [rare]") diff --git a/generate.scm b/generate.scm index ac33b0d..bf243b6 100644 --- a/generate.scm +++ b/generate.scm @@ -221,6 +221,20 @@ '("ID" "Description") (map the-usual (sort-by-id (group-file 'id "hash-bang-syntax.scm")))))) +(define (filename-extension) + (registry + "Filename extension" + "filename-extension" + '(p) + (tabulate + '("Extension" "Stands for" "Description") + (map (lambda (entry) + (cons (assoc? 'class entry) + `((code ,(assoc1 'id entry)) + ,(assoc1 'stands-for entry) + ,(assoc1 'description entry)))) + (group-file 'id "filename-extension.scm"))))) + (define (foreign-status-set) (registry "Foreign status sets" @@ -298,6 +312,7 @@ ,(character-name) ,(hash-syntax) ,(hash-bang-syntax) + ,(filename-extension) ,(foreign-status-set) ,(foreign-status-property)))))