emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 8d2d8d7 1/2: Merge from origin/emacs-27


From: Glenn Morris
Subject: master 8d2d8d7 1/2: Merge from origin/emacs-27
Date: Fri, 18 Dec 2020 11:55:23 -0500 (EST)

branch: master
commit 8d2d8d7f53055d93ed2d8a435533c9a6a6303725
Merge: fdaaf88 48b9c47
Author: Glenn Morris <rgm@gnu.org>
Commit: Glenn Morris <rgm@gnu.org>

    Merge from origin/emacs-27
    
    48b9c47805 Minor fixes in authors.el and in tarball-making instructions
    d7a4ceaa1e ; Add a new item to TODO
    64fe805b19 Improve documentation of 'query-replace'
    7cacf5da47 Update to Org 9.4.3
    
    # Conflicts:
    #   admin/authors.el
---
 admin/authors.el        | 18 ++++++++++++++----
 admin/make-tarball.txt  | 25 ++++++++++++++++++++-----
 doc/emacs/search.texi   |  1 +
 doc/misc/org.texi       | 14 ++++++--------
 etc/TODO                | 36 ++++++++++++++++++++++++++++++++++++
 lisp/org/org-macs.el    | 10 ++++++++--
 lisp/org/org-version.el |  4 ++--
 lisp/org/org.el         |  6 +-----
 lisp/org/ox-html.el     |  2 +-
 9 files changed, 89 insertions(+), 27 deletions(-)

diff --git a/admin/authors.el b/admin/authors.el
index cf9cf98..ced0e56 100644
--- a/admin/authors.el
+++ b/admin/authors.el
@@ -467,7 +467,12 @@ Changes to files matching one of the regexps in this list 
are not listed.")
     "notes/font-backend"
     ;; ada-mode has been deleted, now in GNU ELPA
     "ada-mode.texi"
+    "doc/misc/ada-mode.texi"
+    "lisp/progmodes/ada-mode.el"
+    "lisp/progmodes/ada-prj.el"
+    "lisp/progmodes/ada-xref.el"
     "GNUS-NEWS"
+    "etc/GNUS-NEWS"
     "doc/misc/gnus-news.el"
     "src/fingerprint-dummy.c"
     "src/fingerprint.h"
@@ -878,6 +883,7 @@ Changes to files in this list are not listed.")
     "lisp/obsolete/spell.el"
     "lisp/obsolete/swedish.el"
     "lisp/obsolete/sym-comp.el"
+    "obsolete/sym-comp.el"
     "library-of-babel.org"
     "flymake-elisp.el"
     "flymake-ui.el"
@@ -999,7 +1005,8 @@ in the repository.")
     ("nxml/test.invalid.xml" . "test-invalid.xml")
     ("nxml/test.valid.xml" . "test-valid.xml")
     ("automated/Makefile.in" . "test/Makefile.in")
-    ("test/rmailmm.el" . "rmailmm.el")
+    ("test/rmailmm.el" . "test/manual/rmailmm.el")
+    ("rmailmm.el" . "test/manual/rmailmm.el")
     ;; The one in lisp is eshell/eshell.el.
     ("eshell.el" . "eshell-tests.el")
     ("automated/eshell.el" . "eshell-tests.el")
@@ -1123,10 +1130,13 @@ in the repository.")
     ("lisp/net/starttls.el" . "lisp/obsolete/starttls.el")
     ("url-ns.el" . "lisp/obsolete/url-ns.el")
     ("gnus-news.texi" . "doc/misc/gnus.texi")
-    ("lisp/multifile.el". "lisp/fileloop.el")
-    ("lisp/emacs-lisp/thread.el". "lisp/thread.el")
+    ("lisp/multifile.el" . "lisp/fileloop.el")
+    ("lisp/emacs-lisp/thread.el" . "lisp/thread.el")
+    ("lisp/emacs-lisp/cl.el" . "lisp/emacs-lisp/cl-lib.el")
+    ("lisp/progmodes/mantemp.el" . "lisp/obsolete/mantemp.el")
     ("src/mini-gmp.c" . "lib/mini-gmp.c")
     ("src/mini-gmp.h" . "lib/mini-gmp.h")
+    ("sysdep.c" . "src/sysdep.c")
     )
   "Alist of files which have been renamed during their lifetime.
 Elements are (OLDNAME . NEWNAME).")
@@ -1600,7 +1610,7 @@ and a buffer *Authors Errors* containing references to 
unknown files."
       ;; the versioned ChangeLog.N rather than the unversioned ChangeLog.
       (zerop (call-process "make" nil nil nil
                            "-C" root "change-history-nocommit"))
-      (error "Problem updating ChangeLog"))
+      (error "Problem updating ChangeLog, try \"C-u M-x authors RET\""))
   (let ((logs (process-lines find-program root "-name" "ChangeLog*"))
        (table (make-hash-table :test 'equal))
        (buffer-name "*Authors*")
diff --git a/admin/make-tarball.txt b/admin/make-tarball.txt
index 2c81a49..5125086 100644
--- a/admin/make-tarball.txt
+++ b/admin/make-tarball.txt
@@ -33,17 +33,32 @@ General steps (for each step, check for possible errors):
     or some form of "git clean -x".  It's probably simpler and safer to
     make a new working directory exclusively for the release branch.
 
+    Make sure the tree is built, or at least configured.  That's
+    because some of the commands below run Make, so they need
+    Makefiles to be present.
+
 2.  Regenerate the etc/AUTHORS file:
       M-: (require 'authors) RET
       M-x authors RET
 
     (This first updates the current versioned ChangeLog.N)
 
-    If there is an "*Authors Errors*" buffer, address the issues.
-    If there was a ChangeLog typo, fix the relevant entry.
-    If a file was deleted or renamed, consider adding an appropriate
-    entry to authors-ignored-files, authors-valid-file-names, or
-    authors-renamed-files-alist.
+    If this says "Problem updating ChangeLog", find the reason for the
+    failure of the command it runs, viz.:
+
+       make -C ROOT change-history-nocommit
+
+    (where ROOT is the top-level directory where you run this).  It
+    could be because there are uncommitted changes in ChangeLog.N, for
+    example.  One possible way forward is to invoke "C-u M-x authors",
+    which will skip updating the versioned ChangeLog.N file.
+
+    After "M-x authors" finishes, if there is an "*Authors Errors*"
+    buffer, address the issues.  If there was a ChangeLog typo, fix
+    the relevant entry.  If a file was deleted or renamed, consider
+    adding an appropriate entry to variables authors-ignored-files,
+    authors-valid-file-names, or authors-renamed-files-alist in
+    authors.el.
 
     If necessary, repeat 'C-u M-x authors' after making those changes.
     Save the "*Authors*" buffer as etc/AUTHORS.
diff --git a/doc/emacs/search.texi b/doc/emacs/search.texi
index 5be45ce..77a4e80 100644
--- a/doc/emacs/search.texi
+++ b/doc/emacs/search.texi
@@ -1771,6 +1771,7 @@ occurrence of @var{string}.  When done, exit the 
recursive editing level
 with @kbd{C-M-c} to proceed to the next occurrence.
 
 @item e
+@itemx E
 to edit the replacement string in the minibuffer.  When you exit the
 minibuffer by typing @key{RET}, the minibuffer contents replace the
 current occurrence of the pattern.  They also become the new
diff --git a/doc/misc/org.texi b/doc/misc/org.texi
index a5d28bf..2f17816 100644
--- a/doc/misc/org.texi
+++ b/doc/misc/org.texi
@@ -4050,12 +4050,11 @@ replacement text.  Here is an example:
 
 @lisp
 (setq org-link-abbrev-alist
-      '(("bugzilla"  . "http://10.1.2.9/bugzilla/show_bug.cgi?id=";)
-        ("url-to-ja" . "http://translate.google.fr/translate?sl=en&tl=ja&u=%h";)
-        ("google"    . "http://www.google.com/search?q=";)
-        ("gmap"      . "http://maps.google.com/maps?q=%s";)
-        ("omap"      . 
"http://nominatim.openstreetmap.org/search?q=%s&polygon=1";)
-        ("ads"       . 
"https://ui.adsabs.harvard.edu/search/q=%20author%3A\"%s\"";)))
+      '(("bugzilla"        . "http://10.1.2.9/bugzilla/show_bug.cgi?id=";)
+        ("Nu Html Checker" . "https://validator.w3.org/nu/?doc=%h";)
+        ("duckduckgo"      . "https://duckduckgo.com/?q=%s";)
+        ("omap"            . 
"http://nominatim.openstreetmap.org/search?q=%s&polygon=1";)
+        ("ads"             . 
"https://ui.adsabs.harvard.edu/search/q=%20author%3A\"%s\"";)))
 @end lisp
 
 If the replacement text contains the string @samp{%s}, it is replaced with
@@ -18285,8 +18284,7 @@ A note of warning: when @samp{cache} is used in a 
session, caching may
 cause unexpected results.
 
 When the caching mechanism tests for any source code changes, it does
-not expand noweb style references (see @ref{Noweb Reference Syntax}).  For
-reasons why, see @uref{https://orgmode.org/list/86fvqqc8jb.fsf@@somewhere.org}
+not expand noweb style references (see @ref{Noweb Reference Syntax}).
 
 The @samp{cache} header argument can have one of two values: @samp{yes} or 
@samp{no}.
 
diff --git a/etc/TODO b/etc/TODO
index 8e93e7f..08f8510 100644
--- a/etc/TODO
+++ b/etc/TODO
@@ -536,6 +536,42 @@ This should go with point, so that motion commands can 
also move
 through tall images.  This value would be to point as window-vscroll
 is to window-start.
 
+** Make redisplay smarter about which parts to redraw
+Currently, redisplay has only 2 levels of redrawing: either it
+redisplays only the selected window on the selected frame, or it
+redisplays all the windows on all the frames.  This doesn't scale well
+when the number of visible frames is large.
+
+Currently, two variables are used to make the decision what to
+redisplay: update_mode_lines and windows_or_buffers_changed.  These
+are set by various functions called from Lisp, and if redisplay finds
+one of them to be non-zero, it considers all the windows on all the
+frames for redisplay.
+
+The idea is to make the decision which parts need to be redrawn more
+fine-grained.  Instead of simple boolean variables, we could have a
+bitmapped variable which records the kinds of changes done by Lisp
+since the previous redisplay cycle.  Then the decision what exactly
+needs to be redrawn could be made based on the bits that are set.
+
+For example, one reason to consider all frames is that some scrolling
+command sets the update_mode_lines variable non-zero.  This is done
+because the frame title, which doesn't belong to any window, needs to
+be reconsidered when the selected window is scrolled.  But considering
+the frame title doesn't have to redisplay all the other windows on the
+frame, doesn't need to recompute the menu items and the tool-bar
+buttons, and doesn't need to consider frames other than the selected
+one.  Being selective about what parts of the Emacs display need to be
+reconsidered and redrawn given the changes since the last redisplay
+will go along way towards making redisplay more scalable.
+
+One way of making this change is to go through all the places that set
+update_mode_lines and windows_or_buffers_changed, figure out which
+portions of the Emacs display could be affected by each change, and
+then implement the bitmap which will record each of these affected
+display portions.  The logic in redisplay_internal will then need to
+be restructured so as to support this fine-grained redisplay.
+
 ** Address internationalization of symbols names
 Essentially as if they were documentation, e.g. in command names and
 Custom.
diff --git a/lisp/org/org-macs.el b/lisp/org/org-macs.el
index f375c33..506fba8 100644
--- a/lisp/org/org-macs.el
+++ b/lisp/org/org-macs.el
@@ -461,9 +461,15 @@ is selected, only the bare key is returned."
                ;; Display UI and let user select an entry or
                ;; a sub-level prefix.
                (goto-char (point-min))
-               (unless (pos-visible-in-window-p (point-max))
-                 (org-fit-window-to-buffer))
+               (setq header-line-format nil)
+               (org-fit-window-to-buffer)
+               (unless (pos-visible-in-window-p (1- (point-max)))
+                 (setq header-line-format "Use C-n, C-p or C-v to navigate.")
+                 (setq allowed-keys (append allowed-keys '("\C-n" "\C-p" 
"\C-v"))))
                (let ((pressed (org--mks-read-key allowed-keys prompt)))
+                 (while (and (member pressed '("\C-n" "\C-p" "\C-v")))
+                   (org-scroll (string-to-char pressed))
+                   (setq pressed (org--mks-read-key allowed-keys prompt)))
                  (setq current (concat current pressed))
                  (cond
                   ((equal pressed "\C-g") (user-error "Abort"))
diff --git a/lisp/org/org-version.el b/lisp/org/org-version.el
index 738dbd6..479ca46 100644
--- a/lisp/org/org-version.el
+++ b/lisp/org/org-version.el
@@ -5,13 +5,13 @@
 (defun org-release ()
   "The release version of Org.
 Inserted by installing Org mode or when a release is made."
-   (let ((org-release "9.4.2"))
+   (let ((org-release "9.4.3"))
      org-release))
 ;;;###autoload
 (defun org-git-version ()
   "The Git version of Org mode.
 Inserted by installing Org or when a release is made."
-   (let ((org-git-version "release_9.4.2"))
+   (let ((org-git-version "release_9.4.3"))
      org-git-version))
 
 (provide 'org-version)
diff --git a/lisp/org/org.el b/lisp/org/org.el
index 063d044..1f7e434 100644
--- a/lisp/org/org.el
+++ b/lisp/org/org.el
@@ -8,7 +8,7 @@
 ;; Keywords: outlines, hypermedia, calendar, wp
 ;; Homepage: https://orgmode.org
 
-;; Version: 9.4.2
+;; Version: 9.4.3
 
 ;; This file is part of GNU Emacs.
 ;;
@@ -21214,8 +21214,4 @@ Started from `gnus-info-find-node'."
 
 (run-hooks 'org-load-hook)
 
-;; Local variables:
-;; generated-autoload-file: "org-loaddefs.el"
-;; End:
-
 ;;; org.el ends here
diff --git a/lisp/org/ox-html.el b/lisp/org/ox-html.el
index d2f24f5..1a466fb 100644
--- a/lisp/org/ox-html.el
+++ b/lisp/org/ox-html.el
@@ -300,7 +300,7 @@ property on the headline itself.")
     padding: 3px;
     border: 1px solid black;
   }
-  pre.src:hover:before { display: inline;}
+  pre.src:hover:before { display: inline; margin-top: 14px;}
   /* Languages per Org manual */
   pre.src-asymptote:before { content: 'Asymptote'; }
   pre.src-awk:before { content: 'Awk'; }



reply via email to

[Prev in Thread] Current Thread [Next in Thread]