Mercurial > core / lisp/lib/organ/pkg.lisp
changeset 698: |
96958d3eb5b0 |
parent: |
f6a340b92274
|
author: |
Richard Westhaver <ellis@rwest.io> |
date: |
Fri, 04 Oct 2024 22:04:59 -0400 |
permissions: |
-rw-r--r-- |
description: |
fixes |
1 ;;; lib/organ/pkg.lisp --- Organ. 3 ;; This package contains a parsing framework for Org Syntax. It 4 ;; loosely follows the org-element.el conventions. 6 ;; Similar to the OG, we divide Org Syntax into two classes: 'objects' 7 ;; and 'elements'. The paragraph is a useful unit of measurement. 9 ;; Elements are syntactic components that exist at the same or greater 10 ;; scope than a paragraph. 12 ;; Objects are syntactic components that exist with a smaller scope 13 ;; than a paragraph. All objects can be contained within a paragraph. 15 ;; Expanding further, 'Lesser' elements are those which cannot contain 16 ;; any other elements. Paragraphs are a lesser element -- they can 17 ;; contain any number of objects, but cannot contain other elements 18 ;; themselves. 'Greater' elements can contain other elements - lesser 21 ;; Finally we have two high-level classes -- Headings and 22 ;; Sections. Sections contain both lesser and greater elements, and 23 ;; headings contain an optional section and any number of child 28 (:use :cl :cl-ppcre :std :parse/lex :sb-gray) 29 (:import-from :uiop :read-file-string) 32 :*org-todo-keyword-types* 41 :org-property-start-rx 51 :org-table-any-line-rx 52 :org-table-any-border-rx 54 :org-footnote-definition-rx 55 :*org-duration-hmm-rx* 56 :*org-duration-hmmss-rx* 57 :*org-duration-full-rx* 58 :*org-duration-mixed-rx* 60 :org-list-full-item-rx 110 :read-org-lines-from-string 113 :ORG-DIARY-SEXP :ORG-FOOTNOTE-REFERENCE :ORG-CLOCK 114 :ORG-BOLD :ORG-DRAWER :ORG-TABLE-CELL :ORG-CITATION 115 :ORG-ACTIVE-TIMESTAMP :ORG-DESCRIPTIVE-LIST 116 :ORG-EXPORT-SNIPPET :ORG-CITATION-REFERENCE :ORG-TARGET 117 :ORG-STANDARD-TABLE-ROW :ORG-LESSER-BLOCK :ORG-STRIKE-THROUGH 118 :ORG-AFFILIATED-KEYWORD :ORG-PLANNING-LINE 119 :ORG-INLINE-SOURCE-BLOCK :ORG-FOOTNOTE-DEFINITION 120 :ORG-UNORDERED-LIST :ORG-ORDERED-LIST :ORG-CODE 121 :ORG-INACTIVE-TIMESTAMP :ORG-KEYWORD 122 :ORG-INACTIVE-TIMESTAMP-RANGE :ORG-STAT-COOKIE :ORG-MACRO 123 :ORG-RADIO-TARGET :ORG-TABLE :ORG-TABLE-EL :ORG-ITALIC 124 :ORG-LINK :ORG-UNDERLINE :ORG-ENTITY :ORG-RULE-TABLE-ROW 125 :ORG-VERBATIM :ORG-INLINE-BABEL-CALL :ORG-LATEX-ENVIRONMENT 126 :ORG-PRIORITY :ORG-PROPERTY-DRAWER :ORG-PLAIN-TEXT 127 :ORG-LINE-BREAK :ORG-COMMENT :ORG-GREATER-BLOCK 128 :ORG-HORIZONTAL-RULE :ORG-PLANNING 129 :ORG-ACTIVE-TIMESTAMP-RANGE))