~indieterminacy/1q20hqh_oqo_parsing_qiuynonical

interpreter which can identify combinations of gemtext koutliner and qiuy syntaxes
iw-nq	adding-ignore-file-rules-for-repo
iw-nq	adding-ignore-file-rules-for-repo
dw-mq	correcting-block-syntax

refs

main
browse  log 

clone

read-only
https://git.sr.ht/~indieterminacy/1q20hqh_oqo_parsing_qiuynonical
read/write
git@git.sr.ht:~indieterminacy/1q20hqh_oqo_parsing_qiuynonical

You can also use your local clone with git send-email.

#Description

Parser of format intersections of the following syntaxes:

  • Gemtext
  • Koutliner
  • URI
  • Dates
  • Qiuy

#Wider Components

It is designed in service of project Icebreaker.

Icebreaker components include:

https://git.sr.ht/~indieterminacy/1q20hqh_kq-owo_interpreting_gemtext-glint

https://git.sr.ht/~indieterminacy/1q20hqh_kq_parsing_gemtext

https://git.sr.ht/~indieterminacy/1q20hqh-kq_oq_parsing-gemtext_txr

https://git.sr.ht/~indieterminacy/1q20hqh_oqo_parsing_glean

https://git.sr.ht/~indieterminacy/1q20hqh_oqo_parsing_glunar

https://git.sr.ht/~indieterminacy/3q50mqm_rdf

https://git.sr.ht/~indieterminacy/5q50jq_oq_configuring_emacs

https://git.sr.ht/~indieterminacy/1q30yq-kq_oq_visualising-gemtext_emacs

https://git.sr.ht/~indieterminacy/1q30yq_oq_oqo_emphasising_emacs_svg-mode

https://git.sr.ht/~indieterminacy/1q20bwb_oq_transferring_emacs

https://git.sr.ht/~indieterminacy/1q20hqh-kq_oq_parsing-html_txr

https://git.sr.ht/~indieterminacy/iq-nq_qiuy-knowledge-management/tree/main/item/iq-nq_qiuy-knowledge-management.gmi

https://git.sr.ht/~indieterminacy/2q60mqm_qiuy/tree/main/item/ueu-nen/iwi_2022-03-09

#Mascot

Qiuynonical Mascot

#Features

Designed, to use and export the annotations Quiy (a "recursive-modelling-language").

It is implemented in TXR, a highly flexible parser and Lisp

https://www.nongnu.org/txr/

It shall be expanded to output and read canonical sexpressions and comments from other file formats (including TXR itself).

Once this happens Icebreakers infrastructure shall be able to operate in a literate-programming fashion, providing considerable flexibility for describing problems and interacting between coding and knowledge-management.

#Usage

Withholding flags make TXR only output defined by scripts

The '-l' flag outputs captured content as a datalisp

The '-B' flag outputs captured content as multi-dimensional arrays

#Examples

#rw-iqi stable

###Stable

The examples show how syntaxes can coexist inside the same are. Qiuynonical is capable of having these syntaxes iterating and recursing within the same line - not only across lines.

  • identification of a gemtext header, featuring a task, "3:rqr"
  • identification of a gemtext uri - with uri-query
  • uri-query features date; qiuy-annotations - with descriptors
((("### rqr\ttroubleshoot" "=> gemini://icebreakerrr.io/q=2022-02&iq-fw tq-iq_iqi_data-concerning-policy_state  REM rqr-ueu_testing-search-i repeating-qiuy test IM A URI COMMENT mq-mqm_quiy"
    "=> gemini://icebreakerrr.io/q=2022-02&iqi tw-iw_iwi_data-concerning-policy_state  REM rqr-ueu_testing-search-ii repeating-qiuy test IM A URI COMMENT mq-mqm_quiy")
   ((("3:###" (("3:rqr" ("3:rqr" "hhh-i-b" "1:\t" "12:troubleshoot")))
      "0:")
     ("2:=>" ((("6:gemini" "3:://" "12:icebreakerrr" "1:." "2:io") ("3:/q=" "4:2022:1:-:2:02:1:&:2:iq:1:-:2:fw")
               ("2:tq:1:-:2:iq" "1:_" "3:iqi") (("2:tq:1:-:2:iq" "1:_" "3:iqi") "1:_" "28:data-concerning-policy_state")
               ("2:tq:1:-:2:iq" "1:_" "3:iqi") (("2:tq:1:-:2:iq" "1:_" "3:iqi") "1:_" "28:data-concerning-policy_state")
               ("3:rqr:1:-:3:ueu" "1:_" "2:te") "hhh-ici" "2:re" "hhh-ici" "2:te"
               "hhh-ici" "2:mq:1:-:3:mqm" ("2:mq:1:-:3:mqm" "1:_" "4:quiy")))
      "0:" (("pq-ia" "1:=" "1:>" ("6:gemini" "3:://" "12:icebreakerrr" "1:." "2:io")
             ("3:/q=" "4:2022:1:-:2:02:1:&:3:iqi") ("6:gemini" "3:://" "12:icebreakerrr" "1:." "2:io")
             ("3:/q=" "4:2022:1:-:2:02:1:&:3:iqi") ("2:tw:1:-:2:iw" "1:_" "3:iwi")
             (("2:tw:1:-:2:iw" "1:_" "3:iwi") "1:_" "28:data-concerning-policy_state")
             ("3:rqr:1:-:3:ueu" "1:_" "2:te") "hhh-ici" "2:re" "hhh-ici" "2:te"
             "hhh-ici" "2:mq:1:-:3:mqm" ("2:mq:1:-:3:mqm" "1:_" "4:quiy")))
      "0:"))))
  (#b'7e54d57c96f3dd8d 862dc927d7f0ddb4 1ce920e4527ec613 be686b4c97ce9111'
   #b'2f58f330ddee1c0f d0dd22ea75dc0030 e77679509b0a745d b4dae7a41d19ceec'))
  • array featuring identification of emacs-hyperbole sequence for buttons
  • buttons comprise one or more directory references inside
((("# rqr-hqh_uw\tvalidate-parse_output" "=> /../nqn_false-root-dir-request/nqn_subfolder/fq_filename.kotl   REM iq-rw\tthis is not a legal pathway in linux iq-rw_nqn-kek\tyou-cannot go-above root-pathway"
    "=> /../../nqn_false-root-dir-request/nqn_subfolder/fq_filename.kotl   REM iq-rw\tthis is not a legal pathway in linux iq-rw_nqn-kek\tyou-cannot go-above root-pathway"
    "=> fq_filename.kotl")
   ((("1:#" ((("3:rqr:1:-:3:hqh" "1:_" "2:uw") (("3:rqr:1:-:3:hqh" "1:_" "2:uw") "hhh-i-b" "1:\t" "21:validate-parse_output")))
      "0:")
     ("2:=>" (("1:/:3:../" "3:nqn" ("3:nqn" "1:_" "22:false-root-dir-request" "1:/")
               "3:nqn" ("3:nqn" "1:_" "9:subfolder" "1:/") "2:fq" "1:." "4:kotl"
               "2:iq:1:-:2:rw" ("2:iq:1:-:2:rw" "hhh-i-b" "1:\t" "4:this:2:is:3:not")
               "2:hw" "hhh-ici" ("2:iq:1:-:2:rw" "1:_" "3:nqn:1:-:3:kek") (("2:iq:1:-:2:rw" "1:_" "3:nqn:1:-:3:kek") "hhh-i-b" "1:\t" "10:you-cannot:8:go-above:12:root-pathway")))
      "0:" (("pq-ia" "1:=" "1:>" "1:/:3:../:3:../" "1:/:3:../:3:../" "3:nqn"
             ("3:nqn" "1:_" "22:false-root-dir-request" "1:/") "3:nqn" ("3:nqn" "1:_" "9:subfolder" "1:/")
             "2:fq" "1:." "4:kotl" "2:iq:1:-:2:rw" ("2:iq:1:-:2:rw" "hhh-i-b" "1:\t" "4:this:2:is:3:not")
             "2:hw" "hhh-ici" ("2:iq:1:-:2:rw" "1:_" "3:nqn:1:-:3:kek") (("2:iq:1:-:2:rw" "1:_" "3:nqn:1:-:3:kek") "hhh-i-b" "1:\t" "10:you-cannot:8:go-above:12:root-pathway")))
      "0:"))))
  (#b'ac0d66d2a54c1179 08744cc979d33073 48d5551d57cf4c33 2f47136a898d2aae'
   #b'b75e65a6a4f82387 cf32f95ee5f3abae c73153fc17947075 f04e64394fb8ffc9'))
  • sections, commencing with small text and then identifying relevant qiuy annotations
  • the final annotations identify a descriptor capable of being associated with the annotation - rather than loose text
  • this array includes sections formed from a gemini header and koutliner block
((
  ("### 77722dd15.  REM dot header kq_mq-te_gemtext_header")
  ((("3:###" ("3:REM" "3:dot" ("2:he" "hhh-ici" "2:de" "hhh-ici" ("2:kq" "1:_" "2:mq:1:-:2:te")
  	  (("2:kq" "1:_" "2:mq:1:-:2:te") "1:_" "14:gemtext_header")))
          "0:"))))
  (#b'0e750ce98a3b5b56 41ea8b553d25d061 6828f2f92c60e9fa 84be66c04ecc5d38'
   #b'd4c2543682a46880 523206786724926e da5064c068c5d658 115d43274ac85424'))
  • iw-nq_kq-kqk emphases-repeating_format-blocks

  • iw-nq_kq-kqk emphases-repeating_annotation-blocks

  • rqr-iw adapt-key-functionality oqo_qiuynonical.txr

either:

As a datalisp

$ txr -l hqh-owo_qiuynonical.txr re-te_nq-nqn_dataset_dates.gmi

#rw-iqi testing

Testing

  • grouping of similar linetypes together
(("2:=>" ((("6:gemini" "3:://" "3:www:1:." "12:icebreakerrr" "1:." "2:io")
            "1:/" "2:me" "hhh-ici" "1::" "4:4004" "4:2022:1:-:2:02" "4:2022:1:-:2:02"
            "2:iq" "hhh-ici" ("2:tq:1:-:2:iq" "1:_" "3:iqi:1:-:3:rqr") "hhh-ici"
            "2:re" "hhh-ici" "2:te" "hhh-ici" "2:mq:1:-:3:mqm" ("2:mq:1:-:3:mqm" "1:_" "4:quiy")))
   "0:" ("67:gemini://subfolder.icebreaker.com/test-i-part-2-follows/test-ii:202"
         ("4:2022:1:-:2:02:1:-:2:02" "2:iq:1:-:2:rw" "hhh-ici" "2:iq" "hhh-ici"
          "2:re" "hhh-ici" "2:te" "hhh-ici" "2:mq:1:-:3:mqm" ("2:mq:1:-:3:mqm" "1:_" "4:quiy")))
   "0:"))

#rw-iqi previous-iteration

Older-Version

  • rqr adapt key functionality to hwh-oqo_qiuynonical.txr

As a datalisp

$ txr -l hqh-oqo_qiuynonical.txr re-te_nq-nqn_dataset_dates.gmi

As arrays

$ txr -B hqh-oqo_qiuynonical.txr re-te_nq-nqn_dataset_dates.gmi

#State

Features of this parser is the merging of two more specialised parsers:

https://git.sr.ht/~indieterminacy/1q20hqh_kq_parsing_gemtext

https://git.sr.ht/~indieterminacy/1q20hqh_oqo_parsing_glean

The complexity of combining the syntaxes has taken longer than expected. There are advantages of using the aforementioned repos until Autumn 2022.

As a consequence, while Gemtext orientated parsing is satisfactory, Koutliner document parsing requires more efforts.

This shall be improved, especially after moving the output into a canonical sexps direction and demonstrations of 2nd tier parsing (to other formats).

Lots of developments will occur with this repo and supplementary repos for the second half of 2022.

#Extra Information

gemtext-format

gemini-protocol

koutliner-format

emacs-hyperbole

qiuy

koutliner

Previous Fosdem Talk

Upcoming Newline Talk

#Wider research

https://openengiadina.net/papers/content-addressable-rdf.html

https://inqlab.net/2022-04-14-geopub-datalog-rdf-and-indexeddb.html

https://geopub.openengiadina.net/#inspect=http://www.w3.org/2000/01/rdf-schema#range

https://www.valueflo.ws/examples/ex-planning/

https://inqlab.net/projects/dmc/

https://en.wikipedia.org/wiki/Transclusion

https://www.wired.com/1995/06/xanadu/

https://cloudflare-ipfs.com/ipfs/Qmeg9cAPVC18bdGuQtGJKtP7VcRQErnCApbcbgn1FaSq9T/datalisp.pdf

https://gateway.pinata.cloud/ipfs/QmeVYAP75GAvY8Q8iSfMoWMGgTPjvRh2xcM7Zb6qEop2VZ?preview=1

https://git.sr.ht/~ilmu/munet

https://en.wikipedia.org/wiki/Henriette_Avram

https://list.orgmode.org/875ykvbffg.fsf@posteo.net/

http://jpascher.org/thoughts/estc-records-as-evidence/

https://gitlab.com/cacology/estc-record-processing

https://gist.github.com/jobez/7197ed017873ebc68934c2a61c105926

https://gist.github.com/jobez/cc1529c1c477e50c737885e53d9a40ea

https://github.com/thomasrebele/bashlog

https://francismurillo.github.io/2017-03-30-Exploring-Emacs-rx-Macro/

https://www.gnu.org/software/emacs/manual/html_node/elisp/Rx-Notation.html

https://w3c.github.io/rch-wg-charter/

https://w3c.github.io/rch-wg-charter/explainer.html#canonical_form

#Location

#Local Environment

~/1q20hqh_parsing/kqk_gemtext/kqk_kanban/oq_txr/

#Git-Forge

#HTTP

read-only https://git.sr.ht/~indieterminacy/1q20hqh_oqo_parsing_qiuynonical

#Git

git@git.sr.ht:~indieterminacy/1q20hqh_oqo_parsing_qiuynonical

#Tasks

$ grep -H -n -e "@;.rqr" hqh-owo_qiuynonical.txr | sed -e 's/:@;//g' -e 's/(.)(rqr.)/\2\t\1/g' -e 's/(.)([>`#*])/\2\1/g'

rqr add delimeters information	hqh-owo_qiuynonical.txr:118 
rqr add delimeters information	hqh-owo_qiuynonical.txr:130 
rqr add delimeters information	hqh-owo_qiuynonical.txr:140 
rqr	add more domains	hqh-owo_qiuynonical.txr:1263 
>rqr-bqb	add more protocols	hqh-owo_qiuynonical.txr:1243 
rqr add uri information	hqh-owo_qiuynonical.txr:119 
rqr add uri information	hqh-owo_qiuynonical.txr:131 
rqr add uri information	hqh-owo_qiuynonical.txr:141 
>rqr-iq_mq-mqm	ascertain-whether-legal_annotation dot	hqh-owo_qiuynonical.txr:1370 
>rqr-mqm	ascertain-whether_syntax-needs-updating for other definitions	hqh-owo_qiuynonical.txr:53; 
>rqr	 check-setup-list	hqh-owo_qiuynonical.txr:1471 
>rqr	 check-setup-list	hqh-owo_qiuynonical.txr:1520 
>rqr	 check-setup-list	hqh-owo_qiuynonical.txr:1612 
>rqr	 check-setup-list	hqh-owo_qiuynonical.txr:1616 
>rqr	 check-setup-list	hqh-owo_qiuynonical.txr:1651 
>rqr	 check-setup-list	hqh-owo_qiuynonical.txr:1655 
>rqr	 check-setup-list	hqh-owo_qiuynonical.txr:1734 
>rqr	 check-setup-list	hqh-owo_qiuynonical.txr:268 
>rqr	 check-setup-list	hqh-owo_qiuynonical.txr:272 
>rqr		complete adaption	hqh-owo_qiuynonical.txr:329 
>rqr-mqm_mq-nqn		create-syntax_days	hqh-owo_qiuynonical.txr:909 
>rqr-mqm_mq-nqn	create-syntax_days	hqh-owo_qiuynonical.txr:955 
>rqr-mqm_kq-tq	create-syntaxes_filetype-syntaxes	hqh-owo_qiuynonical.txr:1167 
>rqr-rw_iqi-hwh	does-not-seem-to be-parsing-effectively 	hqh-owo_qiuynonical.txr:1374 
>rqr		either-remove-variable or utilise-same-approach for other definitions	hqh-owo_qiuynonical.txr:959 iw-
>rqr-hqh	explore-parsing-output	hqh-owo_qiuynonical.txr:1216 
rqr_new-v.txr	hqh-owo_qiuynonical.txr:116 iqi-oqo	
rqr_new-v-ii-a-i-c-i.txr	hqh-owo_qiuynonical.txr:1244 iqi-oqo	
*rqr_new_v-i.txr	hqh-owo_qiuynonical.txr:59 iqi-oqo 
*rqr_new-v-ii.txr	hqh-owo_qiuynonical.txr:94 iqi-oqo	
*rqr_new-v-ii-a-i-c-i.txr	hqh-owo_qiuynonical.txr:954 iqi-oqo	
>rqr			identity what refers to this module	hqh-owo_qiuynonical.txr:960 
>rqr	improve-consistency	hqh-owo_qiuynonical.txr:51 
>rqr		integrate	hqh-owo_qiuynonical.txr:948 
>rqr	interoperate with correct value in document settings	hqh-owo_qiuynonical.txr:50 
>rqr-iw_hqh-oqo		introduce_nested-parser	hqh-owo_qiuynonical.txr:152 
>rqr-iq_mqm-oqo		investigate-reimplementing mqm-te_annotation-content-i	hqh-owo_qiuynonical.txr:341 
>rqr-iq_mqm-oqo		investigate-reimplementing mqm-te_annotation-content-i	hqh-owo_qiuynonical.txr:342 
>rqr-iq_mqm-oqo	investigate-reimplementing qiuynonical-ii-a	hqh-owo_qiuynonical.txr:338 
>rqr-iq_mqm-oqo	investigate-reimplementing qiuynonical-ii	hqh-owo_qiuynonical.txr:339 
rqr-m2m_hqh	investigate-removing-syntax-character_from-parse	hqh-owo_qiuynonical.txr:1330 
>rqr	investigate-switching-to-os-0	hqh-owo_qiuynonical.txr:169 
rqr-iq_iq-hqh	investigate-utility_commented-contexts	hqh-owo_qiuynonical.txr:1500 
>rqr-iq	   investigate-utility	hqh-owo_qiuynonical.txr:1790 
>rqr	investigate whether this is used	hqh-owo_qiuynonical.txr:1391 
>rqr	investigate whether this should be modernised	hqh-owo_qiuynonical.txr:1392 
>rqr-oqo	migrate-codebase into dedicated context	hqh-owo_qiuynonical.txr:986 
rqr-hqh_mq-nq	parse_delimeters_whitespace	hqh-owo_qiuynonical.txr:1493 
>rqr-rq	provide description	hqh-owo_qiuynonical.txr:911 
>rqr-rq	provide description	hqh-owo_qiuynonical.txr:917 
>rqr-rq	provide description	hqh-owo_qiuynonical.txr:923 
>rqr-rq	provide description	hqh-owo_qiuynonical.txr:929 
>rqr-rq	provide description	hqh-owo_qiuynonical.txr:935 
>rqr-rq	provide description	hqh-owo_qiuynonical.txr:941 
>rqr-rq	provide description	hqh-owo_qiuynonical.txr:947 
>rqr	provide description	hqh-owo_qiuynonical.txr:95 
>rqr_mqm-oqo	reimplement_definition qiuynonical	hqh-owo_qiuynonical.txr:877 
>rqr-dq_mqm-oqo	shrink_coding rw_nq-nqn	hqh-owo_qiuynonical.txr:956 
>rqr	troubleshoot	hqh-owo_qiuynonical.txr:1316 
>rqr_iw-hqh	  troubleshoot_parsing-logic	hqh-owo_qiuynonical.txr:1228 
rqr		update	hqh-owo_qiuynonical.txr:117 
>rqr	update-kotl	hqh-owo_qiuynonical.txr:58 
>rqr-rw_hqh-xqx	validate-correct_parsing-syntax	hqh-owo_qiuynonical.txr:832 

#Presentations and Historical Research

#Technical Descriptions

https://hsbxl.be/events/software-freedom-day/2021-09-18/#jonny

https://www.youtube.com/watch?v=zyTC4QWGCQg

https://fosdem.org/2022/schedule/event/minimalsyntaxes/

https://hsbxl.be/events/software-freedom-day/2022-10-02/#knowledge-management-and-problem-solving-through-combining-terse-syntaxes-indietermancy

#Design Decisions

https://mrgrimsdalekingheronandmobius.blogspot.com/2007/06/

https://mrgrimsdalekingheronandmobius.blogspot.com/2008/01/are-agencies-electric-mapping.html

https://mrgrimsdalekingheronandmobius.blogspot.com/2008/07/knowledge-share-maximising-information.html

https://bureaucracksy.constantvzw.org/delicious-user-guide/

https://4.bp.blogspot.com/-y-YvhY1L7T0/T9EI6m5a3dI/AAAAAAAAAKU/KGw47ly63-8/s1600/Pepys1%252C1.png

https://sopinion8ed.wordpress.com/2013/02/24/test/

https://sopinion8ed.wordpress.com/author/011000100110100101101110011000010111001001111001x/

https://events.hackerspace.gent/en/newline2022/public/events/115/

https://10years.guix.gnu.org/video/l-union-qiuy-fait-la-force/

#Repo Details

Obtain repo:

git clone https:///git.sr.ht/~indieterminacy/1q20hqh_oqo_parsing_qiuynonical ~/1q20hqh_parsing/oqo_qiuynonical/

read/write:

git@git.sr.ht:~indieterminacy/1q20hqh_oqo_parsing_qiuynonical

#Special Props

NLNet and NGI (for funding)

initiative-reference

#Licensing

AGPL-3 or later

info

#Contact

https://matrix.to/#/#xq_icebreaker:matrix.org

https://matrix.to/#/#xq-oqo_icebreaker:matrix.org

indieterminacy@libre.brussels