1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-11 17:31:35 -07:00
Commit graph

2763 commits

Author SHA1 Message Date
Glenn Morris
23252d4ccf Improve reproducibility of generated leim-list.el
* lisp/international/quail.el (quail-update-leim-list-file):
Sort the quail directory listing, for more stable output.
2017-09-11 18:11:37 -04:00
Mark Oteiza
96c2c098ae Make ucs-names a hash table (Bug#28302)
* etc/NEWS: Mention the type change.
* lisp/descr-text.el (describe-char): Use gethash to access ucs-names.
Hardcode BEL's name into the function instead of needlessly mapping
over the hash table in the spirit of rassoc.
* lisp/international/mule-cmds.el (ucs-names): Fix variable and
function docstrings.  Initialize a hash table for ucs-names--the
number of entries is 42845 here.  Switch to hash-table
getters/setters.
(mule--ucs-names-annotation): Use hash-table getter.
(char-from-name): Upcase the string if ignore-case is truthy.
* lisp/leim/quail/latin-ltx.el: Use maphash instead of dolist.
2017-08-31 17:22:39 -04:00
Noam Postavsky
9d7973530f Optimize skkdic conversion (Bug#28043)
The primary speedup comes from the optimizing lookup-nested-alist and
set-nested-alist for the case where the key is a string.  This brings
the time down to less than half the original.

* lisp/international/mule-util.el (lookup-nested-alist)
(set-nested-alist): Use `assq' instead of `assoc' when KEYSEQ is a
string.

* lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
(skkdic-convert-okuri-nasi): Use progress-reporter functions instead
of calculating ratio of work done inline.

(skkdic-reduced-candidates): Call `char-category-set' on the first
character of the string directly, instead of using a regexp for the
character category.
(skkdic--japanese-category-set): New constant.
(skkdic-collect-okuri-nasi): Just set
`skkdic-okuri-nasi-entries-count' at once at the end rather than
updating it throughout the loop.

(skkdic-convert-postfix skkdic-convert-prefix)
skkdic-get-candidate-list, skkdic-collect-okuri-nasi)
(skkdic-extract-conversion-data): Use `match-string-no-properties'
instead of `match-string'.
2017-08-21 20:52:25 -04:00
Paul Eggert
83f0d60e49 Don’t adjust CRLF in file names
* doc/misc/gnus.texi (Non-ASCII Group Names):
* etc/NEWS:
* test/lisp/net/tramp-tests.el (tramp--test-utf8):
Use utf-8-unix, not utf-8, for default-file-name-coding-system, so
that CRLF in file names is left alone.
* lisp/international/mule-cmds.el (set-default-coding-systems):
Do not alter CRLF in file name coding systems.
(prefer-coding-system): Ignore differences in CRLF processing when
checking whether we used the user-specified file name coding system.
* test/src/fileio-tests.el: New file.
2017-08-19 17:17:09 -07:00
Eli Zaretskii
e962ca57e0 Don't call the same hook twice due to obsolete aliases
* lisp/international/robin.el (robin-activate):
* lisp/international/quail.el (quail-activate):
* lisp/international/mule-cmds.el (deactivate-input-method):
* lisp/emulation/viper-init.el (viper-deactivate-input-method):
Don't call the same hook twice, when the obsolete and the
advertised symbols are aliased.  (Bug#28118)
2017-08-18 12:33:08 +03:00
Alexander Gramiak
9723782161 Use help-mode xrefs in describe-font
* lisp/international/mule-diag.el (describe-font): Use help-setup-xref
(Bug#27890).
2017-08-08 19:57:24 -04:00
Mark Oteiza
63b5a4a65e Replace some uses of eval
There are a number of places where eval is used unnecessarily to get
or set the value of a symbol.
* lisp/calendar/calendar.el (diary-date-forms): Use default-value in
custom setter.
* lisp/desktop.el (desktop-clear): Use set-default instead.
* lisp/international/ogonek.el (ogonek-read-encoding): Use
symbol-value.
2017-08-08 15:10:49 -04:00
Eli Zaretskii
9df49cddae Unify CNS11643-15 in a way that avoids segfaults
* lisp/international/mule-conf.el: Redo unification of
cns11643-15.  (Bug#27964)
(chinese-cns11643-15): Add the missing :unify-map attribute.
2017-08-05 16:47:14 +03:00
Eli Zaretskii
5840399b76 Avoid segfaults while producing Punct.el
* lisp/international/mule-conf.el: Undo unification of
cns11643-15, as that causes segfaults during bootstrap.
(Bug#27964)
2017-08-05 16:28:09 +03:00
Eli Zaretskii
2cb9805702 Unify CNS11643-15
* lisp/international/mule-conf.el (chinese-cns11643-15): Add a
unify-charset form for it.  (Bug#27964)
2017-08-05 12:23:08 +03:00
Eli Zaretskii
fd3bcfa36e Update Unicode data and files to Unicode 10.0
* admin/notes/unicode:
* admin/unidata/README:
* admin/unidata/BidiBrackets.txt:
* admin/unidata/BidiMirroring.txt:
* admin/unidata/Blocks.txt:
* admin/unidata/IVD_Sequences.txt:
* admin/unidata/NormalizationTest.txt:
* admin/unidata/SpecialCasing.txt:
* admin/unidata/UnicodeData.txt:
* lisp/international/characters.el:
* lisp/international/fontset.el (script-representative-chars):
* lisp/international/mule-cmds.el (ucs-names): Update per Unicode 10.0.
2017-07-08 13:02:47 +03:00
Philipp Stephani
c3813b2aa8 Allow local variables section to begin with a square bracket
Fixes Bug#27391.

* lisp/international/mule.el (find-auto-coding): Fix regular
expression for "Local Variables" section.

* test/lisp/international/mule-tests.el (find-auto-coding--bug27391):
Add unit test.
2017-06-17 16:10:51 +02:00
Andreas Schwab
46279c1ea1 * international/characters.el: Update list of zero and full width
characters according to Unicode 9.0.0.
2017-06-17 14:57:20 +02:00
Glenn Morris
0cd94b8a03 ; Update some more Maintainer: header comments
; This removes some people who are absent from commit logs or mailing
; lists for upwards of a decade.
2017-06-05 21:08:07 -04:00
Stefan Monnier
2eee73e7bf * lisp/international/rfc1843.el: Don't require CL. Use lexical-binding. 2017-05-23 09:18:26 -04:00
Stefan Monnier
f037e98fe9 * lisp/international/utf7.el: Don't require CL. Use lexical-binding. 2017-05-23 09:12:06 -04:00
Glenn Morris
8452db0409 Put license information in each generated uni-*.el
* admin/unidata/unidata-gen.el (unidata-gen-file):
Get Copyright line from copyright.html.
Put information in file header, not separate README.
(unidata-gen-charprop): Mention the source location.
* lisp/international/README: Remove file.
2017-05-09 21:31:46 -04:00
Paul Eggert
f3a0f3a116 * lisp/international/README: Update to match current list. 2017-04-06 15:00:04 -07:00
Paul Eggert
90f5282e20 Merge from origin/emacs-25
ec4226d * lisp/woman.el (woman): Fix docstring prefix arg description.
2b774fa Mention "editor" in Emacs man page header
ae60d0c Document problems with nerd-fonts
2fdb5a9 ; Details about pinning Emacs to w32 task bar
5c3105e * doc/lispref/modes.texi (Derived Modes): Make example more i...
4c51ef4 Clarify what is the "cursor"
8303c32 ; * etc/NEWS: Copyedits.
3f7493e ; Fix a typo in comment
c54cf8d Improve commentary in lisp.h
8b92f86 ; * admin/make-tarball.txt: Cross-reference admin/release-pro...
0ba9932 Disable native completion for ipython (Bug#25067)
38fc456 Fix a typo in ada-mode manual
00e75ba ; * src/coding.c (Fencode_coding_region): Fix a typo in the d...
a541c21 Clarify documentation of 'bufferpos-to-filepos' and 'filepos-...

# Conflicts:
#	etc/NEWS
#	etc/PROBLEMS
2017-03-19 12:34:03 -07:00
Glenn Morris
79abec2fee Fix for coding-system completion (bug#23670)
* lisp/international/mule.el (read-buffer-file-coding-system):
Ensure that completion-pcm--delim-wild-regex is enclosed in parens,
so that completion-pcm--pattern->regex can append "*?".
2017-03-01 16:53:08 -05:00
Phillip Lord
514a14ffd8 Do not use find-file non-interactively
* lisp/international/titdic-cnv (miscdic-convert): Use
   insert-file-contents in place of find-file.
2017-02-28 21:12:59 +00:00
Michal Nazarewicz
9f9863e502 Fix build failure caused by ‘Generate upcase and downcase tables from Unicode’
The [5ec3a584: Generate upcase and downcase tables from Unicode data]
commit broke bootstrap from a truly clean tree (e.g. a fresh clone or
one created with ‘make extraclean’), see
<http://hydra.nixos.org/build/48774928>.

The failure was caused by characters.el trying to read Unicode
property tables which aren’t available so early in the build process.

Wrap the part that requires Unicode property tables in a condition
checking if those are available.  If they aren’t they case and syntax
tables won’t be fully set but later on, the characters.el file will be
evaluated again and this time with Unicode properties available so
final Emacs ends up with the exact same case and syntax tables.
2017-02-17 16:36:44 +01:00
Paul Eggert
cb70725584 ; Spelling, punctuation and minor wording fixes 2017-02-16 09:18:21 -08:00
Michal Nazarewicz
5ec3a58462 Generate upcase and downcase tables from Unicode data (bug#24603)
Use Unicode data to generate case tables instead of mostly repeating
them in lisp code.  Do that in a way which maps ‘Dz’ (and similar)
digraph to ‘dz’ when down- and ‘DZ’ when upcasing.

https://debbugs.gnu.org/cgi/bugreport.cgi?msg=89;bug=24603 lists all
changes to syntax table and case tables introduced by this commit.

* lisp/international/characters.el: Remove case-pairs defined with
explicit Lisp code and instead use Unicode character properties.

* test/src/casefiddle-tests.el (casefiddle-tests--characters,
casefiddle-tests-casing): Update test cases which are now working
as they should.
2017-02-15 16:54:06 +01:00
Glenn Morris
ef6132c55f Fix recent bootstrap issue by moving string-to-list
* lisp/international/mule-util.el (string-to-list, string-to-vector):
Move from here...
* lisp/subr.el (string-to-list, string-to-vector): ...to here.
The implementation is trivial and at least string-to-list
has ended up being needed early during bootstrap.
2017-02-12 19:02:56 -08:00
Eli Zaretskii
a541c21e86 Clarify documentation of 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
* doc/lispref/nonascii.texi (Text Representations): Clarify that
'exact' value of QUALITY argument to 'bufferpos-to-filepos' and
'filepos-to-bufferpos' can lead to expensive and slow processing.

* lisp/international/mule-util.el (filepos-to-bufferpos)
(bufferpos-to-filepos): Doc fix.  (Bug#25626)
2017-02-05 21:50:49 +02:00
Paul Eggert
bcf244ef9b Merge from origin/emacs-25
2e2a806 Fix copyright years by hand
5badc81 Update copyright year to 2017
2017-01-01 01:10:47 -08:00
Paul Eggert
4f7a90bf6c Merge from origin/emacs-25
9adb101 Document 'describe-fontset'
229315c ; Add missing symbol quoting.
3d94931 Repair desktop restoration on text terminals
43022f9 Ignore forward-sexp-function in js-mode indentation code
b19fb49 Improve documentation of 'define-coding-system'
467768f Fix Bug#25162
6db78ae Fix a typo in define-abbrev-table
5f7d906 Bump makeinfo requirement from 4.7 to 4.13
442e2f6 Fixes related to select-enable-clipboard
e4ac450 Define struct predicate before acccesors
08decbd Doc fix for vc-git
5531e75 Further improve make-dist checking
953bf67 Improve previous make-dist change
129645a Make make-dist --snapshot do some sanity checks

# Conflicts:
#	lisp/menu-bar.el
2017-01-01 01:02:45 -08:00
Paul Eggert
5badc81c1c Update copyright year to 2017
Run admin/update-copyright.
2016-12-31 19:42:26 -08:00
Eli Zaretskii
b19fb4995e Improve documentation of 'define-coding-system'
* lisp/international/mule.el (define-coding-system): Warn against
possible infinite recursion in pre-write-conversion and
post-read-conversion functions.  (Bug#25203)
2016-12-16 10:49:31 +02:00
Paul Eggert
c5532f5a5c Merge from origin/emacs-25
3980903 ; Update ChangeLog.2, etc/AUTHORS and ldef-boot.el for Emacs ...
5878abf Fix 'expand-file-name' during startup on MS-Windows
2016-12-07 12:40:43 -08:00
Eli Zaretskii
5878abf87b Fix 'expand-file-name' during startup on MS-Windows
* src/w32.c (w32_init_file_name_codepage): New function, resets
file_name_codepage and w32_ansi_code_page to undo the values
recorded during dumping.
(codepage_for_filenames): Fix an embarrassing typo.  Ignore the
cached value of file-name encoding if it is nil, i.e. not
initialized yet.  Actually cache the last used file-name encoding
to avoid calling APIs when not necessary.

* src/w32.h (w32_init_file_name_codepage): Add prototype.

* src/w32term.c (syms_of_w32term): Set the value of
w32_unicode_filenames according to the OS version.  This avoids
resetting it during startup, which then causes temacs to run with
the incorrect value.

* src/emacs.c (main): Call w32_init_file_name_codepage early
during the startup.

* src/fileio.c (Fexpand_file_name) [WINDOWSNT]: Update 'newdir'
after converting $HOME to a UTF-8 string, so that 'newdirlim' is
consistent with it.  (Bug#25038)

* lisp/international/mule-cmds.el (set-locale-environment): Set
'default-file-name-coding-system' to the ANSI codepage even in
non-interactive sessions.

* lisp/files.el (directory-abbrev-alist, abbreviated-home-dir):
Doc fix.
(abbreviate-file-name): Decode 'abbreviated-home-dir' if it is a
unibyte string.

* doc/lispref/files.texi (Directory Names): Index
'directory-abbrev-alist'.
2016-11-28 17:43:25 +02:00
Paul Eggert
c61ee94959 Merge from origin/emacs-25
4af5981 Add a comment in generated refcards about the source
ef880a5 ; * etc/refcards/calccard.tex: Remove obsolete comment.
4887e7c js-mode: Fix indent problem after a regexp
e992ac0 Fix sluggish display of symbols in UTF-8 language environment
1fc101b Don't confuse how Texinfo outputs @var with the input
91aa5d1 * doc/lispref/display.texi (Scroll Bars): * doc/lispref/frame...
f758fcd * doc/emacs/cmdargs.texi (Initial Options): Copyedit for --da...
5b0cddd More fixes in copyright notices in etc/refcards/
f994c20 Update copyright text in refcards
9ad2ae7 Fix Outline command names
26c3554 Send text received by bracketed paste to process
db0b58d Correct the statement about programming modes always running ...
78aece4 Improve documentation of 'occur'
eb364fd Do call debugger on failed cl-assert
3ef4ee8 Avoid infloop in python
8da810f Don't refer to obsolete FEATURE-unload-hook
4f478ca Improve documentation of dabbrevs
7272e5d * lisp/chistory.el (list-command-history): Doc fix.  (Bug#24890)
89b7482 * lisp/simple.el (set-mark-command): Doc fix.  (Bug#24890)
3b199f7 Improve documentation of some Help commands
93d3a0e Fix documentation of yes-or-no prompts
af04919 Fix documentation of partial completion style
ed80184 Fix documentation of the mode line on emacsclient frames
e6be855 Fix description of 'C-z' in User manual
16f7007 Improve and clarify documentation of Outline Mode
31d93aa Add Emacs version number to nt/README.W32
0b6b815 Fix python-mode hideshow regexp
dc152c5 Modernize usage of 'macOS' in doc and comments
84c5343 Prefer comments /* like this */ in C code
bb61e50 * doc/lispref/loading.texi (Autoload): Better link (Bug#24845).
3ef86fd Clarify documentation of face attribute functions
de51d59 ; * nt/README.W32: Minor copyedits.
db436e9 Don't call debug on failed cl-assert

# Conflicts:
#	doc/emacs/cmdargs.texi
#	etc/NEWS
#	etc/PROBLEMS
#	lisp/auth-source.el
#	lisp/net/tramp-sh.el
2016-11-19 14:31:05 -08:00
Eli Zaretskii
e992ac0a63 Fix sluggish display of symbols in UTF-8 language environment
* lisp/international/fontset.el (setup-default-fontset): Make sure
Symbola and FreeMono are set up in the default fontset as belonging
to the "iso10646-1" registry.  In the UTF-8 locale, this avoids a
long and futile search for a suitable font, whose side effect is a
lot of consing, which then hits the font-cache compacting issue,
and causes very sluggish redisplay of characters displayed by
these fonts.  All this happens because the default for the
registry is "iso8859-1".  (Bug#24953)
2016-11-16 18:11:33 +02:00
Ken Brown
cbed42838e Use the new 'file-name-case-insensitive-p' function
* lisp/international/mule.el (auto-coding-alist-lookup):
* lisp/files.el (file-truename):
(abbreviate-file-name, set-auto-mode, file-relative-name):
* package.el (package-untar-buffer): Use
'file-name-case-insensitive-p' instead of 'system-type' to test
case-insensitivity.
2016-11-13 22:01:59 -05:00
Paul Eggert
dc152c54f4 Modernize usage of 'macOS' in doc and comments
Apple changed the spelling of its operating system again, to "macOS",
effective with macOS 10.12 Sierra (2016-09-20).  Change Emacs
documentation and comments to match this.  Stick with older OS
spellings ("OS X", "Mac OS X") when talking about older releases where
the older names are more correct.
2016-11-06 00:42:03 -07:00
Paul Eggert
ae0a1a890e Merge from origin/emacs-25
acae275 ; Spelling fixes
d8fac73 Update README for precompiled windows Emacs.
23570fd Clarify documentation of 'vc-responsible-backend' wrt symlinks
f708cb2 Clarify doc string of 'transpose-sexps'
cd05b1d Fix docstring of 'browse-url-firefox-new-window-is-tab'
bdc89eb Improve documentation of 'font-lock-remove-keywords'
4a0c590 Fix documentation of the command summary key
0221b7a Mark relocation workarounds with REL_ALLOC
2016-11-04 15:02:03 -07:00
Paul Eggert
6a20bd3579 Merge from origin/emacs-25
dbb3410 python.el: Fix detection of native completion in Python 3 (bu...
91c97b6 * Makefile.in (install-arch-indep): Skip etc/refcards/emacsve...
9c1cb8d * lisp/subr.el (set-transient-map): Exit for unbound events (...
9c247d2 Update category-table for Chinese characters
43986d1 Inhibit buffer relocation during regex searches
fee4cef Revert fixes to allocation of regex matching
2016-11-04 15:01:17 -07:00
Paul Eggert
acae275b27 ; Spelling fixes 2016-11-04 14:50:59 -07:00
Eli Zaretskii
9c247d200b Update category-table for Chinese characters
* lisp/international/characters.el (standard-category-table):
Update the ranges of Han and Chinese characters.  (Bug#24798)
2016-10-26 15:58:07 +03:00
Paul Eggert
6129cd03e2 Merge from origin/emacs-25
b73f466 * lisp/cus-start.el (exec-path): Handle nil elements.  (Bug#2...
55ebb70 Catch the imenu-unavailable error in sh-mode completion table
993acb5 ; Minor fix for last change in characters.el
30c4bb5 More char-width fixes
4eb4463 Fix char-width-table values for some Emoji
528997d Keep point when switching from and to *terminal* buffer
2130005 * INSTALL: Use correct Emacs release number 25.
10835b1 Avoid crashes due to objects read with the #n=object form
4de671d Improve doc string of 'completion-at-point-functions'
ceb46f0 Fix crash in evaluating functions
d8374c4 * src/filelock.c (current_lock_owner): Update comment.
2016-10-23 02:43:17 -07:00
Eli Zaretskii
993acb5088 ; Minor fix for last change in characters.el 2016-10-16 14:22:24 +03:00
Eli Zaretskii
30c4bb58ca More char-width fixes
* lisp/international/characters.el (char-width-table): More fixes
according to the latest EastAsianWidth.txt.  (Bug#24705)
2016-10-16 14:19:32 +03:00
Eli Zaretskii
4eb4463abf Fix char-width-table values for some Emoji
* lisp/international/characters.el (char-width-table): Add missing
range U+1F400..U+1F43E.  (Bug#24699)

* admin/notes/unicode: Mention the need to verify char-width-table
setting against data in EastAsianWidth.txt.
2016-10-15 17:58:57 +03:00
Joakim Jalap
c1021ba910 Fix "C-u" when an input method is active
* lisp/international/quail.el (quail-input-method): Defer to the
input method iff 'overriding-terminal-local-map' is
'universal-argument-map' and the given key has no binding there.
(Bug#22958)
2016-08-13 12:26:27 +03:00
Noam Postavsky
e333157cba Optimize ucs-normalize.el compilation
* lisp/international/ucs-normalize.el (ucs-normalize-combining-chars-regexp):
(quick-check-list-to-regexp): Use regexp-opt-charset instead of
regexp-opt.
* lisp/international/ucs-normalize.el (quick-check-list): Reuse a single
temp buffer for the whole loop.
2016-07-16 13:01:04 -04:00
Dmitry Antipov
a7e302dc1d Prefer 'frame-parameter' where it is expected to be a bit faster
* lisp/international/mule-diag.el (mule-diag):
* lisp/menu-bar.el (menu-bar-showhide-scroll-bar-menu):
* lisp/mouse.el (mouse-drag-line, font-menu-add-default):
* lisp/scroll-bar.el (toggle-scroll-bar, toggle-horizontal-scroll-bar):
* lisp/faces.el (x-resolve-font-name): Use 'frame-parameter'.
2016-07-06 06:05:15 +03:00
Dmitry Antipov
4bd3503991 Cleanup around mature character manipulation functions
* lisp/international/mule-diag.el (decode-codepage-char): Remove.

* lisp/ldefs-boot.el (toplevel): Adjust accordingly.

* lisp/subr.el (toplevel): Do not advertise calling conventions
for 'decode-char' and 'encode-char'.

* src/charset.c (Fdecode_char, Fencode_char): Remove unused 3rd arg.
2016-06-30 08:37:46 +03:00
Eli Zaretskii
037f82a7e7 * lisp/international/characters.el (standard-case-table): Improve last change. 2016-06-23 22:44:08 +03:00
Eli Zaretskii
92289cec7c Improve results of 'upcase' for characters with title-case
* lisp/international/characters.el (standard-case-table): Swap the
order of some lines, to have 'upcase' return the upper-case
variant, not the title-case, for some characters whose lower-case
map to the same codepoints.  (Bug#23833)
2016-06-23 22:22:39 +03:00