From unknown Sat Jun 21 03:22:17 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#63436 <63436@debbugs.gnu.org> To: bug#63436 <63436@debbugs.gnu.org> Subject: Status: 30.0.50; Invalid escape character syntax Reply-To: bug#63436 <63436@debbugs.gnu.org> Date: Sat, 21 Jun 2025 10:22:17 +0000 retitle 63436 30.0.50; Invalid escape character syntax reassign 63436 emacs submitter 63436 Niels S=C3=B8ndergaard severity 63436 normal thanks From debbugs-submit-bounces@debbugs.gnu.org Thu May 11 02:04:20 2023 Received: (at submit) by debbugs.gnu.org; 11 May 2023 06:04:20 +0000 Received: from localhost ([127.0.0.1]:49508 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pwzPY-0001vs-7S for submit@debbugs.gnu.org; Thu, 11 May 2023 02:04:20 -0400 Received: from lists.gnu.org ([209.51.188.17]:33612) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pwzPW-0001vk-8f for submit@debbugs.gnu.org; Thu, 11 May 2023 02:04:18 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pwzPF-0001mC-Tr for bug-gnu-emacs@gnu.org; Thu, 11 May 2023 02:04:08 -0400 Received: from qs51p00im-qukt01071501.me.com ([17.57.155.4]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pwzP5-00043Y-PP for bug-gnu-emacs@gnu.org; Thu, 11 May 2023 02:04:00 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=me.com; s=1a1hai; t=1683785026; bh=P6sBA9NP8QdI5joOyU57HKePaxbSWGjCwGTtZ1mI6o0=; h=From:Content-Type:Mime-Version:Date:Subject:To:Message-Id; b=hj9JJ0yaTPyEgOqWT3TlY+CmUFzQUJz+qo4d8nKYuMyuQ+KoJqS6h0sd4+Sd1wzHk huKHFpEFEg/8S4B/UXIbUiGZcsvNTFXr6NFPPLik3tjLryQKqA61Vwhg6+JRxnjBm6 jWgYf+QFatOKmEvtKu7iSZpmVPkPr5ge4L8PZhVL7f+WFAShROTKDXQQ59jeYKFYTA nNJ6w8eeD7bIS6dSXwBFPyku2f8qEg8G5hSMaDBF27yqrgSB+1bG5yDfjGko9aW0Hr H/dCu8K26ZORFcOzt2ls7h1pMiQdFz7v0Ow8985yE8uplu+yp3IzkdUwxrKbT3RAEd dTVLU79wVdt5Q== Received: from smtpclient.apple (qs51p00im-dlb-asmtp-mailmevip.me.com [17.57.155.28]) by qs51p00im-qukt01071501.me.com (Postfix) with ESMTPSA id 154C11C4026A for ; Thu, 11 May 2023 06:03:44 +0000 (UTC) From: =?utf-8?Q?Niels_S=C3=B8ndergaard?= Content-Type: multipart/alternative; boundary="Apple-Mail=_6917CD75-2351-4F97-A8B6-E4000B45F722" Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.500.231\)) Date: Thu, 11 May 2023 08:03:31 +0200 Subject: 30.0.50; Invalid escape character syntax To: bug-gnu-emacs@gnu.org Message-Id: <72D882DB-4C49-459F-9232-4839EB0C69C7@me.com> X-Mailer: Apple Mail (2.3731.500.231) X-Proofpoint-GUID: 3CzHrFW95ssKLOFtqUsfIoyNbSjbTxtc X-Proofpoint-ORIG-GUID: 3CzHrFW95ssKLOFtqUsfIoyNbSjbTxtc X-Proofpoint-Virus-Version: =?UTF-8?Q?vendor=3Dfsecure_engine=3D1.1.170-22c6f66c430a71ce266a39bfe25bc?= =?UTF-8?Q?2903e8d5c8f:6.0.425,18.0.572,17.0.605.474.0000000_definitions?= =?UTF-8?Q?=3D2022-01-11=5F01:2022-01-11=5F01,2020-02-14=5F11,2020-01-23?= =?UTF-8?Q?=5F02_signatures=3D0?= X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 malwarescore=0 mlxscore=0 adultscore=0 clxscore=1011 suspectscore=0 bulkscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2212070000 definitions=main-2305110051 Received-SPF: pass client-ip=17.57.155.4; envelope-from=solengen@me.com; helo=qs51p00im-qukt01071501.me.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" --Apple-Mail=_6917CD75-2351-4F97-A8B6-E4000B45F722 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 This error comes in several situation, in my build of 30.0.50 (a clean and uncompilated build) start of error message: Debugger entered--Lisp error: (error "Invalid escape character syntax") read(#) = load-with-code-conversion("/Users/niels/.emacs.d/straight/build/yaml/yaml.= el" "/Users/niels/.emacs.d/straight/build/yaml/yaml.el" nil t) require(yaml) = load-with-code-conversion("/Users/niels/.emacs.d/straight/build/lsp-docker= /ls..." "/Users/niels/.emacs.d/straight/build/lsp-docker/ls..." nil t) require(lsp-docker) = load-with-code-conversion("/Users/niels/.emacs.d/straight/build/dap-mode/d= ap-..." "/Users/niels/.emacs.d/straight/build/dap-mode/dap-..." nil t) require(dap-mode nil nil) (progn (use-package-statistics-gather :init 'dap-mode nil) (require = 'dap-mode nil nil) (use-package-statistics-gather :config 'dap-mode nil) = (dap-mode t) (dap-ui-mode t) t (use-package-statistics-gather :config = 'dap-mode t) (use-package-statistics-gather :init 'dap-mode t)) (closure (t) nil (progn (use-package-statistics-gather :init 'dap-mode = nil) (require 'dap-mode nil nil) (use-package-statistics-gather :config = 'dap-mode nil) (dap-mode t) (dap-ui-mode t) t = (use-package-statistics-gather :config 'dap-mode t) = (use-package-statistics-gather :init 'dap-mode t)))() = eval-after-load-helper("/Users/niels/.emacs.d/straight/build/lsp-mode/lsp-= ...") = do-after-load-evaluation("/Users/niels/.emacs.d/straight/build/lsp-mode/ls= p-...") lsp() In GNU Emacs 30.0.50 (build 1, aarch64-apple-darwin22.4.0, NS appkit-2299.50 Version 13.3.1 (a) (Build 22E772610a)) of 2023-05-11 built on macal.local Windowing system distributor 'Apple', version 10.3.2299 System Description: macOS 13.3.1 Configured using: 'configure --disable-silent-rules --with-dbus --with-native-compilation --with-ns --with-xwidgets --with-mailutils --with-json --with-jpeg --without-compress-install '--program-transform-name=3Ds/^ctags$/emctags/' CC=3Dclang = 'LDFLAGS=3D-L/opt/homebrew/opt/jpeg/lib:-L/opt/homebrew/opt/libtiff/lib:-L= /opt/homebrew/opt/webp/lib:-L/opt/homebrew/opt/libxml2/lib:-L/opt/homebrew= /opt/giflib/lib:-L/opt/homebrew/opt/jpeg/lib:-L/opt/homebrew/opt/libgccjit= /lib/gcc/current:-L/opt/homebrew/opt/openssl@3/lib:-L/opt/homebrew/opt/cur= l/lib:-L/opt/homebrew/opt/python@3.11/lib:-L/opt/homebrew/opt/libxml2/lib:= -L/opt/homebrew/opt/expat/lib:-L/opt/homebrew/opt/ruby/lib: ' = CPPFLAGS=3D-I/opt/homebrew/opt/jpeg/include:-I/opt/homebrew/opt/libtiff/in= clude:-I/opt/homebrew/opt/cairo/include:-I/opt/homebrew/opt/libxml2/includ= e:-I/opt/homebrew/opt/jpeg/include:-I/opt/homebrew/opt/giflib/include:I/op= t/homebrew/opt/openssl@3/include:-I/opt/homebrew/opt/libxml2/include:-I/op= t/homebrew/opt/expat/include:-I/opt/homebrew/opt/curl/include:-I/opt/homeb= rew/opt/ruby/include: = PKG_CONFIG_PATH=3D/opt/homebrew/opt/libxml2/lib/pkgconfig:/opt/homebrew/op= t/openssl@3/lib/pkgconfig:/opt/homebrew/opt/libxml2/lib/pkgconfig:/opt/hom= ebrew/opt/python@3.11/lib/pkgconfig:/opt/homebrew/opt/curl/lib/pkgconfig: OBJC=3Dclang' Configured features: ACL DBUS GIF GLIB GMP GNUTLS JPEG JSON LCMS2 LIBXML2 MODULES NATIVE_COMP NOTIFY KQUEUE NS PDUMPER PNG RSVG SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XIM XWIDGETS ZLIB Important settings: value of $LC_ALL: da_DK.UTF-8 value of $LANG: da_DK.UTF-8 locale-coding-system: utf-8-unix Major mode: Dashboard Minor modes in effect: treemacs-filewatch-mode: t treemacs-follow-mode: t treemacs-git-mode: t treemacs-fringe-indicator-mode: t gcmh-mode: t global-emojify-mode: t emojify-mode: t pyvenv-mode: t global-git-gutter-mode: t org-edna-mode: t global-flycheck-mode: t TeX-PDF-mode: t shell-dirtrack-mode: t org-pretty-tags-global-mode: t which-key-mode: t doom-modeline-mode: t display-time-mode: t dimmer-mode: t beacon-mode: t marginalia-mode: t company-quickhelp-mode: t company-quickhelp-local-mode: t global-company-mode: t company-mode: t async-bytecomp-package-mode: t global-hl-line-mode: t global-display-line-numbers-mode: t auto-insert-mode: t yas-global-mode: t yas-minor-mode: t ctrlf-mode: t ctrlf-local-mode: t xterm-mouse-mode: t ido-everywhere: t ivy-mode: t savehist-mode: t global-page-break-lines-mode: t page-break-lines-mode: t override-global-mode: t el-patch-use-package-mode: t straight-use-package-mode: t straight-package-neutering-mode: t straight-live-modifications-mode: t tooltip-mode: t global-eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t global-prettify-symbols-mode: t tab-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t context-menu-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t buffer-read-only: t column-number-mode: t line-number-mode: t global-visual-line-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t abbrev-mode: t Load-path shadows: /Users/niels/.emacs.d/straight/build/bibtex-actions/citar-markdown hides = /Users/niels/.emacs.d/straight/build/citar/citar-markdown /Users/niels/.emacs.d/straight/build/bibtex-actions/citar-citeproc hides = /Users/niels/.emacs.d/straight/build/citar/citar-citeproc /Users/niels/.emacs.d/straight/build/bibtex-actions/citar-cache hides = /Users/niels/.emacs.d/straight/build/citar/citar-cache /Users/niels/.emacs.d/straight/build/bibtex-actions/citar-file hides = /Users/niels/.emacs.d/straight/build/citar/citar-file /Users/niels/.emacs.d/straight/build/bibtex-actions/citar-format hides = /Users/niels/.emacs.d/straight/build/citar/citar-format /Users/niels/.emacs.d/straight/build/bibtex-actions/citar hides = /Users/niels/.emacs.d/straight/build/citar/citar /Users/niels/.emacs.d/straight/build/bibtex-actions/citar-latex hides = /Users/niels/.emacs.d/straight/build/citar/citar-latex /Users/niels/.emacs.d/straight/build/bibtex-actions/citar-org hides = /Users/niels/.emacs.d/straight/build/citar/citar-org /Users/niels/.emacs.d/straight/build/bibtex-actions/citar-capf hides = /Users/niels/.emacs.d/straight/build/citar/citar-capf /Users/niels/.emacs.d/straight/build/org/ob-comint hides = ~/.config/org-mode-current/lisp/ob-comint /Users/niels/.emacs.d/straight/build/org/org-ctags hides = ~/.config/org-mode-current/lisp/org-ctags /Users/niels/.emacs.d/straight/build/org/ox-texinfo hides = ~/.config/org-mode-current/lisp/ox-texinfo /Users/niels/.emacs.d/straight/build/org/ol-doi hides = ~/.config/org-mode-current/lisp/ol-doi /Users/niels/.emacs.d/straight/build/org/org-refile hides = ~/.config/org-mode-current/lisp/org-refile /Users/niels/.emacs.d/straight/build/org/org-version hides = ~/.config/org-mode-current/lisp/org-version /Users/niels/.emacs.d/straight/build/org/org-num hides = ~/.config/org-mode-current/lisp/org-num /Users/niels/.emacs.d/straight/build/org/ol-mhe hides = ~/.config/org-mode-current/lisp/ol-mhe /Users/niels/.emacs.d/straight/build/org/ob-shell hides = ~/.config/org-mode-current/lisp/ob-shell /Users/niels/.emacs.d/straight/build/org/org-attach hides = ~/.config/org-mode-current/lisp/org-attach /Users/niels/.emacs.d/straight/build/org/ob-C hides = ~/.config/org-mode-current/lisp/ob-C /Users/niels/.emacs.d/straight/build/org/org-entities hides = ~/.config/org-mode-current/lisp/org-entities /Users/niels/.emacs.d/straight/build/org/ob-dot hides = ~/.config/org-mode-current/lisp/ob-dot /Users/niels/.emacs.d/straight/build/org/ob-sql hides = ~/.config/org-mode-current/lisp/ob-sql /Users/niels/.emacs.d/straight/build/org/ol-eww hides = ~/.config/org-mode-current/lisp/ol-eww /Users/niels/.emacs.d/straight/build/org/org-datetree hides = ~/.config/org-mode-current/lisp/org-datetree /Users/niels/.emacs.d/straight/build/org/org-macro hides = ~/.config/org-mode-current/lisp/org-macro /Users/niels/.emacs.d/straight/build/org/ob-eval hides = ~/.config/org-mode-current/lisp/ob-eval /Users/niels/.emacs.d/straight/build/org/ob-groovy hides = ~/.config/org-mode-current/lisp/ob-groovy /Users/niels/.emacs.d/straight/build/org/ox-icalendar hides = ~/.config/org-mode-current/lisp/ox-icalendar /Users/niels/.emacs.d/straight/build/org/org-mobile hides = ~/.config/org-mode-current/lisp/org-mobile /Users/niels/.emacs.d/straight/build/org/ob-processing hides = ~/.config/org-mode-current/lisp/ob-processing /Users/niels/.emacs.d/straight/build/org/oc-csl hides = ~/.config/org-mode-current/lisp/oc-csl /Users/niels/.emacs.d/straight/build/org/ob-octave hides = ~/.config/org-mode-current/lisp/ob-octave /Users/niels/.emacs.d/straight/build/org/org-table hides = ~/.config/org-mode-current/lisp/org-table /Users/niels/.emacs.d/straight/build/org/ox-html hides = ~/.config/org-mode-current/lisp/ox-html /Users/niels/.emacs.d/straight/build/org/ol hides = ~/.config/org-mode-current/lisp/ol /Users/niels/.emacs.d/straight/build/org/ob-plantuml hides = ~/.config/org-mode-current/lisp/ob-plantuml /Users/niels/.emacs.d/straight/build/org/ol-docview hides = ~/.config/org-mode-current/lisp/ol-docview /Users/niels/.emacs.d/straight/build/org/org-fold-core hides = ~/.config/org-mode-current/lisp/org-fold-core /Users/niels/.emacs.d/straight/build/org/ob-exp hides = ~/.config/org-mode-current/lisp/ob-exp /Users/niels/.emacs.d/straight/build/org/ob-ditaa hides = ~/.config/org-mode-current/lisp/ob-ditaa /Users/niels/.emacs.d/straight/build/org/ob-scheme hides = ~/.config/org-mode-current/lisp/ob-scheme /Users/niels/.emacs.d/straight/build/org/oc-bibtex hides = ~/.config/org-mode-current/lisp/oc-bibtex /Users/niels/.emacs.d/straight/build/org/ol-gnus hides = ~/.config/org-mode-current/lisp/ol-gnus /Users/niels/.emacs.d/straight/build/org/org-mouse hides = ~/.config/org-mode-current/lisp/org-mouse /Users/niels/.emacs.d/straight/build/org/org-inlinetask hides = ~/.config/org-mode-current/lisp/org-inlinetask /Users/niels/.emacs.d/straight/build/org/ob-fortran hides = ~/.config/org-mode-current/lisp/ob-fortran /Users/niels/.emacs.d/straight/build/org/ob-haskell hides = ~/.config/org-mode-current/lisp/ob-haskell /Users/niels/.emacs.d/straight/build/org/org-id hides = ~/.config/org-mode-current/lisp/org-id /Users/niels/.emacs.d/straight/build/org/oc hides = ~/.config/org-mode-current/lisp/oc /Users/niels/.emacs.d/straight/build/org/ob-css hides = ~/.config/org-mode-current/lisp/ob-css /Users/niels/.emacs.d/straight/build/org/org-compat hides = ~/.config/org-mode-current/lisp/org-compat /Users/niels/.emacs.d/straight/build/org/org-element hides = ~/.config/org-mode-current/lisp/org-element /Users/niels/.emacs.d/straight/build/org/ob hides = ~/.config/org-mode-current/lisp/ob /Users/niels/.emacs.d/straight/build/org/ob-calc hides = ~/.config/org-mode-current/lisp/ob-calc /Users/niels/.emacs.d/straight/build/org/ob-python hides = ~/.config/org-mode-current/lisp/ob-python /Users/niels/.emacs.d/straight/build/org/org-agenda hides = ~/.config/org-mode-current/lisp/org-agenda /Users/niels/.emacs.d/straight/build/org/org-persist hides = ~/.config/org-mode-current/lisp/org-persist /Users/niels/.emacs.d/straight/build/org/ob-ocaml hides = ~/.config/org-mode-current/lisp/ob-ocaml /Users/niels/.emacs.d/straight/build/org/org-tempo hides = ~/.config/org-mode-current/lisp/org-tempo /Users/niels/.emacs.d/straight/build/org/ob-ref hides = ~/.config/org-mode-current/lisp/ob-ref /Users/niels/.emacs.d/straight/build/org/ob-tangle hides = ~/.config/org-mode-current/lisp/ob-tangle /Users/niels/.emacs.d/straight/build/org/org-fold hides = ~/.config/org-mode-current/lisp/org-fold /Users/niels/.emacs.d/straight/build/org/ob-lilypond hides = ~/.config/org-mode-current/lisp/ob-lilypond /Users/niels/.emacs.d/straight/build/org/ob-clojure hides = ~/.config/org-mode-current/lisp/ob-clojure /Users/niels/.emacs.d/straight/build/org/org-lint hides = ~/.config/org-mode-current/lisp/org-lint /Users/niels/.emacs.d/straight/build/org/ol-eshell hides = ~/.config/org-mode-current/lisp/ol-eshell /Users/niels/.emacs.d/straight/build/org/ox-latex hides = ~/.config/org-mode-current/lisp/ox-latex /Users/niels/.emacs.d/straight/build/org/org-pcomplete hides = ~/.config/org-mode-current/lisp/org-pcomplete /Users/niels/.emacs.d/straight/build/org/org-duration hides = ~/.config/org-mode-current/lisp/org-duration /Users/niels/.emacs.d/straight/build/org/ox-beamer hides = ~/.config/org-mode-current/lisp/ox-beamer /Users/niels/.emacs.d/straight/build/org/ol-info hides = ~/.config/org-mode-current/lisp/ol-info /Users/niels/.emacs.d/straight/build/org/ob-table hides = ~/.config/org-mode-current/lisp/ob-table /Users/niels/.emacs.d/straight/build/org/ol-rmail hides = ~/.config/org-mode-current/lisp/ol-rmail /Users/niels/.emacs.d/straight/build/org/ox-odt hides = ~/.config/org-mode-current/lisp/ox-odt /Users/niels/.emacs.d/straight/build/org/org-protocol hides = ~/.config/org-mode-current/lisp/org-protocol /Users/niels/.emacs.d/straight/build/org/ob-latex hides = ~/.config/org-mode-current/lisp/ob-latex /Users/niels/.emacs.d/straight/build/org/ob-julia hides = ~/.config/org-mode-current/lisp/ob-julia /Users/niels/.emacs.d/straight/build/org/org-archive hides = ~/.config/org-mode-current/lisp/org-archive /Users/niels/.emacs.d/straight/build/org/ol-w3m hides = ~/.config/org-mode-current/lisp/ol-w3m /Users/niels/.emacs.d/straight/build/org/ob-sed hides = ~/.config/org-mode-current/lisp/ob-sed /Users/niels/.emacs.d/straight/build/org/ob-perl hides = ~/.config/org-mode-current/lisp/ob-perl /Users/niels/.emacs.d/straight/build/org/ob-eshell hides = ~/.config/org-mode-current/lisp/ob-eshell /Users/niels/.emacs.d/straight/build/org/ol-man hides = ~/.config/org-mode-current/lisp/ol-man /Users/niels/.emacs.d/straight/build/org/org-plot hides = ~/.config/org-mode-current/lisp/org-plot /Users/niels/.emacs.d/straight/build/org/org-clock hides = ~/.config/org-mode-current/lisp/org-clock /Users/niels/.emacs.d/straight/build/org/ob-awk hides = ~/.config/org-mode-current/lisp/ob-awk /Users/niels/.emacs.d/straight/build/org/org-list hides = ~/.config/org-mode-current/lisp/org-list /Users/niels/.emacs.d/straight/build/org/ob-sqlite hides = ~/.config/org-mode-current/lisp/ob-sqlite /Users/niels/.emacs.d/straight/build/org/org-macs hides = ~/.config/org-mode-current/lisp/org-macs /Users/niels/.emacs.d/straight/build/org/ox-man hides = ~/.config/org-mode-current/lisp/ox-man /Users/niels/.emacs.d/straight/build/org/ol-bbdb hides = ~/.config/org-mode-current/lisp/ol-bbdb /Users/niels/.emacs.d/straight/build/org/org-loaddefs hides = ~/.config/org-mode-current/lisp/org-loaddefs /Users/niels/.emacs.d/straight/build/org/ol-irc hides = ~/.config/org-mode-current/lisp/ol-irc /Users/niels/.emacs.d/straight/build/org/org hides = ~/.config/org-mode-current/lisp/org /Users/niels/.emacs.d/straight/build/org/org-capture hides = ~/.config/org-mode-current/lisp/org-capture /Users/niels/.emacs.d/straight/build/org/org-colview hides = ~/.config/org-mode-current/lisp/org-colview /Users/niels/.emacs.d/straight/build/org/org-goto hides = ~/.config/org-mode-current/lisp/org-goto /Users/niels/.emacs.d/straight/build/org/ob-R hides = ~/.config/org-mode-current/lisp/ob-R /Users/niels/.emacs.d/straight/build/org/ob-ruby hides = ~/.config/org-mode-current/lisp/ob-ruby /Users/niels/.emacs.d/straight/build/org/ob-sass hides = ~/.config/org-mode-current/lisp/ob-sass /Users/niels/.emacs.d/straight/build/org/ob-matlab hides = ~/.config/org-mode-current/lisp/ob-matlab /Users/niels/.emacs.d/straight/build/org/ox hides = ~/.config/org-mode-current/lisp/ox /Users/niels/.emacs.d/straight/build/org/oc-natbib hides = ~/.config/org-mode-current/lisp/oc-natbib /Users/niels/.emacs.d/straight/build/org/ob-core hides = ~/.config/org-mode-current/lisp/ob-core /Users/niels/.emacs.d/straight/build/org/ob-makefile hides = ~/.config/org-mode-current/lisp/ob-makefile /Users/niels/.emacs.d/straight/build/org/org-timer hides = ~/.config/org-mode-current/lisp/org-timer /Users/niels/.emacs.d/straight/build/org/ob-org hides = ~/.config/org-mode-current/lisp/ob-org /Users/niels/.emacs.d/straight/build/org/ob-forth hides = ~/.config/org-mode-current/lisp/ob-forth /Users/niels/.emacs.d/straight/build/org/oc-biblatex hides = ~/.config/org-mode-current/lisp/oc-biblatex /Users/niels/.emacs.d/straight/build/org/ob-lob hides = ~/.config/org-mode-current/lisp/ob-lob /Users/niels/.emacs.d/straight/build/org/ob-gnuplot hides = ~/.config/org-mode-current/lisp/ob-gnuplot /Users/niels/.emacs.d/straight/build/org/org-faces hides = ~/.config/org-mode-current/lisp/org-faces /Users/niels/.emacs.d/straight/build/org/org-habit hides = ~/.config/org-mode-current/lisp/org-habit /Users/niels/.emacs.d/straight/build/org/ox-koma-letter hides = ~/.config/org-mode-current/lisp/ox-koma-letter /Users/niels/.emacs.d/straight/build/org/ob-js hides = ~/.config/org-mode-current/lisp/ob-js /Users/niels/.emacs.d/straight/build/org/ob-screen hides = ~/.config/org-mode-current/lisp/ob-screen /Users/niels/.emacs.d/straight/build/org/org-footnote hides = ~/.config/org-mode-current/lisp/org-footnote /Users/niels/.emacs.d/straight/build/org/oc-basic hides = ~/.config/org-mode-current/lisp/oc-basic /Users/niels/.emacs.d/straight/build/org/ol-bibtex hides = ~/.config/org-mode-current/lisp/ol-bibtex /Users/niels/.emacs.d/straight/build/org/ob-java hides = ~/.config/org-mode-current/lisp/ob-java /Users/niels/.emacs.d/straight/build/org/ob-lua hides = ~/.config/org-mode-current/lisp/ob-lua /Users/niels/.emacs.d/straight/build/org/ox-md hides = ~/.config/org-mode-current/lisp/ox-md /Users/niels/.emacs.d/straight/build/org/org-cycle hides = ~/.config/org-mode-current/lisp/org-cycle /Users/niels/.emacs.d/straight/build/org/ox-ascii hides = ~/.config/org-mode-current/lisp/ox-ascii /Users/niels/.emacs.d/straight/build/org/org-keys hides = ~/.config/org-mode-current/lisp/org-keys /Users/niels/.emacs.d/straight/build/org/ob-lisp hides = ~/.config/org-mode-current/lisp/ob-lisp /Users/niels/.emacs.d/straight/build/org/org-attach-git hides = ~/.config/org-mode-current/lisp/org-attach-git /Users/niels/.emacs.d/straight/build/org/ob-emacs-lisp hides = ~/.config/org-mode-current/lisp/ob-emacs-lisp /Users/niels/.emacs.d/straight/build/org/ob-maxima hides = ~/.config/org-mode-current/lisp/ob-maxima /Users/niels/.emacs.d/straight/build/org/org-crypt hides = ~/.config/org-mode-current/lisp/org-crypt /Users/niels/.emacs.d/straight/build/org/org-feed hides = ~/.config/org-mode-current/lisp/org-feed /Users/niels/.emacs.d/straight/build/org/org-src hides = ~/.config/org-mode-current/lisp/org-src /Users/niels/.emacs.d/straight/build/org/ox-org hides = ~/.config/org-mode-current/lisp/ox-org /Users/niels/.emacs.d/straight/build/org/org-indent hides = ~/.config/org-mode-current/lisp/org-indent /Users/niels/.emacs.d/straight/build/org/ox-publish hides = ~/.config/org-mode-current/lisp/ox-publish /Users/niels/.emacs.d/straight/build/transient/transient hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/transient /Users/niels/.emacs.d/straight/build/use-package/use-package-jump hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/use-package/use-pac= kage-jump /Users/niels/.emacs.d/straight/build/use-package/use-package-diminish = hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/use-package/use-pac= kage-diminish /Users/niels/.emacs.d/straight/build/use-package/use-package hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/use-package/use-pac= kage /Users/niels/.emacs.d/straight/build/use-package/use-package-delight = hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/use-package/use-pac= kage-delight /Users/niels/.emacs.d/straight/build/use-package/use-package-lint hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/use-package/use-pac= kage-lint /Users/niels/.emacs.d/straight/build/bind-key/bind-key hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/use-package/bind-ke= y /Users/niels/.emacs.d/straight/build/use-package/use-package-core hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/use-package/use-pac= kage-core /Users/niels/.emacs.d/straight/build/use-package/use-package-ensure = hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/use-package/use-pac= kage-ensure /Users/niels/.emacs.d/straight/build/use-package/use-package-bind-key = hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/use-package/use-pac= kage-bind-key /Users/niels/.emacs.d/straight/build/org/ob-comint hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-comint /Users/niels/.emacs.d/straight/build/org/ob-exp hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-exp /Users/niels/.emacs.d/straight/build/org/org-ctags hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-ctags /Users/niels/.emacs.d/straight/build/org/ob-emacs-lisp hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-emacs-lisp /Users/niels/.emacs.d/straight/build/org/oc hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/oc /Users/niels/.emacs.d/straight/build/org/ox-texinfo hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-texinfo /Users/niels/.emacs.d/straight/build/org/ol-irc hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-irc /Users/niels/.emacs.d/straight/build/org/ol-doi hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-doi /Users/niels/.emacs.d/straight/build/org/ob hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob /Users/niels/.emacs.d/straight/build/org/org-refile hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-refile /Users/niels/.emacs.d/straight/build/org/org-version hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-version /Users/niels/.emacs.d/straight/build/org/org-num hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-num /Users/niels/.emacs.d/straight/build/org/ol-mhe hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-mhe /Users/niels/.emacs.d/straight/build/org/ob-shell hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-shell /Users/niels/.emacs.d/straight/build/org/org-attach hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-attach /Users/niels/.emacs.d/straight/build/org/ob-C hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-C /Users/niels/.emacs.d/straight/build/org/org-macs hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-macs /Users/niels/.emacs.d/straight/build/org/org-entities hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-entities /Users/niels/.emacs.d/straight/build/org/ob-dot hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-dot /Users/niels/.emacs.d/straight/build/org/ob-sql hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-sql /Users/niels/.emacs.d/straight/build/org/ol-eww hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-eww /Users/niels/.emacs.d/straight/build/org/org-datetree hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-datetree /Users/niels/.emacs.d/straight/build/org/org-macro hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-macro /Users/niels/.emacs.d/straight/build/org/ob-eval hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-eval /Users/niels/.emacs.d/straight/build/org/ob-haskell hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-haskell /Users/niels/.emacs.d/straight/build/org/ox-org hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-org /Users/niels/.emacs.d/straight/build/org/ol-rmail hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-rmail /Users/niels/.emacs.d/straight/build/org/ob-awk hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-awk /Users/niels/.emacs.d/straight/build/org/ob-groovy hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-groovy /Users/niels/.emacs.d/straight/build/org/ox-icalendar hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-icalendar /Users/niels/.emacs.d/straight/build/org/ob-octave hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-octave /Users/niels/.emacs.d/straight/build/org/ob-scheme hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-scheme /Users/niels/.emacs.d/straight/build/org/org-mobile hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-mobile /Users/niels/.emacs.d/straight/build/org/ob-processing hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-processing /Users/niels/.emacs.d/straight/build/org/oc-biblatex hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/oc-biblatex /Users/niels/.emacs.d/straight/build/org/oc-csl hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/oc-csl /Users/niels/.emacs.d/straight/build/org/org-colview hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-colview /Users/niels/.emacs.d/straight/build/org/ob-R hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-R /Users/niels/.emacs.d/straight/build/org/org-table hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-table /Users/niels/.emacs.d/straight/build/org/ox-html hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-html /Users/niels/.emacs.d/straight/build/org/ob-fortran hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-fortran /Users/niels/.emacs.d/straight/build/org/ol hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol /Users/niels/.emacs.d/straight/build/org/ob-plantuml hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-plantuml /Users/niels/.emacs.d/straight/build/org/ol-docview hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-docview /Users/niels/.emacs.d/straight/build/org/ob-perl hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-perl /Users/niels/.emacs.d/straight/build/org/ob-sqlite hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-sqlite /Users/niels/.emacs.d/straight/build/org/oc-basic hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/oc-basic /Users/niels/.emacs.d/straight/build/org/ob-sed hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-sed /Users/niels/.emacs.d/straight/build/org/org-fold-core hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-fold-core /Users/niels/.emacs.d/straight/build/org/ob-ditaa hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-ditaa /Users/niels/.emacs.d/straight/build/org/ob-ruby hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-ruby /Users/niels/.emacs.d/straight/build/org/oc-bibtex hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/oc-bibtex /Users/niels/.emacs.d/straight/build/org/org-habit hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-habit /Users/niels/.emacs.d/straight/build/org/org-loaddefs hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-loaddefs /Users/niels/.emacs.d/straight/build/org/ol-gnus hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-gnus /Users/niels/.emacs.d/straight/build/org/ob-screen hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-screen /Users/niels/.emacs.d/straight/build/org/org-mouse hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-mouse /Users/niels/.emacs.d/straight/build/org/ob-css hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-css /Users/niels/.emacs.d/straight/build/org/org-inlinetask hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-inlinetask /Users/niels/.emacs.d/straight/build/org/ob-lisp hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-lisp /Users/niels/.emacs.d/straight/build/org/ol-eshell hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-eshell /Users/niels/.emacs.d/straight/build/org/org-pcomplete hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-pcomplete /Users/niels/.emacs.d/straight/build/org/org-lint hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-lint /Users/niels/.emacs.d/straight/build/org/org-id hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-id /Users/niels/.emacs.d/straight/build/org/org-capture hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-capture /Users/niels/.emacs.d/straight/build/org/ob-sass hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-sass /Users/niels/.emacs.d/straight/build/org/ob-tangle hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-tangle /Users/niels/.emacs.d/straight/build/org/ob-calc hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-calc /Users/niels/.emacs.d/straight/build/org/ob-java hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-java /Users/niels/.emacs.d/straight/build/org/org-compat hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-compat /Users/niels/.emacs.d/straight/build/org/org-attach-git hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-attach-git /Users/niels/.emacs.d/straight/build/org/ox-beamer hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-beamer /Users/niels/.emacs.d/straight/build/org/org-protocol hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-protocol /Users/niels/.emacs.d/straight/build/org/org-element hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-element /Users/niels/.emacs.d/straight/build/org/ob-lob hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-lob /Users/niels/.emacs.d/straight/build/org/org-tempo hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-tempo /Users/niels/.emacs.d/straight/build/org/ob-python hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-python /Users/niels/.emacs.d/straight/build/org/ob-latex hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-latex /Users/niels/.emacs.d/straight/build/org/ol-w3m hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-w3m /Users/niels/.emacs.d/straight/build/org/org-agenda hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-agenda /Users/niels/.emacs.d/straight/build/org/org-persist hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-persist /Users/niels/.emacs.d/straight/build/org/ob-ocaml hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-ocaml /Users/niels/.emacs.d/straight/build/org/ob-ref hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-ref /Users/niels/.emacs.d/straight/build/org/org-fold hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-fold /Users/niels/.emacs.d/straight/build/org/ob-julia hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-julia /Users/niels/.emacs.d/straight/build/org/ob-lilypond hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-lilypond /Users/niels/.emacs.d/straight/build/org/ob-table hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-table /Users/niels/.emacs.d/straight/build/org/ob-clojure hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-clojure /Users/niels/.emacs.d/straight/build/org/org-indent hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-indent /Users/niels/.emacs.d/straight/build/org/org-plot hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-plot /Users/niels/.emacs.d/straight/build/org/ox-latex hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-latex /Users/niels/.emacs.d/straight/build/org/org-src hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-src /Users/niels/.emacs.d/straight/build/org/org-duration hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-duration /Users/niels/.emacs.d/straight/build/org/ob-makefile hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-makefile /Users/niels/.emacs.d/straight/build/org/ol-info hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-info /Users/niels/.emacs.d/straight/build/org/org-clock hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-clock /Users/niels/.emacs.d/straight/build/org/ob-forth hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-forth /Users/niels/.emacs.d/straight/build/org/ox-odt hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-odt /Users/niels/.emacs.d/straight/build/org/ol-man hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-man /Users/niels/.emacs.d/straight/build/org/ox-publish hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-publish /Users/niels/.emacs.d/straight/build/org/org-archive hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-archive /Users/niels/.emacs.d/straight/build/org/ob-org hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-org /Users/niels/.emacs.d/straight/build/org/ob-lua hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-lua /Users/niels/.emacs.d/straight/build/org/org-keys hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-keys /Users/niels/.emacs.d/straight/build/org/ob-eshell hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-eshell /Users/niels/.emacs.d/straight/build/org/org-faces hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-faces /Users/niels/.emacs.d/straight/build/org/ox-man hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-man /Users/niels/.emacs.d/straight/build/org/org-list hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-list /Users/niels/.emacs.d/straight/build/org/ox-md hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-md /Users/niels/.emacs.d/straight/build/org/org-goto hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-goto /Users/niels/.emacs.d/straight/build/org/ol-bbdb hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-bbdb /Users/niels/.emacs.d/straight/build/org/org hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org /Users/niels/.emacs.d/straight/build/org/ol-bibtex hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-bibtex /Users/niels/.emacs.d/straight/build/org/ox-koma-letter hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-koma-letter /Users/niels/.emacs.d/straight/build/org/ox-ascii hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-ascii /Users/niels/.emacs.d/straight/build/org/ob-matlab hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-matlab /Users/niels/.emacs.d/straight/build/org/ox hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox /Users/niels/.emacs.d/straight/build/org/org-timer hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-timer /Users/niels/.emacs.d/straight/build/org/oc-natbib hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/oc-natbib /Users/niels/.emacs.d/straight/build/org/ob-core hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-core /Users/niels/.emacs.d/straight/build/org/org-feed hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-feed /Users/niels/.emacs.d/straight/build/org/ob-gnuplot hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-gnuplot /Users/niels/.emacs.d/straight/build/org/ob-js hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-js /Users/niels/.emacs.d/straight/build/org/org-footnote hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-footnote /Users/niels/.emacs.d/straight/build/org/ob-maxima hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-maxima /Users/niels/.emacs.d/straight/build/org/org-cycle hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-cycle /Users/niels/.emacs.d/straight/build/org/org-crypt hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-crypt /Users/niels/.emacs.d/straight/build/map/map hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/emacs-lisp/map /Users/niels/.emacs.d/straight/build/let-alist/let-alist hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/emacs-lisp/let-alis= t /Users/niels/.emacs.d/straight/build/eldoc/eldoc hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/emacs-lisp/eldoc Features: (shadow sort mail-extr emacsbug lsp-dhall lsp-d lsp-css lsp-csharp lsp-crystal lsp-cmake lsp-clojure lsp-treemacs lsp-treemacs-generic lsp-treemacs-themes treemacs-treelib treemacs treemacs-header-line treemacs-compatibility treemacs-mode treemacs-bookmarks treemacs-tags treemacs-interface treemacs-persistence treemacs-filewatch-mode treemacs-follow-mode treemacs-rendering treemacs-annotations treemacs-async treemacs-workspaces treemacs-dom treemacs-visuals treemacs-fringe-indicator treemacs-scope pulse treemacs-faces treemacs-icons treemacs-themes treemacs-core-utils pfuture treemacs-logging treemacs-customization treemacs-macros lsp-semantic-tokens lsp-clangd lsp-beancount lsp-bash lsp-astro lsp-ansible lsp-angular lsp-ada lsp-actionscript gcmh gcmh-autoloads cursor-sensor cl-print company-wordfreq ispell posframe dap-overlays lsp-mode emojify apropos tar-mode arc-mode archive-mode init all-the-icons-dired xwidgete-autoloads mode-minder keycast-autoloads list-unicode-display rcd-org-agenda-dashboard rcd-dashboard rcd-utilities hi-lock latex-table-wizard latex latex-flymake tex-ispell tex-style org-novelist gptai org-ai url-http url-auth url-gw org-pandoc-import org-pandoc-import-autoloads projectile-autoloads slime-autoloads macrostep-autoloads phpunit-autoloads ac-php-autoloads auto-complete-autoloads ac-php-core-autoloads xcscope-autoloads php-mode-autoloads highlight-indentation help-fns elpy elpy-rpc pyvenv elpy-shell elpy-profile elpy-django elpy-refactor hideshow grep elpy-autoloads pyvenv-autoloads highlight-indentation-autoloads pandoc-mode-autoloads constants sort-words-autoloads company-wordfreq-autoloads most-used-words bibtex-mode-autoloads bibtex-actions-autoloads bibtex-utils-autoloads git-timemachine-autoloads git-gutter git-gutter-autoloads magit-autoloads git-commit-autoloads with-editor-autoloads expenses org-duration lsp-protocol network-stream nsm markdown-mode inline org-fancy-priorities toc-org company-abbrev calfw-org org-capture calfw-org-autoloads calfw-cal calfw holidays holiday-loaddefs cl calfw-cal-autoloads calfw-autoloads org-autolist-autoloads appt diary-lib diary-loaddefs org-edna org-edna-autoloads org-linker-edna org-linker org-cliplink-autoloads org-pdftools-autoloads org-noter-autoloads flycheck latex-extra-autoloads font-latex tex texmathp auctex-autoloads tex-site ob-latex ob-plantuml ob-org ob-ledger ob-clojure ob-gnuplot ob-ruby ob-python python ob-R ob-ditaa ob-dot ob-sh shell writegood-mode org-web-tools esxml-query org-web-tools-autoloads request-autoloads esxml-autoloads kv-autoloads org-agenda-views org-roam-bibtex-autoloads org-roam-autoloads doct doct-autoloads org-inline-clocking-buttons org-inline-clocking-buttons-mode org-journal org-crypt cal-iso org-bars org-bars-autoloads org-pretty-tags org-tag-data org-pretty-tags-autoloads pretty-symbols pretty-symbols-autoloads org-pomodoro-autoloads alert-autoloads log4e-autoloads gntp-autoloads org-tree-slide-autoloads org-preview-html xwidget org-preview-html-autoloads org-mime-autoloads toc-org-autoloads org-rich-yank-autoloads org-fancy-priorities-autoloads ox-gfm ox-gfm-autoloads org-dashboard-autoloads org-checklist orgtbl-aggregate calc-arith calc-alg calc-aent calc-ext calc calc-loaddefs rect calc-macs org-lint ox-texinfo ox-org ox-odt rng-loc rng-uri rng-parse rng-match rng-dt rng-util rng-pttrn nxml-parse nxml-ns nxml-enc xmltok nxml-util ox-md ox-koma-letter ox-icalendar ox-html table ox-beamer ox-latex ox-ascii ox-publish ox org-attach org-indent oc-basic ol-eww eww url-queue mm-url ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls dig gnus-sum shr pixel-fill kinsoku url-file gnus-group gnus-undo gnus-start gnus-dbus dbus gnus-cloud nnimap nnmail mail-source utf7 nnoo parse-time gnus-spec gnus-int gnus-range message sendmail yank-media puny rfc822 mml mml-sec epa derived epg rfc6068 epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev gmm-utils mailheader gnus-win gnus nnheader gnus-util mail-utils range mm-util mail-prsvr ol-docview doc-view jka-compr image-mode exif ol-bibtex bibtex iso8601 ol-bbdb ol-w3m ol-doi org-link-doi org-archive 2048-game-autoloads flycheck-autoloads pkg-info-autoloads epl-autoloads which-key which-key-autoloads origami-autoloads move-text-autoloads doom-modeline doom-modeline-segments doom-modeline-env doom-modeline-core all-the-icons all-the-icons-faces data-material data-weathericons data-octicons data-fileicons data-faicons data-alltheicons shrink-path doom-modeline-autoloads ghub-autoloads treepy-autoloads info+-autoloads time dimmer face-remap dimmer-autoloads beacon beacon-autoloads diminish diminish-autoloads citar-autoloads citeproc-autoloads string-inflection-autoloads queue-autoloads corfu-autoloads embark-consult-autoloads embark-autoloads consult-autoloads orderless orderless-autoloads marginalia marginalia-autoloads vertigo-autoloads color-theme-approximate-autoloads gnuplot-autoloads company-quickhelp pos-tip company-quickhelp-autoloads pos-tip-autoloads company-try-hard-autoloads company-web company-css web-completion-data company-web-autoloads web-completion-data-autoloads company-oddmuse company-keywords company-etags etags fileloop company-gtags company-dabbrev-code company-dabbrev company-files company-clang company-capf company-cmake company-semantic company-template company-bbdb company company-autoloads bibliothek-autoloads pdf-tools-autoloads highlight-parentheses rainbow-delimiters hl-block-mode hl-block-mode-autoloads rainbow-delimiters-autoloads highlight-parentheses-autoloads smex smex-autoloads delight delight-autoloads all-the-icons-dired-autoloads all-the-icons-autoloads dired-icon-autoloads dired-filter dired-hacks-utils dired-aux dired-x dired dired-loaddefs dired-filter-autoloads dired-subtree-autoloads dired-hacks-utils-autoloads helm-org-ql org-ql-search org-ql-view transient compat compat-macs bookmark ov crm org-super-agenda ht helm-org helm-utils helm-help helm-org-ql-autoloads org-ql peg ts org-habit org-agenda org-element org-persist xdg org-id org-refile avl-tree org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-src sh-script smie treesit executable ob-comint org-pcomplete org-list org-footnote org-faces org-entities time-date noutline outline ob-emacs-lisp ob-core ob-eval org-cycle org-table ol org-fold org-fold-core org-keys oc cal-menu calendar cal-loaddefs org-version org-compat org-macs format-spec helm-bibtex-autoloads bibtex-completion-autoloads biblio-autoloads biblio-core-autoloads parsebib-autoloads helm-swoop-autoloads helm-git-grep-autoloads helm-org-autoloads helm-ag-autoloads helm-config helm helm-global-bindings helm-easymenu helm-core async-bytecomp helm-source helm-multi-match helm-lib async helm-autoloads popup-autoloads helm-core-autoloads async-autoloads eglot external-completion jsonrpc xref flymake-proc flymake project ert ewoc debug backtrace filenotify imenu lsp-latex-autoloads dap-mode-autoloads lsp-docker-autoloads yaml-autoloads lsp-treemacs-autoloads treemacs-autoloads cfrs-autoloads posframe-autoloads pfuture-autoloads ace-window-autoloads bui-autoloads lsp-mode-autoloads eldoc-autoloads markdown-mode-autoloads lorem-ipsum-autoloads hl-line display-line-numbers paradox paradox-menu paradox-commit-list cus-edit pp paradox-execute paradox-github paradox-core spinner paradox-autoloads spinner-autoloads let-alist-autoloads shrink-path-autoloads helpful-autoloads elisp-refs-autoloads ssh-autoloads disk-usage-autoloads crux-autoloads sfsymbols-modeline sf fira-code-mode fira-code-mode-autoloads emacs-emojify-autoloads elisp-autofmt loadhist advice find-func general midnight aggressive-indent-autoloads insert-char-preview-autoloads file-info browse-at-remote vc-git diff-mode vc-dispatcher f f-shortdoc shortdoc file-info-autoloads browse-at-remote-autoloads docker-autoloads tablist-autoloads aio-autoloads yatemplate yatemplate-autoloads autoinsert dropdown-list yasnippet-snippets yasnippet yasnippet-snippets-autoloads yasnippet-autoloads ctrlf-autoloads modus-vivendi-theme modus-operandi-theme modus-themes modus-themes-autoloads svg-icon svg-mode-line-themes-autoloads xmlgen-autoloads svg-clock-autoloads svg-lib-autoloads svg dom xml pretty-hydra s use-package-hydra use-package-hydra-autoloads major-mode-hydra-autoloads pretty-hydra-autoloads hydra lv hydra-autoloads lv-autoloads pcase general-autoloads org-loaddefs template xt-mouse cus-load ido ivy delsel ivy-faces ivy-overlay colir color ivy-autoloads avy avy-autoloads eshell esh-cmd generator esh-ext esh-opt esh-proc esh-io esh-arg pcomplete esh-module esh-groups esh-util files-x dash-at-point-autoloads osx-lib-autoloads so-long bookmark+-autoloads no-littering-autoloads exec-path-from-shell exec-path-from-shell-autoloads compile text-property-search comint ansi-osc ansi-color ring savehist disp-table dashboard dashboard-widgets recentf tree-widget wid-edit ffap thingatpt dashboard-autoloads page-break-lines page-break-lines-autoloads use-package-tags use-package use-package-ensure use-package-diminish dash package browse-url url url-proxy url-privacy url-expand url-methods url-history url-cookie url-domsuf url-util mailcap url-handlers url-parse auth-source eieio eieio-core password-cache json map url-vars key-chord-autoloads magit-section-autoloads emacsql-sqlite-autoloads emacsql-autoloads org-ql-autoloads comp comp-cstr warnings icons rx loaddefs-gen generate-lisp-file lisp-mnt radix-tree transient-autoloads compat-autoloads org-super-agenda-autoloads map-autoloads ctable-autoloads finder-inf peg-autoloads ts-autoloads ht-autoloads a-autoloads ov-autoloads org-contrib-autoloads info git-autoloads f-autoloads dash-autoloads s-autoloads early-init use-package-delight edmacro kmacro byte-opt use-package-bind-key bind-key easy-mmode use-package-core el-patch-autoloads el-patch el-patch-stub use-package-autoloads bind-key-autoloads straight-autoloads cl-seq cl-extra help-mode straight subr-x cl-macs gv cl-loaddefs cl-lib bytecomp byte-compile rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/ns-win ns-win ucs-normalize mule-util term/common-win tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic indonesian philippine cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite emoji-zwj charscript charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads xwidget-internal dbusbind kqueue cocoa ns lcms2 multi-tty make-network-process native-compile emacs) Memory information: ((conses 16 1146510 450227) (symbols 48 70844 66) (strings 32 347098 42975) (string-bytes 1 18778333) (vectors 16 172353) (vector-slots 8 4770981 281642) (floats 8 2564 27701) (intervals 56 8918 1002) (buffers 984 30)) Niels S=C3=B8ndergaard Address: Marieh=C3=B8j 236, 2990 Niv=C3=A5=20 Mobile: +45 4052 2789 Website: algon.dk Email: niels@algon.dk --Apple-Mail=_6917CD75-2351-4F97-A8B6-E4000B45F722 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8 This error = comes in several situation, in my build of 30.0.50 (a
clean and = uncompilated build)

start of error message:
Debugger = entered--Lisp error: (error "Invalid escape character syntax")
  read(#<buffer  *load*-85759>)
  = load-with-code-conversion("/Users/niels/.emacs.d/straight/build/yaml/yaml.= el" "/Users/niels/.emacs.d/straight/build/yaml/yaml.el" nil t)
  require(yaml)
  = load-with-code-conversion("/Users/niels/.emacs.d/straight/build/lsp-docker= /ls..." "/Users/niels/.emacs.d/straight/build/lsp-docker/ls..." nil = t)
  = require(lsp-docker)
 = = load-with-code-conversion("/Users/niels/.emacs.d/straight/build/dap-mode/d= ap-..." "/Users/niels/.emacs.d/straight/build/dap-mode/dap-..." nil = t)
  = require(dap-mode nil nil)
  (progn = (use-package-statistics-gather :init 'dap-mode nil) (require 'dap-mode = nil nil) (use-package-statistics-gather :config 'dap-mode nil) (dap-mode = t) (dap-ui-mode t) t (use-package-statistics-gather :config 'dap-mode t) = (use-package-statistics-gather :init 'dap-mode t))
  (closure (t) nil (progn = (use-package-statistics-gather :init 'dap-mode nil) (require 'dap-mode = nil nil) (use-package-statistics-gather :config 'dap-mode nil) (dap-mode = t) (dap-ui-mode t) t (use-package-statistics-gather :config 'dap-mode t) = (use-package-statistics-gather :init 'dap-mode t)))()
  = eval-after-load-helper("/Users/niels/.emacs.d/straight/build/lsp-mode/lsp-= ...")
  = do-after-load-evaluation("/Users/niels/.emacs.d/straight/build/lsp-mode/ls= p-...")
  = lsp()


In GNU Emacs 30.0.50 (build 1, = aarch64-apple-darwin22.4.0, NS
appkit-2299.50 Version 13.3.1 (a) = (Build 22E772610a)) of 2023-05-11
built on macal.local
Windowing = system distributor 'Apple', version 10.3.2299
System = Description:  macOS = 13.3.1

Configured using:
'configure --disable-silent-rules = --with-dbus --with-native-compilation
--with-ns --with-xwidgets = --with-mailutils --with-json --with-jpeg
= --without-compress-install
= '--program-transform-name=3Ds/^ctags$/emctags/' CC=3Dclang
= 'LDFLAGS=3D-L/opt/homebrew/opt/jpeg/lib:-L/opt/homebrew/opt/libtiff/lib:-L= /opt/homebrew/opt/webp/lib:-L/opt/homebrew/opt/libxml2/lib:-L/opt/homebrew= /opt/giflib/lib:-L/opt/homebrew/opt/jpeg/lib:-L/opt/homebrew/opt/libgccjit= /lib/gcc/current:-L/opt/homebrew/opt/openssl@3/lib:-L/opt/homebrew/opt/cur= l/lib:-L/opt/homebrew/opt/python@3.11/lib:-L/opt/homebrew/opt/libxml2/lib:= -L/opt/homebrew/opt/expat/lib:-L/opt/homebrew/opt/ruby/lib:
'
= CPPFLAGS=3D-I/opt/homebrew/opt/jpeg/include:-I/opt/homebrew/opt/libtiff/in= clude:-I/opt/homebrew/opt/cairo/include:-I/opt/homebrew/opt/libxml2/includ= e:-I/opt/homebrew/opt/jpeg/include:-I/opt/homebrew/opt/giflib/include:I/op= t/homebrew/opt/openssl@3/include:-I/opt/homebrew/opt/libxml2/include:-I/op= t/homebrew/opt/expat/include:-I/opt/homebrew/opt/curl/include:-I/opt/homeb= rew/opt/ruby/include:
= PKG_CONFIG_PATH=3D/opt/homebrew/opt/libxml2/lib/pkgconfig:/opt/homebrew/op= t/openssl@3/lib/pkgconfig:/opt/homebrew/opt/libxml2/lib/pkgconfig:/opt/hom= ebrew/opt/python@3.11/lib/pkgconfig:/opt/homebrew/opt/curl/lib/pkgconfig:<= br> OBJC=3Dclang'

Configured features:
ACL DBUS GIF GLIB GMP = GNUTLS JPEG JSON LCMS2 LIBXML2 MODULES NATIVE_COMP
NOTIFY KQUEUE NS = PDUMPER PNG RSVG SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS TREE_SITTER = WEBP XIM XWIDGETS ZLIB

Important settings:
  value of $LC_ALL: = da_DK.UTF-8
  value = of $LANG: da_DK.UTF-8
  locale-coding-system: = utf-8-unix

Major mode: Dashboard

Minor modes in = effect:
  = treemacs-filewatch-mode: t
  treemacs-follow-mode: = t
  = treemacs-git-mode: t
  = treemacs-fringe-indicator-mode: t
  gcmh-mode: t
  global-emojify-mode: = t
  emojify-mode: = t
  pyvenv-mode: = t
  = global-git-gutter-mode: t
  org-edna-mode: t
  global-flycheck-mode: = t
  TeX-PDF-mode: = t
  = shell-dirtrack-mode: t
  = org-pretty-tags-global-mode: t
  which-key-mode: t
  doom-modeline-mode: = t
  = display-time-mode: t
  dimmer-mode: t
  beacon-mode: t
  marginalia-mode: = t
  = company-quickhelp-mode: t
  = company-quickhelp-local-mode: t
  global-company-mode: = t
  company-mode: = t
  = async-bytecomp-package-mode: t
  global-hl-line-mode: = t
  = global-display-line-numbers-mode: t
  auto-insert-mode: = t
  = yas-global-mode: t
  = yas-minor-mode: t
  = ctrlf-mode: t
  = ctrlf-local-mode: t
 = xterm-mouse-mode: t
  ido-everywhere: t
  ivy-mode: t
  savehist-mode: t
  = global-page-break-lines-mode: t
  page-break-lines-mode: = t
  = override-global-mode: t
  el-patch-use-package-mode: = t
  = straight-use-package-mode: t
  = straight-package-neutering-mode: t
  = straight-live-modifications-mode: t
  tooltip-mode: t
  global-eldoc-mode: = t
  = show-paren-mode: t
  = electric-indent-mode: t
  mouse-wheel-mode: = t
  = global-prettify-symbols-mode: t
  tab-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: = t
  = context-menu-mode: t
  global-font-lock-mode: = t
  font-lock-mode: = t
  = blink-cursor-mode: t
  buffer-read-only: = t
  = column-number-mode: t
  line-number-mode: = t
  = global-visual-line-mode: t
  transient-mark-mode: = t
  = auto-composition-mode: t
  auto-encryption-mode: = t
  = auto-compression-mode: t
  abbrev-mode: = t

Load-path = shadows:
/Users/niels/.emacs.d/straight/build/bibtex-actions/citar-mark= down hides = /Users/niels/.emacs.d/straight/build/citar/citar-markdown
/Users/niels/= .emacs.d/straight/build/bibtex-actions/citar-citeproc hides = /Users/niels/.emacs.d/straight/build/citar/citar-citeproc
/Users/niels/= .emacs.d/straight/build/bibtex-actions/citar-cache hides = /Users/niels/.emacs.d/straight/build/citar/citar-cache
/Users/niels/.em= acs.d/straight/build/bibtex-actions/citar-file hides = /Users/niels/.emacs.d/straight/build/citar/citar-file
/Users/niels/.ema= cs.d/straight/build/bibtex-actions/citar-format hides = /Users/niels/.emacs.d/straight/build/citar/citar-format
/Users/niels/.e= macs.d/straight/build/bibtex-actions/citar hides = /Users/niels/.emacs.d/straight/build/citar/citar
/Users/niels/.emacs.d/= straight/build/bibtex-actions/citar-latex hides = /Users/niels/.emacs.d/straight/build/citar/citar-latex
/Users/niels/.em= acs.d/straight/build/bibtex-actions/citar-org hides = /Users/niels/.emacs.d/straight/build/citar/citar-org
/Users/niels/.emac= s.d/straight/build/bibtex-actions/citar-capf hides = /Users/niels/.emacs.d/straight/build/citar/citar-capf
/Users/niels/.ema= cs.d/straight/build/org/ob-comint hides = ~/.config/org-mode-current/lisp/ob-comint
/Users/niels/.emacs.d/straigh= t/build/org/org-ctags hides = ~/.config/org-mode-current/lisp/org-ctags
/Users/niels/.emacs.d/straigh= t/build/org/ox-texinfo hides = ~/.config/org-mode-current/lisp/ox-texinfo
/Users/niels/.emacs.d/straig= ht/build/org/ol-doi hides = ~/.config/org-mode-current/lisp/ol-doi
/Users/niels/.emacs.d/straight/b= uild/org/org-refile hides = ~/.config/org-mode-current/lisp/org-refile
/Users/niels/.emacs.d/straig= ht/build/org/org-version hides = ~/.config/org-mode-current/lisp/org-version
/Users/niels/.emacs.d/strai= ght/build/org/org-num hides = ~/.config/org-mode-current/lisp/org-num
/Users/niels/.emacs.d/straight/= build/org/ol-mhe hides = ~/.config/org-mode-current/lisp/ol-mhe
/Users/niels/.emacs.d/straight/b= uild/org/ob-shell hides = ~/.config/org-mode-current/lisp/ob-shell
/Users/niels/.emacs.d/straight= /build/org/org-attach hides = ~/.config/org-mode-current/lisp/org-attach
/Users/niels/.emacs.d/straig= ht/build/org/ob-C hides = ~/.config/org-mode-current/lisp/ob-C
/Users/niels/.emacs.d/straight/bui= ld/org/org-entities hides = ~/.config/org-mode-current/lisp/org-entities
/Users/niels/.emacs.d/stra= ight/build/org/ob-dot hides = ~/.config/org-mode-current/lisp/ob-dot
/Users/niels/.emacs.d/straight/b= uild/org/ob-sql hides = ~/.config/org-mode-current/lisp/ob-sql
/Users/niels/.emacs.d/straight/b= uild/org/ol-eww hides = ~/.config/org-mode-current/lisp/ol-eww
/Users/niels/.emacs.d/straight/b= uild/org/org-datetree hides = ~/.config/org-mode-current/lisp/org-datetree
/Users/niels/.emacs.d/stra= ight/build/org/org-macro hides = ~/.config/org-mode-current/lisp/org-macro
/Users/niels/.emacs.d/straigh= t/build/org/ob-eval hides = ~/.config/org-mode-current/lisp/ob-eval
/Users/niels/.emacs.d/straight/= build/org/ob-groovy hides = ~/.config/org-mode-current/lisp/ob-groovy
/Users/niels/.emacs.d/straigh= t/build/org/ox-icalendar hides = ~/.config/org-mode-current/lisp/ox-icalendar
/Users/niels/.emacs.d/stra= ight/build/org/org-mobile hides = ~/.config/org-mode-current/lisp/org-mobile
/Users/niels/.emacs.d/straig= ht/build/org/ob-processing hides = ~/.config/org-mode-current/lisp/ob-processing
/Users/niels/.emacs.d/str= aight/build/org/oc-csl hides = ~/.config/org-mode-current/lisp/oc-csl
/Users/niels/.emacs.d/straight/b= uild/org/ob-octave hides = ~/.config/org-mode-current/lisp/ob-octave
/Users/niels/.emacs.d/straigh= t/build/org/org-table hides = ~/.config/org-mode-current/lisp/org-table
/Users/niels/.emacs.d/straigh= t/build/org/ox-html hides = ~/.config/org-mode-current/lisp/ox-html
/Users/niels/.emacs.d/straight/= build/org/ol hides = ~/.config/org-mode-current/lisp/ol
/Users/niels/.emacs.d/straight/build= /org/ob-plantuml hides = ~/.config/org-mode-current/lisp/ob-plantuml
/Users/niels/.emacs.d/strai= ght/build/org/ol-docview hides = ~/.config/org-mode-current/lisp/ol-docview
/Users/niels/.emacs.d/straig= ht/build/org/org-fold-core hides = ~/.config/org-mode-current/lisp/org-fold-core
/Users/niels/.emacs.d/str= aight/build/org/ob-exp hides = ~/.config/org-mode-current/lisp/ob-exp
/Users/niels/.emacs.d/straight/b= uild/org/ob-ditaa hides = ~/.config/org-mode-current/lisp/ob-ditaa
/Users/niels/.emacs.d/straight= /build/org/ob-scheme hides = ~/.config/org-mode-current/lisp/ob-scheme
/Users/niels/.emacs.d/straigh= t/build/org/oc-bibtex hides = ~/.config/org-mode-current/lisp/oc-bibtex
/Users/niels/.emacs.d/straigh= t/build/org/ol-gnus hides = ~/.config/org-mode-current/lisp/ol-gnus
/Users/niels/.emacs.d/straight/= build/org/org-mouse hides = ~/.config/org-mode-current/lisp/org-mouse
/Users/niels/.emacs.d/straigh= t/build/org/org-inlinetask hides = ~/.config/org-mode-current/lisp/org-inlinetask
/Users/niels/.emacs.d/st= raight/build/org/ob-fortran hides = ~/.config/org-mode-current/lisp/ob-fortran
/Users/niels/.emacs.d/straig= ht/build/org/ob-haskell hides = ~/.config/org-mode-current/lisp/ob-haskell
/Users/niels/.emacs.d/straig= ht/build/org/org-id hides = ~/.config/org-mode-current/lisp/org-id
/Users/niels/.emacs.d/straight/b= uild/org/oc hides = ~/.config/org-mode-current/lisp/oc
/Users/niels/.emacs.d/straight/build= /org/ob-css hides = ~/.config/org-mode-current/lisp/ob-css
/Users/niels/.emacs.d/straight/b= uild/org/org-compat hides = ~/.config/org-mode-current/lisp/org-compat
/Users/niels/.emacs.d/straig= ht/build/org/org-element hides = ~/.config/org-mode-current/lisp/org-element
/Users/niels/.emacs.d/strai= ght/build/org/ob hides = ~/.config/org-mode-current/lisp/ob
/Users/niels/.emacs.d/straight/build= /org/ob-calc hides = ~/.config/org-mode-current/lisp/ob-calc
/Users/niels/.emacs.d/straight/= build/org/ob-python hides = ~/.config/org-mode-current/lisp/ob-python
/Users/niels/.emacs.d/straigh= t/build/org/org-agenda hides = ~/.config/org-mode-current/lisp/org-agenda
/Users/niels/.emacs.d/straig= ht/build/org/org-persist hides = ~/.config/org-mode-current/lisp/org-persist
/Users/niels/.emacs.d/strai= ght/build/org/ob-ocaml hides = ~/.config/org-mode-current/lisp/ob-ocaml
/Users/niels/.emacs.d/straight= /build/org/org-tempo hides = ~/.config/org-mode-current/lisp/org-tempo
/Users/niels/.emacs.d/straigh= t/build/org/ob-ref hides = ~/.config/org-mode-current/lisp/ob-ref
/Users/niels/.emacs.d/straight/b= uild/org/ob-tangle hides = ~/.config/org-mode-current/lisp/ob-tangle
/Users/niels/.emacs.d/straigh= t/build/org/org-fold hides = ~/.config/org-mode-current/lisp/org-fold
/Users/niels/.emacs.d/straight= /build/org/ob-lilypond hides = ~/.config/org-mode-current/lisp/ob-lilypond
/Users/niels/.emacs.d/strai= ght/build/org/ob-clojure hides = ~/.config/org-mode-current/lisp/ob-clojure
/Users/niels/.emacs.d/straig= ht/build/org/org-lint hides = ~/.config/org-mode-current/lisp/org-lint
/Users/niels/.emacs.d/straight= /build/org/ol-eshell hides = ~/.config/org-mode-current/lisp/ol-eshell
/Users/niels/.emacs.d/straigh= t/build/org/ox-latex hides = ~/.config/org-mode-current/lisp/ox-latex
/Users/niels/.emacs.d/straight= /build/org/org-pcomplete hides = ~/.config/org-mode-current/lisp/org-pcomplete
/Users/niels/.emacs.d/str= aight/build/org/org-duration hides = ~/.config/org-mode-current/lisp/org-duration
/Users/niels/.emacs.d/stra= ight/build/org/ox-beamer hides = ~/.config/org-mode-current/lisp/ox-beamer
/Users/niels/.emacs.d/straigh= t/build/org/ol-info hides = ~/.config/org-mode-current/lisp/ol-info
/Users/niels/.emacs.d/straight/= build/org/ob-table hides = ~/.config/org-mode-current/lisp/ob-table
/Users/niels/.emacs.d/straight= /build/org/ol-rmail hides = ~/.config/org-mode-current/lisp/ol-rmail
/Users/niels/.emacs.d/straight= /build/org/ox-odt hides = ~/.config/org-mode-current/lisp/ox-odt
/Users/niels/.emacs.d/straight/b= uild/org/org-protocol hides = ~/.config/org-mode-current/lisp/org-protocol
/Users/niels/.emacs.d/stra= ight/build/org/ob-latex hides = ~/.config/org-mode-current/lisp/ob-latex
/Users/niels/.emacs.d/straight= /build/org/ob-julia hides = ~/.config/org-mode-current/lisp/ob-julia
/Users/niels/.emacs.d/straight= /build/org/org-archive hides = ~/.config/org-mode-current/lisp/org-archive
/Users/niels/.emacs.d/strai= ght/build/org/ol-w3m hides = ~/.config/org-mode-current/lisp/ol-w3m
/Users/niels/.emacs.d/straight/b= uild/org/ob-sed hides = ~/.config/org-mode-current/lisp/ob-sed
/Users/niels/.emacs.d/straight/b= uild/org/ob-perl hides = ~/.config/org-mode-current/lisp/ob-perl
/Users/niels/.emacs.d/straight/= build/org/ob-eshell hides = ~/.config/org-mode-current/lisp/ob-eshell
/Users/niels/.emacs.d/straigh= t/build/org/ol-man hides = ~/.config/org-mode-current/lisp/ol-man
/Users/niels/.emacs.d/straight/b= uild/org/org-plot hides = ~/.config/org-mode-current/lisp/org-plot
/Users/niels/.emacs.d/straight= /build/org/org-clock hides = ~/.config/org-mode-current/lisp/org-clock
/Users/niels/.emacs.d/straigh= t/build/org/ob-awk hides = ~/.config/org-mode-current/lisp/ob-awk
/Users/niels/.emacs.d/straight/b= uild/org/org-list hides = ~/.config/org-mode-current/lisp/org-list
/Users/niels/.emacs.d/straight= /build/org/ob-sqlite hides = ~/.config/org-mode-current/lisp/ob-sqlite
/Users/niels/.emacs.d/straigh= t/build/org/org-macs hides = ~/.config/org-mode-current/lisp/org-macs
/Users/niels/.emacs.d/straight= /build/org/ox-man hides = ~/.config/org-mode-current/lisp/ox-man
/Users/niels/.emacs.d/straight/b= uild/org/ol-bbdb hides = ~/.config/org-mode-current/lisp/ol-bbdb
/Users/niels/.emacs.d/straight/= build/org/org-loaddefs hides = ~/.config/org-mode-current/lisp/org-loaddefs
/Users/niels/.emacs.d/stra= ight/build/org/ol-irc hides = ~/.config/org-mode-current/lisp/ol-irc
/Users/niels/.emacs.d/straight/b= uild/org/org hides = ~/.config/org-mode-current/lisp/org
/Users/niels/.emacs.d/straight/buil= d/org/org-capture hides = ~/.config/org-mode-current/lisp/org-capture
/Users/niels/.emacs.d/strai= ght/build/org/org-colview hides = ~/.config/org-mode-current/lisp/org-colview
/Users/niels/.emacs.d/strai= ght/build/org/org-goto hides = ~/.config/org-mode-current/lisp/org-goto
/Users/niels/.emacs.d/straight= /build/org/ob-R hides = ~/.config/org-mode-current/lisp/ob-R
/Users/niels/.emacs.d/straight/bui= ld/org/ob-ruby hides = ~/.config/org-mode-current/lisp/ob-ruby
/Users/niels/.emacs.d/straight/= build/org/ob-sass hides = ~/.config/org-mode-current/lisp/ob-sass
/Users/niels/.emacs.d/straight/= build/org/ob-matlab hides = ~/.config/org-mode-current/lisp/ob-matlab
/Users/niels/.emacs.d/straigh= t/build/org/ox hides = ~/.config/org-mode-current/lisp/ox
/Users/niels/.emacs.d/straight/build= /org/oc-natbib hides = ~/.config/org-mode-current/lisp/oc-natbib
/Users/niels/.emacs.d/straigh= t/build/org/ob-core hides = ~/.config/org-mode-current/lisp/ob-core
/Users/niels/.emacs.d/straight/= build/org/ob-makefile hides = ~/.config/org-mode-current/lisp/ob-makefile
/Users/niels/.emacs.d/strai= ght/build/org/org-timer hides = ~/.config/org-mode-current/lisp/org-timer
/Users/niels/.emacs.d/straigh= t/build/org/ob-org hides = ~/.config/org-mode-current/lisp/ob-org
/Users/niels/.emacs.d/straight/b= uild/org/ob-forth hides = ~/.config/org-mode-current/lisp/ob-forth
/Users/niels/.emacs.d/straight= /build/org/oc-biblatex hides = ~/.config/org-mode-current/lisp/oc-biblatex
/Users/niels/.emacs.d/strai= ght/build/org/ob-lob hides = ~/.config/org-mode-current/lisp/ob-lob
/Users/niels/.emacs.d/straight/b= uild/org/ob-gnuplot hides = ~/.config/org-mode-current/lisp/ob-gnuplot
/Users/niels/.emacs.d/straig= ht/build/org/org-faces hides = ~/.config/org-mode-current/lisp/org-faces
/Users/niels/.emacs.d/straigh= t/build/org/org-habit hides = ~/.config/org-mode-current/lisp/org-habit
/Users/niels/.emacs.d/straigh= t/build/org/ox-koma-letter hides = ~/.config/org-mode-current/lisp/ox-koma-letter
/Users/niels/.emacs.d/st= raight/build/org/ob-js hides = ~/.config/org-mode-current/lisp/ob-js
/Users/niels/.emacs.d/straight/bu= ild/org/ob-screen hides = ~/.config/org-mode-current/lisp/ob-screen
/Users/niels/.emacs.d/straigh= t/build/org/org-footnote hides = ~/.config/org-mode-current/lisp/org-footnote
/Users/niels/.emacs.d/stra= ight/build/org/oc-basic hides = ~/.config/org-mode-current/lisp/oc-basic
/Users/niels/.emacs.d/straight= /build/org/ol-bibtex hides = ~/.config/org-mode-current/lisp/ol-bibtex
/Users/niels/.emacs.d/straigh= t/build/org/ob-java hides = ~/.config/org-mode-current/lisp/ob-java
/Users/niels/.emacs.d/straight/= build/org/ob-lua hides = ~/.config/org-mode-current/lisp/ob-lua
/Users/niels/.emacs.d/straight/b= uild/org/ox-md hides = ~/.config/org-mode-current/lisp/ox-md
/Users/niels/.emacs.d/straight/bu= ild/org/org-cycle hides = ~/.config/org-mode-current/lisp/org-cycle
/Users/niels/.emacs.d/straigh= t/build/org/ox-ascii hides = ~/.config/org-mode-current/lisp/ox-ascii
/Users/niels/.emacs.d/straight= /build/org/org-keys hides = ~/.config/org-mode-current/lisp/org-keys
/Users/niels/.emacs.d/straight= /build/org/ob-lisp hides = ~/.config/org-mode-current/lisp/ob-lisp
/Users/niels/.emacs.d/straight/= build/org/org-attach-git hides = ~/.config/org-mode-current/lisp/org-attach-git
/Users/niels/.emacs.d/st= raight/build/org/ob-emacs-lisp hides = ~/.config/org-mode-current/lisp/ob-emacs-lisp
/Users/niels/.emacs.d/str= aight/build/org/ob-maxima hides = ~/.config/org-mode-current/lisp/ob-maxima
/Users/niels/.emacs.d/straigh= t/build/org/org-crypt hides = ~/.config/org-mode-current/lisp/org-crypt
/Users/niels/.emacs.d/straigh= t/build/org/org-feed hides = ~/.config/org-mode-current/lisp/org-feed
/Users/niels/.emacs.d/straight= /build/org/org-src hides = ~/.config/org-mode-current/lisp/org-src
/Users/niels/.emacs.d/straight/= build/org/ox-org hides = ~/.config/org-mode-current/lisp/ox-org
/Users/niels/.emacs.d/straight/b= uild/org/org-indent hides = ~/.config/org-mode-current/lisp/org-indent
/Users/niels/.emacs.d/straig= ht/build/org/ox-publish hides = ~/.config/org-mode-current/lisp/ox-publish
/Users/niels/.emacs.d/straig= ht/build/transient/transient hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/transient
/Users= /niels/.emacs.d/straight/build/use-package/use-package-jump hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/use-package/use-pac= kage-jump
/Users/niels/.emacs.d/straight/build/use-package/use-package-= diminish hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/use-package/use-pac= kage-diminish
/Users/niels/.emacs.d/straight/build/use-package/use-pack= age hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/use-package/use-pac= kage
/Users/niels/.emacs.d/straight/build/use-package/use-package-delig= ht hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/use-package/use-pac= kage-delight
/Users/niels/.emacs.d/straight/build/use-package/use-packa= ge-lint hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/use-package/use-pac= kage-lint
/Users/niels/.emacs.d/straight/build/bind-key/bind-key = hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/use-package/bind-ke= y
/Users/niels/.emacs.d/straight/build/use-package/use-package-core = hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/use-package/use-pac= kage-core
/Users/niels/.emacs.d/straight/build/use-package/use-package-= ensure hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/use-package/use-pac= kage-ensure
/Users/niels/.emacs.d/straight/build/use-package/use-packag= e-bind-key hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/use-package/use-pac= kage-bind-key
/Users/niels/.emacs.d/straight/build/org/ob-comint = hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-comint
/U= sers/niels/.emacs.d/straight/build/org/ob-exp hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-exp
/User= s/niels/.emacs.d/straight/build/org/org-ctags hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-ctags
/U= sers/niels/.emacs.d/straight/build/org/ob-emacs-lisp hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-emacs-lisp/Users/niels/.emacs.d/straight/build/org/oc hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/oc
/Users/ni= els/.emacs.d/straight/build/org/ox-texinfo hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-texinfo
/= Users/niels/.emacs.d/straight/build/org/ol-irc hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-irc
/User= s/niels/.emacs.d/straight/build/org/ol-doi hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-doi
/User= s/niels/.emacs.d/straight/build/org/ob hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob
/Users/ni= els/.emacs.d/straight/build/org/org-refile hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-refile
/= Users/niels/.emacs.d/straight/build/org/org-version hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-version
= /Users/niels/.emacs.d/straight/build/org/org-num hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-num
/Use= rs/niels/.emacs.d/straight/build/org/ol-mhe hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-mhe
/User= s/niels/.emacs.d/straight/build/org/ob-shell hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-shell
/Us= ers/niels/.emacs.d/straight/build/org/org-attach hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-attach
/= Users/niels/.emacs.d/straight/build/org/ob-C hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-C
/Users/= niels/.emacs.d/straight/build/org/org-macs hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-macs
/Us= ers/niels/.emacs.d/straight/build/org/org-entities hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-entities/Users/niels/.emacs.d/straight/build/org/ob-dot hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-dot
/User= s/niels/.emacs.d/straight/build/org/ob-sql hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-sql
/User= s/niels/.emacs.d/straight/build/org/ol-eww hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-eww
/User= s/niels/.emacs.d/straight/build/org/org-datetree hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-datetree/Users/niels/.emacs.d/straight/build/org/org-macro hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-macro
/U= sers/niels/.emacs.d/straight/build/org/ob-eval hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-eval
/Use= rs/niels/.emacs.d/straight/build/org/ob-haskell hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-haskell
/= Users/niels/.emacs.d/straight/build/org/ox-org hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-org
/User= s/niels/.emacs.d/straight/build/org/ol-rmail hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-rmail
/Us= ers/niels/.emacs.d/straight/build/org/ob-awk hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-awk
/User= s/niels/.emacs.d/straight/build/org/ob-groovy hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-groovy
/U= sers/niels/.emacs.d/straight/build/org/ox-icalendar hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-icalendar/Users/niels/.emacs.d/straight/build/org/ob-octave hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-octave
/U= sers/niels/.emacs.d/straight/build/org/ob-scheme hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-scheme
/U= sers/niels/.emacs.d/straight/build/org/org-mobile hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-mobile
/= Users/niels/.emacs.d/straight/build/org/ob-processing hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-processing/Users/niels/.emacs.d/straight/build/org/oc-biblatex hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/oc-biblatex
= /Users/niels/.emacs.d/straight/build/org/oc-csl hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/oc-csl
/User= s/niels/.emacs.d/straight/build/org/org-colview hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-colview
= /Users/niels/.emacs.d/straight/build/org/ob-R hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-R
/Users/= niels/.emacs.d/straight/build/org/org-table hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-table
/U= sers/niels/.emacs.d/straight/build/org/ox-html hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-html
/Use= rs/niels/.emacs.d/straight/build/org/ob-fortran hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-fortran
/= Users/niels/.emacs.d/straight/build/org/ol hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol
/Users/ni= els/.emacs.d/straight/build/org/ob-plantuml hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-plantuml
= /Users/niels/.emacs.d/straight/build/org/ol-docview hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-docview
/= Users/niels/.emacs.d/straight/build/org/ob-perl hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-perl
/Use= rs/niels/.emacs.d/straight/build/org/ob-sqlite hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-sqlite
/U= sers/niels/.emacs.d/straight/build/org/oc-basic hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/oc-basic
/Us= ers/niels/.emacs.d/straight/build/org/ob-sed hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-sed
/User= s/niels/.emacs.d/straight/build/org/org-fold-core hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-fold-core/Users/niels/.emacs.d/straight/build/org/ob-ditaa hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-ditaa
/Us= ers/niels/.emacs.d/straight/build/org/ob-ruby hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-ruby
/Use= rs/niels/.emacs.d/straight/build/org/oc-bibtex hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/oc-bibtex
/U= sers/niels/.emacs.d/straight/build/org/org-habit hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-habit
/U= sers/niels/.emacs.d/straight/build/org/org-loaddefs hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-loaddefs/Users/niels/.emacs.d/straight/build/org/ol-gnus hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-gnus
/Use= rs/niels/.emacs.d/straight/build/org/ob-screen hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-screen
/U= sers/niels/.emacs.d/straight/build/org/org-mouse hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-mouse
/U= sers/niels/.emacs.d/straight/build/org/ob-css hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-css
/User= s/niels/.emacs.d/straight/build/org/org-inlinetask hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-inlinetask<= br>/Users/niels/.emacs.d/straight/build/org/ob-lisp hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-lisp
/Use= rs/niels/.emacs.d/straight/build/org/ol-eshell hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-eshell
/U= sers/niels/.emacs.d/straight/build/org/org-pcomplete hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-pcomplete/Users/niels/.emacs.d/straight/build/org/org-lint hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-lint
/Us= ers/niels/.emacs.d/straight/build/org/org-id hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-id
/User= s/niels/.emacs.d/straight/build/org/org-capture hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-capture
= /Users/niels/.emacs.d/straight/build/org/ob-sass hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-sass
/Use= rs/niels/.emacs.d/straight/build/org/ob-tangle hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-tangle
/U= sers/niels/.emacs.d/straight/build/org/ob-calc hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-calc
/Use= rs/niels/.emacs.d/straight/build/org/ob-java hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-java
/Use= rs/niels/.emacs.d/straight/build/org/org-compat hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-compat
/= Users/niels/.emacs.d/straight/build/org/org-attach-git hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-attach-git<= br>/Users/niels/.emacs.d/straight/build/org/ox-beamer hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-beamer
/U= sers/niels/.emacs.d/straight/build/org/org-protocol hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-protocol/Users/niels/.emacs.d/straight/build/org/org-element hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-element
= /Users/niels/.emacs.d/straight/build/org/ob-lob hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-lob
/User= s/niels/.emacs.d/straight/build/org/org-tempo hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-tempo
/U= sers/niels/.emacs.d/straight/build/org/ob-python hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-python
/U= sers/niels/.emacs.d/straight/build/org/ob-latex hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-latex
/Us= ers/niels/.emacs.d/straight/build/org/ol-w3m hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-w3m
/User= s/niels/.emacs.d/straight/build/org/org-agenda hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-agenda
/= Users/niels/.emacs.d/straight/build/org/org-persist hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-persist
= /Users/niels/.emacs.d/straight/build/org/ob-ocaml hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-ocaml
/Us= ers/niels/.emacs.d/straight/build/org/ob-ref hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-ref
/User= s/niels/.emacs.d/straight/build/org/org-fold hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-fold
/Us= ers/niels/.emacs.d/straight/build/org/ob-julia hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-julia
/Us= ers/niels/.emacs.d/straight/build/org/ob-lilypond hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-lilypond
= /Users/niels/.emacs.d/straight/build/org/ob-table hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-table
/Us= ers/niels/.emacs.d/straight/build/org/ob-clojure hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-clojure
/= Users/niels/.emacs.d/straight/build/org/org-indent hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-indent
/= Users/niels/.emacs.d/straight/build/org/org-plot hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-plot
/Us= ers/niels/.emacs.d/straight/build/org/ox-latex hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-latex
/Us= ers/niels/.emacs.d/straight/build/org/org-src hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-src
/Use= rs/niels/.emacs.d/straight/build/org/org-duration hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-duration/Users/niels/.emacs.d/straight/build/org/ob-makefile hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-makefile
= /Users/niels/.emacs.d/straight/build/org/ol-info hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-info
/Use= rs/niels/.emacs.d/straight/build/org/org-clock hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-clock
/U= sers/niels/.emacs.d/straight/build/org/ob-forth hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-forth
/Us= ers/niels/.emacs.d/straight/build/org/ox-odt hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-odt
/User= s/niels/.emacs.d/straight/build/org/ol-man hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-man
/User= s/niels/.emacs.d/straight/build/org/ox-publish hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-publish
/= Users/niels/.emacs.d/straight/build/org/org-archive hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-archive
= /Users/niels/.emacs.d/straight/build/org/ob-org hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-org
/User= s/niels/.emacs.d/straight/build/org/ob-lua hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-lua
/User= s/niels/.emacs.d/straight/build/org/org-keys hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-keys
/Us= ers/niels/.emacs.d/straight/build/org/ob-eshell hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-eshell
/U= sers/niels/.emacs.d/straight/build/org/org-faces hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-faces
/U= sers/niels/.emacs.d/straight/build/org/ox-man hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-man
/User= s/niels/.emacs.d/straight/build/org/org-list hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-list
/Us= ers/niels/.emacs.d/straight/build/org/ox-md hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-md
/Users= /niels/.emacs.d/straight/build/org/org-goto hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-goto
/Us= ers/niels/.emacs.d/straight/build/org/ol-bbdb hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-bbdb
/Use= rs/niels/.emacs.d/straight/build/org/org hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org
/Users/n= iels/.emacs.d/straight/build/org/ol-bibtex hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ol-bibtex
/U= sers/niels/.emacs.d/straight/build/org/ox-koma-letter hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-koma-letter<= br>/Users/niels/.emacs.d/straight/build/org/ox-ascii hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox-ascii
/Us= ers/niels/.emacs.d/straight/build/org/ob-matlab hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-matlab
/U= sers/niels/.emacs.d/straight/build/org/ox hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ox
/Users/ni= els/.emacs.d/straight/build/org/org-timer hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-timer
/U= sers/niels/.emacs.d/straight/build/org/oc-natbib hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/oc-natbib
/U= sers/niels/.emacs.d/straight/build/org/ob-core hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-core
/Use= rs/niels/.emacs.d/straight/build/org/org-feed hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-feed
/Us= ers/niels/.emacs.d/straight/build/org/ob-gnuplot hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-gnuplot
/= Users/niels/.emacs.d/straight/build/org/ob-js hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-js
/Users= /niels/.emacs.d/straight/build/org/org-footnote hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-footnote/Users/niels/.emacs.d/straight/build/org/ob-maxima hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/ob-maxima
/U= sers/niels/.emacs.d/straight/build/org/org-cycle hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-cycle
/U= sers/niels/.emacs.d/straight/build/org/org-crypt hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/org/org-crypt
/U= sers/niels/.emacs.d/straight/build/map/map hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/emacs-lisp/map
/= Users/niels/.emacs.d/straight/build/let-alist/let-alist hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/emacs-lisp/let-alis= t
/Users/niels/.emacs.d/straight/build/eldoc/eldoc hides = /Applications/Emacs30.0.50.app/Contents/Resources/lisp/emacs-lisp/eldoc
Features:
(shadow sort mail-extr emacsbug lsp-dhall lsp-d = lsp-css lsp-csharp
lsp-crystal lsp-cmake lsp-clojure lsp-treemacs = lsp-treemacs-generic
lsp-treemacs-themes treemacs-treelib treemacs = treemacs-header-line
treemacs-compatibility treemacs-mode = treemacs-bookmarks treemacs-tags
treemacs-interface = treemacs-persistence treemacs-filewatch-mode
treemacs-follow-mode = treemacs-rendering treemacs-annotations
treemacs-async = treemacs-workspaces treemacs-dom = treemacs-visuals
treemacs-fringe-indicator treemacs-scope pulse = treemacs-faces
treemacs-icons treemacs-themes treemacs-core-utils = pfuture
treemacs-logging treemacs-customization = treemacs-macros
lsp-semantic-tokens lsp-clangd lsp-beancount lsp-bash = lsp-astro
lsp-ansible lsp-angular lsp-ada lsp-actionscript gcmh = gcmh-autoloads
cursor-sensor cl-print company-wordfreq ispell = posframe dap-overlays
lsp-mode emojify apropos tar-mode arc-mode = archive-mode init
all-the-icons-dired xwidgete-autoloads mode-minder = keycast-autoloads
list-unicode-display rcd-org-agenda-dashboard = rcd-dashboard
rcd-utilities hi-lock latex-table-wizard latex = latex-flymake tex-ispell
tex-style org-novelist gptai org-ai url-http = url-auth url-gw
org-pandoc-import org-pandoc-import-autoloads = projectile-autoloads
slime-autoloads macrostep-autoloads = phpunit-autoloads ac-php-autoloads
auto-complete-autoloads = ac-php-core-autoloads xcscope-autoloads
php-mode-autoloads = highlight-indentation help-fns elpy elpy-rpc pyvenv
elpy-shell = elpy-profile elpy-django elpy-refactor hideshow grep
elpy-autoloads = pyvenv-autoloads = highlight-indentation-autoloads
pandoc-mode-autoloads constants = sort-words-autoloads
company-wordfreq-autoloads most-used-words = bibtex-mode-autoloads
bibtex-actions-autoloads = bibtex-utils-autoloads
git-timemachine-autoloads git-gutter = git-gutter-autoloads
magit-autoloads git-commit-autoloads = with-editor-autoloads expenses
org-duration lsp-protocol = network-stream nsm markdown-mode inline
org-fancy-priorities toc-org = company-abbrev calfw-org org-capture
calfw-org-autoloads calfw-cal = calfw holidays holiday-loaddefs cl
calfw-cal-autoloads = calfw-autoloads org-autolist-autoloads appt
diary-lib diary-loaddefs = org-edna org-edna-autoloads org-linker-edna
org-linker = org-cliplink-autoloads org-pdftools-autoloads
org-noter-autoloads = flycheck latex-extra-autoloads font-latex tex
texmathp = auctex-autoloads tex-site ob-latex ob-plantuml ob-org = ob-ledger
ob-clojure ob-gnuplot ob-ruby ob-python python ob-R = ob-ditaa ob-dot
ob-sh shell writegood-mode org-web-tools = esxml-query
org-web-tools-autoloads request-autoloads esxml-autoloads = kv-autoloads
org-agenda-views org-roam-bibtex-autoloads = org-roam-autoloads doct
doct-autoloads = org-inline-clocking-buttons
org-inline-clocking-buttons-mode = org-journal org-crypt cal-iso org-bars
org-bars-autoloads = org-pretty-tags org-tag-data
org-pretty-tags-autoloads pretty-symbols = pretty-symbols-autoloads
org-pomodoro-autoloads alert-autoloads = log4e-autoloads gntp-autoloads
org-tree-slide-autoloads = org-preview-html xwidget
org-preview-html-autoloads = org-mime-autoloads toc-org-autoloads
org-rich-yank-autoloads = org-fancy-priorities-autoloads ox-gfm
ox-gfm-autoloads = org-dashboard-autoloads org-checklist orgtbl-aggregate
calc-arith = calc-alg calc-aent calc-ext calc calc-loaddefs rect = calc-macs
org-lint ox-texinfo ox-org ox-odt rng-loc rng-uri rng-parse = rng-match
rng-dt rng-util rng-pttrn nxml-parse nxml-ns nxml-enc = xmltok nxml-util
ox-md ox-koma-letter ox-icalendar ox-html table = ox-beamer ox-latex
ox-ascii ox-publish ox org-attach org-indent = oc-basic ol-eww eww
url-queue mm-url ol-rmail ol-mhe ol-irc ol-info = ol-gnus nnselect
gnus-art mm-uu mml2015 mm-view mml-smime smime = gnutls dig gnus-sum shr
pixel-fill kinsoku url-file gnus-group = gnus-undo gnus-start gnus-dbus
dbus gnus-cloud nnimap nnmail = mail-source utf7 nnoo parse-time gnus-spec
gnus-int gnus-range = message sendmail yank-media puny rfc822 mml mml-sec
epa derived epg = rfc6068 epg-config mm-decode mm-bodies mm-encode
mail-parse rfc2231 = rfc2047 rfc2045 ietf-drums mailabbrev gmm-utils
mailheader gnus-win = gnus nnheader gnus-util mail-utils range mm-util
mail-prsvr = ol-docview doc-view jka-compr image-mode exif ol-bibtex
bibtex = iso8601 ol-bbdb ol-w3m ol-doi org-link-doi = org-archive
2048-game-autoloads flycheck-autoloads pkg-info-autoloads = epl-autoloads
which-key which-key-autoloads origami-autoloads = move-text-autoloads
doom-modeline doom-modeline-segments = doom-modeline-env
doom-modeline-core all-the-icons = all-the-icons-faces data-material
data-weathericons data-octicons = data-fileicons data-faicons
data-alltheicons shrink-path = doom-modeline-autoloads ghub-autoloads
treepy-autoloads = info+-autoloads time dimmer face-remap dimmer-autoloads
beacon = beacon-autoloads diminish diminish-autoloads = citar-autoloads
citeproc-autoloads string-inflection-autoloads = queue-autoloads
corfu-autoloads embark-consult-autoloads = embark-autoloads
consult-autoloads orderless orderless-autoloads = marginalia
marginalia-autoloads vertigo-autoloads = color-theme-approximate-autoloads
gnuplot-autoloads company-quickhelp = pos-tip company-quickhelp-autoloads
pos-tip-autoloads = company-try-hard-autoloads company-web = company-css
web-completion-data company-web-autoloads = web-completion-data-autoloads
company-oddmuse company-keywords = company-etags etags fileloop
company-gtags company-dabbrev-code = company-dabbrev company-files
company-clang company-capf = company-cmake company-semantic
company-template company-bbdb company = company-autoloads
bibliothek-autoloads pdf-tools-autoloads = highlight-parentheses
rainbow-delimiters hl-block-mode = hl-block-mode-autoloads
rainbow-delimiters-autoloads = highlight-parentheses-autoloads smex
smex-autoloads delight = delight-autoloads = all-the-icons-dired-autoloads
all-the-icons-autoloads = dired-icon-autoloads dired-filter
dired-hacks-utils dired-aux dired-x = dired dired-loaddefs
dired-filter-autoloads = dired-subtree-autoloads
dired-hacks-utils-autoloads helm-org-ql = org-ql-search org-ql-view
transient compat compat-macs bookmark ov = crm org-super-agenda ht
helm-org helm-utils helm-help = helm-org-ql-autoloads org-ql peg ts
org-habit org-agenda org-element = org-persist xdg org-id org-refile
avl-tree org ob ob-tangle ob-ref = ob-lob ob-table ob-exp org-macro
org-src sh-script smie treesit = executable ob-comint org-pcomplete
org-list org-footnote org-faces = org-entities time-date noutline outline
ob-emacs-lisp ob-core ob-eval = org-cycle org-table ol org-fold
org-fold-core org-keys oc cal-menu = calendar cal-loaddefs org-version
org-compat org-macs format-spec = helm-bibtex-autoloads
bibtex-completion-autoloads biblio-autoloads = biblio-core-autoloads
parsebib-autoloads helm-swoop-autoloads = helm-git-grep-autoloads
helm-org-autoloads helm-ag-autoloads = helm-config helm
helm-global-bindings helm-easymenu helm-core = async-bytecomp helm-source
helm-multi-match helm-lib async = helm-autoloads popup-autoloads
helm-core-autoloads async-autoloads = eglot external-completion jsonrpc
xref flymake-proc flymake project = ert ewoc debug backtrace filenotify
imenu lsp-latex-autoloads = dap-mode-autoloads lsp-docker-autoloads
yaml-autoloads = lsp-treemacs-autoloads treemacs-autoloads = cfrs-autoloads
posframe-autoloads pfuture-autoloads = ace-window-autoloads bui-autoloads
lsp-mode-autoloads eldoc-autoloads = markdown-mode-autoloads
lorem-ipsum-autoloads hl-line = display-line-numbers paradox paradox-menu
paradox-commit-list = cus-edit pp paradox-execute paradox-github
paradox-core spinner = paradox-autoloads spinner-autoloads
let-alist-autoloads = shrink-path-autoloads helpful-autoloads
elisp-refs-autoloads = ssh-autoloads disk-usage-autoloads crux-autoloads
sfsymbols-modeline = sf fira-code-mode fira-code-mode-autoloads
emacs-emojify-autoloads = elisp-autofmt loadhist advice find-func general
midnight = aggressive-indent-autoloads insert-char-preview-autoloads
file-info = browse-at-remote vc-git diff-mode vc-dispatcher f f-shortdoc
shortdoc = file-info-autoloads browse-at-remote-autoloads = docker-autoloads
tablist-autoloads aio-autoloads yatemplate = yatemplate-autoloads
autoinsert dropdown-list yasnippet-snippets = yasnippet
yasnippet-snippets-autoloads yasnippet-autoloads = ctrlf-autoloads
modus-vivendi-theme modus-operandi-theme = modus-themes
modus-themes-autoloads svg-icon = svg-mode-line-themes-autoloads
xmlgen-autoloads svg-clock-autoloads = svg-lib-autoloads svg dom xml
pretty-hydra s use-package-hydra = use-package-hydra-autoloads
major-mode-hydra-autoloads = pretty-hydra-autoloads hydra lv
hydra-autoloads lv-autoloads pcase = general-autoloads org-loaddefs
template xt-mouse cus-load ido ivy = delsel ivy-faces ivy-overlay colir
color ivy-autoloads avy = avy-autoloads eshell esh-cmd generator esh-ext
esh-opt esh-proc = esh-io esh-arg pcomplete esh-module esh-groups esh-util
files-x = dash-at-point-autoloads osx-lib-autoloads so-long
bookmark+-autoloads = no-littering-autoloads = exec-path-from-shell
exec-path-from-shell-autoloads compile = text-property-search comint
ansi-osc ansi-color ring savehist = disp-table dashboard dashboard-widgets
recentf tree-widget wid-edit = ffap thingatpt dashboard-autoloads
page-break-lines = page-break-lines-autoloads use-package-tags = use-package
use-package-ensure use-package-diminish dash package = browse-url url
url-proxy url-privacy url-expand url-methods = url-history url-cookie
url-domsuf url-util mailcap url-handlers = url-parse auth-source eieio
eieio-core password-cache json map = url-vars key-chord-autoloads
magit-section-autoloads = emacsql-sqlite-autoloads emacsql-autoloads
org-ql-autoloads comp = comp-cstr warnings icons rx loaddefs-gen
generate-lisp-file lisp-mnt = radix-tree transient-autoloads
compat-autoloads = org-super-agenda-autoloads map-autoloads
ctable-autoloads finder-inf = peg-autoloads ts-autoloads ht-autoloads
a-autoloads ov-autoloads = org-contrib-autoloads info git-autoloads
f-autoloads dash-autoloads = s-autoloads early-init use-package-delight
edmacro kmacro byte-opt = use-package-bind-key bind-key easy-mmode
use-package-core = el-patch-autoloads el-patch el-patch-stub
use-package-autoloads = bind-key-autoloads straight-autoloads cl-seq
cl-extra help-mode = straight subr-x cl-macs gv cl-loaddefs cl-lib
bytecomp byte-compile = rmc iso-transl tooltip cconv eldoc paren electric
uniquify ediff-hook = vc-hooks lisp-float-type elisp-mode mwheel
term/ns-win ns-win = ucs-normalize mule-util term/common-win tool-bar dnd
fontset image = regexp-opt fringe tabulated-list replace newcomment
text-mode = lisp-mode prog-mode register page tab-bar menu-bar = rfn-eshadow
isearch easymenu timer select scroll-bar mouse jit-lock = font-lock syntax
font-core term/tty-colors frame minibuffer nadvice = seq simple cl-generic
indonesian philippine cham georgian utf-8-lang = misc-lang vietnamese
tibetan thai tai-viet lao korean japanese = eucjp-ms cp51932 hebrew greek
romanian slovak czech european ethiopic = indian cyrillic chinese
composite emoji-zwj charscript charprop = case-table epa-hook
jka-cmpr-hook help abbrev obarray oclosure = cl-preloaded button loaddefs
theme-loaddefs faces cus-face macroexp = files window text-properties
overlay sha1 md5 base64 format env = code-pages mule custom widget keymap
hashtable-print-readable = backquote threads xwidget-internal dbusbind
kqueue cocoa ns lcms2 = multi-tty make-network-process native-compile
emacs)

Memory = information:
((conses 16 1146510 450227)
(symbols 48 70844 = 66)
(strings 32 347098 42975)
(string-bytes 1 18778333)
= (vectors 16 172353)
(vector-slots 8 4770981 281642)
(floats 8 = 2564 27701)
(intervals 56 8918 1002)
(buffers 984 30))


Niels S=C3=B8ndergaard =

Address: Marieh=C3=B8j 236, 2990 Niv=C3=A5
Mobile: +45 4052 2789
Website: algon.dk
3D"Gallery
3D"Linkedin"
    =                     =                     =                

3D""= --Apple-Mail=_6917CD75-2351-4F97-A8B6-E4000B45F722-- From debbugs-submit-bounces@debbugs.gnu.org Thu May 11 02:35:56 2023 Received: (at 63436) by debbugs.gnu.org; 11 May 2023 06:35:56 +0000 Received: from localhost ([127.0.0.1]:49543 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pwzu8-0002qP-8j for submit@debbugs.gnu.org; Thu, 11 May 2023 02:35:56 -0400 Received: from eggs.gnu.org ([209.51.188.92]:46004) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pwzu5-0002qC-B6 for 63436@debbugs.gnu.org; Thu, 11 May 2023 02:35:54 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pwztz-0001Vk-SE; Thu, 11 May 2023 02:35:47 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=oWRCHbz8El/nQpc7y+KEIcj71umXfq9acuZZU4gcqo8=; b=QDYQGjsYfhYzOTv1jO7v XJL+iUO4QZdoWgvKpjxTx0v7TQNblpLMifwuDyD9q20RyU+PfyxG23yfyQ65e75i1dX8W+ZUqnsdW pOeCCiN8DpcxxhU0NJg4nFE/gOPAdg8EBCADtHDzBlsil7Ekjn8vuUafAGpg1MZSeETEm7NWQ2Y3/ UsfqJ9OVMXo/knGnBuMtxc+5/oTZFV12gbJZvxL5WRx8i4Coz18eJPBuKhdp6Rm4HSJjPrCqy9yQJ YqxjkjIPq8M20VUYhFqkp2//lE9qccHlQ4OLDLD6G/6ZSVdGgcN8M24WQksavWK3mdbISlOfFakqt dFisNGhiAGd+rA==; Received: from [87.69.77.57] (helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pwztz-0007si-AO; Thu, 11 May 2023 02:35:47 -0400 Date: Thu, 11 May 2023 09:36:56 +0300 Message-Id: <83wn1f5q7r.fsf@gnu.org> From: Eli Zaretskii To: Niels =?utf-8?Q?S=C3=B8ndergaard?= In-Reply-To: <72D882DB-4C49-459F-9232-4839EB0C69C7@me.com> (bug-gnu-emacs@gnu.org) Subject: Re: bug#63436: 30.0.50; Invalid escape character syntax References: <72D882DB-4C49-459F-9232-4839EB0C69C7@me.com> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 63436 Cc: 63436@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Date: Thu, 11 May 2023 08:03:31 +0200 > From: Niels Søndergaard via "Bug reports for GNU Emacs, > the Swiss army knife of text editors" > > This error comes in several situation, in my build of 30.0.50 (a > clean and uncompilated build) > > start of error message: > Debugger entered--Lisp error: (error "Invalid escape character syntax") > read(#) > load-with-code-conversion("/Users/niels/.emacs.d/straight/build/yaml/yaml.el" > "/Users/niels/.emacs.d/straight/build/yaml/yaml.el" nil t) > require(yaml) Without seeing what is in that yaml.el, I don't see how we can investigate this issue. Can you post that file, or tell us where to find it on the Internet? Are you sure the error is not correct, i.e. that the file in question does have an invalid escape character syntax? From debbugs-submit-bounces@debbugs.gnu.org Thu May 11 04:51:37 2023 Received: (at 63436) by debbugs.gnu.org; 11 May 2023 08:51:37 +0000 Received: from localhost ([127.0.0.1]:49703 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1px21R-00012o-8B for submit@debbugs.gnu.org; Thu, 11 May 2023 04:51:37 -0400 Received: from mail-lf1-f47.google.com ([209.85.167.47]:52462) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1px21O-00012a-Sa for 63436@debbugs.gnu.org; Thu, 11 May 2023 04:51:36 -0400 Received: by mail-lf1-f47.google.com with SMTP id 2adb3069b0e04-4ec8eca56cfso9292201e87.0 for <63436@debbugs.gnu.org>; Thu, 11 May 2023 01:51:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1683795089; x=1686387089; h=to:cc:date:message-id:subject:mime-version :content-transfer-encoding:from:sender:from:to:cc:subject:date :message-id:reply-to; bh=/394kIA29lRNWaVH1Swt20ql6ctLn70IdWDcDA4hwt4=; b=qSwLCEq+SqiXcEJd3KPeR6FlRHpNpeyCyj9W+uIWXMjXhbR6uuDq5dvl/zBwvn9JDR 80U+HKTlrE8s6sHJ2ymAj4+boX2MCBzFdwLPdut1ObQ8cW0rRG/LkS8CpcSO6YTA5cgQ 1sCHiih+qwaAHIdlzD1DjH8uV3ISFXOcG5iu6i9u2s+zou3/Wtr7itQKmBRx8No5LhyT zlRuwOJvYWhmWARqIKAe10YwRWxGw7QCRuQLh23KveXHL5zguBNwmi2pviZ5fxzk0+8w Eo79gJTk+cnle8WJKLXjj1oVrfjti8iiUXcyEI8Ca5Wc6qxfaqH0ZSBKOUVCP46KqP3+ CtRQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1683795089; x=1686387089; h=to:cc:date:message-id:subject:mime-version :content-transfer-encoding:from:sender:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=/394kIA29lRNWaVH1Swt20ql6ctLn70IdWDcDA4hwt4=; b=LOiecm7iAY4uXr3h2C2BoP8+vtmnjFQFky3YjRCLGtHJJ7V87oXGbdp4XueYLjrP3G /ZXfciUs43K316acdln7MJYboseN5Sszo1FL/4sH5Gj/XLY1NG7g2D3qcXkyXM22I84C S7T5fe8qWbBktojvdZPWUkj1uhmu6m9d95eYl5TQYG3K8RPY4EI+wZBGen2nmKfhpTAf dXkbUx1VeOzxYWstWRcAEDgcuKu4LFRJ2wJ0GD8dctzBSdUphDkHcuSOWnTdUgkh1n6s Fs/r4a2+aWOHC5qZE6bJ4MwkPCeLCw7HNwu99KyG0wvboyPITkLAyDPLVzacBt34UW3n xOaQ== X-Gm-Message-State: AC+VfDxeUWU62jB2lnCPUEIWs86RdnmtheiFNHub2NdzoZpN2sVF0xyl gSVW1SmNywz0cUyoaol+YJk= X-Google-Smtp-Source: ACHHUZ4KJCc20o/LYj88GBqe6VgPcSvf11SXRK6h8eAyoRXupFjcwd0Vs9IA6rGdJ2IpsmgUUNlanA== X-Received: by 2002:ac2:5199:0:b0:4f2:56e0:aa22 with SMTP id u25-20020ac25199000000b004f256e0aa22mr2368440lfi.34.1683795088728; Thu, 11 May 2023 01:51:28 -0700 (PDT) Received: from smtpclient.apple (c188-150-165-235.bredband.tele2.se. [188.150.165.235]) by smtp.gmail.com with ESMTPSA id k6-20020a2e92c6000000b0029c96178425sm2313810ljh.19.2023.05.11.01.51.28 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 11 May 2023 01:51:28 -0700 (PDT) From: =?utf-8?Q?Mattias_Engdeg=C3=A5rd?= Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.15\)) Subject: bug#63436: 30.0.50; Invalid escape character syntax Message-Id: <109431AD-B3E7-4FF6-AF25-0ACA61E98590@gmail.com> Date: Thu, 11 May 2023 10:51:27 +0200 To: Eli Zaretskii X-Mailer: Apple Mail (2.3654.120.0.1.15) X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 63436 Cc: =?utf-8?Q?Niels_S=C3=B8ndergaard?= , 63436@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) > Debugger entered--Lisp error: (error "Invalid escape character = syntax") > read(#) > = load-with-code-conversion("/Users/niels/.emacs.d/straight/build/yaml/yaml.= el" > "/Users/niels/.emacs.d/straight/build/yaml/yaml.el" nil t) Looks like this bug has been recognised and fixed upstream: https://github.com/zkry/yaml.el/issues/45 From debbugs-submit-bounces@debbugs.gnu.org Thu May 11 04:51:40 2023 Received: (at 63436) by debbugs.gnu.org; 11 May 2023 08:51:40 +0000 Received: from localhost ([127.0.0.1]:49706 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1px21U-000136-GY for submit@debbugs.gnu.org; Thu, 11 May 2023 04:51:40 -0400 Received: from eggs.gnu.org ([209.51.188.92]:46328) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1px21S-00012e-IE for 63436@debbugs.gnu.org; Thu, 11 May 2023 04:51:38 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1px21M-0002RE-UE; Thu, 11 May 2023 04:51:32 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:References:Subject:In-Reply-To:To:From: Date; bh=cDvRE6v4c4vxazvVBowu8wPC5TclwoZLOjvA9uy0RYA=; b=egKEyELDPUgss7tbRGxA j1TQHMMQKylPYyJYKuPjYK8xu6vvPcLzfKAIVAC087EwK+8eOko4OGyUVD0D4VsHvQ1qKbLZhSw8n WTgy3YkW1ThsFCzKMCT1d8sjmek5W8/vkFTN1PZWgK99O8ILCAIyXOyvFE+vuqjJPHYy2GKI5T14y 5kb6l6h7QbtafDr5pQQ2ag4THSEi/CfOhAeBGDfTCfeKjN2IuWdS2JLSsrFIbWH453CMXCPgNAk2a LwfDOf8whPGsFLIVFZRFvZm6FaZlFHgOPNtrNrHJY5Gl/4IljHbp1/Kb7bQTLWZub7gDaoefyUaDl FxvGBHUqH1UmUw==; Received: from [87.69.77.57] (helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1px21L-0007B3-3V; Thu, 11 May 2023 04:51:32 -0400 Date: Thu, 11 May 2023 11:52:38 +0300 Message-Id: <83r0rn5jxl.fsf@gnu.org> From: Eli Zaretskii To: Niels =?iso-8859-1?Q?S=F8ndergaard?= , Mattias =?iso-8859-1?Q?Engdeg=E5rd?= In-Reply-To: <9DD856BE-853D-4E75-A836-065EEC20F2E1@algon.dk> (message from Niels =?iso-8859-1?Q?S=F8ndergaard?= on Thu, 11 May 2023 09:43:10 +0200) Subject: Re: bug#63436: 30.0.50; Invalid escape character syntax References: <72D882DB-4C49-459F-9232-4839EB0C69C7@me.com> <83wn1f5q7r.fsf@gnu.org> <9DD856BE-853D-4E75-A836-065EEC20F2E1@algon.dk> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Debbugs-Envelope-To: 63436 Cc: 63436@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable [Please use Reply All to reply, so that the bug tracker is CC'ed.] > From: Niels S=C3=B8ndergaard > Date: Thu, 11 May 2023 09:43:10 +0200 >=20 > With same config (nothing atall is changed, except the emacs, normally I= =E2=80=99m running 29.0.90 build=20 > 21G217) this version 30.0.50 is build 22E772610a. >=20 > The errors comes in yaml.el every time, but can be from many places, I su= spect mostly from org-xxxx > where xxxx is either agenda, capture (that is some where in my agenda fil= es, but I have not a clue to > what is) The master branch is being actively developed, so it could add warnings and errors as we decide they should be useful. > This is the yaml.el file I have=E2=80=A6.. > It is the same for 29.0.90 and 30.0.50 Thanks. I attach the file below, so that it gets recorded in this discussion. The problem is here: ('ns-esc-8-bit (yaml--frame "ns-esc-8-bit" (yaml--all (yaml--chr ?\x) <<<<<<<<<<<<<<<<<<<<< (yaml--rep 2 2 (lambda () (yaml--parse-from-grammar 'ns-hex-digit)))))) The ?\x escape expects one or more digits after it. If you mean the letter 'x', then you should use ?x, without the escape, I think. Adding Mattias, who I think worked on those diagnostics. --=-=-= Content-Type: application/emacs-lisp Content-Disposition: attachment; filename=yaml.el Content-Transfer-Encoding: quoted-printable ;;; yaml.el --- YAML parser for Elisp -*- lexical-binding: t -*- ;; Copyright =C2=A9 2021 Zachary Romero ;; Author: Zachary Romero ;; Version: 0.5.1 ;; Homepage: https://github.com/zkry/yaml.el ;; Package-Requires: ((emacs "25.1")) ;; Keywords: tools ;; yaml.el requires at least GNU Emacs 25.1 ;; This file is not part of GNU Emacs ;; This file is free software; you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by ;; the Free Software Foundation; either version 3, or (at your option) ;; any later version. ;; This program is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;; GNU General Public License for more details. ;; For a full copy of the GNU General Public License ;; see . ;;; Commentary: ;; yaml.el contains the code for parsing YAML natively in Elisp with ;; no dependencies. The main function to parse YAML provided is ;; `yaml-parse-string'. `yaml-encode' is also provided to encode a ;; Lisp object to YAML. The following are some examples of its usage: ;; ;; (yaml-parse-string "key1: value1\nkey2: value2") ;; (yaml-parse-string "key1: value1\nkey2: value2" :object-type 'alist) ;; (yaml-parse-string "numbers: [1, 2, 3]" :sequence-type 'list) ;; ;; (yaml-encode '((count . 3) (value . 10) (items ("ruby" "diamond")))) ;;; Code: (require 'subr-x) (require 'seq) (require 'cl-lib) (defconst yaml-parser-version "0.5.1") (defvar yaml--parse-debug nil "Turn on debugging messages when parsing YAML when non-nil. This flag is intended for development purposes.") (defconst yaml--tracing-ignore '("s-space" "s-tab" "s-white" "l-comment" "b-break" "b-line-feed" "b-carriage-return" "s-b-comment" "b-comment" "l-comment" "ns-char" "nb-char" "b-char" "c-printable" "b-as-space")) (defvar yaml--parsing-input "" "The string content of the current item being processed.") (defvar yaml--parsing-position 0 "The position that the parser is currently looking at.") (defvar yaml--states nil "Stack of parsing states.") (defvar yaml--parsing-object-type nil) (defvar yaml--parsing-object-key-type nil) (defvar yaml--parsing-sequence-type nil) (defvar yaml--parsing-null-object nil) (defvar yaml--parsing-false-object nil) (defvar yaml--parsing-store-position nil) (defvar yaml--string-values nil) (cl-defstruct (yaml--state (:constructor yaml--state-create) (:copier nil)) doc tt m name lvl beg end) (defmacro yaml--parse (data &rest forms) "Parse DATA according to FORMS." (declare (indent defun)) `(progn (setq yaml--parsing-input ,data) (setq yaml--parsing-position 0) (yaml--initialize-state) ,@forms)) (defun yaml--state-curr () "Return the current state." (or (car yaml--states) (yaml--state-create :name nil :doc nil :lvl 0 :beg 0 :end 0 :m nil :tt nil))) (defun yaml--state-set-m (val) "Set the current value of t to VAL." (let* ((states yaml--states)) (while states (let* ((top-state (car states)) (new-state (yaml--state-create :doc (yaml--state-doc top-state) :tt (yaml--state-tt top-state) :m val :name (yaml--state-name top-sta= te) :lvl (yaml--state-lvl top-state) :beg (yaml--state-beg top-state) :end (yaml--state-end top-state= )))) (setcar states new-state)) (setq states (cdr states))))) (defun yaml--state-set-t (val) "Set the current value of t to VAL." (let* ((states yaml--states)) (while states (let* ((top-state (car states)) (new-state (yaml--state-create :doc (yaml--state-doc top-state) :tt val :m (yaml--state-m top-state) :name (yaml--state-name top-sta= te) :lvl (yaml--state-lvl top-state) :beg (yaml--state-beg top-state) :end (yaml--state-end top-state= )))) (setcar states new-state)) (setq states (cdr states))))) (defun yaml--state-curr-doc () "Return the doc property of current state." (yaml--state-doc (yaml--state-curr))) (defun yaml--state-curr-t () "Return the doc property of current state." (yaml--state-tt (yaml--state-curr))) (defun yaml--state-curr-m () "Return the doc property of current state." (or (yaml--state-m (yaml--state-curr)) 1)) (defun yaml--state-curr-end () "Return the doc property of current state." (yaml--state-end (yaml--state-curr))) (defun yaml--push-state (name) "Add a new state frame with NAME." (let* ((curr-state (yaml--state-curr)) (new-state (yaml--state-create :doc (yaml--state-curr-doc) :tt (yaml--state-curr-t) :m (yaml--state-curr-m) :name name :lvl (1+ (yaml--state-lvl curr-state)) :beg yaml--parsing-position :end nil))) (push new-state yaml--states))) (defun yaml--pop-state () "Pop the current state." (let ((popped-state (car yaml--states))) (setq yaml--states (cdr yaml--states)) (let ((top-state (car yaml--states))) (when top-state (setcar yaml--states (yaml--state-create :doc (yaml--state-doc top-state) :tt (yaml--state-tt top-state) :m (yaml--state-m top-state) :name (yaml--state-name top-state) :lvl (yaml--state-lvl top-state) :beg (yaml--state-beg popped-state) :end yaml--parsing-position)))))) (defun yaml--initialize-state () "Initialize the yaml state for parsing." (setq yaml--states (list (yaml--state-create :doc nil :tt nil :m nil :name nil :lvl 0 :beg nil :end nil)))) (defconst yaml--grammar-resolution-rules '(("ns-plain" . literal)) "Alist determining how to resolve grammar rule.") ;;; Receiver Functions (defvar yaml--document-start-version nil) (defvar yaml--document-start-explicit nil) (defvar yaml--document-end-explicit nil) (defvar yaml--tag-map nil) (defvar yaml--tag-handle nil) (defvar yaml--document-end nil) (defvar yaml--cache nil "Stack of data for temporary calculations.") (defvar yaml--object-stack nil "Stack of objects currently being build.") (defvar yaml--state-stack nil "The state that the YAML parser is with regards to incoming events.") (defvar yaml--root nil) (defvar yaml--anchor-mappings nil "Hashmap containing the anchor mappings of the current parsing run.") (defvar yaml--resolve-aliases nil "Flag determining if the event processing should attempt to resolve alias= es.") (defun yaml--parse-block-header (header) "Parse the HEADER string returning chomping style and indent count." (let* ((pos 0) (chomp-indicator :clip) (indentation-indicator nil) (char (and (< pos (length header)) (aref header pos))) (process-char (lambda (char) (when char (cond ((< ?0 char ?9) (progn (setq indentation-indicator (- char ?0)= ))) ((equal char ?\-) (setq chomp-indicator :strip)) ((equal char ?\+) (setq chomp-indicator :keep))) (setq pos (1+ pos)))))) (when (or (eq char ?\|) (eq char ?\>)) (setq pos (1+ pos)) (setq char (and (< pos (length header)) (aref header pos)))) (funcall process-char char) (let ((char (and (< pos (length header)) (aref header pos)))) ; (funcall process-char char) (list chomp-indicator indentation-indicator)))) (defun yaml--chomp-text (text-body chomp) "Change the ending newline of TEXT-BODY based on CHOMP." (cond ((eq :clip chomp) (concat (replace-regexp-in-string "\n*\\'" "" text-body) "\n")) ((eq :strip chomp) (replace-regexp-in-string "\n*\\'" "" text-body)) ((eq :keep chomp) text-body))) (defun yaml--process-folded-text (text) "Remvoe the header line for a folded match and return TEXT body formatted= ." (let* ((text (yaml--process-literal-text text)) (done)) (while (not done) (let ((replaced (replace-regexp-in-string "\\([^\n]\\)\n\\([^\n ]\\)" "\\1 \\2" text))) (when (equal replaced text) (setq done t)) (setq text replaced))) (replace-regexp-in-string "\\(\\(?:^\\|\n\\)[^ \n][^\n]*\\)\n\\(\n+\\)\\([^\n ]\\)" "\\1\\2\\3" text))) (defun yaml--process-literal-text (text) "Remove the header line for a folded match and return TEXT body formatted= ." (let ((n (get-text-property 0 'yaml-n text))) (remove-text-properties 0 (length text) '(yaml-n nil) text) (let* ((header-line (substring text 0 (string-match "\n" text))) (text-body (substring text (1+ (string-match "\n" text)))) (parsed-header (yaml--parse-block-header header-line)) (chomp (car parsed-header)) (starting-spaces-ct (or (and (cadr parsed-header) (+ (or n 0) (cadr parsed-header))) (let ((_ (string-match "^\n*\\( *\\)" text-body))) (length (match-string 1 text-body))))) (lines (split-string text-body "\n")) (striped-lines (seq-map (lambda (l) (replace-regexp-in-string (format "\\` \\{0,%d\\}" starting-spaces-ct) "" l)) lines)) (text-body (string-join striped-lines "\n"))) (yaml--chomp-text text-body chomp)))) ;; TODO: Process tags and use them in this function. (defun yaml--resolve-scalar-tag (scalar) "Convert a SCALAR string to it's corresponding object." (cond (yaml--string-values scalar) ;; tag:yaml.org,2002:null ((or (equal "null" scalar) (equal "Null" scalar) (equal "NULL" scalar) (equal "~" scalar)) yaml--parsing-null-object) ;; tag:yaml.org,2002:bool ((or (equal "true" scalar) (equal "True" scalar) (equal "TRUE" scalar)) t) ((or (equal "false" scalar) (equal "False" scalar) (equal "FALSE" scalar)) yaml--parsing-false-object) ;; tag:yaml.org,2002:int ((string-match "^0$\\|^-?[1-9][0-9]*$" scalar) (string-to-number scalar)) ((string-match "^[-+]?[0-9]+$" scalar) (string-to-number scalar)) ((string-match "^0o[0-7]+$" scalar) (string-to-number scalar 8)) ((string-match "^0x[0-9a-fA-F]+$" scalar) (string-to-number scalar 16)) ;; tag:yaml.org,2002:float ((string-match "^[-+]?\\(\\.[0-9]+\\|[0-9]+\\(\\.[0-9]*\\)?\\)\\([eE][-+]?[0-9]+\\)?$" scalar) (string-to-number scalar 10)) ((string-match "^[-+]?\\(\\.inf\\|\\.Inf\\|\\.INF\\)$" scalar) 1.0e+INF) ((string-match "^[-+]?\\(\\.nan\\|\\.NaN\\|\\.NAN\\)$" scalar) 1.0e+INF) ((string-match "^0$\\|^-?[1-9]\\(\\.[0-9]*\\)?\\(e[-+][1-9][0-9]*\\)?$" scalar) (string-to-number scalar)) (t scalar))) (defun yaml--hash-table-to-alist (hash-table) "Convert HASH-TABLE to a alist." (let ((alist nil)) (maphash (lambda (k v) (setq alist (cons (cons k v) alist))) hash-table) alist)) (defun yaml--hash-table-to-plist (hash-table) "Convert HASH-TABLE to a plist." (let ((plist nil)) (maphash (lambda (k v) (setq plist (cons k (cons v plist)))) hash-table) plist)) (defun yaml--format-object (hash-table) "Convert HASH-TABLE to alist of plist if specified." (cond ((equal yaml--parsing-object-type 'hash-table) hash-table) ((equal yaml--parsing-object-type 'alist) (yaml--hash-table-to-alist hash-table)) ((equal yaml--parsing-object-type 'plist) (yaml--hash-table-to-plist hash-table)) (t hash-table))) (defun yaml--format-list (l) "Convert L to array if specified." (cond ((equal yaml--parsing-sequence-type 'list) l) ((equal yaml--parsing-sequence-type 'array) (apply #'vector l)) (t l))) (defun yaml--stream-start-event () "Create the data for a stream-start event." '(:stream-start)) (defun yaml--stream-end-event () "Create the data for a stream-end event." '(:stream-end)) (defun yaml--mapping-start-event (_) "Process event indicating start of mapping." ;; NOTE: currently don't have a use for FLOW (push :mapping yaml--state-stack) (push (make-hash-table :test 'equal) yaml--object-stack)) (defun yaml--mapping-end-event () "Process event indicating end of mapping." (pop yaml--state-stack) (let ((obj (pop yaml--object-stack))) (yaml--scalar-event nil obj)) '(:mapping-end)) (defun yaml--sequence-start-event (_) "Process event indicating start of sequence according to FLOW." ;; NOTE: currently don't have a use for FLOW (push :sequence yaml--state-stack) (push nil yaml--object-stack) '(:sequence-start)) (defun yaml--sequence-end-event () "Process event indicating end of sequence." (pop yaml--state-stack) (let ((obj (pop yaml--object-stack))) (yaml--scalar-event nil obj)) '(:sequence-end)) (defun yaml--anchor-event (name) "Process event indicating an anchor has been defined with NAME." (push :anchor yaml--state-stack) (push `(:anchor ,name) yaml--object-stack)) (defun yaml--scalar-event (style value) "Process the completion of a scalar VALUE. Note that VALUE may be a complex object here. STYLE is currently unused." (let ((top-state (car yaml--state-stack)) (value* (cond ((stringp value) (yaml--resolve-scalar-tag value)) ((listp value) (yaml--format-list value)) ((hash-table-p value) (yaml--format-object value)) ((vectorp value) value) ((not value) nil)))) (cond ((not top-state) (setq yaml--root value*)) ((equal top-state :anchor) (let* ((anchor (pop yaml--object-stack)) (name (nth 1 anchor))) (puthash name value yaml--anchor-mappings) (pop yaml--state-stack) (yaml--scalar-event nil value))) ((equal top-state :sequence) (let ((l (car yaml--object-stack))) (setcar yaml--object-stack (append l (list value*))))) ((equal top-state :mapping) (progn (push :mapping-value yaml--state-stack) (push value* yaml--cache))) ((equal top-state :mapping-value) (progn (let ((key (pop yaml--cache)) (table (car yaml--object-stack))) (when (stringp key) (cond ((eql 'symbol yaml--parsing-object-key-type) (setq key (intern key))) ((eql 'keyword yaml--parsing-object-key-type) (setq key (intern (format ":%s" key)))))) (puthash key value* table)) (pop yaml--state-stack))) ((equal top-state :trail-comments) (pop yaml--state-stack) (let ((comment-text (pop yaml--object-stack))) (unless (stringp value*) (error "Trail-comments can't be nested under non-string")) (yaml--scalar-event style (replace-regexp-in-string (concat (regexp-quote comment-text) "\n*= \\'") "" value*)))) ((equal top-state nil)))) '(:scalar)) (defun yaml--alias-event (name) "Process a node has been defined via alias NAME." (if yaml--resolve-aliases (let ((resolved (gethash name yaml--anchor-mappings))) (unless resolved (error "Undefined alias '%s'" name)) (yaml--scalar-event nil resolved)) (yaml--scalar-event nil (vector :alias name))) '(:alias)) (defun yaml--trail-comments-event (text) "Process trailing comments of TEXT which should be trimmed from parent." (push :trail-comments yaml--state-stack) (push text yaml--object-stack) '(:trail-comments)) (defun yaml--check-document-end () "Return non-nil if at end of document." ;; NOTE: currently no need for this. May be needed in the future. t) (defun yaml--reverse-at-list () "Reverse the list at the top of the object stack. This is needed to get the correct order as lists are processed in reverse order." (setcar yaml--object-stack (reverse (car yaml--object-stack)))) (defconst yaml--grammar-events-in '(("l-yaml-stream" . (lambda () (yaml--stream-start-event) (setq yaml--document-start-version nil) (setq yaml--document-start-explicit nil) (setq yaml--tag-map (make-hash-table)))) ("c-flow-mapping" . (lambda () (yaml--mapping-start-event t))) ("c-flow-sequence" . (lambda () (yaml--sequence-start-event nil))) ("l+block-mapping" . (lambda () (yaml--mapping-start-event nil))) ("l+block-sequence" . (lambda () (yaml--sequence-start-event nil))) ("ns-l-compact-mapping" . (lambda () (yaml--mapping-start-event nil))) ("ns-l-compact-sequence" . (lambda () (yaml--sequence-start-event nil))) ("ns-flow-pair" . (lambda () (yaml--mapping-start-event t))) ("ns-l-block-map-implicit-entry" . (lambda ())) ("ns-l-compact-mapping" . (lambda ())) ("c-l-block-seq-entry" . (lambda ()))) "List of functions for matched rules that run on the entering of a rule.") (defconst yaml--grammar-events-out '(("c-b-block-header" . (lambda (text) nil)) ("l-yaml-stream" . (lambda (text) (yaml--check-document-end) (yaml--stream-end-event))) ("ns-yaml-version" . (lambda (text) (when yaml--document-start-version (throw 'error "Multiple %YAML directives not allowed.")) (setq yaml--document-start-version text))) ("c-tag-handle" . (lambda (text) (setq yaml--tag-handle text))) ("ns-tag-prefix" . (lambda (text) (puthash yaml--tag-handle text yaml--tag-map))) ("c-directives-end" . (lambda (text) (yaml--check-document-end) (setq yaml--document-start-explicit t))) ("c-document-end" . (lambda (text) (when (not yaml--document-end) (setq yaml--document-end-explicit t)) (yaml--check-document-end))) ("c-flow-mapping" . (lambda (text) (yaml--mapping-end-event))) ("c-flow-sequence" . (lambda (text) (yaml--sequence-end-event ))) ("l+block-mapping" . (lambda (text) (yaml--mapping-end-event))) ("l+block-sequence" . (lambda (text) (yaml--reverse-at-list) (yaml--sequence-end-event))) ("ns-l-compact-mapping" . (lambda (text) (yaml--mapping-end-event))) ("ns-l-compact-sequence" . (lambda (text) (yaml--sequence-end-event))) ("ns-flow-pair" . (lambda (text) (yaml--mapping-end-event))) ("ns-plain" . (lambda (text) (let* ((replaced (if (and (zerop (length yaml--state-stack)) (string-match "\\(^\\|\n\\)\\.\\.\\.\\'" t= ext)) ;; Hack to not send the document parse end. ;; Will only occur with bare ns-plain at top le= vel. (replace-regexp-in-string "\\(^\\|\n\\)\\.\\.\\= .\\'" "" text) text)) (replaced (replace-regexp-in-string "\\(?:[ \t]*\r?\n[ \t]*\\)" "\n" replaced)) (replaced (replace-regexp-in-string "\\(\n\\)\\(\n*\\)" (lambda (x) (if (> (length x) 1) (substring x 1) " ")) replaced))) (yaml--scalar-event "plain" replaced)))) ("c-single-quoted" . (lambda (text) (let* ((replaced (replace-regexp-in-string "\\(?:[ \t]*\r?\n[ \t]*\\)" "\n" text)) (replaced (replace-regexp-in-string "\\(\n\\)\\(\n*\\)" (lambda (x) (if (> (length x) 1) (substring x 1) " ")) replaced)) (replaced (if (not (equal "''" replaced)) (replace-regexp-in-string "''" (lambda (x) (if (> (length x) 1) (substring x 1) "'")) replaced) replaced))) (yaml--scalar-event "single" (substring replaced 1 (1- (length replaced))))= ))) ("c-double-quoted" . (lambda (text) (let* ((replaced (replace-regexp-in-string "\\(?:[ \t]*\r?\n[ \t]*\\)" "\n" text)) (replaced (replace-regexp-in-string "\\(\n\\)\\(\n*\\)" (lambda (x) (if (> (length x) 1) (substring x 1) " ")) replaced)) (replaced (replace-regexp-in-string "\\\\\\([\"\\/]\\)" "\\1" replaced)) (replaced (replace-regexp-in-string "\\\\ " " " replaced)) (replaced (replace-regexp-in-string "\\\\ " " " replaced)) (replaced (replace-regexp-in-string "\\\\b" "\b" replaced)) (replaced (replace-regexp-in-string "\\\\t" "\t" replaced)) (replaced (replace-regexp-in-string "\\\\n" "\n" replaced)) (replaced (replace-regexp-in-string "\\\\r" "\r" replaced)) (replaced (replace-regexp-in-string "\\\\r" "\r" replaced)) (replaced (replace-regexp-in-string "\\\\x\\([0-9a-fA-F]\\{2\\}\\)" (lambda (x) (let ((char-pt (substring 2 x))) (string (string-to-number char-pt 16)))) replaced)) (replaced (replace-regexp-in-string "\\\\x\\([0-9a-fA-F]\\{2\\}\\)" (lambda (x) (let ((char-pt (substring x 2))) (string (string-to-number char-pt 16)))) replaced)) (replaced (replace-regexp-in-string "\\\\x\\([0-9a-fA-F]\\{4\\}\\)" (lambda (x) (let ((char-pt (substring x 2))) (string (string-to-number char-pt 16)))) replaced)) (replaced (replace-regexp-in-string "\\\\x\\([0-9a-fA-F]\\{8\\}\\)" (lambda (x) (let ((char-pt (substring x 2))) (string (string-to-number char-pt 16)))) replaced)) (replaced (replace-regexp-in-string "\\\\\\\\" "\\" replaced)) (replaced (substring replaced 1 (1- (length replaced))))) (yaml--scalar-event "double" replaced)))) ("c-l+literal" . (lambda (text) (when (equal (car yaml--state-stack) :trail-comments) (pop yaml--state-stack) (let ((comment-text (pop yaml--object-stack))) (setq text (replace-regexp-in-string (concat (regexp-quote comment-text) "\n*\\'") "" tex= t)))) (let* ((processed-text (yaml--process-literal-text text))) (yaml--scalar-event "folded" processed-text)))) ("c-l+folded" . (lambda (text) (when (equal (car yaml--state-stack) :trail-comments) (pop yaml--state-stack) (let ((comment-text (pop yaml--object-stack))) (setq text (replace-regexp-in-string (concat (regexp-quote comment-text) "\n*\\'") "" tex= t)))) (let* ((processed-text (yaml--process-folded-text text))) (yaml--scalar-event "folded" processed-text)))) ("e-scalar" . (lambda (text) (yaml--scalar-event "plain" "null"))) ("c-ns-anchor-property" . (lambda (text) (yaml--anchor-event (substring text 1)))) ("c-ns-tag-property" . (lambda (text) ;; TODO: Implement tags )) ("l-trail-comments" . (lambda (text) (yaml--trail-comments-event text))) ("c-ns-alias-node" . (lambda (text) (yaml--alias-event (substring text 1))))) "List of functions for matched rules that run on the exiting of a rule.") (defconst yaml--terminal-rules '( "l-nb-literal-text" "l-nb-diff-lines" "ns-plain" "c-single-quoted" "c-double-quoted") "List of rules that indicate at which the parse tree should stop. This addition is a hack to prevent the parse tree from going too deep and t= hus risk hitting the stack depth limit. Each of these rules are recursive and repeat for each character in a text.") (defun yaml--walk-events (tree) "Event walker iterates over the parse TREE and signals events from the ru= les." (when (consp tree) (if (stringp (car tree)) (let ((grammar-rule (car tree)) (text (cadr tree)) (children (cl-caddr tree))) (let ((in-fn (cdr (assoc grammar-rule yaml--grammar-events-in))) (out-fn (cdr (assoc grammar-rule yaml--grammar-events-out))= )) (when in-fn (funcall in-fn)) (yaml--walk-events children) (when out-fn (funcall out-fn text)))) (yaml--walk-events (car tree)) (yaml--walk-events (cdr tree))))) (defmacro yaml--frame (name rule) "Add a new state frame of NAME for RULE." (declare (indent defun)) (let ((res-symbol (make-symbol "res"))) `(let ((beg yaml--parsing-position) (_ (when (and yaml--parse-debug (not (member ,name yaml--tracing-ignore))) (message "|%s>%s %40s args=3D%s '%s'" (make-string (length yaml--states) ?-) (make-string (- 70 (length yaml--states)) ?\s) ,name args (replace-regexp-in-string "\n" "=E2=86=93" (yaml--slice yaml--parsing-position))))) (_ (yaml--push-state ,name)) (,res-symbol ,rule)) (when (and yaml--parse-debug ,res-symbol (not (member ,name yaml--tracing-ignore))) (message "<%s|%s %40s =3D '%s'" (make-string (length yaml--states) ?-) (make-string (- 70 (length yaml--states)) ?\s) ,name (replace-regexp-in-string "\n" "=E2=86=93" (substring yaml--parsing-input beg yaml--parsing-positio= n)))) (yaml--pop-state) (if (not ,res-symbol) nil (let ((res-type (cdr (assoc ,name yaml--grammar-resolution-rules))) (,res-symbol (if (member ,name yaml--terminal-rules) ;; Ignore children if at-rule is ;; indicated to be terminal. t ,res-symbol))) (cond ((or (assoc ,name yaml--grammar-events-in) (assoc ,name yaml--grammar-events-out)) (let ((str (substring yaml--parsing-input beg yaml--parsing-po= sition))) (when yaml--parsing-store-position (setq str (propertize str 'yaml-position (cons (1+ beg) (1+ yaml--parsing-position))))) (when (member ,name '("c-l+folded" "c-l+literal")) (setq str (propertize str 'yaml-n (max 0 n)))) (list ,name (if yaml--parsing-store-position (propertize str 'yaml-position (cons (1+ beg) (1+ yaml--par= sing-position))) str) ,res-symbol))) ((equal res-type 'list) (list ,name ,res-symbol)) ((equal res-type 'literal) (substring yaml--parsing-input beg yaml--parsing-position)) (t ,res-symbol))))))) (defun yaml--end-of-stream () "Return non-nil if the current position is after the end of the document." (>=3D yaml--parsing-position (length yaml--parsing-input))) (defun yaml--char-at-pos (pos) "Return the character at POS." (aref yaml--parsing-input pos)) (defun yaml--slice (pos) "Return the character at POS." (substring yaml--parsing-input pos)) (defun yaml--at-char () "Return the current character." (yaml--char-at-pos yaml--parsing-position)) (defun yaml--char-match (at &rest chars) "Return non-nil if AT match any of CHARS." (if (not chars) nil (or (equal at (car chars)) (apply #'yaml--char-match (cons at (cdr chars)))))) (defun yaml--chr (c) "Try to match the character C." (if (or (yaml--end-of-stream) (not (equal (yaml--at-char) c))) nil (setq yaml--parsing-position (1+ yaml--parsing-position)) t)) (defun yaml--chr-range (min max) "Return non-nil if the current character is between MIN and MAX." (if (or (yaml--end-of-stream) (not (<=3D min (yaml--at-char) max))) nil (setq yaml--parsing-position (1+ yaml--parsing-position)) t)) (defun yaml--run-all (&rest funcs) "Return list of all evaluated FUNCS if all of FUNCS pass." (let* ((start-pos yaml--parsing-position) (ress '()) (break)) (while (and (not break) funcs) (let ((res (funcall (car funcs)))) (when (not res) (setq break t)) (setq ress (append ress (list res))) (setq funcs (cdr funcs)))) (when break (setq yaml--parsing-position start-pos)) (if break nil ress))) (defmacro yaml--all (&rest forms) "Pass and return all forms if all of FORMS pass." `(yaml--run-all ,@(mapcar (lambda (form) `(lambda () ,form)) forms))) (defmacro yaml--any (&rest forms) "Pass if any of FORMS pass." (if (=3D 1 (length forms)) (car forms) (let ((start-pos-sym (make-symbol "start")) (rules-sym (make-symbol "rules")) (res-sym (make-symbol "res"))) `(let ((,start-pos-sym yaml--parsing-position) (,rules-sym ,(cons 'list (seq-map (lambda (form) `(lambda () ,form)) forms))) (,res-sym)) (while (and (not ,res-sym) ,rules-sym) (setq ,res-sym (funcall (car ,rules-sym))) (unless ,res-sym (setq yaml--parsing-position ,start-pos-sym)) (setq ,rules-sym (cdr ,rules-sym))) ,res-sym)))) (defmacro yaml--exclude (_) "Set the excluded characters according to RULE. This is currently unimplemented." ;; NOTE: This is currently not implemented. 't) (defmacro yaml--max (_) "Automatically pass." t) (defun yaml--empty () "Return non-nil indicating that empty rule needs nothing to pass." 't) (defun yaml--sub (a b) "Return A minus B." (- a b)) (defun yaml--match () "Return the content of the previous sibling completed." (let* ((states yaml--states) (res nil)) (while (and states (not res)) (let ((top-state (car states))) (if (yaml--state-end top-state) (let ((beg (yaml--state-beg top-state)) (end (yaml--state-end top-state))) (setq res (substring yaml--parsing-input beg end))) (setq states (cdr states))))) res)) (defun yaml--auto-detect (n) "Detect the indentation given N." (let* ((slice (yaml--slice yaml--parsing-position)) (match (string-match "^.*\n\\(\\(?: *\n\\)*\\)\\( *\\)" slice))) (if (not match) 1 (let ((pre (match-string 1 slice)) (m (- (length (match-string 2 slice)) n))) (if (< m 1) 1 (when (string-match (format "^.\\{%d\\}." m) pre) (error "Spaces found after indent in auto-detect (5LLU)")) m))))) (defun yaml--auto-detect-indent (n) "Detect the indentation given N." (let* ((pos yaml--parsing-position) (in-seq (and (> pos 0) (yaml--char-match (yaml--char-at-pos (1- pos)) ?\- ?\? ?\= :))) (slice (yaml--slice pos)) (_ (string-match "^\\(\\(?: *\\(?:#.*\\)?\n\\)*\\)\\( *\\)" slice)) (pre (match-string 1 slice)) (m (length (match-string 2 slice)))) (if (and in-seq (=3D (length pre) 0)) (when (=3D n -1) (setq m (1+ m))) (setq m (- m n))) (when (< m 0) (setq m 0)) m)) (defun yaml--the-end () "Return non-nil if at the end of input (?)." (or (>=3D yaml--parsing-position (length yaml--parsing-input)) (and (yaml--state-curr-doc) (yaml--start-of-line) (string-match "\\^g\\(?:---|\\.\\.\\.\\)\\([[:blank:]]\\|$\\)" (substring yaml--parsing-input yaml--parsing-position))))) (defun yaml--ord (f) "Convert an ASCII number returned by F to a number." (let ((res (funcall f))) (- (aref res 0) 48))) (defun yaml--but (&rest fs) "Match the first FS but none of the others." (if (yaml--the-end) nil (let ((pos1 yaml--parsing-position)) (if (not (funcall (car fs))) nil (let ((pos2 yaml--parsing-position)) (setq yaml--parsing-position pos1) (if (equal ':error (catch 'break (dolist (f (cdr fs)) (if (funcall f) (progn (setq yaml--parsing-position pos1) (throw 'break ':error)))))) nil (setq yaml--parsing-position pos2) t)))))) (defmacro yaml--rep (min max func) "Repeat FUNC between MIN and MAX times." (declare (indent 2)) `(yaml--rep2 ,min ,max ,func)) (defun yaml--rep2 (min max func) "Repeat FUNC between MIN and MAX times." (declare (indent 2)) (if (and max (< max 0)) nil (let* ((res-list '()) (count 0) (pos yaml--parsing-position) (pos-start pos) (break nil)) (while (and (not break) (or (not max) (< count max))) (let ((res (funcall func))) (if (or (not res) (=3D yaml--parsing-position pos)) (setq break t) (setq res-list (cons res res-list)) (setq count (1+ count)) (setq pos yaml--parsing-position)))) (if (and (>=3D count min) (or (not max) (<=3D count max))) (progn (setq yaml--parsing-position pos) (if (zerop count) t res-list)) (setq yaml--parsing-position pos-start) nil)))) (defun yaml--start-of-line () "Return non-nil if start of line." (or (=3D yaml--parsing-position 0) (>=3D yaml--parsing-position (length yaml--parsing-input)) (equal (yaml--char-at-pos (1- yaml--parsing-position)) ?\n))) (defun yaml--top () "Perform top level YAML parsing rule." (yaml--parse-from-grammar 'l-yaml-stream)) (defmacro yaml--set (variable value) "Set the current state of VARIABLE to VALUE." (let ((res-sym (make-symbol "res"))) `(let ((,res-sym ,value)) (when ,res-sym (,(cond ((equal "m" (symbol-name variable)) 'yaml--state-set-m) ((equal "t" (symbol-name variable)) 'yaml--state-set-t)) ,res-sym) ,res-sym)))) (defmacro yaml--chk (type expr) "Check if EXPR is non-nil at the parsing position. If TYPE is \"<=3D\" then check at the previous position. If TYPE is \"!\" ensure that EXPR is nil. Otherwise, if TYPE is \"=3D\" then check EXPR at the current position." (let ((start-symbol (make-symbol "start")) (ok-symbol (make-symbol "ok"))) `(let ((,start-symbol yaml--parsing-position) (_ (when (equal ,type "<=3D") (setq yaml--parsing-position (1- yaml--parsing-position)))) (,ok-symbol (and (>=3D yaml--parsing-position 0) ,expr))) (setq yaml--parsing-position ,start-symbol) (if (equal ,type "!") (not ,ok-symbol) ,ok-symbol)))) (cl-defun yaml--initialize-parsing-state (&key (null-object :null) (false-object :false) object-type object-key-type sequence-type string-values) "Initialize state required for parsing according to plist ARGS." (setq yaml--cache nil) (setq yaml--object-stack nil) (setq yaml--state-stack nil) (setq yaml--root nil) (setq yaml--anchor-mappings (make-hash-table :test 'equal)) (setq yaml--resolve-aliases nil) (setq yaml--parsing-null-object null-object) (setq yaml--parsing-false-object false-object) (cond ((or (not object-type) (equal object-type 'hash-table)) (setq yaml--parsing-object-type 'hash-table)) ((equal 'alist object-type) (setq yaml--parsing-object-type 'alist)) ((equal 'plist object-type) (setq yaml--parsing-object-type 'plist)) (t (error "Invalid object-type. Must be hash-table, alist, or plist"))) (cond ((or (not object-key-type) (equal 'symbol object-key-type)) (if (equal 'plist yaml--parsing-object-type) (setq yaml--parsing-object-key-type 'keyword) (setq yaml--parsing-object-key-type 'symbol))) ((equal 'string object-key-type) (setq yaml--parsing-object-key-type 'string)) ((equal 'keyword object-key-type) (setq yaml--parsing-object-key-type 'keyword)) (t (error "Invalid object-key-type. Must be string, keyword, or symbol"= ))) (cond ((or (not sequence-type) (equal sequence-type 'array)) (setq yaml--parsing-sequence-type 'array)) ((equal 'list sequence-type) (setq yaml--parsing-sequence-type 'list)) (t (error "Invalid sequence-type. sequence-type must be list or array")= )) (if string-values (setq yaml--string-values t) (setq yaml--string-values nil))) (cl-defun yaml-parse-string (string &key (null-object :null) (false-object :false) object-type object-key-type sequence-type string-values) "Parse the YAML value in STRING. OBJECT-TYPE specifies the Lisp object to use for representing key-value YAML mappings. Possible values for OBJECT-TYPE are the symbols `hash-table' (default), `alist', and `plist'. OBJECT-KEY-TYPE specifies the Lisp type to use for keys in key-value YAML mappings. Possible values are the symbols `string', `symbol', and `keyword'. By default, this is `symbol'; if OBJECT-TYPE is `plist', the default is `keyword' (and `symbol' becomes synonym for `keyword'). SEQUENCE-TYPE specifies the Lisp object to use for representing YAML sequences. Possible values for SEQUENCE-TYPE are the symbols `list', and `array' (default). NULL-OBJECT contains the object used to represent the null value. It defaults to the symbol `:null'. FALSE-OBJECT contains the object used to represent the false value. It defaults to the symbol `:false'." (yaml--initialize-parsing-state :null-object null-object :false-object false-object :object-type object-type :object-key-type object-key-type :sequence-type sequence-type :string-values string-values) (let ((res (yaml--parse string (yaml--top)))) (when (< yaml--parsing-position (length yaml--parsing-input)) (error "Unable to parse YAML. Parser finished before end of input %s/%s" yaml--parsing-position (length yaml--parsing-input))) (when yaml--parse-debug (message "Parsed data: %s" (pp-to-string res))) (yaml--walk-events res) (if (hash-table-empty-p yaml--anchor-mappings) yaml--root ;; Run event processing twice to resolve aliases. (let ((yaml--root nil) (yaml--resolve-aliases t)) (yaml--walk-events res) yaml--root)))) (defun yaml-parse-tree (string) "Parse the YAML value in STRING and return its parse tree." (yaml--initialize-parsing-state) (let* ((yaml--parsing-store-position t) (res (yaml--parse string (yaml--top)))) (when (< yaml--parsing-position (length yaml--parsing-input)) (error "Unable to parse YAML. Parser finished before end of input %s/%s" yaml--parsing-position (length yaml--parsing-input))) res)) (defun yaml-parse-string-with-pos (string) "Parse the YAML value in STRING, storing positions as text properties. NOTE: This is an experimental feature and may experience API changes in the future." (let ((yaml--parsing-store-position t)) (yaml-parse-string string :object-type 'alist :object-key-type 'string :string-values t))) (defun yaml--parse-from-grammar (state &rest args) "Parse YAML grammar for given STATE and ARGS. Rules for this function are defined by the yaml-spec JSON file." (pcase state ('c-flow-sequence (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "c-flow-sequence" (yaml--all (yaml--chr ?\[) (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 's-separate n c))) (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 'ns-s-flow-seq-entries n (yaml--parse-from-grammar 'in-flow c)))) (yaml--chr ?\]))))) ('c-indentation-indicator (let ((m (nth 0 args))) (yaml--frame "c-indentation-indicator" (yaml--any (when (yaml--parse-from-grammar 'ns-dec-digit) (yaml--set m (yaml--ord (lambda () (yaml--match)))) t) (when (yaml--empty) (let ((new-m (yaml--auto-detect m))) (yaml--set m new-m)) t))))) ('ns-reserved-directive (yaml--frame "ns-reserved-directive" (yaml--all (yaml--parse-from-grammar 'ns-directive-name) (yaml--rep2 0 nil (lambda () (yaml--all (yaml--parse-from-grammar 's-separate-in-line) (yaml--parse-from-grammar 'ns-directive-parameter)))= )))) ('ns-flow-map-implicit-entry (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "ns-flow-map-implicit-entry" ;; NOTE: I ran into a bug with the order of these rules. It seems ;; sometimes ns-flow-map-yaml-key-entry succeeds with an empty ;; when the correct answer should be ;; c-ns-flow-map-json-key-entry. Changing the order seemed to ;; have fix this but this seems like a bandage fix. (yaml--any (yaml--parse-from-grammar 'c-ns-flow-map-json-key-entry n c) (yaml--parse-from-grammar 'ns-flow-map-yaml-key-entry n c) (yaml--parse-from-grammar 'c-ns-flow-map-empty-key-entry n c))))) ('ns-esc-double-quote (yaml--frame "ns-esc-double-quote" (yaml--chr ?\"))) ('c-mapping-start (yaml--frame "c-mapping-start" (yaml--chr ?\{))) ('ns-flow-seq-entry (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "ns-flow-seq-entry" (yaml--any (yaml--parse-from-grammar 'ns-flow-pair n c) (yaml--parse-from-grammar 'ns-flow-node n c))))) ('l-empty (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "l-empty" (yaml--all (yaml--any (yaml--parse-from-grammar 's-line-prefix n c) (yaml--parse-from-grammar 's-indent-lt n)) (yaml--parse-from-grammar 'b-as-line-feed))))) ('c-primary-tag-handle (yaml--frame "c-primary-tag-handle" (yaml--chr ?\!))) ('ns-plain-safe-out (yaml--frame "ns-plain-safe-out" (yaml--parse-from-grammar 'ns-char))) ('c-ns-shorthand-tag (yaml--frame "c-ns-shorthand-tag" (yaml--all (yaml--parse-from-grammar 'c-tag-handle) (yaml--rep 1 nil (lambda () (yaml--parse-from-grammar 'ns-tag-char)= ))))) ('nb-ns-single-in-line (yaml--frame "nb-ns-single-in-line" (yaml--rep2 0 nil (lambda () (yaml--all (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 's-white))) (yaml--parse-from-grammar 'ns-single-char)))))) ('l-strip-empty (let ((n (nth 0 args))) (yaml--frame "l-strip-empty" (yaml--all (yaml--rep2 0 nil (lambda () (yaml--all (yaml--parse-from-grammar 's-indent-le n) (yaml--parse-from-grammar 'b-non-content)))) (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 'l-trail-comments n))))))) ('c-indicator (yaml--frame "c-indicator" (yaml--any (yaml--chr ?\-) (yaml--chr ?\?) (yaml--chr ?\:) (yaml--chr ?\,) (yaml--chr ?\[) (yaml--chr ?\]) (yaml--chr ?\{) (yaml--chr ?\}) (yaml--chr ?\#) (yaml--chr ?\&) (yaml--chr ?\*) (yaml--chr ?\!) (yaml--chr ?\|) (yaml--chr ?\>) (yaml--chr ?\') (yaml--chr ?\") (yaml--chr ?\%) (yaml--chr ?\@) (yaml--chr ?\`)))) ('c-l+literal (let ((n (nth 0 args))) (yaml--frame "c-l+literal" (progn (yaml--all (yaml--chr ?\|) (yaml--parse-from-grammar 'c-b-block-header n (yaml--state-curr= -t)) (yaml--parse-from-grammar 'l-literal-content (max (+ n (yaml--state-curr-m)) 1) (yaml--state-curr-t))))))) ('c-single-quoted (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "c-single-quoted" (yaml--all (yaml--chr ?\') (yaml--parse-from-grammar 'nb-single-text n c) (yaml--chr ?\'))))) ('c-forbidden (yaml--frame "c-forbidden" (yaml--all (yaml--start-of-line) (yaml--any (yaml--parse-from-grammar 'c-directives-end) (yaml--parse-from-grammar 'c-document-end)) (yaml--any (yaml--parse-from-grammar 'b-char) (yaml--parse-from-grammar 's-white) (yaml--end-of-stream))))) ('c-ns-alias-node (yaml--frame "c-ns-alias-node" (yaml--all (yaml--chr ?\*) (yaml--parse-from-grammar 'ns-anchor-name)))) ('c-secondary-tag-handle (yaml--frame "c-secondary-tag-handle" (yaml--all (yaml--chr ?\!) (yaml--chr ?\!)))) ('ns-esc-next-line (yaml--frame "ns-esc-next-line" (yaml--chr ?N))) ('l-nb-same-lines (let ((n (nth 0 args))) (yaml--frame "l-nb-same-lines" (yaml--all (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 'l-empty n "block-in"))) (yaml--any (yaml--parse-from-grammar 'l-nb-folded-lines n) (yaml--parse-from-grammar 'l-nb-spaced-lines n)))))) ('c-alias (yaml--frame "c-alias" (yaml--chr ?\*))) ('ns-single-char (yaml--frame "ns-single-char" (yaml--but (lambda () (yaml--parse-from-grammar 'nb-single-char)) (lambda () (yaml--parse-from-grammar 's-white))))) ('c-l-block-map-implicit-value (let ((n (nth 0 args))) (yaml--frame "c-l-block-map-implicit-value" (yaml--all (yaml--chr ?\:) (yaml--any (yaml--parse-from-grammar 's-l+block-node n "block-out= ") (yaml--all (yaml--parse-from-grammar 'e-node) (yaml--parse-from-grammar 's-l-comments))))= ))) ('ns-uri-char (yaml--frame "ns-uri-char" (yaml--any (yaml--all (yaml--chr ?\%) (yaml--parse-from-grammar 'ns-hex-digit) (yaml--parse-from-grammar 'ns-hex-digit)) (yaml--parse-from-grammar 'ns-word-char) (yaml--chr ?\#) (yaml--chr ?\;) (yaml--chr ?\/) (yaml--chr ?\?) (yaml--chr ?\:) (yaml--chr ?\@) (yaml--chr ?\&) (yaml--chr ?\=3D) (yaml--chr ?\+) (yaml--chr ?\$) (yaml--chr ?\,) (yaml--chr ?\_) (yaml--chr ?\.) (yaml--chr ?\!) (yaml--chr ?\~) (yaml--chr ?\*) (yaml--chr ?\') (yaml--chr ?\() (yaml--chr ?\)) (yaml--chr ?\[) (yaml--chr ?\])))) ('ns-esc-16-bit (yaml--frame "ns-esc-16-bit" (yaml--all (yaml--chr ?u) (yaml--rep 4 4 (lambda () (yaml--parse-from-grammar 'ns-hex-digit)))))) ('l-nb-spaced-lines (let ((n (nth 0 args))) (yaml--frame "l-nb-spaced-lines" (yaml--all (yaml--parse-from-grammar 's-nb-spaced-text n) (yaml--rep2 0 nil (lambda () (yaml--all (yaml--parse-from-grammar 'b-l-spaced n) (yaml--parse-from-grammar 's-nb-spaced-text n))))))= )) ('ns-plain (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "ns-plain" (pcase c ("block-key" (yaml--parse-from-grammar 'ns-plain-one-line c)) ("flow-in" (yaml--parse-from-grammar 'ns-plain-multi-line n c)) ("flow-key" (yaml--parse-from-grammar 'ns-plain-one-line c)) ("flow-out" (yaml--parse-from-grammar 'ns-plain-multi-line n c))= )))) ('c-printable (yaml--frame "c-printable" (yaml--any (yaml--chr ?\x09) (yaml--chr ?\x0A) (yaml--chr ?\x0D) (yaml--chr-range ?\x20 ?\x7E) (yaml--chr ?\x85) (yaml--chr-range ?\xA0 ?\xD7FF) (yaml--chr-range ?\xE000 ?\xFFFD) (yaml--chr-range ?\x010000 ?\x10FFFF)))) ('c-mapping-value (yaml--frame "c-mapping-value" (yaml--chr ?\:))) ('l-nb-literal-text (let ((n (nth 0 args))) (yaml--frame "l-nb-literal-text" (yaml--all (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 'l-empty n "block-in"))) (yaml--parse-from-grammar 's-indent n) (yaml--rep 1 nil (lambda () (yaml--parse-from-grammar 'nb-char))))))) ('ns-plain-char (let ((c (nth 0 args))) (yaml--frame "ns-plain-char" (yaml--any (yaml--but (lambda () (yaml--parse-from-grammar 'ns-plain-safe c)) (lambda () (yaml--chr ?\:)) (lambda () (yaml--chr ?\#))) (yaml--all (yaml--chk "<=3D" (yaml--parse-from-grammar 'ns-char)) (yaml--chr ?\#)) (yaml--all (yaml--chr ?\:) (yaml--chk "=3D" (yaml--parse-from-grammar 'ns-plain-safe c)))))= )) ('ns-anchor-char (yaml--frame "ns-anchor-char" (yaml--but (lambda () (yaml--parse-from-grammar 'ns-char)) (lambda () (yaml--parse-from-grammar 'c-flow-indicator)))= )) ('s-l+block-scalar (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "s-l+block-scalar" (yaml--all (yaml--parse-from-grammar 's-separate (+ n 1) c) (yaml--rep 0 1 (lambda () (yaml--all (yaml--parse-from-grammar 'c-ns-properties (+ n 1)= c) (yaml--parse-from-grammar 's-separate (+ n 1) c)))) (yaml--any (yaml--parse-from-grammar 'c-l+literal n) (yaml--parse-from-grammar 'c-l+folded n)))))) ('ns-plain-safe-in (yaml--frame "ns-plain-safe-in" (yaml--but (lambda () (yaml--parse-from-grammar 'ns-char)) (lambda () (yaml--parse-from-grammar 'c-flow-indicator)))= )) ('nb-single-text (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "nb-single-text" (pcase c ("block-key" (yaml--parse-from-grammar 'nb-single-one-line)) ("flow-in" (yaml--parse-from-grammar 'nb-single-multi-line n)) ("flow-key" (yaml--parse-from-grammar 'nb-single-one-line)) ("flow-out" (yaml--parse-from-grammar 'nb-single-multi-line n)))= ))) ('s-indent-le (let ((n (nth 0 args))) (yaml--frame "s-indent-le" (yaml--all (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 's-space))) (<=3D (length (yaml--match)) n))))) ('ns-esc-carriage-return (yaml--frame "ns-esc-carriage-return" (yaml--chr ?r))) ('l-chomped-empty (let ((n (nth 0 args)) (tt (nth 1 args))) (yaml--frame "l-chomped-empty" (pcase tt ("clip" (yaml--parse-from-grammar 'l-strip-empty n)) ("keep" (yaml--parse-from-grammar 'l-keep-empty n)) ("strip" (yaml--parse-from-grammar 'l-strip-empty n)))))) ('c-s-implicit-json-key (let ((c (nth 0 args))) (yaml--frame "c-s-implicit-json-key" (yaml--all (yaml--max 1024) (yaml--parse-from-grammar 'c-flow-json-node nil c) (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 's-separate-in-line))))))) ('b-as-space (yaml--frame "b-as-space" (yaml--parse-from-grammar 'b-break))) ('ns-s-flow-seq-entries (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "ns-s-flow-seq-entries" (yaml--all (yaml--parse-from-grammar 'ns-flow-seq-entry n c) (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 's-separate n c))) (yaml--rep 0 1 (lambda () (yaml--all (yaml--chr ?\,) (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 's-separate n c))) (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 'ns-s-flow-seq-entries n c)))))))))) ('l-block-map-explicit-value (let ((n (nth 0 args))) (yaml--frame "l-block-map-explicit-value" (yaml--all (yaml--parse-from-grammar 's-indent n) (yaml--chr ?\:) (yaml--parse-from-grammar 's-l+block-indented n "block-out"))))) ('c-ns-flow-map-json-key-entry (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "c-ns-flow-map-json-key-entry" (yaml--all (yaml--parse-from-grammar 'c-flow-json-node n c) (yaml--any (yaml--all (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 's-separate n c))) (yaml--parse-from-grammar 'c-ns-flow-map-adjacent-value n c)) (yaml--parse-from-grammar 'e-node)))))) ('c-sequence-entry (yaml--frame "c-sequence-entry" (yaml--chr ?\-))) ('l-bare-document (yaml--frame "l-bare-document" (yaml--all (yaml--exclude "c-forbidden") (yaml--parse-from-grammar 's-l+block-node -1 "block-in"))= )) ;; TODO: don't use the symbol t as a variable. ('b-chomped-last (let ((tt (nth 0 args))) (yaml--frame "b-chomped-last" (pcase tt ("clip" ;; TODO: Fix this (yaml--any (yaml--parse-from-grammar 'b-as-line-feed) (yaml--end-of-stream))) ("keep" (yaml--any (yaml--parse-from-grammar 'b-as-line-feed) (yaml--end-of-stream))) ("strip" (yaml--any (yaml--parse-from-grammar 'b-non-content) (yaml--end-of-stream))))))) ('l-trail-comments (let ((n (nth 0 args))) (yaml--frame "l-trail-comments" (yaml--all (yaml--parse-from-grammar 's-indent-lt n) (yaml--parse-from-grammar 'c-nb-comment-text) (yaml--parse-from-grammar 'b-comment) (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 'l-comment))))))) ('ns-flow-map-yaml-key-entry (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "ns-flow-map-yaml-key-entry" (yaml--all (yaml--parse-from-grammar 'ns-flow-yaml-node n c) (yaml--any (yaml--all (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 's-separate n c))) (yaml--parse-from-grammar 'c-ns-flow-map-separate-value n c)) (yaml--parse-from-grammar 'e-node)))))) ('s-indent (let ((n (nth 0 args))) (yaml--frame "s-indent" (yaml--rep n n (lambda () (yaml--parse-from-grammar 's-space)))))) ('ns-esc-line-separator (yaml--frame "ns-esc-line-separator" (yaml--chr ?L))) ('ns-flow-yaml-node (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "ns-flow-yaml-node" (yaml--any (yaml--parse-from-grammar 'c-ns-alias-node) (yaml--parse-from-grammar 'ns-flow-yaml-content n c) (yaml--all (yaml--parse-from-grammar 'c-ns-properties n c) (yaml--any (yaml--all (yaml--parse-from-grammar 's-separate n c) (yaml--parse-from-grammar 'ns-flow-yaml-content n c)) (yaml--parse-from-grammar 'e-scalar))))))) ('ns-yaml-version (yaml--frame "ns-yaml-version" (yaml--all (yaml--rep 1 nil (lambda () (yaml--parse-from-grammar 'ns-dec-digit))) (yaml--chr ?\.) (yaml--rep 1 nil (lambda () (yaml--parse-from-grammar 'ns-dec-digit)))))) ('c-folded (yaml--frame "c-folded" (yaml--chr ?\>))) ('c-directives-end (yaml--frame "c-directives-end" (yaml--all (yaml--chr ?\-) (yaml--chr ?\-) (yaml--chr ?\-)))) ('s-double-break (let ((n (nth 0 args))) (yaml--frame "s-double-break" (yaml--any (yaml--parse-from-grammar 's-double-escaped n) (yaml--parse-from-grammar 's-flow-folded n))))) ('s-nb-spaced-text (let ((n (nth 0 args))) (yaml--frame "s-nb-spaced-text" (yaml--all (yaml--parse-from-grammar 's-indent n) (yaml--parse-from-grammar 's-white) (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 'nb-char))))))) ('l-folded-content (let ((n (nth 0 args)) (tt (nth 1 args))) (yaml--frame "l-folded-content" (yaml--all (yaml--rep 0 1 (lambda () (yaml--all (yaml--parse-from-grammar 'l-nb-diff-lines n) (yaml--parse-from-grammar 'b-chomped-last tt)))) (yaml--parse-from-grammar 'l-chomped-empty n tt))))) ('nb-ns-plain-in-line (let ((c (nth 0 args))) (yaml--frame "nb-ns-plain-in-line" (yaml--rep2 0 nil (lambda () (yaml--all (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 's-white))) (yaml--parse-from-grammar 'ns-plain-char c))))))) ('nb-single-multi-line (let ((n (nth 0 args))) (yaml--frame "nb-single-multi-line" (yaml--all (yaml--parse-from-grammar 'nb-ns-single-in-line) (yaml--any (yaml--parse-from-grammar 's-single-next-line n) (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 's-white)))))))) ('l-document-suffix (yaml--frame "l-document-suffix" (yaml--all (yaml--parse-from-grammar 'c-document-end) (yaml--parse-from-grammar 's-l-comments)))) ('c-sequence-start (yaml--frame "c-sequence-start" (yaml--chr ?\[))) ('ns-l-block-map-entry (yaml--frame "ns-l-block-map-entry" (yaml--any (yaml--parse-from-grammar 'c-l-block-map-explicit-entry (nth 0 args)) (yaml--parse-from-grammar 'ns-l-block-map-implicit-entry (nth 0 args))))) ('ns-l-compact-mapping (yaml--frame "ns-l-compact-mapping" (yaml--all (yaml--parse-from-grammar 'ns-l-block-map-entry (nth 0 args)) (yaml--rep2 0 nil (lambda () (yaml--all (yaml--parse-from-grammar 's-indent (nth 0 args)) (yaml--parse-from-grammar 'ns-l-block-map-entry (nth 0 args)))= ))))) ('ns-esc-space (yaml--frame "ns-esc-space" (yaml--chr ?\x20))) ('ns-esc-vertical-tab (yaml--frame "ns-esc-vertical-tab" (yaml--chr ?v))) ('ns-s-implicit-yaml-key (let ((c (nth 0 args))) (yaml--frame "ns-s-implicit-yaml-key" (yaml--all (yaml--max 1024) (yaml--parse-from-grammar 'ns-flow-yaml-node nil c) (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 's-separate-in-line))))))) ('b-l-folded (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "b-l-folded" (yaml--any (yaml--parse-from-grammar 'b-l-trimmed n c) (yaml--parse-from-grammar 'b-as-space))))) ('s-l+block-collection (yaml--frame "s-l+block-collection" (yaml--all (yaml--rep 0 1 (lambda () (yaml--all (yaml--parse-from-grammar 's-separate (+ (nth 0 args) 1) (nth 1 args)) (yaml--parse-from-grammar 'c-ns-properties (+ (nth 0 args) 1) (nth 1 args))))) (yaml--parse-from-grammar 's-l-comments) (yaml--any (yaml--parse-from-grammar 'l+block-sequence (yaml--parse-from-grammar 'seq-spaces (nth 0 args) (nth 1 args))) (yaml--parse-from-grammar 'l+block-mapping (nth 0 args)))))) ('c-quoted-quote (yaml--frame "c-quoted-quote" (yaml--all (yaml--chr ?\') (yaml--chr ?\= ')))) ('l+block-sequence (yaml--frame "l+block-sequence" ;; NOTE: deviated from the spec example here by making new-m at leas= t 1. ;; The wording and examples lead me to believe this is how it's done. ;; ie /* For some fixed auto-detected m > 0 */ (let ((new-m (max (yaml--auto-detect-indent (nth 0 args)) 1))) (yaml--all (yaml--set m new-m) (yaml--rep 1 nil (lambda () (yaml--all (yaml--parse-from-grammar 's-indent (+ (nth 0 args) new-m)) (yaml--parse-from-grammar 'c-l-block-seq-entry (+ (nth 0 args) new-m))))))))) ('c-double-quote (yaml--frame "c-double-quote" (yaml--chr ?\"))) ('ns-esc-backspace (yaml--frame "ns-esc-backspace" (yaml--chr ?b))) ('c-flow-json-content (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "c-flow-json-content" (yaml--any (yaml--parse-from-grammar 'c-flow-sequence n c) (yaml--parse-from-grammar 'c-flow-mapping n c) (yaml--parse-from-grammar 'c-single-quoted n c) (yaml--parse-from-grammar 'c-double-quoted n c))))) ('c-mapping-end (yaml--frame "c-mapping-end" (yaml--chr ?\}))) ('nb-single-char (yaml--frame "nb-single-char" (yaml--any (yaml--parse-from-grammar 'c-quoted-quote) (yaml--but (lambda () (yaml--parse-from-grammar 'nb-json)) (lambda () (yaml--chr ?\')))))) ('ns-flow-node (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "ns-flow-node" (yaml--any (yaml--parse-from-grammar 'c-ns-alias-node) (yaml--parse-from-grammar 'ns-flow-content n c) (yaml--all (yaml--parse-from-grammar 'c-ns-properties n c) (yaml--any (yaml--all (yaml--parse-from-grammar 's-separate n c) (yaml--parse-from-grammar 'ns-flow-content n c)) (yaml--parse-from-grammar 'e-scalar))))))) ('c-non-specific-tag (yaml--frame "c-non-specific-tag" (yaml--chr ?\!))) ('l-directive-document (yaml--frame "l-directive-document" (yaml--all (yaml--rep 1 nil (lambda () (yaml--parse-from-grammar 'l-directive))) (yaml--parse-from-grammar 'l-explicit-document)))) ('c-l-block-map-explicit-entry (let ((n (nth 0 args))) (yaml--frame "c-l-block-map-explicit-entry" (yaml--all (yaml--parse-from-grammar 'c-l-block-map-explicit-key n) (yaml--any (yaml--parse-from-grammar 'l-block-map-explicit-value = n) (yaml--parse-from-grammar 'e-node)))))) ('e-node (yaml--frame "e-node" (yaml--parse-from-grammar 'e-scalar))) ('seq-spaces (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "seq-spaces" (pcase c ("block-in" n) ("block-out" (yaml--sub n 1)))))) ('l-yaml-stream (yaml--frame "l-yaml-stream" (yaml--all (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 'l-document-prefix))) (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 'l-any-document))) (yaml--rep2 0 nil (lambda () (yaml--any (yaml--all (yaml--rep 1 nil (lambda () (yaml--parse-from-grammar 'l-document-suffix))) (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 'l-document-prefix))) (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 'l-any-document)))) (yaml--all (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 'l-document-prefix))) (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 'l-explicit-document)))))))))) ('nb-double-one-line (yaml--frame "nb-double-one-line" (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 'nb-double-char))))) ('s-l-comments (yaml--frame "s-l-comments" (yaml--all (yaml--any (yaml--parse-from-grammar 's-b-comment) (yaml--start-of-line)) (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 'l-comment)))))) ('nb-char (yaml--frame "nb-char" (yaml--but (lambda () (yaml--parse-from-grammar 'c-printable)) (lambda () (yaml--parse-from-grammar 'b-char)) (lambda () (yaml--parse-from-grammar 'c-byte-order-mark))= ))) ('ns-plain-first (let ((c (nth 0 args))) (yaml--frame "ns-plain-first" (yaml--any (yaml--but (lambda () (yaml--parse-from-grammar 'ns-char)) (lambda () (yaml--parse-from-grammar 'c-indicator))) (yaml--all (yaml--any (yaml--chr ?\?) (yaml--chr ?\:) (yaml--chr ?\-)) (yaml--chk "=3D" (yaml--parse-from-grammar 'ns-plain-safe c)))))= )) ('c-ns-esc-char (yaml--frame "c-ns-esc-char" (yaml--all (yaml--chr ?\\) (yaml--any (yaml--parse-from-grammar 'ns-esc-null) (yaml--parse-from-grammar 'ns-esc-bell) (yaml--parse-from-grammar 'ns-esc-backspace) (yaml--parse-from-grammar 'ns-esc-horizontal-tab) (yaml--parse-from-grammar 'ns-esc-line-feed) (yaml--parse-from-grammar 'ns-esc-vertical-tab) (yaml--parse-from-grammar 'ns-esc-form-feed) (yaml--parse-from-grammar 'ns-esc-carriage-return) (yaml--parse-from-grammar 'ns-esc-escape) (yaml--parse-from-grammar 'ns-esc-space) (yaml--parse-from-grammar 'ns-esc-double-quote) (yaml--parse-from-grammar 'ns-esc-slash) (yaml--parse-from-grammar 'ns-esc-backslash) (yaml--parse-from-grammar 'ns-esc-next-line) (yaml--parse-from-grammar 'ns-esc-non-breaking-space) (yaml--parse-from-grammar 'ns-esc-line-separator) (yaml--parse-from-grammar 'ns-esc-paragraph-separator) (yaml--parse-from-grammar 'ns-esc-8-bit) (yaml--parse-from-grammar 'ns-esc-16-bit) (yaml--parse-from-grammar 'ns-esc-32-bit))))) ('ns-flow-map-entry (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "ns-flow-map-entry" (yaml--any (yaml--all (yaml--chr ?\?) (yaml--parse-from-grammar 's-separate n c) (yaml--parse-from-grammar 'ns-flow-map-explicit-entry = n c)) (yaml--parse-from-grammar 'ns-flow-map-implicit-entry n c))))) ('l-explicit-document (yaml--frame "l-explicit-document" (yaml--all (yaml--parse-from-grammar 'c-directives-end) (yaml--any (yaml--parse-from-grammar 'l-bare-document) (yaml--all (yaml--parse-from-grammar 'e-node) (yaml--parse-from-grammar 's-l-comments)))))) ('s-white (yaml--frame "s-white" (yaml--any (yaml--parse-from-grammar 's-space) (yaml--parse-from-grammar 's-tab)))) ('l-keep-empty (let ((n (nth 0 args))) (yaml--frame "l-keep-empty" (yaml--all (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 'l-empty n "block-in"))) (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 'l-trail-comments n))))))) ('ns-tag-prefix (yaml--frame "ns-tag-prefix" (yaml--any (yaml--parse-from-grammar 'c-ns-local-tag-prefix) (yaml--parse-from-grammar 'ns-global-tag-prefix)))) ('c-l+folded (let ((n (nth 0 args))) (yaml--frame "c-l+folded" (yaml--all (yaml--chr ?\>) (yaml--parse-from-grammar 'c-b-block-header n (yaml--state-curr-t)) (yaml--parse-from-grammar 'l-folded-content (max (+ n (yaml--state-curr-m)) 1) (yaml--state-curr-t)))))) ('ns-directive-name (yaml--frame "ns-directive-name" (yaml--rep 1 nil (lambda () (yaml--parse-from-grammar 'ns-char))))) ('b-char (yaml--frame "b-char" (yaml--any (yaml--parse-from-grammar 'b-line-feed) (yaml--parse-from-grammar 'b-carriage-return)))) ('ns-plain-multi-line (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "ns-plain-multi-line" (yaml--all (yaml--parse-from-grammar 'ns-plain-one-line c) (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 's-ns-plain-next-line n c))))))) ('ns-char (yaml--frame "ns-char" (yaml--but (lambda () (yaml--parse-from-grammar 'nb-char)) (lambda () (yaml--parse-from-grammar 's-white))))) ('s-space (yaml--frame "s-space" (yaml--chr ?\x20))) ('c-l-block-seq-entry (yaml--frame "c-l-block-seq-entry" (yaml--all (yaml--chr ?\-) (yaml--chk "!" (yaml--parse-from-grammar 'ns-char)) (yaml--parse-from-grammar 's-l+block-indented (nth 0 args) "block-in")))) ('c-ns-properties (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "c-ns-properties" (yaml--any (yaml--all (yaml--parse-from-grammar 'c-ns-tag-property) (yaml--rep 0 1 (lambda () (yaml--all (yaml--parse-from-grammar 's-separate n c) (yaml--parse-from-grammar 'c-ns-anchor-property))))) (yaml--all (yaml--parse-from-grammar 'c-ns-anchor-property) (yaml--rep 0 1 (lambda () (yaml--all (yaml--parse-from-grammar 's-separate n c) (yaml--parse-from-grammar 'c-ns-tag-property))))))= ))) ('ns-directive-parameter (yaml--frame "ns-directive-parameter" (yaml--rep 1 nil (lambda () (yaml--parse-from-grammar 'ns-char))))) ('c-chomping-indicator (yaml--frame "c-chomping-indicator" (yaml--any (when (yaml--chr ?\-) (yaml--set t "strip") t) (when (yaml--chr ?\+) (yaml--set t "keep") t) (when (yaml--empty) (yaml--set t "clip") t)))) ('ns-global-tag-prefix (yaml--frame "ns-global-tag-prefix" (yaml--all (yaml--parse-from-grammar 'ns-tag-char) (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 'ns-uri-char)))))) ('c-ns-flow-pair-json-key-entry (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "c-ns-flow-pair-json-key-entry" (yaml--all (yaml--parse-from-grammar 'c-s-implicit-json-key "flow-key") (yaml--parse-from-grammar 'c-ns-flow-map-adjacent-value n c))))) ('l-literal-content (let ((n (nth 0 args)) (tt (nth 1 args))) (yaml--frame "l-literal-content" (yaml--all (yaml--rep 0 1 (lambda () (yaml--all (yaml--parse-from-grammar 'l-nb-literal-text n) (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 'b-nb-literal-next n= ))) (yaml--parse-from-grammar 'b-chomped-last tt)))) (yaml--parse-from-grammar 'l-chomped-empty n tt))))) ('c-document-end (yaml--frame "c-document-end" (yaml--all (yaml--chr ?\.) (yaml--chr ?\.) (yaml--chr ?\.)))) ('nb-double-text (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "nb-double-text" (pcase c ("block-key" (yaml--parse-from-grammar 'nb-double-one-line)) ("flow-in" (yaml--parse-from-grammar 'nb-double-multi-line n)) ("flow-key" (yaml--parse-from-grammar 'nb-double-one-line)) ("flow-out" (yaml--parse-from-grammar 'nb-double-multi-line n)))= ))) ('s-b-comment (yaml--frame "s-b-comment" (yaml--all (yaml--rep 0 1 (lambda () (yaml--all (yaml--parse-from-grammar 's-separate-in-line) (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 'c-nb-comment-text)))))) (yaml--parse-from-grammar 'b-comment)))) ('s-block-line-prefix (let ((n (nth 0 args))) (yaml--frame "s-block-line-prefix" (yaml--parse-from-grammar 's-indent n)))) ('c-tag-handle (yaml--frame "c-tag-handle" (yaml--any (yaml--parse-from-grammar 'c-named-tag-handle) (yaml--parse-from-grammar 'c-secondary-tag-handle) (yaml--parse-from-grammar 'c-primary-tag-handle)))) ('ns-plain-one-line (let ((c (nth 0 args))) (yaml--frame "ns-plain-one-line" (yaml--all (yaml--parse-from-grammar 'ns-plain-first c) (yaml--parse-from-grammar 'nb-ns-plain-in-line c))))) ('nb-json (yaml--frame "nb-json" (yaml--any (yaml--chr ?\x09) (yaml--chr-range ?\x20 ?\x10FFFF)))) ('s-ns-plain-next-line (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "s-ns-plain-next-line" (yaml--all (yaml--parse-from-grammar 's-flow-folded n) (yaml--parse-from-grammar 'ns-plain-char c) (yaml--parse-from-grammar 'nb-ns-plain-in-line c))))) ('c-reserved (yaml--frame "c-reserved" (yaml--any (yaml--chr ?\@) (yaml--chr ?\`)))) ('b-l-trimmed (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "b-l-trimmed" (yaml--all (yaml--parse-from-grammar 'b-non-content) (yaml--rep 1 nil (lambda () (yaml--parse-from-grammar 'l-empty n c))))))) ('l-document-prefix (yaml--frame "l-document-prefix" (yaml--all (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 'c-byte-order-mark))) (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 'l-comment)))))) ('c-byte-order-mark (yaml--frame "c-byte-order-mark" (yaml--chr ?\xFEFF))) ('c-anchor (yaml--frame "c-anchor" (yaml--chr ?\&))) ('s-double-escaped (let ((n (nth 0 args))) (yaml--frame "s-double-escaped" (yaml--all (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 's-white))) (yaml--chr ?\\) (yaml--parse-from-grammar 'b-non-content) (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 'l-empty n "flow-in"))) (yaml--parse-from-grammar 's-flow-line-prefix n))))) ('ns-esc-32-bit (yaml--frame "ns-esc-32-bit" (yaml--all (yaml--chr ?U) (yaml--rep 8 8 (lambda () (yaml--parse-from-grammar 'ns-hex-digit))= )))) ('b-non-content (yaml--frame "b-non-content" (yaml--parse-from-grammar 'b-break))) ('ns-tag-char (yaml--frame "ns-tag-char" (yaml--but (lambda () (yaml--parse-from-grammar 'ns-uri-char)) (lambda () (yaml--chr ?\!)) (lambda () (yaml--parse-from-grammar 'c-flow-indicator)))= )) ('b-carriage-return (yaml--frame "b-carriage-return" (yaml--chr ?\x0D))) ('s-double-next-line (let ((n (nth 0 args))) (yaml--frame "s-double-next-line" (yaml--all (yaml--parse-from-grammar 's-double-break n) (yaml--rep 0 1 (lambda () (yaml--all (yaml--parse-from-grammar 'ns-double-char) (yaml--parse-from-grammar 'nb-ns-double-in-line) (yaml--any (yaml--parse-from-grammar 's-double-next-line n) (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 's-white))))))))))) ('ns-esc-non-breaking-space (yaml--frame "ns-esc-non-breaking-space" (yaml--chr ?\_))) ('l-nb-diff-lines (let ((n (nth 0 args))) (yaml--frame "l-nb-diff-lines" (yaml--all (yaml--parse-from-grammar 'l-nb-same-lines n) (yaml--rep2 0 nil (lambda () (yaml--all (yaml--parse-from-grammar 'b-as-line-feed) (yaml--parse-from-grammar 'l-nb-same-lines n))))))= )) ('s-flow-folded (let ((n (nth 0 args))) (yaml--frame "s-flow-folded" (yaml--all (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 's-separate-in-line))) (yaml--parse-from-grammar 'b-l-folded n "flow-in") (yaml--parse-from-grammar 's-flow-line-prefix n))))) ('ns-flow-map-explicit-entry (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "ns-flow-map-explicit-entry" (yaml--any (yaml--parse-from-grammar 'ns-flow-map-implicit-entry n c) (yaml--all (yaml--parse-from-grammar 'e-node) (yaml--parse-from-grammar 'e-node)))))) ('ns-l-block-map-implicit-entry (yaml--frame "ns-l-block-map-implicit-entry" (yaml--all (yaml--any (yaml--parse-from-grammar 'ns-s-block-map-implicit-key) (yaml--parse-from-grammar 'e-node)) (yaml--parse-from-grammar 'c-l-block-map-implicit-value (nth 0 args= ))))) ('l-nb-folded-lines (let ((n (nth 0 args))) (yaml--frame "l-nb-folded-lines" (yaml--all (yaml--parse-from-grammar 's-nb-folded-text n) (yaml--rep2 0 nil (lambda () (yaml--all (yaml--parse-from-grammar 'b-l-folded n "block-in") (yaml--parse-from-grammar 's-nb-folded-text n)))))= ))) ('c-l-block-map-explicit-key (let ((n (nth 0 args))) (yaml--frame "c-l-block-map-explicit-key" (yaml--all (yaml--chr ?\?) (yaml--parse-from-grammar 's-l+block-indented n "block-out"))))) ('s-separate (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "s-separate" (pcase c ("block-in" (yaml--parse-from-grammar 's-separate-lines n)) ("block-key" (yaml--parse-from-grammar 's-separate-in-line)) ("block-out" (yaml--parse-from-grammar 's-separate-lines n)) ("flow-in" (yaml--parse-from-grammar 's-separate-lines n)) ("flow-key" (yaml--parse-from-grammar 's-separate-in-line)) ("flow-out" (yaml--parse-from-grammar 's-separate-lines n)))))) ('ns-flow-pair-entry (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "ns-flow-pair-entry" (yaml--any (yaml--parse-from-grammar 'ns-flow-pair-yaml-key-entry n c) (yaml--parse-from-grammar 'c-ns-flow-map-empty-key-entry n c) (yaml--parse-from-grammar 'c-ns-flow-pair-json-key-entry n c))))) ('c-flow-indicator (yaml--frame "c-flow-indicator" (yaml--any (yaml--chr ?\,) (yaml--chr ?\[) (yaml--chr ?\]) (yaml--chr ?\{) (yaml--chr ?\})))) ('ns-flow-pair-yaml-key-entry (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "ns-flow-pair-yaml-key-entry" (yaml--all (yaml--parse-from-grammar 'ns-s-implicit-yaml-key "flow-key") (yaml--parse-from-grammar 'c-ns-flow-map-separate-value n c))))) ('e-scalar (yaml--frame "e-scalar" (yaml--empty))) ('s-indent-lt (let ((n (nth 0 args))) (yaml--frame "s-indent-lt" (yaml--all (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 's-space))) (< (length (yaml--match)) n))))) ('nb-single-one-line (yaml--frame "nb-single-one-line" (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 'nb-single-char))))) ('c-collect-entry (yaml--frame "c-collect-entry" (yaml--chr ?\,))) ('ns-l-compact-sequence (let ((n (nth 0 args))) (yaml--frame "ns-l-compact-sequence" (yaml--all (yaml--parse-from-grammar 'c-l-block-seq-entry n) (yaml--rep2 0 nil (lambda () (yaml--all (yaml--parse-from-grammar 's-indent n) (yaml--parse-from-grammar 'c-l-block-seq-entry n)))))))) ('c-comment (yaml--frame "c-comment" (yaml--chr ?\#))) ('s-line-prefix (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "s-line-prefix" (pcase c ("block-in" (yaml--parse-from-grammar 's-block-line-prefix n)) ("block-out" (yaml--parse-from-grammar 's-block-line-prefix n)) ("flow-in" (yaml--parse-from-grammar 's-flow-line-prefix n)) ("flow-out" (yaml--parse-from-grammar 's-flow-line-prefix n)))))) ('s-tab (yaml--frame "s-tab" (yaml--chr ?\x09))) ('c-directive (yaml--frame "c-directive" (yaml--chr ?\%))) ('ns-flow-pair (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "ns-flow-pair" (yaml--any (yaml--all (yaml--chr ?\?) (yaml--parse-from-grammar 's-separate n c) (yaml--parse-from-grammar 'ns-flow-map-explicit-entry = n c)) (yaml--parse-from-grammar 'ns-flow-pair-entry n c))))) ('s-l+block-indented (yaml--frame "s-l+block-indented" (let ((m (yaml--auto-detect-indent (nth 0 args)))) (yaml--any (yaml--all (yaml--parse-from-grammar 's-indent m) (yaml--any (yaml--parse-from-grammar 'ns-l-compact-sequence (+ (nth 0 args) (+ 1 m))) (yaml--parse-from-grammar 'ns-l-compact-mapping (+ (nth 0 args) (+ 1 m))))) (yaml--parse-from-grammar 's-l+block-node (nth 0 args) (nth 1 arg= s)) (yaml--all (yaml--parse-from-grammar 'e-node) (yaml--parse-from-grammar 's-l-comments)))))) ('c-single-quote (yaml--frame "c-single-quote" (yaml--chr ?\'))) ('s-flow-line-prefix (let ((n (nth 0 args))) (yaml--frame "s-flow-line-prefix" (yaml--all (yaml--parse-from-grammar 's-indent n) (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 's-separate-in-line))))))) ('nb-double-char (yaml--frame "nb-double-char" (yaml--any (yaml--parse-from-grammar 'c-ns-esc-char) (yaml--but (lambda () (yaml--parse-from-grammar 'nb-json)) (lambda () (yaml--chr ?\\)) (lambda () (yaml--chr ?\")))= ))) ('l-comment (yaml--frame "l-comment" (yaml--all (yaml--parse-from-grammar 's-separate-in-line) (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 'c-nb-comment-text))) (yaml--parse-from-grammar 'b-comment)))) ('ns-hex-digit (yaml--frame "ns-hex-digit" (yaml--any (yaml--parse-from-grammar 'ns-dec-digit) (yaml--chr-range ?\x41 ?\x46) (yaml--chr-range ?\x61 ?\x66)))) ('s-l+flow-in-block (let ((n (nth 0 args))) (yaml--frame "s-l+flow-in-block" (yaml--all (yaml--parse-from-grammar 's-separate (+ n 1) "flow-out") (yaml--parse-from-grammar 'ns-flow-node (+ n 1) "flow-out") (yaml--parse-from-grammar 's-l-comments))))) ('c-flow-json-node (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "c-flow-json-node" (yaml--all (yaml--rep 0 1 (lambda () (yaml--all (yaml--parse-from-grammar 'c-ns-properties n c) (yaml--parse-from-grammar 's-separate n c)))) (yaml--parse-from-grammar 'c-flow-json-content n c))))) ('c-b-block-header (let ((m (nth 0 args)) (tt (nth 1 args))) (yaml--frame "c-b-block-header" (yaml--all (yaml--any (and (not (string-match "\\`[-+][0-9]" (yaml--slice yaml--parsing-position))) ;; hack to not match this case if there is a number. (yaml--all (yaml--parse-from-grammar 'c-indentation-indicator m) (yaml--parse-from-grammar 'c-chomping-indicator tt))) (yaml--all (yaml--parse-from-grammar 'c-chomping-indicator tt) (yaml--parse-from-grammar 'c-indentation-indicator m))) (yaml--parse-from-grammar 's-b-comment))))) ('ns-esc-8-bit (yaml--frame "ns-esc-8-bit" (yaml--all (yaml--chr ?\x) (yaml--rep 2 2 (lambda () (yaml--parse-from-grammar 'ns-hex-digit)))))) ('ns-anchor-name (yaml--frame "ns-anchor-name" (yaml--rep 1 nil (lambda () (yaml--parse-from-grammar 'ns-anchor-char))))) ('ns-esc-slash (yaml--frame "ns-esc-slash" (yaml--chr ?\/))) ('s-nb-folded-text (let ((n (nth 0 args))) (yaml--frame "s-nb-folded-text" (yaml--all (yaml--parse-from-grammar 's-indent n) (yaml--parse-from-grammar 'ns-char) (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 'nb-char))))))) ('ns-word-char (yaml--frame "ns-word-char" (yaml--any (yaml--parse-from-grammar 'ns-dec-digit) (yaml--parse-from-grammar 'ns-ascii-letter) (yaml--chr ?\-)))) ('ns-esc-form-feed (yaml--frame "ns-esc-form-feed" (yaml--chr ?f))) ('ns-s-block-map-implicit-key (yaml--frame "ns-s-block-map-implicit-key" (yaml--any (yaml--parse-from-grammar 'c-s-implicit-json-key "block-key") (yaml--parse-from-grammar 'ns-s-implicit-yaml-key "block-key")))) ('ns-esc-null (yaml--frame "ns-esc-null" (yaml--chr ?\0))) ('c-ns-tag-property (yaml--frame "c-ns-tag-property" (yaml--any (yaml--parse-from-grammar 'c-verbatim-tag) (yaml--parse-from-grammar 'c-ns-shorthand-tag) (yaml--parse-from-grammar 'c-non-specific-tag)))) ('c-ns-local-tag-prefix (yaml--frame "c-ns-local-tag-prefix" (yaml--all (yaml--chr ?\!) (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 'ns-uri-char)))))) ('ns-tag-directive (yaml--frame "ns-tag-directive" (yaml--all (yaml--chr ?T) (yaml--chr ?A) (yaml--chr ?G) (yaml--parse-from-grammar 's-separate-in-line) (yaml--parse-from-grammar 'c-tag-handle) (yaml--parse-from-grammar 's-separate-in-line) (yaml--parse-from-grammar 'ns-tag-prefix)))) ('c-flow-mapping (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "c-flow-mapping" (yaml--all (yaml--chr ?\{) (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 's-separate n c))) (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 'ns-s-flow-map-entries n (yaml--parse-from-grammar 'in-flow = c)))) (yaml--chr ?\}))))) ('ns-double-char (yaml--frame "ns-double-char" (yaml--but (lambda () (yaml--parse-from-grammar 'nb-double-char)) (lambda () (yaml--parse-from-grammar 's-white))))) ('ns-ascii-letter (yaml--frame "ns-ascii-letter" (yaml--any (yaml--chr-range ?\x41 ?\x5A) (yaml--chr-range ?\x61 ?\x7A)))) ('b-break (yaml--frame "b-break" (yaml--any (yaml--all (yaml--parse-from-grammar 'b-carriage-return) (yaml--parse-from-grammar 'b-line-feed)) (yaml--parse-from-grammar 'b-carriage-return) (yaml--parse-from-grammar 'b-line-feed)))) ('nb-ns-double-in-line (yaml--frame "nb-ns-double-in-line" (yaml--rep2 0 nil (lambda () (yaml--all (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 's-white))) (yaml--parse-from-grammar 'ns-double-char)))))) ('s-l+block-node (yaml--frame "s-l+block-node" (yaml--any (yaml--parse-from-grammar 's-l+block-in-block (nth 0 args) (nth 1 a= rgs)) (yaml--parse-from-grammar 's-l+flow-in-block (nth 0 args))))) ('ns-esc-bell (yaml--frame "ns-esc-bell" (yaml--chr ?a))) ('c-named-tag-handle (yaml--frame "c-named-tag-handle" (yaml--all (yaml--chr ?\!) (yaml--rep 1 nil (lambda () (yaml--parse-from-grammar 'ns-word-char= ))) (yaml--chr ?\!)))) ('s-separate-lines (let ((n (nth 0 args))) (yaml--frame "s-separate-lines" (yaml--any (yaml--all (yaml--parse-from-grammar 's-l-comments) (yaml--parse-from-grammar 's-flow-line-prefi= x n)) (yaml--parse-from-grammar 's-separate-in-line))))) ('l-directive (yaml--frame "l-directive" (yaml--all (yaml--chr ?\%) (yaml--any (yaml--parse-from-grammar 'ns-yaml-directive) (yaml--parse-from-grammar 'ns-tag-directive) (yaml--parse-from-grammar 'ns-reserved-directi= ve)) (yaml--parse-from-grammar 's-l-comments)))) ('ns-esc-escape (yaml--frame "ns-esc-escape" (yaml--chr ?e))) ('b-nb-literal-next (let ((n (nth 0 args))) (yaml--frame "b-nb-literal-next" (yaml--all (yaml--parse-from-grammar 'b-as-line-feed) (yaml--parse-from-grammar 'l-nb-literal-text n))))) ('ns-s-flow-map-entries (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "ns-s-flow-map-entries" (yaml--all (yaml--parse-from-grammar 'ns-flow-map-entry n c) (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 's-separate n= c))) (yaml--rep 0 1 (lambda () (yaml--all (yaml--chr ?\,) (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 's-separate n c))) (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 'ns-s-flow-map-entries n c)))))))))) ('c-nb-comment-text (yaml--frame "c-nb-comment-text" (yaml--all (yaml--chr ?\#) (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 'nb-char))))= )) ('ns-dec-digit (yaml--frame "ns-dec-digit" (yaml--chr-range ?\x30 ?\x39))) ('ns-yaml-directive (yaml--frame "ns-yaml-directive" (yaml--all (yaml--chr ?Y) (yaml--chr ?A) (yaml--chr ?M) (yaml--chr ?= L) (yaml--parse-from-grammar 's-separate-in-line) (yaml--parse-from-grammar 'ns-yaml-version)))) ('c-mapping-key (yaml--frame "c-mapping-key" (yaml--chr ?\?))) ('b-as-line-feed (yaml--frame "b-as-line-feed" (yaml--parse-from-grammar 'b-break))) ('s-l+block-in-block (yaml--frame "s-l+block-in-block" (yaml--any (yaml--parse-from-grammar 's-l+block-scalar (nth 0 args) (nth 1 args)) (yaml--parse-from-grammar 's-l+block-collection (nth 0 args) (nth 1 args))))) ('ns-esc-paragraph-separator (yaml--frame "ns-esc-paragraph-separator" (yaml--chr ?P))) ('c-double-quoted (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "c-double-quoted" (yaml--all (yaml--chr ?\") (yaml--parse-from-grammar 'nb-double-text n c) (yaml--chr ?\"))))) ('b-line-feed (yaml--frame "b-line-feed" (yaml--chr ?\x0A))) ('ns-esc-horizontal-tab (yaml--frame "ns-esc-horizontal-tab" (yaml--any (yaml--chr ?t) (yaml--chr ?\x09)))) ('c-ns-flow-map-empty-key-entry (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "c-ns-flow-map-empty-key-entry" (yaml--all (yaml--parse-from-grammar 'e-node) (yaml--parse-from-grammar 'c-ns-flow-map-separate-value n c))))) ('l-any-document (yaml--frame "l-any-document" (yaml--any (yaml--parse-from-grammar 'l-directive-document) (yaml--parse-from-grammar 'l-explicit-document) (yaml--parse-from-grammar 'l-bare-document)))) ('c-tag (yaml--frame "c-tag" (yaml--chr ?\!))) ('c-escape (yaml--frame "c-escape" (yaml--chr ?\\))) ('c-sequence-end (yaml--frame "c-sequence-end" (yaml--chr ?\]))) ('l+block-mapping (yaml--frame "l+block-mapping" (let ((new-m (yaml--auto-detect-indent (nth 0 args)))) (if (=3D 0 new-m) nil ;; For some fixed auto-detected m > 0 ;; Is this right??? (yaml--all (yaml--set m new-m) (yaml--rep 1 nil (lambda () (yaml--all (yaml--parse-from-grammar 's-indent (+ (nth 0 args) new-m)) (yaml--parse-from-grammar 'ns-l-block-map-entry (+ (nth 0 args) new-m)))))))))) ('c-ns-flow-map-adjacent-value (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "c-ns-flow-map-adjacent-value" (yaml--all (yaml--chr ?\:) (yaml--any (yaml--all (yaml--rep 0 1 (lambda () (yaml--parse-from-grammar 's-separate n c))) (yaml--parse-from-grammar 'ns-flow-node n c)) (yaml--parse-from-grammar 'e-node)))))) ('s-single-next-line (let ((n (nth 0 args))) (yaml--frame "s-single-next-line" (yaml--all (yaml--parse-from-grammar 's-flow-folded n) (yaml--rep 0 1 (lambda () (yaml--all (yaml--parse-from-grammar 'ns-single-char) (yaml--parse-from-grammar 'nb-ns-single-in-line) (yaml--any (yaml--parse-from-grammar 's-single-next-line n) (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 's-white))))))))))) ('s-separate-in-line (yaml--frame "s-separate-in-line" (yaml--any (yaml--rep 1 nil (lambda () (yaml--parse-from-grammar 's-white))) (yaml--start-of-line)))) ('b-comment (yaml--frame "b-comment" (yaml--any (yaml--parse-from-grammar 'b-non-content) (yaml--end-of-stream)))) ('ns-esc-backslash (yaml--frame "ns-esc-backslash" (yaml--chr ?\\))) ('c-ns-anchor-property (yaml--frame "c-ns-anchor-property" (yaml--all (yaml--chr ?\&) (yaml--parse-from-grammar 'ns-anchor-name)))) ('ns-plain-safe (let ((c (nth 0 args))) (yaml--frame "ns-plain-safe" (pcase c ("block-key" (yaml--parse-from-grammar 'ns-plain-safe-out)) ("flow-in" (yaml--parse-from-grammar 'ns-plain-safe-in)) ("flow-key" (yaml--parse-from-grammar 'ns-plain-safe-in)) ("flow-out" (yaml--parse-from-grammar 'ns-plain-safe-out)))))) ('ns-flow-content (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "ns-flow-content" (yaml--any (yaml--parse-from-grammar 'ns-flow-yaml-content n c) (yaml--parse-from-grammar 'c-flow-json-content n c))))) ('c-ns-flow-map-separate-value (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "c-ns-flow-map-separate-value" (yaml--all (yaml--chr ?\:) (yaml--chk "!" (yaml--parse-from-grammar 'ns-plain-safe c)) (yaml--any (yaml--all (yaml--parse-from-grammar 's-separate n c) (yaml--parse-from-grammar 'ns-flow-node n c= )) (yaml--parse-from-grammar 'e-node)))))) ('in-flow (let ((c (nth 0 args))) (yaml--frame "in-flow" (pcase c ("block-key" "flow-key") ("flow-in" "flow-in") ("flow-key" "flow-key") ("flow-out" "flow-in"))))) ('c-verbatim-tag (yaml--frame "c-verbatim-tag" (yaml--all (yaml--chr ?\!) (yaml--chr ?\<) (yaml--rep 1 nil (lambda () (yaml--parse-from-grammar 'ns-uri-char)= )) (yaml--chr ?\>)))) ('c-literal (yaml--frame "c-literal" (yaml--chr ?\|))) ('ns-esc-line-feed (yaml--frame "ns-esc-line-feed" (yaml--chr ?n))) ('nb-double-multi-line (let ((n (nth 0 args))) (yaml--frame "nb-double-multi-line" (yaml--all (yaml--parse-from-grammar 'nb-ns-double-in-line) (yaml--any (yaml--parse-from-grammar 's-double-next-line n) (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 's-white)))))))) ('b-l-spaced (let ((n (nth 0 args))) (yaml--frame "b-l-spaced" (yaml--all (yaml--parse-from-grammar 'b-as-line-feed) (yaml--rep2 0 nil (lambda () (yaml--parse-from-grammar 'l-empty n "block-in")))))= )) ('ns-flow-yaml-content (let ((n (nth 0 args)) (c (nth 1 args))) (yaml--frame "ns-flow-yaml-content" (yaml--parse-from-grammar 'ns-plain n c)))) (_ (error "Unknown parsing grammar state: %s %s" state args)))) ;;; Encoding (defun yaml-encode (object) "Encode OBJECT to a YAML string." (with-temp-buffer (yaml--encode-object object 0) (buffer-string))) (defun yaml--encode-object (object indent &optional auto-indent) "Encode a Lisp OBJECT to YAML. INDENT indicates how deeply nested the object will be displayed in the YAML. If AUTO-INDENT is non-nil, then emit the object without first inserting a newline." (cond ((yaml--scalarp object) (yaml--encode-scalar object)) ((hash-table-p object) (yaml--encode-hash-table object indent auto-inden= t)) ((listp object) (yaml--encode-list object indent auto-indent)) ((arrayp object) (yaml--encode-array object indent auto-indent)) (t (error "Unknown object %s" object)))) (defun yaml--scalarp (object) "Return non-nil if OBJECT correlates to a YAML scalar." (or (numberp object) (symbolp object) (stringp object) (not object))) (defun yaml--encode-escape-string (s) "Escape yaml special characters in string S." (let* ((s (replace-regexp-in-string "\\\\" "\\\\" s)) (s (replace-regexp-in-string "\n" "\\\\n" s)) (s (replace-regexp-in-string "\t" "\\\\t" s)) (s (replace-regexp-in-string "\r" "\\\\r" s)) (s (replace-regexp-in-string "\"" "\\\\\"" s))) s)) (defun yaml--encode-array (a indent &optional auto-indent) "Encode array A to a string in the context of being INDENT deep. If AUTO-INDENT is non-nil, start the list on the current line, auto-detecting the indentation. Functionality defers to `yaml--encode-list'." (yaml--encode-list (seq-map #'identity a) indent auto-indent)) (defun yaml--encode-scalar (s) "Encode scalar S to buffer." (cond ((not s) (insert "null")) ((eql t s) (insert "true")) ((symbolp s) (cond ((eql s :null) (insert "null")) ((eql s :false) (insert "false")) (t (insert (symbol-name s))))) ((numberp s) (insert (number-to-string s))) ((stringp s) (if (string-match "\\`[-_a-zA-Z0-9]+\\'" s) (insert s) (insert "\"" (yaml--encode-escape-string s) "\""))))) (defun yaml--alist-to-hash-table (l) "Return hash representation of L if it is an alist, nil otherwise." (when (and (listp l) (seq-every-p (lambda (x) (and (consp x) (atom (car x)))) l)) (let ((h (make-hash-table))) (seq-map (lambda (cpair) (let* ((k (car cpair)) (v (alist-get k l))) (puthash k v h))) l) h))) (defun yaml--encode-list (l indent &optional auto-indent) "Encode list L to a string in the context of being INDENT deep. If AUTO-INDENT is non-nil, start the list on the current line, auto-detecting the indentation" (let ((ht (yaml--alist-to-hash-table l))) (cond (ht (yaml--encode-hash-table ht indent auto-indent)) ((zerop (length l)) (insert "[]")) ((seq-every-p #'yaml--scalarp l) (insert "[") (yaml--encode-object (car l) 0) (seq-do (lambda (object) (insert ", ") (yaml--encode-object object 0)) (cdr l)) (insert "]")) (t (when (zerop indent) (setq indent 2)) (let* ((first t) (indent-string (make-string (- indent 2) ?\s))) (seq-do (lambda (object) (if (not first) (insert "\n" indent-string "- ") (if auto-indent (let ((curr-indent (yaml--encode-auto-detect-indent))) (insert (make-string (- indent curr-indent) ?\s) "= - ")) (insert "\n" indent-string "- ")) (setq first nil)) (if (or (hash-table-p object) (yaml--alist-to-hash-table object)) (yaml--encode-object object indent t) (yaml--encode-object object (+ indent 2) nil))) l)))))) (defun yaml--encode-auto-detect-indent () "Return the amount of indentation at current place in encoding." (length (thing-at-point 'line))) (defun yaml--encode-hash-table (m indent &optional auto-indent) "Encode hash table M to a string in the context of being INDENT deep. If AUTO-INDENT is non-nil, auto-detect the indent on the current line and insert accordingly." (cond ((zerop (hash-table-size m)) (insert "{}")) (t (let ((first t) (indent-string (make-string indent ?\s))) (maphash (lambda (k v) (if (not first) (insert "\n" indent-string) (if auto-indent (let ((curr-indent (yaml--encode-auto-detect-indent))) (when (> curr-indent indent) (setq indent (+ curr-indent 1))) (insert (make-string (- indent curr-indent) ?\s))) (insert "\n" indent-string)) (setq first nil)) (yaml--encode-object k indent nil) (insert ": ") (yaml--encode-object v (+ indent 2))) m))))) (provide 'yaml) ;;; yaml.el ends here --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Thu May 11 06:16:16 2023 Received: (at 63436) by debbugs.gnu.org; 11 May 2023 10:16:16 +0000 Received: from localhost ([127.0.0.1]:49773 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1px3LL-0005xg-LI for submit@debbugs.gnu.org; Thu, 11 May 2023 06:16:16 -0400 Received: from mail204c50.megamailservers.eu ([91.136.10.214]:55288 helo=mail193c50.megamailservers.eu) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1px3LF-0005xP-2i for 63436@debbugs.gnu.org; Thu, 11 May 2023 06:16:13 -0400 X-Authenticated-User: mattiase@bredband.net DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=megamailservers.eu; s=maildub; t=1683800159; bh=lqvd7vkWfNoQ3KiYtq7poXdmO5L5Nd2DI7N62E8GK4w=; h=Subject:From:In-Reply-To:Date:Cc:References:To:From; b=Qg8kcOkA0KegoX00Ohac7ovQTh4IwFjrFkodwEt/jozZtoMcDGZrBkCNeEgW417VA tmqD3Y5gUKDRDNNdNO3QmR2IzX5j7p8saoYzupKAcnLH5oTC+ONUB4+RdWBL5jyQjQ mPzfli+SU3LH+PvqbdRD1qXaCyeXSfDPUH4X4ksk= Feedback-ID: mattiase@acm.or Received: from smtpclient.apple (c188-150-165-235.bredband.tele2.se [188.150.165.235]) (authenticated bits=0) by mail193c50.megamailservers.eu (8.14.9/8.13.1) with ESMTP id 34BAFuuD034479; Thu, 11 May 2023 10:15:57 +0000 Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.15\)) Subject: Re: bug#63436: 30.0.50; Invalid escape character syntax From: =?utf-8?Q?Mattias_Engdeg=C3=A5rd?= In-Reply-To: <147ED4C0-88D3-4ECB-BACF-E7C6394016F2@algon.dk> Date: Thu, 11 May 2023 12:15:55 +0200 Content-Transfer-Encoding: quoted-printable Message-Id: <6150741C-D27A-4C77-92B5-029A5084A294@acm.org> References: <72D882DB-4C49-459F-9232-4839EB0C69C7@me.com> <83wn1f5q7r.fsf@gnu.org> <9DD856BE-853D-4E75-A836-065EEC20F2E1@algon.dk> <83r0rn5jxl.fsf@gnu.org> <147ED4C0-88D3-4ECB-BACF-E7C6394016F2@algon.dk> To: =?utf-8?Q?Niels_S=C3=B8ndergaard?= X-Mailer: Apple Mail (2.3654.120.0.1.15) X-VADE-SPAMSTATE: clean X-VADE-SPAMSCORE: -100 X-VADE-SPAMCAUSE: gggruggvucftvghtrhhoucdtuddrgedvhedrfeegkedgvdehucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecujffquffvqffrkfetpdfqfgfvpdfgpfggqdevhedtnecuuegrihhlohhuthemuceftddunecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenucfjughrpegtggfuhfgjffevgffkfhfvofesthhqmhdthhdtjeenucfhrhhomhepofgrthhtihgrshcugfhnghguvghgnohrugcuoehmrghtthhirghsvgesrggtmhdrohhrgheqnecuggftrfgrthhtvghrnhepvdfhieevkefgveeludfgueffiedujedttdelheetteffudegkeevhefghfefhfdtnecukfhppedukeekrdduhedtrdduieehrddvfeehnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehinhgvthepudekkedrudehtddrudeihedrvdefhedphhgvlhhopehsmhhtphgtlhhivghnthdrrghpphhlvgdpmhgrihhlfhhrohhmpehmrghtthhirghsvgesrggtmhdrohhrghdpnhgspghrtghpthhtohepfedprhgtphhtthhopehnihgvlhhssegrlhhgohhnrdgukhdprhgtphhtthhopegvlhhiiiesghhnuhdrohhrghdprhgtphhtthhopeeifeegfeeiseguvggssghughhsrdhgnhhurdhorhhg X-Origin-Country: SE X-Spam-Score: 0.3 (/) X-Debbugs-Envelope-To: 63436 Cc: Eli Zaretskii , 63436@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) 11 maj 2023 kl. 11.16 skrev Niels S=C3=B8ndergaard : > I deleted yaml from straight/repos. > and Emacs 30.0.50 is running fine now. Yes, as mentioned earlier the bug was fixed in yaml some time ago. The error messages have now been made more descriptive so that it should = be easier to tell what is going on next time such a mistake is detected. Thank you for reporting it! From debbugs-submit-bounces@debbugs.gnu.org Thu May 11 06:39:43 2023 Received: (at 63436-done) by debbugs.gnu.org; 11 May 2023 10:39:43 +0000 Received: from localhost ([127.0.0.1]:49806 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1px3i3-0006hE-FG for submit@debbugs.gnu.org; Thu, 11 May 2023 06:39:43 -0400 Received: from eggs.gnu.org ([209.51.188.92]:56942) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1px3i1-0006h1-Jy for 63436-done@debbugs.gnu.org; Thu, 11 May 2023 06:39:42 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1px3hv-0008K1-UH; Thu, 11 May 2023 06:39:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=8MfvhkoVNYm1n0Sa6BaS0/kAOLqWMI7Xgb7I/pKXSiI=; b=NM3mA+LJ7kY07oWtEXT3 a83mDfZ2ObBDYrnj89AUM2oC2RYFjgsyzssv0fGdMxzch9FKUVz8A23PfMNllFSuh20bDrMFuKxR2 KMAPlck91o6iNyvh02Omyv7zo1lYyvoNI4LDw8yikMzMsZBv4qZRKJt8MY41NPvHJ4WzmPpOScDTu KuSfsjtOLTdHhtRPxTjX5wH7XwyS1yjdqT/V0ezZ31FOf+6KwNMajb4IwSxJHEZnFkzJUI2QTxoib clKAvygfp7N5QFNAMkdqZ+iPRKfqBetArghZhfAGFnbx7bGlE9CbESeqbTARafYYrLvgA+cYbgdSS tmEuRKx1zAGtkQ==; Received: from [87.69.77.57] (helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1px3hu-000074-Ps; Thu, 11 May 2023 06:39:35 -0400 Date: Thu, 11 May 2023 13:40:38 +0300 Message-Id: <83ednn5exl.fsf@gnu.org> From: Eli Zaretskii To: Niels =?utf-8?Q?S=C3=B8ndergaard?= In-Reply-To: <147ED4C0-88D3-4ECB-BACF-E7C6394016F2@algon.dk> (message from Niels =?utf-8?Q?S=C3=B8ndergaard?= on Thu, 11 May 2023 11:16:25 +0200) Subject: Re: bug#63436: 30.0.50; Invalid escape character syntax References: <72D882DB-4C49-459F-9232-4839EB0C69C7@me.com> <83wn1f5q7r.fsf@gnu.org> <9DD856BE-853D-4E75-A836-065EEC20F2E1@algon.dk> <83r0rn5jxl.fsf@gnu.org> <147ED4C0-88D3-4ECB-BACF-E7C6394016F2@algon.dk> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 63436-done Cc: mattiase@acm.org, 63436-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Niels Søndergaard > Date: Thu, 11 May 2023 11:16:25 +0200 > Cc: Mattias Engdegård , > 63436@debbugs.gnu.org > > I deleted yaml from straight/repos. > and Emacs 30.0.50 is running fine now. > So we can close the issue. Thanks, done. From debbugs-submit-bounces@debbugs.gnu.org Thu May 11 12:53:56 2023 Received: (at 63436) by debbugs.gnu.org; 11 May 2023 16:53:56 +0000 Received: from localhost ([127.0.0.1]:53269 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1px9YB-0006pk-CB for submit@debbugs.gnu.org; Thu, 11 May 2023 12:53:56 -0400 Received: from qs51p00im-qukt01072302.me.com ([17.57.155.13]:53411) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1px2Pp-0004BR-60 for 63436@debbugs.gnu.org; Thu, 11 May 2023 05:16:52 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=algon.dk; s=sig1; t=1683796602; bh=uBFxQ1aX7MPJrDwQf4YeHT/JYjGHAivOkA2FA5V+OJQ=; h=Subject:Mime-Version:Content-Type:From:Date:Message-Id:To; b=CaYXCNrYSv/d+DF/liOAXhquFefTVcoGGH6EVTFYJTkk4F9xdrI3p0MRne8lMK4Bv P20UNMBfZ5rJAjJzOtW8T2jCnZsMJL1sZo0ZYK/wTmZxISGUayLv8Gly+X60yLbNMj hCN5+PxeEdeuvHGtn74GYWlv0TKSYZAYbQPTiUIl1TzB33rVAdZwHGrTjWl+uwtDiE N/h/h2ncnCD/qkQ6/D0zK10tjc/g5igL3DUPQrrAc8/+FRgYe5/DYlwEtd3XIPWEiN VNWFPFMyLpwR1bci5Iec2N2b1/HuIyo4IsyW8WxiWd+ouNvs69O3ajeXD+urUiPx3o GnnxbtM1WiPqA== Received: from smtpclient.apple (qs51p00im-dlb-asmtp-mailmevip.me.com [17.57.155.28]) by qs51p00im-qukt01072302.me.com (Postfix) with ESMTPSA id 4A08063002B8 for <63436@debbugs.gnu.org>; Thu, 11 May 2023 09:16:42 +0000 (UTC) Subject: Re: bug#63436: 30.0.50; Invalid escape character syntax Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.500.231\)) Content-Type: multipart/alternative; boundary="Apple-Mail=_DAEA87F4-EBB4-44DD-8F2D-0AFCEB8B3991" From: =?utf-8?Q?Niels_S=C3=B8ndergaard?= In-Reply-To: <83r0rn5jxl.fsf@gnu.org> Date: Thu, 11 May 2023 11:16:25 +0200 Message-Id: <147ED4C0-88D3-4ECB-BACF-E7C6394016F2@algon.dk> References: <72D882DB-4C49-459F-9232-4839EB0C69C7@me.com> <83wn1f5q7r.fsf@gnu.org> <9DD856BE-853D-4E75-A836-065EEC20F2E1@algon.dk> <83r0rn5jxl.fsf@gnu.org> To: Eli Zaretskii X-Mailer: Apple Mail (2.3731.500.231) X-Proofpoint-GUID: VdDskkUWbvegIRyMz5XSPLIB5o2t6pFD X-Proofpoint-ORIG-GUID: VdDskkUWbvegIRyMz5XSPLIB5o2t6pFD X-Proofpoint-Virus-Version: =?UTF-8?Q?vendor=3Dfsecure_engine=3D1.1.170-22c6f66c430a71ce266a39bfe25bc?= =?UTF-8?Q?2903e8d5c8f:6.0.138,18.0.790,17.11.62.513.0000000_definitions?= =?UTF-8?Q?=3D2022-01-12=5F02:2020-02-14=5F02,2022-01-12=5F02,2021-12-02?= =?UTF-8?Q?=5F01_signatures=3D0?= X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 malwarescore=0 adultscore=0 mlxscore=0 suspectscore=0 clxscore=1030 mlxlogscore=999 phishscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2212070000 definitions=main-2305110079 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 63436 X-Mailman-Approved-At: Thu, 11 May 2023 12:53:54 -0400 Cc: =?utf-8?Q?Mattias_Engdeg=C3=A5rd?= , 63436@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) --Apple-Mail=_DAEA87F4-EBB4-44DD-8F2D-0AFCEB8B3991 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 Thanks, I deleted yaml from straight/repos. and Emacs 30.0.50 is running fine now. So we can close the issue. med venlig hilsen Niels Niels S=C3=B8ndergaard Address: Marieh=C3=B8j 236, 2990 Niv=C3=A5=20 Mobile: +45 4052 2789 Website: algon.dk Email: niels@algon.dk > Den 11. maj 2023 kl. 10.52 skrev Eli Zaretskii : >=20 > [Please use Reply All to reply, so that the bug tracker is CC'ed.] >=20 >> From: Niels S=C3=B8ndergaard >> Date: Thu, 11 May 2023 09:43:10 +0200 >>=20 >> With same config (nothing atall is changed, except the emacs, = normally I=E2=80=99m running 29.0.90 build=20 >> 21G217) this version 30.0.50 is build 22E772610a. >>=20 >> The errors comes in yaml.el every time, but can be from many places, = I suspect mostly from org-xxxx >> where xxxx is either agenda, capture (that is some where in my agenda = files, but I have not a clue to >> what is) >=20 > The master branch is being actively developed, so it could add > warnings and errors as we decide they should be useful. >=20 >> This is the yaml.el file I have=E2=80=A6.. >> It is the same for 29.0.90 and 30.0.50 >=20 > Thanks. I attach the file below, so that it gets recorded in this > discussion. >=20 > The problem is here: >=20 > ('ns-esc-8-bit > (yaml--frame "ns-esc-8-bit" > (yaml--all (yaml--chr ?\x) <<<<<<<<<<<<<<<<<<<<< > (yaml--rep 2 2 > (lambda () (yaml--parse-from-grammar = 'ns-hex-digit)))))) >=20 > The ?\x escape expects one or more digits after it. If you mean the > letter 'x', then you should use ?x, without the escape, I think. >=20 > Adding Mattias, who I think worked on those diagnostics. >=20 > --Apple-Mail=_DAEA87F4-EBB4-44DD-8F2D-0AFCEB8B3991 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8 Thanks,
I = deleted yaml from straight/repos.
and Emacs 30.0.50 is running = fine now.
So we can close the = issue.

med venlig = hilsen
Niels

Niels S=C3=B8ndergaard =

Address: Marieh=C3=B8j 236, 2990 Niv=C3=A5
Mobile: +45 4052 2789
Website: algon.dk
3D"Gallery
3D"Linkedin"
    =                     =                     =                

Den 11. maj 2023 kl. 10.52 skrev = Eli Zaretskii <eliz@gnu.org>:

[Please use Reply All to = reply, so that the bug tracker is CC'ed.]

From: Niels S=C3=B8ndergaard = <niels@algon.dk>
Date: Thu, 11 May 2023 09:43:10 = +0200

With same config (nothing atall is changed, except the = emacs, normally I=E2=80=99m running 29.0.90 build
21G217) this = version 30.0.50 is build 22E772610a.

The errors comes in yaml.el = every time, but can be from many places, I suspect mostly from = org-xxxx
where xxxx is either agenda, capture (that is some where in = my agenda files, but I have not a clue to
what = is)

The master branch is being actively developed, = so it could add
warnings and errors as we decide they should be = useful.

This is the yaml.el file I = have=E2=80=A6..
It is the same for 29.0.90 and = 30.0.50

Thanks.  I attach the file below, so = that it gets recorded in this
discussion.

The problem is = here:

   ('ns-esc-8-bit
=     (yaml--frame "ns-esc-8-bit"
=       (yaml--all (yaml--chr ?\x) =  <<<<<<<<<<<<<<<<<= <<<<
=             &n= bsp;    (yaml--rep 2 2
=             &n= bsp;      (lambda () = (yaml--parse-from-grammar 'ns-hex-digit))))))

The ?\x escape = expects one or more digits after it.  If you mean the
letter = 'x', then you should use ?x, without the escape, I think.

Adding = Mattias, who I think worked on those diagnostics.

<yaml.el>

3D""= --Apple-Mail=_DAEA87F4-EBB4-44DD-8F2D-0AFCEB8B3991-- From unknown Sat Jun 21 03:22:17 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Fri, 09 Jun 2023 11:24:07 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator