[nongnu] elpa/cider 9c1975ee67: Refactor code used to insert sections into ClojureDocs buffer
branch: elpa/cider commit 9c1975ee67d080bc768046b698251a02f4422a17 Author: Kato Muso Commit: Bozhidar Batsov Refactor code used to insert sections into ClojureDocs buffer --- cider-clojuredocs.el | 93 +--- 1 file changed, 60 insertions(+), 33 deletions(-) diff --git a/cider-clojuredocs.el b/cider-clojuredocs.el index c2b10cd1ad..cfdda9ad38 100644 --- a/cider-clojuredocs.el +++ b/cider-clojuredocs.el @@ -109,42 +109,69 @@ opposite of what that option dictates." (goto-char (point-min)) (current-buffer))) +(defun cider-clojuredocs--insert-overview (dict) + "Insert \"Overview\" section based on data from DICT." + (insert (format "= %s/%s\n" + (nrepl-dict-get dict "ns") + (nrepl-dict-get dict "name"))) + (newline) + (when-let ((arglists (nrepl-dict-get dict "arglists"))) +(dolist (arglist arglists) + (insert (format " [%s]\n" arglist))) +(newline)) + (when-let* ((doc (nrepl-dict-get dict "doc")) + ;; As this is a literal docstring from the source code and + ;; there are two spaces at the beginning of lines in docstrings, + ;; we remove them to make it align nicely in ClojureDocs buffer. + (doc (replace-regexp-in-string "\n " "\n" doc))) +(insert doc "\n") +(newline))) + +(defun cider-clojuredocs--insert-see-also (dict) + "Insert \"See Also\" section based on data from DICT." + (insert "== See Also\n") + (newline) + (if-let ((see-alsos (nrepl-dict-get dict "see-alsos"))) + (dolist (see-also see-alsos) +(insert "* ") +(insert-text-button see-also +'sym see-also +'action (lambda (btn) + (cider-clojuredocs-lookup (button-get btn 'sym))) +'help-echo (format "Press Enter or middle click to jump to %s" see-also)) +(insert "\n")) +(insert "Not available\n")) + (newline)) + +(defun cider-clojuredocs--insert-examples (dict) + "Insert \"Examples\" section based on data from DICT." + (insert "== Examples\n") + (newline) + (if-let ((examples (nrepl-dict-get dict "examples"))) + (dolist (example examples) +(insert (cider-font-lock-as-clojure example) "\n") +(insert "-\n")) +(insert "Not available\n")) + (newline)) + +(defun cider-clojuredocs--insert-notes (dict) + "Insert \"Notes\" section based on data from DICT." + (insert "== Notes\n") + (newline) + (if-let ((notes (nrepl-dict-get dict "notes"))) + (dolist (note notes) +(insert note "\n") +(insert "-\n")) +(insert "Not available\n")) + (newline)) + (defun cider-clojuredocs--content (dict) "Generate a nice string from DICT." (with-temp-buffer -(insert "= " (nrepl-dict-get dict "ns") "/" (nrepl-dict-get dict "name") "\n\n") -(let ((arglists (nrepl-dict-get dict "arglists"))) - (dolist (arglist arglists) -(insert (format " [%s]\n" arglist))) - (when-let* ((doc (nrepl-dict-get dict "doc")) - ;; As this is a literal docstring from the source code and - ;; there are two spaces at the beginning of lines in docstrings, - ;; we remove them to make it align nicely in ClojureDocs buffer. - (doc (replace-regexp-in-string "\n " "\n" doc))) -(insert "\n" doc "\n"))) -(insert "\n== See Also\n\n") -(if-let ((see-alsos (nrepl-dict-get dict "see-alsos"))) -(dolist (see-also see-alsos) - (insert "* ") - (insert-text-button see-also - 'sym see-also - 'action (lambda (btn) -(cider-clojuredocs-lookup (button-get btn 'sym))) - 'help-echo (format "Press Enter or middle click to jump to %s" see-also)) - (insert "\n")) - (insert "Not available\n")) -(insert "\n== Examples\n\n") -(if-let ((examples (nrepl-dict-get dict "examples"))) -(dolist (example examples) - (insert (cider-font-lock-as-clojure example)) - (insert "\n-\n")) - (insert "Not available\n")) -(insert "\n== Notes\n\n") -(if-let ((notes (nrepl-dict-get dict "notes"))) -(dolist (note notes) - (insert note) - (insert "\n-\n")) - (insert "Not available\n")) +(cider-clojuredocs--insert-overview dict) +(cider-clojuredocs--insert-see-also dict) +(cider-clojuredocs--insert-examples dict) +(cider-clojuredocs--insert-notes dict) (buffer-string))) (defun cider-clojuredocs-lookup (sym)
[nongnu] elpa/csv2ledger 5c38ee8a4b: Do not get tripped up by %-signs in descriptions
branch: elpa/csv2ledger commit 5c38ee8a4bd3edd24ff49bcbe63b1b6a659497dc Author: Joost Kremers Commit: Joost Kremers Do not get tripped up by %-signs in descriptions --- csv2ledger.el | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/csv2ledger.el b/csv2ledger.el index f306ecc469..db7ad7c709 100644 --- a/csv2ledger.el +++ b/csv2ledger.el @@ -6,7 +6,7 @@ ;; Author: Joost Kremers ;; Maintainer: Joost Kremers ;; Created: 2022 -;; Version: 1.5.3 +;; Version: 1.5.4 ;; Package-Requires: ((emacs "29.1") (csv-mode "1.24")) ;; URL: https://codeberg.org/joostkremers/csv2ledger @@ -516,7 +516,7 @@ in `c2l-csv-columns'." (setq c2l--accounts (c2l--read-accounts c2l-accounts-file))) (let ((entry (c2l--csv-line-to-ledger (c2l--get-current-row (kill-new entry) -(message entry))) +(message "%s" entry))) ;;;###autoload (defun c2l-convert-region (start end)
[elpa] externals-release/org b8497aa7fe 2/2: org-lint: Do not warn about trailing *** lines inside blocks
branch: externals-release/org commit b8497aa7fe317f78748901db041eae9801283a9a Author: Ihor Radchenko Commit: Ihor Radchenko org-lint: Do not warn about trailing *** lines inside blocks * lisp/org-lint.el (org-lint-misplaced-heading): The chances that there is a heading between #+begin... #+end lines is generally low. So *** text instances are likely intended. Reported-by: Suhail Singh Link: https://orgmode.org/list/87r0dc35ya@gmail.com --- lisp/org-lint.el | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lisp/org-lint.el b/lisp/org-lint.el index 9d105175c2..39f0d67c14 100644 --- a/lisp/org-lint.el +++ b/lisp/org-lint.el @@ -395,7 +395,8 @@ called with one argument, the key used for comparison." ;; Heuristics for 2+ level heading not at bol. (while (re-search-forward (rx (not (any "*\n\r ,")) ;; Not a bol; not escaped ,** heading; not " *** words" "*" (1+ "*") " ") nil t) -(push (list (match-beginning 0) "Possibly misplaced heading line") result)) +(unless (org-at-block-p) ; Inside a block, where the chances to have heading a slim. + (push (list (match-beginning 0) "Possibly misplaced heading line") result))) result))) (defun org-lint-duplicate-custom-id (ast)
[elpa] externals-release/org updated (de0df5b925 -> b8497aa7fe)
elpasync pushed a change to branch externals-release/org. from de0df5b925 org-test: Fix zone-dependent miscalculation of days of week new ac1d58477a org-element-cache: Fix indirect buffer tracking new b8497aa7fe org-lint: Do not warn about trailing *** lines inside blocks Summary of changes: lisp/org-element.el | 5 + lisp/org-lint.el| 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-)
[elpa] externals/org 654a68dc51 1/3: org-agenda-format-item: Refactor, adding readable variable names
branch: externals/org commit 654a68dc5121ecc29669bbd9cea01b7acb5c46b8 Author: Ihor Radchenko Commit: Ihor Radchenko org-agenda-format-item: Refactor, adding readable variable names * lisp/org-agenda.el (org-agenda-format-item): Rename internal variables to clarify their meaning. --- lisp/org-agenda.el | 106 ++--- 1 file changed, 60 insertions(+), 46 deletions(-) diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el index c2f80b2578..f807c00309 100644 --- a/lisp/org-agenda.el +++ b/lisp/org-agenda.el @@ -6978,58 +6978,71 @@ Any match of REMOVE-RE will be removed from TXT." (time-grid-trailing-characters (nth 2 org-agenda-time-grid)) (extra (or (and (not habitp) extra) "")) time -(ts (when dotime (concat - (if (stringp dotime) dotime "") - (and org-agenda-search-headline-for-time -;; Do not search inside -;; timestamps. They are handled -;; separately. -(replace-regexp-in-string - org-ts-regexp-both "" - txt) -(time-of-day (and dotime (org-get-time-of-day ts))) -stamp plain s0 s1 s2 rtn srp l +(string-containing-time + (when dotime (concat + (if (stringp dotime) dotime "") + (and org-agenda-search-headline-for-time + ;; Do not search inside + ;; timestamps. They are handled + ;; separately. + (replace-regexp-in-string + org-ts-regexp-both "" + txt) +(time-of-day (and dotime (org-get-time-of-day string-containing-time))) +timestamp-range? plain-time? date-range-same-day? + time-string start-time end-time rtn duration breadcrumbs) (and (derived-mode-p 'org-mode) buffer-file-name (add-to-list 'org-agenda-contributing-files buffer-file-name)) (when (and dotime time-of-day) ;; Extract starting and ending time and move them to prefix - (when (or (setq stamp (string-match org-stamp-time-of-day-regexp ts)) - (setq plain (string-match org-plain-time-of-day-regexp ts))) - (setq s0 (match-string 0 ts) - srp (and stamp (match-end 3)) - s1 (match-string (if plain 1 2) ts) - s2 (match-string (if plain 8 (if srp 4 6)) ts)) + (when (or (setq timestamp-range? + (string-match org-stamp-time-of-day-regexp +string-containing-time)) + (setq plain-time? + (string-match org-plain-time-of-day-regexp +string-containing-time))) + (setq time-string (match-string 0 string-containing-time) + date-range-same-day? (and timestamp-range? (match-end 3)) + start-time (match-string (if plain-time? 1 2) + string-containing-time) + end-time (match-string (if plain-time? 8 + (if date-range-same-day? 4 6)) + string-containing-time)) ;; If the times are in TXT (not in DOTIMES), and the prefix will list ;; them, we might want to remove them there to avoid duplication. ;; The user can turn this off with a variable. (when (and org-prefix-has-time - org-agenda-remove-times-when-in-prefix (or stamp plain) - (string-match (concat (regexp-quote s0) " *") txt) + org-agenda-remove-times-when-in-prefix + (or timestamp-range? plain-time?) + (string-match (concat (regexp-quote time-string) " *") txt) (not (equal ?\] (string-to-char (substring txt (match-end 0) (if (eq org-agenda-remove-times-when-in-prefix 'beg) (= (match-beginning 0) 0) t)) (setq txt (replace-match "" nil nil txt ;; Normalize the time(s) to 24 hour. - (when s1 (setq s1 (org-get-time-of-day s1 t))) - (when s2 (setq s2 (org-get-time-of-day s2 t))) + (when start-time (setq start-time (org-get-time-of-day start-time t))) + (when end-time (setq end-time (org-get-time-of-day end-time t))) ;; Try to set s2 if s1 and ;; `org-agenda-default-appointment-duration' are set -
[elpa] externals/org 9d70929fd7 3/3: Merge branch 'bugfix'
branch: externals/org commit 9d70929fd77d2cc5aed10e1387f9879c69fb031f Merge: 466c180a47 b8497aa7fe Author: Ihor Radchenko Commit: Ihor Radchenko Merge branch 'bugfix' --- lisp/org-lint.el | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lisp/org-lint.el b/lisp/org-lint.el index 9d105175c2..39f0d67c14 100644 --- a/lisp/org-lint.el +++ b/lisp/org-lint.el @@ -395,7 +395,8 @@ called with one argument, the key used for comparison." ;; Heuristics for 2+ level heading not at bol. (while (re-search-forward (rx (not (any "*\n\r ,")) ;; Not a bol; not escaped ,** heading; not " *** words" "*" (1+ "*") " ") nil t) -(push (list (match-beginning 0) "Possibly misplaced heading line") result)) +(unless (org-at-block-p) ; Inside a block, where the chances to have heading a slim. + (push (list (match-beginning 0) "Possibly misplaced heading line") result))) result))) (defun org-lint-duplicate-custom-id (ast)
[elpa] externals/org 466c180a47 2/3: Merge branch 'bugfix'
branch: externals/org commit 466c180a4757244fe944f3e98f603b2692614bde Merge: 654a68dc51 ac1d58477a Author: Ihor Radchenko Commit: Ihor Radchenko Merge branch 'bugfix' --- lisp/org-element.el | 5 + 1 file changed, 5 insertions(+) diff --git a/lisp/org-element.el b/lisp/org-element.el index 7ce12352c5..9f8e8df599 100644 --- a/lisp/org-element.el +++ b/lisp/org-element.el @@ -7247,6 +7247,11 @@ that range. See `after-change-functions' for more information." (when (buffer-base-buffer) (setq-local org-element--cache nil) (setq-local org-element--headline-cache nil)) +;; Register current buffer in `org-fold-core--indirect-buffers' to +;; be used within `org-fold-core-cycle-over-indirect-buffers'. +;; FIXME: We should eventually factor out indirect buffer tracking +;; from org-fold-core. +(org-fold-core-decouple-indirect-buffer-folds) (add-hook 'before-change-functions #'org-element--cache-before-change nil t) ;; Run `org-element--cache-after-change' early to handle cases
[elpa] externals-release/org ac1d58477a 1/2: org-element-cache: Fix indirect buffer tracking
branch: externals-release/org commit ac1d58477ae6ce48fb6288137297f0d7b306e1dd Author: Ihor Radchenko Commit: Ihor Radchenko org-element-cache: Fix indirect buffer tracking * lisp/org-element.el (org-element--cache-setup-change-functions): Make sure that indirect buffers are registered to be traversed in `org-fold-core-cycle-over-indirect-buffers' in `org-element--cache-active-p'. `org-fold-core-decouple-indirect-buffer-folds' may not be called in some scenarios when Org mode is active. The reproducer that revealed the problem is in https://orgmode.org/list/cad6d+luj7st5_muvwqze80efhsoimmzd+qdtaojen0l7v+z...@mail.gmail.com --- lisp/org-element.el | 5 + 1 file changed, 5 insertions(+) diff --git a/lisp/org-element.el b/lisp/org-element.el index 7ce12352c5..9f8e8df599 100644 --- a/lisp/org-element.el +++ b/lisp/org-element.el @@ -7247,6 +7247,11 @@ that range. See `after-change-functions' for more information." (when (buffer-base-buffer) (setq-local org-element--cache nil) (setq-local org-element--headline-cache nil)) +;; Register current buffer in `org-fold-core--indirect-buffers' to +;; be used within `org-fold-core-cycle-over-indirect-buffers'. +;; FIXME: We should eventually factor out indirect buffer tracking +;; from org-fold-core. +(org-fold-core-decouple-indirect-buffer-folds) (add-hook 'before-change-functions #'org-element--cache-before-change nil t) ;; Run `org-element--cache-after-change' early to handle cases
[elpa] externals/org updated (a62f75c841 -> 9d70929fd7)
elpasync pushed a change to branch externals/org. from a62f75c841 org-capture: Allow table-line entry to start without | new 654a68dc51 org-agenda-format-item: Refactor, adding readable variable names new ac1d58477a org-element-cache: Fix indirect buffer tracking new 466c180a47 Merge branch 'bugfix' new b8497aa7fe org-lint: Do not warn about trailing *** lines inside blocks new 9d70929fd7 Merge branch 'bugfix' Summary of changes: lisp/org-agenda.el | 106 +--- lisp/org-element.el | 5 +++ lisp/org-lint.el| 3 +- 3 files changed, 67 insertions(+), 47 deletions(-)
[elpa] externals/emms 592d76cb0e: Add emms-idapi, a framework for searching online music databases.
branch: externals/emms commit 592d76cb0e0a95ffe27f88b7e455626630e1e8b3 Author: Yoni Rabkin Commit: Yoni Rabkin Add emms-idapi, a framework for searching online music databases. At this point with a limited browser for search results and support for the MusicBrainz service. --- emms-idapi-browser.el | 214 +++ emms-idapi-musicbrainz.el | 229 ++ emms-idapi.el | 55 +++ emms-setup.el | 4 +- 4 files changed, 501 insertions(+), 1 deletion(-) diff --git a/emms-idapi-browser.el b/emms-idapi-browser.el new file mode 100644 index 00..84b6386893 --- /dev/null +++ b/emms-idapi-browser.el @@ -0,0 +1,214 @@ +;;; emms-idapi-browser.el --- EMMS Music ID API support -*- lexical-binding: t; -*- +;; + +;; Copyright (C) 2024 Free Software Foundation, Inc. + +;; Author: Yoni Rabkin + +;; This file is part of EMMS. + +;; EMMS 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. + +;; EMMS 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. + +;; You should have received a copy of the GNU General Public License +;; along with EMMS; see the file COPYING. If not, write to the Free +;; Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, +;; MA 02110-1301, USA. + + +;;; Commentary: +;; + +(defvar emms-idapi-browser-name + "Emms Search Browser" + "Name of the search browser buffer") + +(defvar emms-idapi-browser-buffer + nil + "Search browser buffer") + +(defvar emms-idapi-browser-mode-hook nil + "Emms search browser mode hook.") + +(defvar emms-idapi-browser-field-alist + '(("artist" . info-artist) +("album" . info-album) +("track" . info-title)) + "Association list of readable fields and track properties.") + +;;; Code: +(require 'emms-idapi) + + +;;; -- +;;; Search Mode +;;; -- +(defun emms-idapi-browser-get-buffer () + "Get/create and return `emms-idapi-browser-mode' buffer." + (when (or (not emms-idapi-browser-buffer) + (not (buffer-live-p emms-idapi-browser-buffer))) +(with-current-buffer (get-buffer-create emms-idapi-browser-name) + (when (not (equal major-mode 'emms-idapi-browser-mode)) + (emms-idapi-browser-mode + emms-idapi-browser-buffer) + +(defvar emms-idapi-browser-mode-map + (let ((map (make-sparse-keymap))) +(define-key map (kbd "q") #'bury-buffer) +map) + "Keymap for `emms-idapi-browser-mode'.") + +(defun emms-idapi-browser-mode () + "A major mode for the Emms search browser. +\\{emms-idapi-browser-mode-map}" + (interactive) + + (use-local-map emms-idapi-browser-mode-map) + + (setq major-mode 'emms-idapi-browser-mode +mode-name "Emms-Search-Browser" + buffer-read-only t + emms-idapi-browser-buffer (current-buffer)) + + (run-hooks 'emms-idapi-browser-mode-hook)) + + +;;; -- +;;; Call +;;; -- +(defun emms-idapi-browser-track-at () + "Return a copy of the track at point." + (let* ((originial-track (emms-playlist-track-at (point))) +(track (copy-sequence originial-track))) +(when (not (emms-track-p track)) + (error "could not read Emms track at point")) +track)) + +(defun emms-idapi-browser-search-artist (track) + "Search for the artist of TRACK." + (let ((artist (or (alist-get 'info-artist track) + (alist-get 'info-albumartist track +(list + (cons 'info-artist (read-string "search for artist: " artist) + +(defun emms-idapi-browser-search-album (track) + "Search for the album of TRACK." + (let ((album (alist-get 'info-album track))) +(list + (cons 'info-album (read-string "search for album: " album) + +(defun emms-idapi-browser-search-album-artist (track) + "Search for both artist and album of TRACK." + (let ((artist (or (alist-get 'info-artist track) + (alist-get 'info-albumartist track))) + (album (alist-get 'info-album track)) + search-album) +(setq search-album (read-string "search for album: " album)) +(list + (cons 'info-album search-album) + (cons 'info-artist (read-string +(format "search for album \"%s\" by artist: " search-album) +artist) + +(defun emms-idapi-browser-search-artist-at () + "Search for the artist of the track at point." + (interactive) + (emms-idapi-browser-show + (emms-
[elpa] externals-release/org updated (b8497aa7fe -> 51aea49462)
elpasync pushed a change to branch externals-release/org. from b8497aa7fe org-lint: Do not warn about trailing *** lines inside blocks new 589e1f38c1 Revert "org-log-beginning: Fix error creating LOGBOOK drawer at end of buffer" new 223cc31ec7 org-log-beginning: Fix regression in c0b66bf new 04d56f757f mk/targets.mk (GITVERSION): Fix version string for ELPA build new 51aea49462 org-lint: Improve heuristics for unknown src block language Summary of changes: lisp/org-lint.el | 5 - lisp/org.el | 55 --- mk/targets.mk| 2 +- 3 files changed, 49 insertions(+), 13 deletions(-)
[elpa] externals-release/org 589e1f38c1 1/4: Revert "org-log-beginning: Fix error creating LOGBOOK drawer at end of buffer"
branch: externals-release/org commit 589e1f38c165cf8e47f58b8b1702287f98ec7852 Author: Ihor Radchenko Commit: Ihor Radchenko Revert "org-log-beginning: Fix error creating LOGBOOK drawer at end of buffer" This reverts commit c0b66bf9c15ab1a0fc129dc49dc5f79583c223ad. This itself caused a regression when inserting a new logbook drawer - blank line is slurped. --- lisp/org.el | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lisp/org.el b/lisp/org.el index 0bde18397a..c25134e840 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -10704,10 +10704,10 @@ narrowing." (unless (bolp) (insert-and-inherit "\n")) (let ((beg (point))) (insert-and-inherit ":" drawer ":\n:END:") - (unless (eolp) (insert-and-inherit "\n") (backward-char)) + (if (eolp) (forward-char) (insert "\n")) (org-indent-region beg (point)) -(org-fold-region (line-end-position 0) (point) t 'drawer - (end-of-line 0 +(org-fold-region (line-end-position -1) (1- (point)) t 'drawer + (end-of-line -1 (t (org-end-of-meta-data org-log-state-notes-insert-after-drawers) (let ((endpos (point)))
[elpa] externals/org d08a5abb90 2/3: Merge branch 'bugfix'
branch: externals/org commit d08a5abb90e03552cafc7f09dc45e87b5135e2da Merge: e804de88e4 04d56f757f Author: Ihor Radchenko Commit: Ihor Radchenko Merge branch 'bugfix' --- mk/targets.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mk/targets.mk b/mk/targets.mk index de849c4fba..d8c2a5294a 100644 --- a/mk/targets.mk +++ b/mk/targets.mk @@ -13,7 +13,7 @@ ifneq ($(wildcard .git),) # Use the org.el header. ORGVERSION := $(patsubst %-dev,%,$(shell $(BATCH) --eval "(require 'lisp-mnt)" \ --visit lisp/org.el --eval '(princ (lm-header "version"))')) - GITVERSION := $(shell git describe --match release\* --abbrev=6 HEAD 2>/dev/null || echo "release_N/A-N/A-$(shell git describe --match release\* --abbrev=6 --always HEAD)") + GITVERSION := $(shell git describe --match release\* --abbrev=6 HEAD 2>/dev/null || echo "${ORGVERSION}-$(shell git describe --match release\* --abbrev=6 --always HEAD)") GITSTATUS := $(shell git status -uno --porcelain) else -include mk/version.mk
[elpa] externals/org updated (9d70929fd7 -> bb633b6740)
elpasync pushed a change to branch externals/org. from 9d70929fd7 Merge branch 'bugfix' new 589e1f38c1 Revert "org-log-beginning: Fix error creating LOGBOOK drawer at end of buffer" new 223cc31ec7 org-log-beginning: Fix regression in c0b66bf new e804de88e4 Merge branch 'bugfix' new 04d56f757f mk/targets.mk (GITVERSION): Fix version string for ELPA build new d08a5abb90 Merge branch 'bugfix' new 51aea49462 org-lint: Improve heuristics for unknown src block language new bb633b6740 Merge branch 'bugfix' Summary of changes: lisp/org-lint.el | 5 - lisp/org.el | 55 --- mk/targets.mk| 2 +- 3 files changed, 49 insertions(+), 13 deletions(-)
[elpa] externals/org e804de88e4 1/3: Merge branch 'bugfix'
branch: externals/org commit e804de88e4547beaf2483715564a7c517999703a Merge: 9d70929fd7 223cc31ec7 Author: Ihor Radchenko Commit: Ihor Radchenko Merge branch 'bugfix' --- lisp/org.el | 55 --- 1 file changed, 44 insertions(+), 11 deletions(-) diff --git a/lisp/org.el b/lisp/org.el index d08c2cbcc6..cf4c9a99e2 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -10674,6 +10674,9 @@ narrowing." (let ((drawer (org-log-into-drawer))) (cond (drawer + ;; This either moves past planning and property drawer, to + ;; first line below heading, or to `eob' (if heading is the + ;; last heading in buffer without contents). (org-end-of-meta-data) (let ((regexp (concat "^[ \t]*:" (regexp-quote drawer) ":[ \t]*$")) (end (if (org-at-heading-p) (point) @@ -10690,23 +10693,53 @@ narrowing." (throw 'exit nil ;; No drawer found. Create one, if permitted. (when create + ;; `org-end-of-meta-data' ended up at next heading + ;; * Heading to insert darawer + ;; * Another heading + ;; ;; Unless current heading is the last heading in buffer ;; and does not have a newline, `org-end-of-meta-data' - ;; should move us somewhere below the heading. + ;; can move us to the next heading. ;; Avoid situation when we insert drawer right before - ;; first "*". Otherwise, if the previous heading is - ;; folded, we are inserting after visible newline at - ;; the end of the fold, thus breaking the fold - ;; continuity. + ;; first "*". Otherwise, if the heading is folded, we + ;; are inserting after visible newline at the end of the + ;; fold, thus breaking the fold continuity. (unless (eobp) (when (org-at-heading-p) (backward-char))) (org-fold-core-ignore-modifications - (unless (bolp) (insert-and-inherit "\n")) - (let ((beg (point))) -(insert-and-inherit ":" drawer ":\n:END:") - (unless (eolp) (insert-and-inherit "\n") (backward-char)) -(org-indent-region beg (point)) -(org-fold-region (line-end-position 0) (point) t 'drawer + (let (;; Heading + ;; + ;; Text + (at-blank-line? (looking-at-p "^[ \t]*$")) + ;; Heading + ;; Text + (at-beginning-of-non-blank-line? + (and (bolp) (not (eolp) +(unless (bolp) + ;; Heading (see `backward-char' branch above) + (insert-and-inherit "\n")) +(let ((beg (point)) cbeg) + (insert-and-inherit ":" drawer ":") + (setq cbeg (point)) + (insert-and-inherit "\n:END:") + (cond +(at-blank-line? + ;; Heading + ;; :LOGBOOK: + ;; :END: + ;; + ;; Text + (insert "\n") + (backward-char)) +(at-beginning-of-non-blank-line? + ;; Heading + ;; :LOGBOOK: + ;; :END: + ;; Text + (insert "\n") + (backward-char))) + (org-indent-region beg (point)) + (org-fold-region cbeg (point) t 'drawer) (end-of-line 0 (t (org-end-of-meta-data org-log-state-notes-insert-after-drawers)
[elpa] externals-release/org 223cc31ec7 2/4: org-log-beginning: Fix regression in c0b66bf
branch: externals-release/org commit 223cc31ec7d0faf8ddb98db71fe834e5e41ced92 Author: Ihor Radchenko Commit: Ihor Radchenko org-log-beginning: Fix regression in c0b66bf * lisp/org.el (org-log-beginning): Re-implement the bugfix attempted in c0b66bf differently to avoid slurping blank lines when creating a new logbook drawer. Add more commentary to the function. Reported-by: Christopher M. Miles The reproducer: * headline1 (point here) * headline 2 (setq org-log-into-drawer t) Press [C-c C-z] become bellowing content: * headline1 :LOGBOOK: - Note taken on [2024-06-05 Wed 12:49] \\ kkk :END:(point here) * headline 2 --- lisp/org.el | 57 + 1 file changed, 45 insertions(+), 12 deletions(-) diff --git a/lisp/org.el b/lisp/org.el index c25134e840..ddda44b11e 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -10674,6 +10674,9 @@ narrowing." (let ((drawer (org-log-into-drawer))) (cond (drawer + ;; This either moves past planning and property drawer, to + ;; first line below heading, or to `eob' (if heading is the + ;; last heading in buffer without contents). (org-end-of-meta-data) (let ((regexp (concat "^[ \t]*:" (regexp-quote drawer) ":[ \t]*$")) (end (if (org-at-heading-p) (point) @@ -10690,24 +10693,54 @@ narrowing." (throw 'exit nil ;; No drawer found. Create one, if permitted. (when create + ;; `org-end-of-meta-data' ended up at next heading + ;; * Heading to insert darawer + ;; * Another heading + ;; ;; Unless current heading is the last heading in buffer ;; and does not have a newline, `org-end-of-meta-data' - ;; should move us somewhere below the heading. + ;; can move us to the next heading. ;; Avoid situation when we insert drawer right before - ;; first "*". Otherwise, if the previous heading is - ;; folded, we are inserting after visible newline at - ;; the end of the fold, thus breaking the fold - ;; continuity. + ;; first "*". Otherwise, if the heading is folded, we + ;; are inserting after visible newline at the end of the + ;; fold, thus breaking the fold continuity. (unless (eobp) (when (org-at-heading-p) (backward-char))) (org-fold-core-ignore-modifications - (unless (bolp) (insert-and-inherit "\n")) - (let ((beg (point))) -(insert-and-inherit ":" drawer ":\n:END:") - (if (eolp) (forward-char) (insert "\n")) -(org-indent-region beg (point)) -(org-fold-region (line-end-position -1) (1- (point)) t 'drawer - (end-of-line -1 + (let (;; Heading + ;; + ;; Text + (at-blank-line? (looking-at-p "^[ \t]*$")) + ;; Heading + ;; Text + (at-beginning-of-non-blank-line? + (and (bolp) (not (eolp) +(unless (bolp) + ;; Heading (see `backward-char' branch above) + (insert-and-inherit "\n")) +(let ((beg (point)) cbeg) + (insert-and-inherit ":" drawer ":") + (setq cbeg (point)) + (insert-and-inherit "\n:END:") + (cond +(at-blank-line? + ;; Heading + ;; :LOGBOOK: + ;; :END: + ;; + ;; Text + (insert "\n") + (backward-char)) +(at-beginning-of-non-blank-line? + ;; Heading + ;; :LOGBOOK: + ;; :END: + ;; Text + (insert "\n") + (backward-char))) + (org-indent-region beg (point)) + (org-fold-region cbeg (point) t 'drawer) + (end-of-line 0 (t (org-end-of-meta-data org-log-state-notes-insert-after-drawers) (let ((endpos (point)))
[elpa] externals/org bb633b6740 3/3: Merge branch 'bugfix'
branch: externals/org commit bb633b67400de67b37317b6ae0741034c196c8d9 Merge: d08a5abb90 51aea49462 Author: Ihor Radchenko Commit: Ihor Radchenko Merge branch 'bugfix' --- lisp/org-lint.el | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lisp/org-lint.el b/lisp/org-lint.el index 39f0d67c14..aed774ee2d 100644 --- a/lisp/org-lint.el +++ b/lisp/org-lint.el @@ -542,7 +542,10 @@ Use :header-args: instead" (org-element-map ast 'src-block (lambda (b) (when-let ((lang (org-element-property :language b))) -(unless (functionp (intern (format "org-babel-execute:%s" lang))) +(unless (or (functionp (intern (format "org-babel-execute:%s" lang))) +;; No babel backend, but there is corresponding +;; major mode. +(fboundp (org-src-get-lang-mode lang))) (list (org-element-property :post-affiliated b) (format "Unknown source block language: '%s'" lang)))
[elpa] externals-release/org 04d56f757f 3/4: mk/targets.mk (GITVERSION): Fix version string for ELPA build
branch: externals-release/org commit 04d56f757f110951944708a9cd9ea58ce28175d6 Author: Ihor Radchenko Commit: Ihor Radchenko mk/targets.mk (GITVERSION): Fix version string for ELPA build * mk/targets.mk (GITVERSION): Use previous convention for the Org version string on ELPA, where Org release tags are not available. Instead of the new release_N/A-N/A prefix, use the Org version from org.el file headers, as we did in Org 9.6. Reported-by: Sharon Kimble Link: https://orgmode.org/list/87ikynyggt@skimble09.plus.com --- mk/targets.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mk/targets.mk b/mk/targets.mk index de849c4fba..d8c2a5294a 100644 --- a/mk/targets.mk +++ b/mk/targets.mk @@ -13,7 +13,7 @@ ifneq ($(wildcard .git),) # Use the org.el header. ORGVERSION := $(patsubst %-dev,%,$(shell $(BATCH) --eval "(require 'lisp-mnt)" \ --visit lisp/org.el --eval '(princ (lm-header "version"))')) - GITVERSION := $(shell git describe --match release\* --abbrev=6 HEAD 2>/dev/null || echo "release_N/A-N/A-$(shell git describe --match release\* --abbrev=6 --always HEAD)") + GITVERSION := $(shell git describe --match release\* --abbrev=6 HEAD 2>/dev/null || echo "${ORGVERSION}-$(shell git describe --match release\* --abbrev=6 --always HEAD)") GITSTATUS := $(shell git status -uno --porcelain) else -include mk/version.mk
[elpa] externals-release/org 51aea49462 4/4: org-lint: Improve heuristics for unknown src block language
branch: externals-release/org commit 51aea4946252d358d827ac9d197eb5a6155dd9fb Author: Ihor Radchenko Commit: Ihor Radchenko org-lint: Improve heuristics for unknown src block language * lisp/org-lint.el (org-lint-suspicious-language-in-src-block): Do not complain about src block languages without execute function if there is -mode major mode available. Reported-by: Suhail Singh Link: https://orgmode.org/list/874ja7ik7h@gmail.com --- lisp/org-lint.el | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lisp/org-lint.el b/lisp/org-lint.el index 39f0d67c14..aed774ee2d 100644 --- a/lisp/org-lint.el +++ b/lisp/org-lint.el @@ -542,7 +542,10 @@ Use :header-args: instead" (org-element-map ast 'src-block (lambda (b) (when-let ((lang (org-element-property :language b))) -(unless (functionp (intern (format "org-babel-execute:%s" lang))) +(unless (or (functionp (intern (format "org-babel-execute:%s" lang))) +;; No babel backend, but there is corresponding +;; major mode. +(fboundp (org-src-get-lang-mode lang))) (list (org-element-property :post-affiliated b) (format "Unknown source block language: '%s'" lang)))
[nongnu] elpa/git-commit updated (f9268a9598 -> 8b2d4b03ec)
elpasync pushed a change to branch elpa/git-commit. from f9268a9598 manual: Fix description of prefix arg for magit-fetch-modules new 06bba5baa5 manual: Fix pasto new 8b2d4b03ec manual: Capitalize Git when referring to the project Summary of changes: docs/magit.org | 6 +++--- docs/magit.texi | 8 +++- 2 files changed, 6 insertions(+), 8 deletions(-)
[nongnu] elpa/git-commit 8b2d4b03ec 2/2: manual: Capitalize Git when referring to the project
branch: elpa/git-commit commit 8b2d4b03ecf9635c165d1c0f90cd6f2eb415cafa Author: Jonas Bernoulli Commit: Jonas Bernoulli manual: Capitalize Git when referring to the project Only when referring to the executable/command, do we use lower-case git. --- docs/magit.org | 2 +- docs/magit.texi | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/magit.org b/docs/magit.org index 403ce00dad..b4cd96224e 100644 --- a/docs/magit.org +++ b/docs/magit.org @@ -8055,7 +8055,7 @@ numbers of tags. It would therefore be a good idea to disable When showing logs, Magit limits the number of commits initially shown in the hope that this avoids unnecessary work. When ~--graph~ is used, then this unfortunately does not have the desired effect for -large histories. Junio, Git's maintainer, said on the git mailing +large histories. Junio, Git's maintainer, said on the Git mailing list (https://www.spinics.net/lists/git/msg232230.html): "~--graph~ wants to compute the whole history and the max-count only affects the output phase after ~--graph~ does its computation". diff --git a/docs/magit.texi b/docs/magit.texi index d689805f95..e10cbb0914 100644 --- a/docs/magit.texi +++ b/docs/magit.texi @@ -10042,7 +10042,7 @@ numbers of tags. It would therefore be a good idea to disable When showing logs, Magit limits the number of commits initially shown in the hope that this avoids unnecessary work. When @code{--graph} is used, then this unfortunately does not have the desired effect for -large histories. Junio, Git's maintainer, said on the git mailing +large histories. Junio, Git's maintainer, said on the Git mailing list (@uref{https://www.spinics.net/lists/git/msg232230.html}): "@code{--graph} wants to compute the whole history and the max-count only affects the output phase after @code{--graph} does its computation".
[nongnu] elpa/git-commit 06bba5baa5 1/2: manual: Fix pasto
branch: elpa/git-commit commit 06bba5baa5f7ece579fd4d84cfadd35abec64119 Author: Jonas Bernoulli Commit: Jonas Bernoulli manual: Fix pasto --- docs/magit.org | 4 ++-- docs/magit.texi | 6 ++ 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/docs/magit.org b/docs/magit.org index 40a2a74837..403ce00dad 100644 --- a/docs/magit.org +++ b/docs/magit.org @@ -9113,8 +9113,8 @@ undo that setting in Magit by customizing ~magit-git-global-arguments~. *** Point is wrong in the ~COMMIT_EDITMSG~ buffer -Neither Magit nor `git-commit` fiddle with point in the buffer used to -write commit messages, so something else must be doing it. +Neither Magit nor ~git-commit.el~ fiddle with point in the buffer used +to write commit messages, so something else must be doing it. You have probably globally enabled a mode which restores point in file-visiting buffers. It might be a bit surprising, but when you diff --git a/docs/magit.texi b/docs/magit.texi index 0c3f8ddbc8..d689805f95 100644 --- a/docs/magit.texi +++ b/docs/magit.texi @@ -3300,7 +3300,6 @@ the http://git-scm.com/docs/git-log";>git-log(1) manpage. @iftex the git-log(1) manpage. @end iftex - The switch @code{++order=VALUE} is converted to one of @code{--author-date-order}, @code{--date-order}, or @code{--topo-order} before being passed to @code{git log}. @@ -6717,7 +6716,6 @@ git config --global remote.autoSetupMerge always @end example For more information about these variables you should also see - @ifinfo @ref{git-config,,,gitman,}. @end ifinfo @@ -11197,8 +11195,8 @@ undo that setting in Magit by customizing @code{magit-git-global-arguments}. @node Point is wrong in the @code{COMMIT_EDITMSG} buffer @appendixsubsec Point is wrong in the @code{COMMIT_EDITMSG} buffer -Neither Magit nor `git-commit` fiddle with point in the buffer used to -write commit messages, so something else must be doing it. +Neither Magit nor @code{git-commit.el} fiddle with point in the buffer used +to write commit messages, so something else must be doing it. You have probably globally enabled a mode which restores point in file-visiting buffers. It might be a bit surprising, but when you
[nongnu] elpa/magit updated (f9268a9598 -> 8b2d4b03ec)
elpasync pushed a change to branch elpa/magit. from f9268a9598 manual: Fix description of prefix arg for magit-fetch-modules adds 06bba5baa5 manual: Fix pasto adds 8b2d4b03ec manual: Capitalize Git when referring to the project No new revisions were added by this update. Summary of changes: docs/magit.org | 6 +++--- docs/magit.texi | 8 +++- 2 files changed, 6 insertions(+), 8 deletions(-)
[nongnu] elpa/magit-section updated (f9268a9598 -> 8b2d4b03ec)
elpasync pushed a change to branch elpa/magit-section. from f9268a9598 manual: Fix description of prefix arg for magit-fetch-modules adds 06bba5baa5 manual: Fix pasto adds 8b2d4b03ec manual: Capitalize Git when referring to the project No new revisions were added by this update. Summary of changes: docs/magit.org | 6 +++--- docs/magit.texi | 8 +++- 2 files changed, 6 insertions(+), 8 deletions(-)
[elpa] externals/ef-themes 2686d155e2: Make sure ef-themes-select-{dark, light} have functional completions
branch: externals/ef-themes commit 2686d155e2a889079c164a593b006aff1cdac095 Author: Protesilaos Stavrou Commit: Protesilaos Stavrou Make sure ef-themes-select-{dark,light} have functional completions The annotation function of the completions would not work because the themes would not be loaded yet. --- ef-themes.el | 26 ++ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/ef-themes.el b/ef-themes.el index f951736901..17205f3171 100644 --- a/ef-themes.el +++ b/ef-themes.el @@ -441,12 +441,19 @@ symbol, which is safe when used as a face attribute's value." (string-prefix-p "ef-" (symbol-name theme))) custom-enabled-themes)) -(defun ef-themes--enable-themes () - "Enable all Ef themes." - (mapc (lambda (theme) - (unless (memq theme custom-known-themes) -(load-theme theme :no-confirm :no-enable))) -ef-themes-collection)) +(defun ef-themes--enable-themes (&optional subset) + "Enable all Ef themes. +With optional SUBSET as a symbol of `light' or `dark', enable only those +themes." + (let ((themes (cond + ((eq subset 'dark) ef-themes-dark-themes) + ((eq subset 'light) ef-themes-light-themes) + (t ef-themes-collection +(mapc + (lambda (theme) + (unless (memq theme custom-known-themes) + (load-theme theme :no-confirm :no-enable))) + themes))) (defun ef-themes--list-known-themes () "Return list of `custom-known-themes' with ef- prefix." @@ -520,12 +527,7 @@ overrides." (defun ef-themes--load-subset (subset) "Return the `light' or `dark' SUBSET of the Ef themes. If SUBSET is neither `light' nor `dark', return all the known Ef themes." - (ef-themes--completion-table - 'theme - (pcase subset - ('dark ef-themes-dark-themes) - ('light ef-themes-light-themes) - (_ (ef-themes--list-known-themes) + (ef-themes--completion-table 'theme (ef-themes--enable-themes subset))) (defun ef-themes--maybe-prompt-subset (variant) "Helper function for `ef-themes--select-prompt' VARIANT argument."
[nongnu] elpa/slime 81b6508cdf: make-auto-flush-thread: sleep longer on allegro.
branch: elpa/slime commit 81b6508cdf344b72fe4af1eadbc0194d64163643 Author: Stas Boukarev Commit: Stas Boukarev make-auto-flush-thread: sleep longer on allegro. It doesn't support short sleep. Fixes #831 --- swank/gray.lisp | 10 ++ 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/swank/gray.lisp b/swank/gray.lisp index 76a1005726..5e7f8a3bb8 100644 --- a/swank/gray.lisp +++ b/swank/gray.lisp @@ -40,7 +40,7 @@ (in-package swank/gray) ;;; Avoid using CLOS in the auto-flush thread due to possible -;;; deadlocks between CLOS and streams. +;;; deadlocks between CLOS and streams. (defstruct stream-data (output-fn) (buffer (make-string 64000)) @@ -52,7 +52,7 @@ (defclass slime-output-stream (fundamental-character-output-stream) ((data :initform (make-stream-data) - :initarg :data + :initarg :data :accessor data))) (defmacro with-stream-data (data &body body) @@ -218,8 +218,10 @@ (defimplementation make-auto-flush-thread (stream) (if (typep stream 'slime-output-stream) (setf (stream-data-flush-thread (data stream)) -(spawn (lambda () (auto-flush-loop stream 0.005 t (lambda (stream) - (%stream-finish-output (data stream) +(spawn (lambda () (auto-flush-loop stream #-allegro 0.005 + #+allegro 0.08 + t (lambda (stream) + (%stream-finish-output (data stream) :name "auto-flush-thread")) (spawn (lambda () (auto-flush-loop stream *auto-flush-interval*)) :name "auto-flush-thread")))
[elpa] elpa-admin 1c3ca00ca1: (elpaa--fetch): Include commit dates in log output
branch: elpa-admin commit 1c3ca00ca17337e37729fdc3d0bbf75e2a8f9149 Author: Stefan Monnier Commit: Stefan Monnier (elpaa--fetch): Include commit dates in log output * elpa-admin.el (elpaa--git-short-log): New function. Extracted from `elpaa--fetch`. Tweak the output format to include commit dates. (elpaa--fetch): Use it. --- elpa-admin.el | 20 ++-- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/elpa-admin.el b/elpa-admin.el index ef17fca8ea..3eb4c6daa6 100644 --- a/elpa-admin.el +++ b/elpa-admin.el @@ -2892,6 +2892,12 @@ relative to elpa root." (delete-file logfile) (write-region msg nil logfile nil 'silent) +(defun elpaa--git-short-log (from to) + (elpaa--call t "git" "log" + "--date=format:%Y-%M" + "--format=%h %cd %<(16,trunc)%ae %s" + (format "%s..%s" from to))) + (defun elpaa--fetch (pkg-spec &optional k show-diverged) (let* ((pkg (car pkg-spec)) (url (elpaa--spec-get pkg-spec :url)) @@ -2932,14 +2938,10 @@ relative to elpa root." (let* ((msg (format "Upstream of %s has DIVERGED!" pkg))) (when (or show-diverged (eq k #'elpaa--push)) (let ((msgs (list "\n\n" msg))) -(elpaa--call t "git" "log" - "--format=%h %<(16,trunc)%ae %s" - (format "%s..%s" urtb ortb)) +(elpaa--git-short-log urtb ortb) (push " Local changes:\n" msgs) (push (delete-and-extract-region (point-min) (point-max)) msgs) -(elpaa--call t "git" "log" - "--format=%h %<(16,trunc)%ae %s" - (format "%s..%s" ortb urtb)) +(elpaa--git-short-log ortb urtb) (push "\n Upstream changes:\n" msgs) (push (delete-and-extract-region (point-min) (point-max)) msgs) (let ((total-msg @@ -2948,9 +2950,7 @@ relative to elpa root." (when (eq k #'elpaa--push) (elpaa--record-sync-failure pkg-spec total-msg) (message "%s" msg))) - ((not (zerop (elpaa--call t "git" "log" - "--format=%h %<(16,trunc)%ae %s" - (format "%s..%s" ortb urtb + ((not (zerop (elpaa--git-short-log ortb urtb))) (message "Log error for %s:\n%s" pkg (buffer-string))) ((eq (point-min) (point-max)) (message "No pending upstream changes for %s" pkg) @@ -3113,7 +3113,7 @@ relative to elpa root." (insert (format "%s/%s-pkg.el: %s/%s\n" dir pkgname dir (elpaa--main-file pkg-spec))) -(let ((make-targets (elpaa--spec-get pkg-spec :make))) +(let ((make-targets (ensure-list (elpaa--spec-get pkg-spec :make (when (consp make-targets) (dolist (target make-targets) (insert (format "%s: %s/%s\n" dir dir target))
[elpa] externals/beardbolt 09f7dd86bf: Close #3: Use longhand notation for autoloads
branch: externals/beardbolt commit 09f7dd86bfaf81ac4ccd51b5cd1b889bb3c5f1aa Author: Abdelhak Bougouffa Commit: GitHub Close #3: Use longhand notation for autoloads * beardbolt.el (beardbolt-mode, beardbolt-starter): Use longhand. --- beardbolt.el | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/beardbolt.el b/beardbolt.el index b5345420b9..f4a43eb5ab 100644 --- a/beardbolt.el +++ b/beardbolt.el @@ -651,7 +651,7 @@ determine LANG from `major-mode'." ("rust" . "beardbolt.rs"))) ;;;###autoload -(defun bb-starter (lang-name) +(defun beardbolt-starter (lang-name) "Setup new sandbox file for experiments. With prefix argument, choose from starter files in `bb-starter-files'." (interactive @@ -763,7 +763,7 @@ With prefix argument, choose from starter files in `bb-starter-files'." (list cmd bb-ccj-extra-flags))) ;;;###autoload -(define-minor-mode bb-mode +(define-minor-mode beardbolt-mode "Toggle `beardbolt-mode'. May be enabled by user in source buffer." :global nil :lighter " ⚡" :keymap bb-mode-map (cond
[nongnu] elpa/xah-fly-keys updated (a61c1807bd -> 5abc6f4d73)
elpasync pushed a change to branch elpa/xah-fly-keys. from a61c1807bd bumped version number. Added layout qwerty-se (Swedish). thanks to maxwestrom new df09444828 xah-smart-delete related fixes and improved customization new defcc35a4a Minor fix: include bracket prefix in kill string if DeletePrefix new 5abc6f4d73 Merge pull request #171 from maxwestrom/master Summary of changes: xah-fly-keys.el | 92 ++--- 1 file changed, 62 insertions(+), 30 deletions(-)
[nongnu] elpa/xah-fly-keys df09444828 1/3: xah-smart-delete related fixes and improved customization
branch: elpa/xah-fly-keys commit df094448282ce3c82c1c3b75dfe4e6e7e02bcab8 Author: Max Weström Commit: Max Weström xah-smart-delete related fixes and improved customization --- xah-fly-keys.el | 82 + 1 file changed, 59 insertions(+), 23 deletions(-) diff --git a/xah-fly-keys.el b/xah-fly-keys.el index 1c01557cd5..a488a1c87a 100644 --- a/xah-fly-keys.el +++ b/xah-fly-keys.el @@ -630,33 +630,42 @@ Version: 2024-03-14" (delete-char 1)) (kill-region xp1 xp2) -(defun xah-delete-backward-bracket-text () +(defun xah-delete-backward-bracket-text (&optional DeletePrefix) "Delete the matching bracket/quote text to the left of cursor. e.g. (a b c)▮ +If DeletePrefix is non-nil, also delete any prefix characters before the opening bracket. + This command assumes the left of cursor is a right bracket, and there is a matching one before it. What char is considered bracket or quote is determined by current syntax table. URL `http://xahlee.info/emacs/emacs/emacs_delete_backward_char_or_bracket_text.html' Created: 2017-09-21 -Version: 2023-07-30" +Version: 2024-06-05" (interactive) (progn (forward-sexp -1) +(if DeletePrefix + (while (looking-at "\\s'") + (delete-char 1)) + (while (looking-at "\\s'") + (forward-char))) (mark-sexp) (kill-region (region-beginning) (region-end -(defun xah-delete-backward-bracket-pair () +(defun xah-delete-backward-bracket-pair (&optional DeletePrefix) "Delete the matching brackets/quotes to the left of cursor. After call, mark is set at the matching bracket position, so you can `exchange-point-and-mark' to select it. +If DeletePrefix is non-nil, also delete any prefix characters before the opening bracket. + This command assumes the left of point is a right bracket, and there is a matching one before it. What char is considered bracket or quote is determined by current syntax table. URL `http://xahlee.info/emacs/emacs/emacs_delete_backward_char_or_bracket_text.html' -Version: 2017-07-02" +Version: 2024-06-05" (interactive) (let ((xp0 (point)) xp1) (forward-sexp -1) @@ -664,11 +673,16 @@ Version: 2017-07-02" (goto-char xp0) (delete-char -1) (goto-char xp1) +(if DeletePrefix + (while (looking-at "\\s'") + (delete-char 1)) + (while (looking-at "\\s'") + (forward-char))) (delete-char 1) (push-mark (point) t) (goto-char (- xp0 2 -(defun xah-delete-bracket-text-backward () +(defun xah-delete-bracket-text-backward (&optional DeletePrefix) "Delete bracket pair and inner text to the left of cursor. e.g. 「(▮some)▮」 The bracket can be paren, square bracket, curly bracket, or any matching pair in syntax table. @@ -677,30 +691,46 @@ The deleted text can be pasted later. What char is considered bracket is determined by current syntax table. +If DeletePrefix is non-nil, also delete any prefix characters before the opening bracket. + +If the bracket left of cursor is unbalanced, simply delete it. + If cursor left is not a bracket, nothing is done. If `universal-argument' is called first, do not delete inner text. URL `http://xahlee.info/emacs/emacs/emacs_delete_backward_char_or_bracket_text.html' Created: 2017-07-02 -Version: 2023-07-30" +Version: 2024-06-05" (interactive) (cond ((prog2 (backward-char) (looking-at "\\s)") (forward-char)) -(if current-prefix-arg -(xah-delete-backward-bracket-pair) - (xah-delete-backward-bracket-text))) +(if (condition-case nil + (scan-sexps (point) -1) + (scan-error nil)) + (if current-prefix-arg +(xah-delete-backward-bracket-pair DeletePrefix) + (xah-delete-backward-bracket-text DeletePrefix)) + (delete-char -1))) ((prog2 (backward-char) (looking-at "\\s(") (forward-char)) (let ((xp0 (point))) (progn (goto-char (1- xp0)) -(forward-sexp) -(if current-prefix-arg -(progn - (delete-char -1) - (goto-char xp0) - (delete-char -1)) - (kill-region (1- xp0) (point)) + (when DeletePrefix + (while (looking-back "\\s'") + (delete-char -1) + (setq xp0 (1- xp0 + (condition-case nil + (progn + (goto-char (scan-sexps (point) 1)) + (if current-prefix-arg + (progn + (delete-char -1) + (goto-char xp0) + (delete-char -1)) + (kill-region (1- xp0) (point + (scan-error + (delete-char 1)) )) (defun xah-delete-blank-lines () @@ -825,8 +855,12 @@ This makes that function behavior `major-mode' dependent. Value is Alist of pairs, each is of the form (‹major-mode-name› . ‹function-name›) If the major mode name match current buffer, the paired func
[nongnu] elpa/xah-fly-keys defcc35a4a 2/3: Minor fix: include bracket prefix in kill string if DeletePrefix
branch: elpa/xah-fly-keys commit defcc35a4a64e8e623878770bb738418c382c985 Author: Max Weström Commit: Max Weström Minor fix: include bracket prefix in kill string if DeletePrefix --- xah-fly-keys.el | 34 +++--- 1 file changed, 15 insertions(+), 19 deletions(-) diff --git a/xah-fly-keys.el b/xah-fly-keys.el index a488a1c87a..bc35c8a534 100644 --- a/xah-fly-keys.el +++ b/xah-fly-keys.el @@ -644,15 +644,12 @@ URL `http://xahlee.info/emacs/emacs/emacs_delete_backward_char_or_bracket_text.h Created: 2017-09-21 Version: 2024-06-05" (interactive) - (progn -(forward-sexp -1) -(if DeletePrefix - (while (looking-at "\\s'") - (delete-char 1)) - (while (looking-at "\\s'") - (forward-char))) -(mark-sexp) -(kill-region (region-beginning) (region-end + (forward-sexp -1) + (unless DeletePrefix +(while (looking-at "\\s'") + (forward-char))) + (mark-sexp) + (kill-region (region-beginning) (region-end))) (defun xah-delete-backward-bracket-pair (&optional DeletePrefix) "Delete the matching brackets/quotes to the left of cursor. @@ -713,24 +710,23 @@ Version: 2024-06-05" (xah-delete-backward-bracket-text DeletePrefix)) (delete-char -1))) ((prog2 (backward-char) (looking-at "\\s(") (forward-char)) -(let ((xp0 (point))) +(let ((xp0 (point)) + (xp1 (1- (point (progn -(goto-char (1- xp0)) +(goto-char xp1) (when DeletePrefix (while (looking-back "\\s'") - (delete-char -1) - (setq xp0 (1- xp0 + (backward-char) + (setq xp1 (1- xp1 (condition-case nil (progn - (goto-char (scan-sexps (point) 1)) + (goto-char (scan-sexps (1- xp0) 1)) (if current-prefix-arg (progn (delete-char -1) - (goto-char xp0) - (delete-char -1)) - (kill-region (1- xp0) (point - (scan-error - (delete-char 1)) + (delete-region xp1 xp0)) + (kill-region xp1 (point + (scan-error (delete-region xp1 xp0)) )) (defun xah-delete-blank-lines ()
[nongnu] elpa/xah-fly-keys 5abc6f4d73 3/3: Merge pull request #171 from maxwestrom/master
branch: elpa/xah-fly-keys commit 5abc6f4d73206e2cb8b48fd014234e2349e4072d Merge: a61c1807bd defcc35a4a Author: Xah Lee Commit: GitHub Merge pull request #171 from maxwestrom/master xah-smart-delete related fixes and improved customization --- xah-fly-keys.el | 92 ++--- 1 file changed, 62 insertions(+), 30 deletions(-) diff --git a/xah-fly-keys.el b/xah-fly-keys.el index 1c01557cd5..bc35c8a534 100644 --- a/xah-fly-keys.el +++ b/xah-fly-keys.el @@ -630,33 +630,39 @@ Version: 2024-03-14" (delete-char 1)) (kill-region xp1 xp2) -(defun xah-delete-backward-bracket-text () +(defun xah-delete-backward-bracket-text (&optional DeletePrefix) "Delete the matching bracket/quote text to the left of cursor. e.g. (a b c)▮ +If DeletePrefix is non-nil, also delete any prefix characters before the opening bracket. + This command assumes the left of cursor is a right bracket, and there is a matching one before it. What char is considered bracket or quote is determined by current syntax table. URL `http://xahlee.info/emacs/emacs/emacs_delete_backward_char_or_bracket_text.html' Created: 2017-09-21 -Version: 2023-07-30" +Version: 2024-06-05" (interactive) - (progn -(forward-sexp -1) -(mark-sexp) -(kill-region (region-beginning) (region-end - -(defun xah-delete-backward-bracket-pair () + (forward-sexp -1) + (unless DeletePrefix +(while (looking-at "\\s'") + (forward-char))) + (mark-sexp) + (kill-region (region-beginning) (region-end))) + +(defun xah-delete-backward-bracket-pair (&optional DeletePrefix) "Delete the matching brackets/quotes to the left of cursor. After call, mark is set at the matching bracket position, so you can `exchange-point-and-mark' to select it. +If DeletePrefix is non-nil, also delete any prefix characters before the opening bracket. + This command assumes the left of point is a right bracket, and there is a matching one before it. What char is considered bracket or quote is determined by current syntax table. URL `http://xahlee.info/emacs/emacs/emacs_delete_backward_char_or_bracket_text.html' -Version: 2017-07-02" +Version: 2024-06-05" (interactive) (let ((xp0 (point)) xp1) (forward-sexp -1) @@ -664,11 +670,16 @@ Version: 2017-07-02" (goto-char xp0) (delete-char -1) (goto-char xp1) +(if DeletePrefix + (while (looking-at "\\s'") + (delete-char 1)) + (while (looking-at "\\s'") + (forward-char))) (delete-char 1) (push-mark (point) t) (goto-char (- xp0 2 -(defun xah-delete-bracket-text-backward () +(defun xah-delete-bracket-text-backward (&optional DeletePrefix) "Delete bracket pair and inner text to the left of cursor. e.g. 「(▮some)▮」 The bracket can be paren, square bracket, curly bracket, or any matching pair in syntax table. @@ -677,30 +688,45 @@ The deleted text can be pasted later. What char is considered bracket is determined by current syntax table. +If DeletePrefix is non-nil, also delete any prefix characters before the opening bracket. + +If the bracket left of cursor is unbalanced, simply delete it. + If cursor left is not a bracket, nothing is done. If `universal-argument' is called first, do not delete inner text. URL `http://xahlee.info/emacs/emacs/emacs_delete_backward_char_or_bracket_text.html' Created: 2017-07-02 -Version: 2023-07-30" +Version: 2024-06-05" (interactive) (cond ((prog2 (backward-char) (looking-at "\\s)") (forward-char)) -(if current-prefix-arg -(xah-delete-backward-bracket-pair) - (xah-delete-backward-bracket-text))) +(if (condition-case nil + (scan-sexps (point) -1) + (scan-error nil)) + (if current-prefix-arg +(xah-delete-backward-bracket-pair DeletePrefix) + (xah-delete-backward-bracket-text DeletePrefix)) + (delete-char -1))) ((prog2 (backward-char) (looking-at "\\s(") (forward-char)) -(let ((xp0 (point))) +(let ((xp0 (point)) + (xp1 (1- (point (progn -(goto-char (1- xp0)) -(forward-sexp) -(if current-prefix-arg -(progn - (delete-char -1) - (goto-char xp0) - (delete-char -1)) - (kill-region (1- xp0) (point)) +(goto-char xp1) + (when DeletePrefix + (while (looking-back "\\s'") + (backward-char) + (setq xp1 (1- xp1 + (condition-case nil + (progn + (goto-char (scan-sexps (1- xp0) 1)) + (if current-prefix-arg + (progn + (delete-char -1) + (delete-region xp1 xp0)) + (kill-region xp1 (point + (scan-error (delete-region xp1 xp0)) )) (defun xah-delete-blank-lines () @@ -825,8 +851,12 @@ This makes that function behavior `major-mode' dependent. Val
[elpa] main 8e73eaf44e: * elpa-packages (cobol-mode): Point to new repository
branch: main commit 8e73eaf44e0ae1ac6f5cded4033cb5e312b38604 Author: Philip Kaludercic Commit: Philip Kaludercic * elpa-packages (cobol-mode): Point to new repository --- elpa-packages | 8 +++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/elpa-packages b/elpa-packages index ac56cdb735..0e1af8159b 100644 --- a/elpa-packages +++ b/elpa-packages @@ -75,6 +75,8 @@ :news "NEWS.org" :make "elpa" :doc ("doc/auctex.texi" "doc/preview-latex.texi")) + (auctex-cont-latexmk :url "https://github.com/ultronozm/auctex-cont-latexmk.el";) + (auctex-label-numbers :url "https://github.com/ultronozm/auctex-label-numbers.el";) (aumix-mode :url nil) (auto-correct :url nil) (auto-header :url "https://git.sr.ht/~pkal/auto-header";) @@ -149,7 +151,7 @@ ;; The `cl-print' code doesn't try to work outside of Emacs any more. ;;(cl-print :core "lisp/emacs-lisp/cl-print.el") (clipboard-collector :url "https://github.com/clemera/clipboard-collector";) - (cobol-mode :url nil) ;; Was "https://gist.github.com/Edward-H/6768e7dc53ea3dd2adca"; + (cobol-mode :url "https://git.sr.ht/~hjelmtech/cobol-mode";) (code-cells :url "https://github.com/astoff/code-cells.el"; :ignored-files ("LICENSE")) (colorful-mode :url "https://github.com/DevelopmentCool2449/colorful-mode";) @@ -610,6 +612,8 @@ (pq :url "https://github.com/anse1/emacs-libpq"; :readme "README.org") (prefixed-core:url nil) + (preview-auto :url "https://github.com/ultronozm/preview-auto.el";) + (preview-tailor :url "https://github.com/ultronozm/preview-tailor.el";) (project :core "lisp/progmodes/project.el") (psgml:url nil) ;; Was https://github.com/lenst/psgml.git ;; FIXME: We actually used a filtered version of pspp.git using: @@ -733,6 +737,8 @@ :news "CHANGELOG.org" :ignored-files ("LICENSE")) (test-simple :url "https://github.com/rocky/emacs-test-simple";) + (tex-item :url "https://github.com/ultronozm/tex-item.el";) + (tex-parens :url "https://github.com/ultronozm/tex-parens.el";) (theme-buffet :url "https://git.sr.ht/~bboal/theme-buffet";) (timerfunctions :url nil) (tiny :url "https://github.com/abo-abo/tiny";)