emacs-diffs
[Top][All Lists]
Advanced

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

master 01e3345b7b 2/2: Merge remote-tracking branch 'origin/master' into


From: Po Lu
Subject: master 01e3345b7b 2/2: Merge remote-tracking branch 'origin/master' into x-window-xwidget
Date: Fri, 27 May 2022 04:35:49 -0400 (EDT)

branch: master
commit 01e3345b7bac8f8e79433360e3f2a6fa089c8ff7
Merge: 27de58af8b 758fed537b
Author: Po Lu <luangruo@yahoo.com>
Commit: Po Lu <luangruo@yahoo.com>

    Merge remote-tracking branch 'origin/master' into x-window-xwidget
---
 etc/NEWS                        |   1 +
 lisp/avoid.el                   |   2 +
 lisp/international/fontset.el   |   2 +-
 lisp/language/indonesian.el     |  30 +++++++++++
 lisp/leim/quail/indonesian.el   | 113 ++++++++++++++++++++++++++++++++++++++++
 lisp/progmodes/asm-mode.el      |  30 +++++------
 lisp/progmodes/bug-reference.el |  10 ++--
 lisp/progmodes/erts-mode.el     |  10 ++--
 lisp/progmodes/flymake.el       |  13 ++---
 lisp/progmodes/icon.el          |  21 ++++----
 lisp/progmodes/js.el            |  10 ++--
 lisp/progmodes/m4-mode.el       |  12 ++---
 lisp/progmodes/mixal-mode.el    |  17 +++---
 lisp/progmodes/scheme.el        |  13 ++---
 14 files changed, 205 insertions(+), 79 deletions(-)

diff --git a/etc/NEWS b/etc/NEWS
index 8f877f40ac..3065fa85d3 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -824,6 +824,7 @@ corresponding language environments are:
 **** Tagbanwa script and language environment
 **** Limbu script and language environment
 **** Balinese script and language environment
+**** Javanese script and language environment
 
 ---
 *** The "Oriya" language environment was renamed to "Odia".
diff --git a/lisp/avoid.el b/lisp/avoid.el
index c97e51a6f7..2e77c8feff 100644
--- a/lisp/avoid.el
+++ b/lisp/avoid.el
@@ -293,6 +293,8 @@ accumulated, and tries to keep it close to zero."
       (mouse-avoidance-set-mouse-position (cons (+ (car (cdr cur)) deltax)
                                                (+ (cdr (cdr cur)) deltay))))))
 
+(defvar x-pointer-invisible) ; silence byte-compiler
+
 (defun mouse-avoidance-random-shape ()
   "Return a random cursor shape.
 This assumes that any variable whose name begins with x-pointer- and
diff --git a/lisp/international/fontset.el b/lisp/international/fontset.el
index a7d7109c8d..6b51125629 100644
--- a/lisp/international/fontset.el
+++ b/lisp/international/fontset.el
@@ -203,7 +203,7 @@
        (han #x5B57)
        (yi #xA288)
         (syloti-nagri #xA807 #xA823 #xA82C)
-       (javanese #xA980)
+       (javanese #xA98F #xA9B4 #xA9CA)
        (cham #xAA00)
        (tai-viet #xAA80)
        (hangul #xAC00)
diff --git a/lisp/language/indonesian.el b/lisp/language/indonesian.el
index 9a86135d89..994be2484a 100644
--- a/lisp/language/indonesian.el
+++ b/lisp/language/indonesian.el
@@ -36,6 +36,15 @@
               (documentation . "\
 Balinese language and its script are supported in this language 
environment.")))
 
+(set-language-info-alist
+ "Javanese" '((charset unicode)
+              (coding-system utf-8)
+              (coding-priority utf-8)
+              (input-method . "javanese")
+              (sample-text . "Javanese (ꦲꦏ꧀ꦱꦫꦗꦮ)       ꦲꦭꦺꦴ")
+              (documentation . "\
+Javanese language and its script are supported in this language 
environment.")))
+
 
 ;; Balinese composition rules
 (let ((consonant            "[\x1B13-\x1B33\x1B45-\x1B4B]")
@@ -59,6 +68,27 @@ Balinese language and its script are supported in this 
language environment.")))
                                        vowel "?" modifier-above "?" 
musical-symbol "?")
                                1 'font-shape-gstring))))
 
+;; Javanese composition rules
+(let ((consonant            "[\xA98F-\xA9B2]")
+      (independent-vowel    "[\xA984-\xA98E]")
+      (telu                 "\xA9B3")
+      (vowel                "[\xA9B4-\xA9BC]")
+      (dependant-consonant  "[\xA9BD-\xA9BF]")
+      (modifier-above       "[\xA980-\xA983]")
+      (pangkon              "\xA9C0"))
+  (set-char-table-range composition-function-table
+                        '(#xA9B3 . #xA9C0)
+                        (list (vector
+                               ;; Consonant based syllables
+                               (concat consonant telu "?" "\\(?:" pangkon 
consonant
+                                       telu "?\\)*\\(?:" pangkon "\\|" vowel 
"*" telu
+                                       "?" modifier-above "?" 
dependant-consonant "?\\)")
+                               1 'font-shape-gstring)
+                              (vector
+                               ;; Vowels based syllables
+                               (concat independent-vowel telu "?" pangkon "?"
+                                       vowel "?" modifier-above "?" 
dependant-consonant "?")
+                               1 'font-shape-gstring))))
 
 (provide 'indonesian)
 ;;; indonesian.el ends here
diff --git a/lisp/leim/quail/indonesian.el b/lisp/leim/quail/indonesian.el
index 46dafc89f5..82d0a2c269 100644
--- a/lisp/leim/quail/indonesian.el
+++ b/lisp/leim/quail/indonesian.el
@@ -173,5 +173,118 @@
  ("`m" ?ᬁ)
  ("`M" ?ᬀ))
 
+(quail-define-package
+ "javanese" "Javanese" "ꦄ" t "Javanese phonetic input method.
+
+ `\\=`' is used to switch levels instead of Alt-Gr.
+" nil t t t t nil nil nil nil nil t)
+
+(quail-define-rules
+ ("1"  ?꧑)
+ ("`1" ?1)
+ ("`!" ?꧁)
+ ("2"  ?꧒)
+ ("`2" ?2)
+ ("`@" ?꧂)
+ ("3"  ?꧓)
+ ("`3" ?3)
+ ("`#" ?꧃)
+ ("4"  ?꧔)
+ ("`4" ?4)
+ ("`$" ?꧄)
+ ("5"  ?꧕)
+ ("`5" ?5)
+ ("`%" ?꧅)
+ ("6"  ?꧖)
+ ("`6" ?6)
+ ("`^" ?꧆)
+ ("7"  ?꧗)
+ ("`7" ?7)
+ ("`&" ?꧇)
+ ("8"  ?꧘)
+ ("`8" ?8)
+ ("`*" ?꧈)
+ ("9"  ?꧙)
+ ("`9" ?9)
+ ("`\(" ?꧉)
+ ("0"  ?꧐)
+ ("`0" ?0)
+ ("`\)" ?꧞)
+ ("`\\" ?꧊)
+ ("`|" ?꧋)
+ ("`"  ?ꦛ)
+ ("q"  ?ꦛ)
+ ("Q"  ?ꦜ)
+ ("`q" ?꧟)
+ ("`Q" ?ꧏ)
+ ("w"  ?ꦝ)
+ ("W"  ?ꦞ)
+ ("`w" ?꧌)
+ ("`W" ?꧍)
+ ("e"  ?ꦺ)
+ ("E"  ?ꦻ)
+ ("`e" ?ꦌ)
+ ("`E" ?ꦍ)
+ ("r"  ?ꦫ)
+ ("R"  ?ꦬ)
+ ("`r" ?ꦿ)
+ ("`R" ?ꦂ)
+ ("t"  ?ꦠ)
+ ("T"  ?ꦡ)
+ ("`t" ?ꦼ)
+ ("y"  ?ꦪ)
+ ("Y"  ?ꦾ)
+ ("u"  ?ꦸ)
+ ("U"  ?ꦹ)
+ ("`u" ?ꦈ)
+ ("`U" ?ꦅ)
+ ("i"  ?ꦶ)
+ ("I"  ?ꦷ)
+ ("`i" ?ꦆ)
+ ("`I" ?ꦇ)
+ ("o"  ?ꦎ)
+ ("p"  ?ꦥ)
+ ("P"  ?ꦦ)
+ ("`p" ?ꦉ)
+ ("a"  ?ꦴ)
+ ("A"  ?ꦄ)
+ ("`a" ?ꦵ)
+ ("s"  ?ꦱ)
+ ("S"  ?ꦯ)
+ ("d"  ?ꦢ)
+ ("D"  ?ꦣ)
+ ("f"  ?꧀)
+ ("F"  ?ꦽ)
+ ("`f" ?ꦉ)
+ ("g"  ?ꦒ)
+ ("G"  ?ꦓ)
+ ("h"  ?ꦲ)
+ ("H"  ?ꦃ)
+ ("j"  ?ꦗ)
+ ("J"  ?ꦙ)
+ ("`j" ?ꦘ)
+ ("k"  ?ꦏ)
+ ("K"  ?ꦑ)
+ ("`k" ?ꦐ)
+ ("l"  ?ꦭ)
+ ("L"  ?ꦊ)
+ ("`l" ?ꦋ)
+ ("z"  ?ꦚ)
+ ("Z"  ?ꦔ)
+ ("x"  ?ꦰ)
+ ("X"  ?꦳)
+ ("c"  ?ꦕ)
+ ("C"  ?ꦖ)
+ ("`c" #x200C)  ; ZWNJ
+ ("v"  ?ꦮ)
+ ("V"  ?ᭉ)
+ ("b"  ?ꦧ)
+ ("B"  ?ꦨ)
+ ("n"  ?ꦤ)
+ ("N"  ?ꦟ)
+ ("m"  ?ꦩ)
+ ("M"  ?ꦁ)
+ ("`m" ?ꦀ))
+
 (provide 'indonesian)
 ;;; indonesian.el ends here
diff --git a/lisp/progmodes/asm-mode.el b/lisp/progmodes/asm-mode.el
index 370fb1b80b..aaf063b517 100644
--- a/lisp/progmodes/asm-mode.el
+++ b/lisp/progmodes/asm-mode.el
@@ -24,16 +24,16 @@
 ;;; Commentary:
 
 ;; This mode was written by Eric S. Raymond <esr@snark.thyrsus.com>,
-;; inspired by an earlier asm-mode by Martin Neitzel.
+;; inspired by an earlier `asm-mode' by Martin Neitzel.
 
-;; This major mode is based on prog mode.  It defines a private abbrev table
-;; that can be used to save abbrevs for assembler mnemonics.  It binds just
-;; five keys:
+;; This major mode is based on `prog-mode'.  It defines a private
+;; abbrev table that can be used to save abbrevs for assembler
+;; mnemonics.  It binds just five keys:
 ;;
 ;;     TAB             tab to next tab stop
 ;;     :               outdent preceding label, tab to tab stop
 ;;     comment char    place or move comment
-;;                     asm-comment-char specifies which character this is;
+;;                     `asm-comment-char' specifies which character this is;
 ;;                     you can use a different character in different
 ;;                     Asm mode buffers.
 ;;     C-j, C-m        newline and tab to tab stop
@@ -41,9 +41,9 @@
 ;; Code is indented to the first tab stop level.
 
 ;; This mode runs two hooks:
-;;   1) An asm-mode-set-comment-hook before the part of the initialization
-;; depending on asm-comment-char, and
-;;   2) an asm-mode-hook at the end of initialization.
+;;   1) `asm-mode-set-comment-hook' before the part of the initialization
+;;      depending on `asm-comment-char', and
+;;   2) `asm-mode-hook' at the end of initialization.
 
 ;;; Code:
 
@@ -68,13 +68,11 @@
   "Abbrev table used while in Asm mode.")
 (define-abbrev-table 'asm-mode-abbrev-table ())
 
-(defvar asm-mode-map
-  (let ((map (make-sparse-keymap)))
-    ;; Note that the comment character isn't set up until asm-mode is called.
-    (define-key map ":"                'asm-colon)
-    (define-key map "\C-c;"    'comment-region)
-    map)
-  "Keymap for Asm mode.")
+(defvar-keymap asm-mode-map
+  :doc "Keymap for Asm mode."
+  ;; Note that the comment character isn't set up until asm-mode is called.
+  ":"     #'asm-colon
+  "C-c ;" #'comment-region)
 
 (easy-menu-define asm-mode-menu asm-mode-map
   "Menu for Asm mode."
@@ -130,7 +128,7 @@ Special commands:
   (setq-local tab-always-indent nil)
 
   (run-hooks 'asm-mode-set-comment-hook)
-  ;; Make our own local child of asm-mode-map
+  ;; Make our own local child of `asm-mode-map'
   ;; so we can define our own comment character.
   (use-local-map (nconc (make-sparse-keymap) asm-mode-map))
   (local-set-key (vector asm-comment-char) #'asm-comment)
diff --git a/lisp/progmodes/bug-reference.el b/lisp/progmodes/bug-reference.el
index 06242a4cba..d3626dbaf0 100644
--- a/lisp/progmodes/bug-reference.el
+++ b/lisp/progmodes/bug-reference.el
@@ -40,12 +40,10 @@
   ;; Somewhat arbitrary, by analogy with eg goto-address.
   :group 'comm)
 
-(defvar bug-reference-map
-  (let ((map (make-sparse-keymap)))
-    (define-key map [mouse-2] 'bug-reference-push-button)
-    (define-key map (kbd "C-c RET") 'bug-reference-push-button)
-    map)
-  "Keymap used by bug reference buttons.")
+(defvar-keymap bug-reference-map
+  :doc "Keymap used by bug reference buttons."
+  "<mouse-2>" #'bug-reference-push-button
+  "C-c RET"   #'bug-reference-push-button)
 
 ;; E.g., "https://gcc.gnu.org/PR%s";
 (defvar bug-reference-url-format nil
diff --git a/lisp/progmodes/erts-mode.el b/lisp/progmodes/erts-mode.el
index 1b88540ff3..13da1d478d 100644
--- a/lisp/progmodes/erts-mode.el
+++ b/lisp/progmodes/erts-mode.el
@@ -64,12 +64,10 @@
   "Face used for displaying specification test start markers."
   :group 'erts-mode)
 
-(defvar erts-mode-map
-  (let ((map (make-keymap)))
-    (set-keymap-parent map prog-mode-map)
-    (define-key map "\C-c\C-r" 'erts-tag-region)
-    (define-key map "\C-c\C-c" 'erts-run-test)
-    map))
+(defvar-keymap erts-mode-map
+  :parent prog-mode-map
+  "C-c C-r" #'erts-tag-region
+  "C-c C-c" #'erts-run-test)
 
 (defvar erts-mode-font-lock-keywords
   ;; Specifications.
diff --git a/lisp/progmodes/flymake.el b/lisp/progmodes/flymake.el
index 0b7958e52f..9e3255874d 100644
--- a/lisp/progmodes/flymake.el
+++ b/lisp/progmodes/flymake.el
@@ -1080,9 +1080,8 @@ Interactively, with a prefix arg, FORCE is t."
                     (flymake--run-backend backend backend-args)))
                   nil))))))))
 
-(defvar flymake-mode-map
-  (let ((map (make-sparse-keymap))) map)
-  "Keymap for `flymake-mode'.")
+(defvar-keymap flymake-mode-map
+  :doc "Keymap for `flymake-mode'.")
 
 ;;;###autoload
 (define-minor-mode flymake-mode
@@ -1493,11 +1492,9 @@ TYPE is usually keyword `:error', `:warning' or `:note'."
 
 (defvar-local flymake--diagnostics-buffer-source nil)
 
-(defvar flymake-diagnostics-buffer-mode-map
-  (let ((map (make-sparse-keymap)))
-    (define-key map (kbd "RET") 'flymake-goto-diagnostic)
-    (define-key map (kbd "SPC") 'flymake-show-diagnostic)
-    map))
+(defvar-keymap flymake-diagnostics-buffer-mode-map
+  "RET" #'flymake-goto-diagnostic
+  "SPC" #'flymake-show-diagnostic)
 
 (defun flymake-show-diagnostic (pos &optional other-window)
   "Show location of diagnostic at POS."
diff --git a/lisp/progmodes/icon.el b/lisp/progmodes/icon.el
index e1ee9efc54..ec281f3a49 100644
--- a/lisp/progmodes/icon.el
+++ b/lisp/progmodes/icon.el
@@ -31,17 +31,16 @@
   "Abbrev table in use in Icon-mode buffers.")
 (define-abbrev-table 'icon-mode-abbrev-table ())
 
-(defvar icon-mode-map
-  (let ((map (make-sparse-keymap "Icon")))
-    (define-key map "{" 'electric-icon-brace)
-    (define-key map "}" 'electric-icon-brace)
-    (define-key map "\e\C-h" 'mark-icon-function)
-    (define-key map "\e\C-a" 'beginning-of-icon-defun)
-    (define-key map "\e\C-e" 'end-of-icon-defun)
-    (define-key map "\e\C-q" 'indent-icon-exp)
-    (define-key map "\177" 'backward-delete-char-untabify)
-    map)
-  "Keymap used in Icon mode.")
+(defvar-keymap icon-mode-map
+  :doc "Keymap used in Icon mode."
+  :name "Icon"
+  "{"     #'electric-icon-brace
+  "}"     #'electric-icon-brace
+  "C-M-h" #'mark-icon-function
+  "C-M-a" #'beginning-of-icon-defun
+  "C-M-e" #'end-of-icon-defun
+  "C-M-q" #'indent-icon-exp
+  "DEL"   #'backward-delete-char-untabify)
 
 (easy-menu-define icon-mode-menu icon-mode-map
   "Menu for Icon mode."
diff --git a/lisp/progmodes/js.el b/lisp/progmodes/js.el
index 9c1358e466..eb2a1e4fcc 100644
--- a/lisp/progmodes/js.el
+++ b/lisp/progmodes/js.el
@@ -660,13 +660,11 @@ This variable is like `sgml-attribute-offset'."
   :type 'integer
   :safe 'integerp)
 
-;;; KeyMap
+;;; Keymap
 
-(defvar js-mode-map
-  (let ((keymap (make-sparse-keymap)))
-    (define-key keymap [(meta ?.)] #'js-find-symbol)
-    keymap)
-  "Keymap for `js-mode'.")
+(defvar-keymap js-mode-map
+  :doc "Keymap for `js-mode'."
+  "M-." #'js-find-symbol)
 
 ;;; Syntax table and parsing
 
diff --git a/lisp/progmodes/m4-mode.el b/lisp/progmodes/m4-mode.el
index b9fcd033bb..a18c8bcce4 100644
--- a/lisp/progmodes/m4-mode.el
+++ b/lisp/progmodes/m4-mode.el
@@ -121,13 +121,11 @@ If m4 is not in your PATH, set this to an absolute file 
name."
    ("#" (0 (when (m4--quoted-p (match-beginning 0))
              (string-to-syntax "."))))))
 
-(defvar m4-mode-map
-  (let ((map (make-sparse-keymap)))
-    (define-key map "\C-c\C-b" 'm4-m4-buffer)
-    (define-key map "\C-c\C-r" 'm4-m4-region)
-    (define-key map "\C-c\C-c" 'comment-region)
-    map)
-  "Keymap for M4 Mode.")
+(defvar-keymap m4-mode-map
+  :doc "Keymap for M4 Mode."
+  "C-c C-b" #'m4-m4-buffer
+  "C-c C-r" #'m4-m4-region
+  "C-c C-c" #'comment-region)
 
 (easy-menu-define m4-mode-menu m4-mode-map
   "Menu for M4 Mode."
diff --git a/lisp/progmodes/mixal-mode.el b/lisp/progmodes/mixal-mode.el
index 97a218fcfa..9d1ceaa55a 100644
--- a/lisp/progmodes/mixal-mode.el
+++ b/lisp/progmodes/mixal-mode.el
@@ -78,16 +78,13 @@
 ;;; Code:
 (defvar compile-command)
 
-;;; Key map
-(defvar mixal-mode-map
-  (let ((map (make-sparse-keymap)))
-    (define-key map "\C-c\C-c" 'compile)
-    (define-key map "\C-c\C-r" 'mixal-run)
-    (define-key map "\C-c\C-d" 'mixal-debug)
-    (define-key map "\C-h\C-o" 'mixal-describe-operation-code)
-    map)
-  "Keymap for `mixal-mode'.")
-;; (makunbound 'mixal-mode-map)
+;;; Keymap
+(defvar-keymap mixal-mode-map
+  :doc "Keymap for `mixal-mode'."
+  "C-c C-c" #'compile
+  "C-c C-r" #'mixal-run
+  "C-c C-d" #'mixal-debug
+  "C-h C-o" #'mixal-describe-operation-code)
 
 ;;; Syntax table
 (defvar mixal-mode-syntax-table
diff --git a/lisp/progmodes/scheme.el b/lisp/progmodes/scheme.el
index cd397733d2..cf1d394983 100644
--- a/lisp/progmodes/scheme.el
+++ b/lisp/progmodes/scheme.el
@@ -1,7 +1,6 @@
 ;;; scheme.el --- Scheme (and DSSSL) editing mode    -*- lexical-binding: t; 
-*-
 
-;; Copyright (C) 1986-1988, 1997-1998, 2001-2022 Free Software
-;; Foundation, Inc.
+;; Copyright (C) 1986-2022 Free Software Foundation, Inc.
 
 ;; Author: Bill Rozas <jinx@martigny.ai.mit.edu>
 ;; Adapted-by: Dave Love <d.love@dl.ac.uk>
@@ -201,12 +200,10 @@
 
 (defvar scheme-mode-line-process "")
 
-(defvar scheme-mode-map
-  (let ((map (make-sparse-keymap)))
-    (set-keymap-parent map lisp-mode-shared-map)
-    map)
-  "Keymap for Scheme mode.
-All commands in `lisp-mode-shared-map' are inherited by this map.")
+(defvar-keymap scheme-mode-map
+  :doc "Keymap for Scheme mode.
+All commands in `lisp-mode-shared-map' are inherited by this map."
+  :parent lisp-mode-shared-map)
 
 (easy-menu-define scheme-mode-menu scheme-mode-map
   "Menu for Scheme mode."



reply via email to

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