aboutsummaryrefslogtreecommitdiffstats
path: root/admin/unidata (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Update to Unicode 17.0Eli Zaretskii2025-09-1118-379/+1935
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * test/manual/BidiCharacterTest.txt: * admin/unidata/BidiBrackets.txt: * admin/unidata/BidiMirroring.txt: * admin/unidata/Blocks.txt: * admin/unidata/IVD_Sequences.txt: * admin/unidata/IdnaMappingTable.txt: * admin/unidata/NormalizationTest.txt: * admin/unidata/PropertyValueAliases.txt: * admin/unidata/ScriptExtensions.txt: * admin/unidata/Scripts.txt: * admin/unidata/SpecialCasing.txt: * admin/unidata/UnicodeData.txt: * admin/unidata/confusables.txt: * admin/unidata/emoji-data.txt: * admin/unidata/emoji-sequences.txt: * admin/unidata/emoji-test.txt: * admin/unidata/emoji-variation-sequences.txt: * admin/unidata/emoji-zwj-sequences.txt: Import from Unicode 17.0. * etc/NEWS: * test/lisp/international/ucs-normalize-tests.el (ucs-normalize-tests--failing-lines-part1) (ucs-normalize-tests--failing-lines-part2): * lisp/international/mule-cmds.el (ucs-names): * lisp/international/fontset.el (script-representative-chars) (otf-script-alist): * lisp/international/characters.el: * admin/unidata/blocks.awk: Update for Unicode 17.0.
* Prefer incf to cl-incf in remaining filesStefan Kangas2025-02-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * admin/syncdoc-type-hierarchy.el (syncdoc-make-type-table): * admin/unidata/unidata-gen.el (unidata-gen-table-word-list): * lisp/arc-mode.el (archive--summarize-descs): * lisp/auth-source.el (auth-source-forget+): * lisp/battery.el (battery-linux-proc-acpi, battery-linux-sysfs): * lisp/calendar/parse-time.el (parse-time-tokenize): * lisp/calendar/time-date.el (decoded-time-add) (decoded-time--alter-month, decoded-time--alter-day): * lisp/cedet/semantic/ede-grammar.el (project-compile-target): * lisp/dired.el (dired-insert-set-properties): * lisp/edmacro.el (edmacro-format-keys): * lisp/epa-file.el (epa-file--replace-text): * lisp/eshell/esh-cmd.el (eshell-for-iterate): * lisp/eshell/esh-io.el (eshell-create-handles) (eshell-duplicate-handles, eshell-protect-handles) (eshell-copy-output-handle, eshell-buffered-print): * lisp/font-lock.el (font-lock-fontify-keywords-region): * lisp/help-fns.el: * lisp/ibuf-ext.el (ibuffer-generate-filter-groups) (ibuffer-insert-filter-group-before): * lisp/ibuffer.el (ibuffer-confirm-operation-on, ibuffer-map-lines): * lisp/image/image-dired-external.el (image-dired-thumb-queue-run): * lisp/image/image-dired.el (image-dired-display-thumbs) (image-dired-line-up): * lisp/imenu.el (imenu--split): * lisp/info-xref.el (info-xref-check-node, info-xref-check-all-custom): * lisp/international/quail.el (quail-insert-decode-map): * lisp/international/rfc1843.el (rfc1843-decode): * lisp/mail/ietf-drums-date.el (ietf-drums-date--tokenize-string): * lisp/mail/ietf-drums.el (ietf-drums-token-to-list): * lisp/mail/rfc2047.el (rfc2047-qp-or-base64): * lisp/mail/rfc2231.el (rfc2231-encode-string): * lisp/mail/yenc.el (yenc-decode-region): * lisp/mh-e/mh-e.el (mh-xargs): * lisp/mh-e/mh-folder.el (mh-recenter): * lisp/mh-e/mh-mime.el (mh-mime-part-index): * lisp/mh-e/mh-search.el (mh-search): * lisp/mh-e/mh-thread.el (mh-thread-current-indentation-level): * lisp/mh-e/mh-utils.el (mh-sub-folders-parse): * lisp/minibuffer.el (minibuffer--sort-by-position) (completion-pcm--pattern-point-idx): * lisp/mpc.el (mpc-cmd-find, mpc-cmd-move, mpc-select-extend) (mpc-songs-refresh, mpc-songpointer-score) (mpc-songpointer-refresh-hairy): * lisp/msb.el (msb--mode-menu-cond, msb--most-recently-used-menu) (msb--split-menus-2, msb--make-keymap-menu): * lisp/net/pop3.el (pop3-send-streaming-command): * lisp/net/puny.el (puny-encode-complex, puny-decode-string-internal): * lisp/net/shr-color.el (shr-color-hue-to-rgb): * lisp/net/soap-client.el (soap-encode-xs-complex-type) (soap-decode-xs-complex-type, soap-resolve-references-for-operation) (soap-wsdl-resolve-references): * lisp/play/5x5.el (5x5-made-move, 5x5-down, 5x5-right): * lisp/play/decipher.el (key, decipher-mode-syntax-table) (decipher-add-undo, decipher-complete-alphabet, decipher--analyze) (decipher--digram-counts, decipher--digram-total): * lisp/play/hanoi.el (hanoi-move-ring): * lisp/play/snake.el (snake-reset-game, snake-update-game): * lisp/profiler.el (profiler-calltree-depth, profiler-calltree-build-1) (profiler-calltree-build-unified) (profiler-calltree-compute-percentages): * lisp/registry.el (registry-reindex): * lisp/simple.el (completion-list-candidate-at-point): * lisp/strokes.el (strokes-xpm-to-compressed-string): * lisp/term.el (term-emulate-terminal, term--handle-colors-list): * lisp/treesit.el (treesit-node-index, treesit-indent-region): * lisp/url/url-cookie.el (url-cookie-parse-file-netscape): * lisp/url/url-dav.el (url-dav-file-name-completion): * lisp/url/url-queue.el (url-queue-setup-runners) (url-queue-run-queue): * lisp/wdired.el (wdired-finish-edit): * lisp/wid-edit.el (widget-move): * lisp/window-tool-bar.el (window-tool-bar-string): * lisp/winner.el (winner-undo): * lisp/xwidget.el (xwidget-webkit-isearch-forward) (xwidget-webkit-isearch-backward): Prefer incf to cl-incf.
* Update copyright year to 2025Paul Eggert2025-01-015-5/+5
| | | | Run "TZ=UTC0 admin/update-copyright".
* Fix idna-mapping-table following Unicode 16 changesRobert Pluim2024-09-171-3/+9
| | | | | | | | | | | | The latest version of UTS #46 in Unicode 16 has changed the way it indicates which codepoints are invalid in domain names, causing 'idna-mapping-table' to contain incorrect information, which then breaks 'textsec-domain-suspicious-p' and our test suite. (Bug#73312) * admin/unidata/unidata-gen.el (unidata-gen-idna-mapping): Check the IDNA validity field in "IdnaMappingTable.txt" in addition to checking the status field, as the latter can now be 'valid' for disallowed codepoints.
* Use stable URLs for files imported from UnicodeRobert Pluim2024-09-131-22/+12
| | | | | | | * admin/notes/unicode: Point people at "admin/unidata/README" for URLs for Unicode files. * admin/unidata/README: Use stable URLs for the various files. Remove dates, the files self-describe their dates anyway.
* Improve accuracy of character categoriesEli Zaretskii2024-09-131-2/+6
| | | | | | | | | | * lisp/international/characters.el: Assign 'digit' category to all the characters whose Unicode 'general-category' is Nd. * admin/unidata/blocks.awk: Add code to assign 'symbol' category to all characters belonging to the 'symbol' script. * etc/NEWS: Announce the above changes
* Update Emacs sources for Unicode 16.0Eli Zaretskii2024-09-121-0/+1
| | | | | | | | | | | | | | | | | * lisp/international/ucs-normalize.el (check-range): Update ranges of character codes with decompositions. * lisp/international/mule-cmds.el (ucs-names): Update unused ranges. * lisp/international/fontset.el (script-representative-chars) (otf-script-alist, setup-default-fontset): Add new scripts. * lisp/international/characters.el: * admin/unidata/blocks.awk: * test/manual/BidiCharacterTest.txt: * test/lisp/international/ucs-normalize-tests.el (ucs-normalize-tests--failing-lines-part2): Update for Unicode 16.0. * etc/NEWS: Announce support for Unicode 16.0.
* Import updated Unicode files from Unicode 16.0Eli Zaretskii2024-09-1216-9986/+15949
| | | | | | | | | | | | | | | | | | | * admin/unidata/BidiBrackets.txt: * admin/unidata/BidiMirroring.txt: * admin/unidata/Blocks.txt: * admin/unidata/IdnaMappingTable.txt: * admin/unidata/NormalizationTest.txt: * admin/unidata/PropertyValueAliases.txt: * admin/unidata/ScriptExtensions.txt: * admin/unidata/Scripts.txt: * admin/unidata/SpecialCasing.txt: * admin/unidata/UnicodeData.txt: * admin/unidata/copyright.html: * admin/unidata/emoji-data.txt: * admin/unidata/emoji-sequences.txt: * admin/unidata/emoji-test.txt: * admin/unidata/emoji-variation-sequences.txt: * admin/unidata/emoji-zwj-sequences.txt: Update from Unicode 16.0
* Fix script for characters in 3300..3357 rangeEli Zaretskii2024-08-171-0/+13
| | | | | * admin/unidata/blocks.awk: The characters in the 3300..3357 range are Katakana according to Unicode's Scripts.txt.
* Merge from savannah/emacs-29Po Lu2024-01-025-5/+5
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dc4e6b13296 ; Update copyright years in more files 64b37776318 ; Run set-copyright from admin.el 8e1c56ae467 ; Add 2024 to copyright years # Conflicts: # doc/misc/modus-themes.org # doc/misc/texinfo.tex # etc/NEWS # etc/refcards/ru-refcard.tex # etc/themes/modus-operandi-theme.el # etc/themes/modus-themes.el # etc/themes/modus-vivendi-theme.el # lib/alloca.in.h # lib/binary-io.h # lib/c-ctype.h # lib/c-strcasecmp.c # lib/c-strncasecmp.c # lib/careadlinkat.c # lib/cloexec.c # lib/close-stream.c # lib/diffseq.h # lib/dup2.c # lib/filemode.h # lib/fpending.c # lib/fpending.h # lib/fsusage.c # lib/getgroups.c # lib/getloadavg.c # lib/gettext.h # lib/gettime.c # lib/gettimeofday.c # lib/group-member.c # lib/malloc.c # lib/md5-stream.c # lib/md5.c # lib/md5.h # lib/memmem.c # lib/memrchr.c # lib/nanosleep.c # lib/save-cwd.h # lib/sha1.c # lib/sig2str.c # lib/stdlib.in.h # lib/strtoimax.c # lib/strtol.c # lib/strtoll.c # lib/time_r.c # lib/xalloc-oversized.h # lisp/auth-source-pass.el # lisp/emacs-lisp/lisp-mnt.el # lisp/emacs-lisp/timer.el # lisp/info-look.el # lisp/jit-lock.el # lisp/loadhist.el # lisp/mail/rmail.el # lisp/net/ntlm.el # lisp/net/webjump.el # lisp/progmodes/asm-mode.el # lisp/progmodes/project.el # lisp/progmodes/sh-script.el # lisp/textmodes/flyspell.el # lisp/textmodes/reftex-toc.el # lisp/textmodes/reftex.el # lisp/textmodes/tex-mode.el # lisp/url/url-gw.el # m4/alloca.m4 # m4/clock_time.m4 # m4/d-type.m4 # m4/dirent_h.m4 # m4/dup2.m4 # m4/euidaccess.m4 # m4/fchmodat.m4 # m4/filemode.m4 # m4/fsusage.m4 # m4/getgroups.m4 # m4/getloadavg.m4 # m4/getrandom.m4 # m4/gettime.m4 # m4/gettimeofday.m4 # m4/gnulib-common.m4 # m4/group-member.m4 # m4/inttypes.m4 # m4/malloc.m4 # m4/manywarnings.m4 # m4/mempcpy.m4 # m4/memrchr.m4 # m4/mkostemp.m4 # m4/mktime.m4 # m4/nproc.m4 # m4/nstrftime.m4 # m4/pathmax.m4 # m4/pipe2.m4 # m4/pselect.m4 # m4/pthread_sigmask.m4 # m4/readlink.m4 # m4/realloc.m4 # m4/sig2str.m4 # m4/ssize_t.m4 # m4/stat-time.m4 # m4/stddef_h.m4 # m4/stdint.m4 # m4/stdio_h.m4 # m4/stdlib_h.m4 # m4/stpcpy.m4 # m4/strnlen.m4 # m4/strtoimax.m4 # m4/strtoll.m4 # m4/time_h.m4 # m4/timegm.m4 # m4/timer_time.m4 # m4/timespec.m4 # m4/unistd_h.m4 # m4/warnings.m4 # nt/configure.bat # nt/preprep.c # test/lisp/register-tests.el
| * ; Add 2024 to copyright yearsPo Lu2024-01-025-5/+5
| |
* | Merge from origin/emacs-29Eli Zaretskii2023-12-231-1/+2
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a4751657389 * doc/man/emacsclient.1: Fix --tramp option. 1e5357d3d1f * doc/man/emacsclient.1: Add missing sections (bug#66598) fba7b9db397 Add explanation for extra parentheses in ELisp Introduction 77232826821 Add sample code to the "let*" section in "forward-paragraph" 7a00ca92c19 Fix treesit test (bug#67117) d220893216c Fix c++-ts-mode indentation (bug#67975) d386a8aa43f Recommend customizing eglot for python-base-mode bd0c7589715 Improve documentation of new native-compilation commands 1ad126c0f28 ; Fix typo 77678244b83 doc/lispintro: Don't mention `set` (bug#67734) cb3684e9dfa Fix script for some characters 2922d683b78 ; * src/treesit.c (treesit_traverse_child_helper): Fix co... 7b315e8a5c9 Fix an issue when searching subtree backward (bug#67117) 03625c2fefa Fix passive mode for tnftp client in ange-ftp.el. b6429b1c1c7 ; Improve documentation of ispell.el's dictionary database 75cc1593412 ; * etc/PROBLEMS: Update the "GnuPG hangs" entry. 67d9af1c074 Fix using disabled command without a docstring f68f3500236 Improve documentation of text properties handling when ya... 06c399914fa Eglot: Add Uiua language server
| * Fix script for some charactersEli Zaretskii2023-12-201-1/+2
| | | | | | | | | | | | | | | | * lisp/international/characters.el (char-script-table): Fix script for 2 characters. * admin/unidata/blocks.awk: Fix script for Yijing Hexagram Symbols. (Bug#67924)
| * * admin/unidata/emoji-zwj.awk: Avoid sprint buffer overflowMattias Engdegård2023-06-031-1/+1
| | | | | | | | | | | | | | | | | | Some AWK implementations have a fixed buffer for sprintf; for mawk the default size is 8192 bytes. Hoist a string concatenation from a sprintf call to avoid running into that limit. See discussion at https://lists.gnu.org/archive/html/emacs-devel/2023-06/msg00090.html . (cherry picked from commit b5f17fe07c6624380ba8d0c7a400a6b89f225209)
* | Support Unicode version 15.1Eli Zaretskii2023-09-1717-831/+1327
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * admin/unidata/BidiBrackets.txt: * admin/unidata/BidiMirroring.txt: * admin/unidata/Blocks.txt: * admin/unidata/IdnaMappingTable.txt: * admin/unidata/NormalizationTest.txt: * admin/unidata/PropertyValueAliases.txt: * admin/unidata/ScriptExtensions.txt: * admin/unidata/Scripts.txt: * admin/unidata/SpecialCasing.txt: * admin/unidata/UnicodeData.txt: * admin/unidata/confusables.txt: * admin/unidata/copyright.html: * test/manual/BidiCharacterTest.txt: * admin/unidata/emoji-data.txt: * admin/unidata/emoji-sequences.txt: * admin/unidata/emoji-test.txt: * admin/unidata/emoji-variation-sequences.txt: * admin/unidata/emoji-zwj-sequences.txt: Update from Unicode data files. * admin/notes/unicode: Update instructions. * lisp/international/characters.el: Update 'char-width-table' data. * etc/NEWS: Announce support for Unicode 15.1.
* | * admin/unidata/emoji-zwj.awk: More efficient code generationMattias Engdegård2023-09-071-4/+4
| | | | | | | | | | | | | | Hoist the `eval-when-compile` to encompass the entire list, since backquote forms aren't automatically evaluated at compile time. This results in a single constant list in the generated code, and much less actual code.
* | Replace unneeded sprintfs with printRobert Pluim2023-06-131-9/+7
| | | | | | | | | | * admin/unidata/emoji-zwj.awk: Printing strings doesn't need sprintf, so just use print and string concatenation.
* | Don't feed the awk scripts into themselvesRobert Pluim2023-06-131-5/+9
| | | | | | | | | | | | | | * admin/unidata/Makefile.in (${unidir}/charscript.el, ${unidir}/emoji-zwj.el): Define variables for the required sources and pass those to awk instead of $^, since the latter includes the awk script itself.
* | * admin/unidata/emoji-zwj.awk: Avoid sprint buffer overflowMattias Engdegård2023-06-031-1/+1
|/ | | | | | | Some AWK implementations have a fixed buffer for sprintf; for mawk the default size is 8192 bytes. Hoist a string concatenation from a sprintf call to avoid running into that limit. See discussion at https://lists.gnu.org/archive/html/emacs-devel/2023-06/msg00090.html .
* Make VS-15 and VS-16 compositions work correctlyRobert Pluim2023-06-021-1/+2
| | | | | | | | | | | There is a conflict between forward matching and backward matching composition rules involving the same codepoint, which can cause the backward matching ones not to be invoked. Ensure that VS-15 (U+FE0E) and VS-16 (U+FE0F) are composed by forward matching rules instead in order to avoid this issue. * admin/unidata/emoji-zwj.awk: Add rules for CHAR+VS-15 and CHAR+VS-16. * lisp/composite.el: remove backward matching rule for VS-15. (Bug#63731)
* Add instructions and test file for VS-15/VS-16Robert Pluim2023-05-281-0/+723
| | | | | | * admin/notes/unicode: Add instructions for emoji-variation-sequences.txt * admin/unidata/emoji-variation-sequences.txt: New file, imported from Unicode 15.
* ; Add 2023 to copyright years.Eli Zaretskii2023-01-015-5/+5
|
* ; Prefer HTTPS to HTTP in many URLsStefan Kangas2022-10-153-17/+17
|
* make gen-clean remove some newly-added generated filesLars Ingebrigtsen2022-09-191-1/+2
| | | | | * admin/unidata/Makefile.in (gen-clean): Remove some newly-added generated files.
* Update Unicode support to Unicode version 15.0.0 (bug#57846)समीर सिंह Sameer Singh2022-09-1718-360/+984
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * admin/unidata/BidiBrackets.txt * admin/unidata/BidiMirroring.txt * admin/unidata/Blocks.txt * admin/unidata/IVD_Sequences.txt * admin/unidata/IdnaMappingTable.txt * admin/unidata/NormalizationTest.txt * admin/unidata/PropertyValueAliases.txt * admin/unidata/ScriptExtensions.txt * admin/unidata/Scripts.txt * admin/unidata/SpecialCasing.txt * admin/unidata/UnicodeData.txt * admin/unidata/confusables.txt * admin/unidata/copyright.html * admin/unidata/emoji-data.txt * admin/unidata/emoji-sequences.txt * admin/unidata/emoji-test.txt * admin/unidata/emoji-zwj-sequences.txt * test/manual/BidiCharacterTest.txt: Updated files from Unicode 15.0. * admin/unidata/unidata-gen.el (unidata-file-alist): Add new ranges. * lisp/international/fontset.el (script-representative-chars): Add new scripts. (otf-script-alist): Update from latest version. (setup-default-fontset): Add new scripts. * lisp/international/characters.el: Update syntax and category tables for new characters and scripts. (char-width-table): Update for changes in Unicode 15.0. * test/lisp/international/ucs-normalize-tests.el (ucs-normalize-tests--failing-lines-part1) (ucs-normalize-tests--failing-lines-part2): Update per the test results. * doc/lispref/nonascii.texi (Character Properties): Update Unicode version number. * etc/NEWS: Announce support for Unicode 15.0.
* Mark only VS-16 as emojiRobert Pluim2022-08-191-3/+8
| | | | | * admin/unidata/blocks.awk: Only mark U+FE0F as belonging to the 'emoji' script. (Bug#57072)
* (compiled-function-p): New function (bug#56648)Stefan Monnier2022-08-141-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | * lisp/subr.el (compiled-function-p): New function. * test/lisp/international/ucs-normalize-tests.el (ucs-normalize-part1): * lisp/gnus/gnus.el (gnus): * lisp/mh-e/mh-e.el (mh-version): * lisp/emacs-lisp/macroexp.el (emacs-startup-hook): * lisp/emacs-lisp/cl-macs.el (compiled-function): * lisp/emacs-lisp/bytecomp.el (byte-compile-fdefinition) (byte-compile, display-call-tree): * lisp/emacs-lisp/byte-opt.el (<toplevel-end>): * lisp/emacs-lisp/advice.el (ad-compiled-p): * lisp/cedet/semantic/bovine.el (semantic-bovinate-stream): * lisp/loadup.el (macroexpand-all): * admin/unidata/unidata-gen.el (unidata--ensure-compiled): Use it. * lisp/emacs-lisp/pcase.el (pcase-mutually-exclusive-predicates): Add entries for it. (pcase--split-pred): Use it. * lisp/help-fns.el (help-fns-function-description-header): Use `functionp`. (help-fns--var-safe-local): Use `compiled-function-p`.
* Rename generate-file to generate-lisp-fileLars Ingebrigtsen2022-06-051-10/+9
| | | | | | | | | | | | | | | * lisp/url/url-cookie.el (url-cookie-write-file): * lisp/international/titdic-cnv.el (tit-process-header) (miscdic-convert): * lisp/international/ja-dic-cnv.el (skkdic-convert): * lisp/international/emoji.el (emoji--generate-file): * lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate--rubric): * admin/unidata/unidata-gen.el (unidata-gen-file) (unidata-gen-charprop): Adjust callers. * lisp/emacs-lisp/generate-lisp-file.el: Renamed from generate-file.el. Also rename some keyword parameters and require a generator function.
* Add convenience functions for generating Emacs Lisp filesLars Ingebrigtsen2022-06-051-30/+14
| | | | | | | | | | | | | | | | | | * lisp/url/url-cookie.el (url-cookie-write-file): * lisp/international/titdic-cnv.el (tit-process-header): * lisp/international/ja-dic-cnv.el (skkdic-convert): * lisp/international/emoji.el (emoji--generate-file): * lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate--rubric) * admin/unidata/unidata-gen.el (unidata-gen-file) (unidata-gen-charprop): Use the new functions. * lisp/emacs-lisp/generate-file.el: New file to provide convenience functions for generated files. It's not always trivial to know which parts of the trailer that has to be obfuscated to avoid not getting byte-compiled etc, and some parts of the headers/trailers are usually forgotten when hand-coding these.
* Fix 'bidi-class' property of unassigned codepointsEli Zaretskii2022-05-041-3/+9
| | | | | | | | | | | | * admin/unidata/unidata-gen.el (unidata-file-alist): Update the default values of 'bidi-class' according to the latest Unicode Standard. * admin/notes/unicode: Mention possible changes in DerivedBidiClass.txt that need to be reflected in unidata-gen.el. * lisp/international/characters.el (#xfb50, #xfdf0): Fix the Arabic block characters. (Bug#55256)
* Add textsec-domain-suspicious-pLars Ingebrigtsen2022-01-184-3/+8970
| | | | | | | | | | | | | | * .gitignore: Ignore idna-mapping.el. * admin/notes/unicode: Note idna-mapping file. * admin/unidata/IdnaMappingTable.txt: New file. * admin/unidata/Makefile.in (all): Generate idna-mapping.el. * admin/unidata/unidata-gen.el (unidata-gen-idna-mapping): Generate. * lisp/international/textsec.el (textsec-domain-suspicious-p): New function.
* Add textsec support for confusable charactersLars Ingebrigtsen2022-01-184-1/+9673
| | | | | | | | | | | | | | | | * admin/notes/unicode: Note the confusables.txt file. * admin/unidata/Makefile.in (${unidir}/uni-confusable.el): Generate the confusable file. * admin/unidata/README (https): Add confusables.txt. * admin/unidata/confusables.txt: New file. * admin/unidata/unidata-gen.el (unidata-gen-confusable): Parse the confusables.txt file. * lisp/international/textsec.el (textsec-ascii-confusable-p) (textsec-unconfuse-string): New functions.
* Fix minor inconsistencies in 'char-script-table'Eli Zaretskii2022-01-171-2/+4
| | | | | | | | | | * admin/unidata/blocks.awk (name2alias): Map some obscure blocks to their native scripts, to follow Scripts.txt. * lisp/international/characters.el (char-script-table): Add few exceptions. * lisp/international/fontset.el (script-representative-chars): Remove scripts no longer used.
* Avoid loading the possibly stale unidata-gen.elc fileLars Ingebrigtsen2022-01-171-1/+1
| | | | | * admin/unidata/Makefile.in (${unidir}/uni-scripts.el): Fix .elc staleness. (Should probably be fixed in a different way.)
* Add support for functions that deal with Unicode scriptsLars Ingebrigtsen2022-01-176-8/+5365
| | | | | | | | | | | | | | | | | | | * admin/unidata/Makefile.in (${unidir}/uni-scripts.el): Build uni-scripts.el. * admin/unidata/Scripts.txt: * admin/unidata/ScriptExtensions.txt: * admin/unidata/PropertyValueAliases.txt: New files from Unicode. * admin/unidata/README: Update. * admin/unidata/unidata-gen.el (unidata-gen-charprop): Allow writing other data, too. (unidata-gen-scripts, unidata-gen--read-script-aliases) (unidata-gen--insert-file): New functions to parse the Script* files. * lisp/international/textsec.el: Implement some functions that work on scripts.
* Avoid user environment interfering with bootstrapGlenn Morris2022-01-121-0/+3
| | | | | | | * Makefile.in, admin/unidata/Makefile.in: * doc/misc/Makefile.in, lib-src/Makefile.in: Don't export user environment variables that can affect running emacs. (Bug#53038)
* Merge from origin/emacs-28Eli Zaretskii2022-01-015-5/+5
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 836be7a112 ; * etc/refcards/ru-refcard.tex: Update Copyright year. 86cbc6ee4a * lisp/net/tramp-sh.el: Adapt copyright year ebe8772f65 ; Minor fixes related to copyright years 23c1ee6989 ; * test/manual/etags/ETAGS.good_N: Adjust to copyright ye... 8d3fc7ec89 * src/xfaces.c (face_for_font): Make 'hash' be uintptr_t. 19dcb237b5 ; Add 2022 to copyright years. # Conflicts: # etc/NEWS # etc/refcards/ru-refcard.tex # lib/cdefs.h # lisp/erc/erc-dcc.el # lisp/erc/erc-imenu.el # lisp/erc/erc-replace.el # lisp/image-dired.el # lisp/progmodes/xref.el # m4/alloca.m4 # m4/byteswap.m4 # m4/errno_h.m4 # m4/getopt.m4 # m4/gnulib-common.m4 # m4/inttypes.m4 # m4/stddef_h.m4 # m4/stdint.m4 # m4/sys_socket_h.m4
| * ; Add 2022 to copyright years.Eli Zaretskii2022-01-015-5/+5
| |
* | Put AM_V_GEN etc. firstPaul Eggert2021-12-201-5/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the recent changes to src/verbose.mk.in, it’s more important to be consistent about putting AM_V_GEN and similar macros at the start of a rule’s recipe, since ‘make’ now outputs the diagnostic before it executes the recipe rather than the shell outputting it. Most of the uses were already this way, but there were a few outliers. Problem reported by Pip Cet. * Makefile.in (${srcdir}/info/dir): * admin/unidata/Makefile.in (${unidir}/charprop.el, ${unifiles}) (${unidir}/emoji-labels.el): * lib/Makefile.in (libgnu.a, libegnu.a): * lisp/Makefile.in (TAGS): * src/Makefile.in (lisp.mk, Emacs): * test/Makefile.in (%.log, $(test_module)): Put AM_V_GEN and similar macros first.
* | * admin/unidata/emoji-zwj.awk: Quote functions properly.Robert Pluim2021-11-241-3/+3
| |
* | Fix the build broken by recent commitsEli Zaretskii2021-11-061-3/+3
| | | | | | | | | | * admin/unidata/Makefile.in (${unifiles}) (${unidir}/emoji-labels.el): Fix typos in last commits.
* | Fix up emoji-labels.el generation incantationLars Ingebrigtsen2021-11-061-1/+1
| | | | | | | | | | * admin/unidata/Makefile.in (${unidir}/emoji-labels.el): Make generation more silent.
* | Add emoji insertion support to EmacsLars Ingebrigtsen2021-11-063-2/+5001
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * .gitignore: Ignore the generated emoji-labels.el file. * admin/unidata/Makefile.in (${unidir}/emoji-labels.el): Generate the emoji-labels.el file. (gen-clean): Delete it. * admin/unidata/README (https): Note the source for the Unicode file that has emoji categorisations. * admin/unidata/emoji-test.txt: Import another Unicode file. * doc/emacs/mule.texi (Input Methods): Document the new key bindings. * lisp/international/emoji.el: New file. * lisp/international/mule-cmds.el (ctl-x-map): Bind the emoji commands.
* | ; Revert parts of previous commitStefan Kangas2021-10-221-28/+28
| | | | | | | | | | | | | | | | | | | | | | | | * admin/unidata/unidata-gen.el (unidata-gen-table) (unidata-gen-table-symbol, unidata-gen-table-integer) (unidata-gen-table-numeric, unidata-gen-table-word-list) (unidata-describe-decomposition): * lisp/composite.el (unicode-category-table): * lisp/files.el (recover-file): * lisp/frame.el (frames-on-display-list, frame-background-mode): * lisp/language/indian.el (script-regexp-alist): Revert parts of previous commit; it seemed innocent but caused issues.
* | Remove redundant #' before lambdaStefan Kangas2021-10-211-28/+28
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * admin/unidata/unidata-gen.el (unidata-gen-table) (unidata-gen-table-symbol, unidata-gen-table-integer) (unidata-gen-table-numeric, unidata-gen-table-word-list) (unidata-describe-decomposition): * lisp/apropos.el (apropos-user-option): * lisp/bookmark.el (bookmark-bmenu-search): * lisp/composite.el (unicode-category-table): * lisp/elec-pair.el (electric-pair--balance-info): * lisp/electric.el (electric-quote-chars): * lisp/emulation/cua-base.el (cua-rectangle-mark-key): * lisp/epa-hook.el (epa-file-encrypt-to): * lisp/faces.el (face-font-selection-order) (face-font-family-alternatives, face-font-registry-alternatives) (face-valid-attribute-values, tty-run-terminal-initialization): * lisp/files.el (recover-file, file-expand-wildcards): * lisp/frame.el (frames-on-display-list): * lisp/help-at-pt.el (help-at-pt-display-when-idle): * lisp/help-fns.el (help-fns--face-attributes): * lisp/ido.el (ido-mode, ido-unc-hosts): * lisp/isearch.el (isearch-highlight-regexp) (isearch-highlight-lines-matching-regexp): * lisp/language/indian.el (script-regexp-alist): * lisp/language/lao.el: * lisp/leim/quail/ipa.el (ipa-x-sampa-prepend-to-keymap-entry): * lisp/mh-e/mh-folder.el (mh-process-commands): * lisp/mh-e/mh-mime.el (mh-display-with-external-viewer): * lisp/ps-mule.el (ps-mule-end-job): * lisp/ps-print.el (ps-color-scale, ps-background-pages) (ps-background-text, ps-background-image, ps-background) (ps-begin-job, ps-print-translation-table): * lisp/recentf.el (recentf-sort-ascending) (recentf-sort-descending, recentf-sort-basenames-ascending) (recentf-sort-basenames-descending) (recentf-sort-directories-ascending) (recentf-sort-directories-descending): * lisp/replace.el (occur-engine-add-prefix): * lisp/select.el (xselect--encode-string): * lisp/server.el (server-use-tcp): * lisp/ses.el (ses-sort-column): * lisp/sort.el (sort-columns): * lisp/term/ns-win.el (window-system-initialization): * lisp/tree-widget.el (tree-widget-image-formats): * lisp/whitespace.el (whitespace-report-region): Remove redundant #' before lambda.
* Handle VS-16 correctly for non-emoji codepointsRobert Pluim2021-10-192-26/+41
| | | | | | | | | | | | | | | | | * admin/unidata/blocks.awk: Remove emoji overrides for codepoints with Emoji_Presentation = No, they're no longer necessary. * lisp/composite.el: Remove #xFE0F (VS-16) from the range handled by `compose-gstring-for-variation-glyph' so it can be handled by `font_range'. * src/composite.c (syms_of_composite): New variable `auto-composition-emoji-eligible-codepoints'. * admin/unidata/emoji-zwj.awk: Generate value for `auto-composition-emoji-eligible-codepoints'. Add `composition-function-table' entries for 'codepoint + U+FE0F' for them. * src/font.c (codepoint_is_emoji_eligible): New function to check if we should try to use the emoji font for a codepoint. (font_range): Use it.
* Enhance font_range to check for emoji composition triggersRobert Pluim2021-09-271-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | If the codepoint that triggered composition is from the emoji script, use the emoji font to check the string being composed, rather than the font of the first character of the string. This makes e.g. "emoji codepoint with Emoji_Presentation = No followed by VS-16 (FE0F)" display the emoji version of the glyph for that codepoint. * admin/unidata/blocks.awk: Add VS-1 through VS-16 to the emoji script. * src/composite.c (autocmp_chars): Accept additional argument CH for the codepoint that triggered composition, pass it to font_range. (composition_reseat_it, find_automatic_composition): Pass codepoint that triggered composition to autocmp_chars. * src/font.c (font_range): Accept additional argument CH for the triggering codepoint. If the codepoint is from the 'emoji' script, use Vscript_representative_chars to find the font to use for the composition attempt. (syms_of_font): Add Qemoji symbol. * src/font.h: Update font_range prototype for argument CH. * etc/NEWS: Announce change.
* Generate skin tone compositions from emoji-sequences.txtRobert Pluim2021-09-242-13/+5
| | | | | | | | | | | | | | | | Read skin tone modifier sequences from emoji-sequences.txt and add them to the per-character composition rules derived from emoji-zwj-sequences.txt, rather than adding them as lookback rules for the skin tone modifiers. This avoids an issue with the application of such lookback rules. See Bug#39799, specifically <https://lists.gnu.org/archive/html/bug-gnu-emacs/2021-09/msg01878.html> for more details. * admin/unidata/Makefile.in (zwj): Add emoji-sequences.txt as a dependency. * admin/unidata/emoji-zwj.awk: Match RGI_Emoji_ZWJ_Sequence and RGI_Emoji_Modifier_Sequence. Remove manual addition of skin tone composition rules with lookback.
* Add a few more missing emoji overridesRobert Pluim2021-09-241-1/+4
| | | | * admin/unidata/blocks.awk: Add some more emoji overrides.
* Update provenance comment in charscript.elRobert Pluim2021-09-241-1/+1
| | | | | * admin/unidata/blocks.awk: Update comment about sources used to generate charscript.el.