Commit graph

2788 commits

Author SHA1 Message Date
Eli Zaretskii
f872b65b2f Improve documentation of 'auto-coding-functions'
* doc/lispref/nonascii.texi (Default Coding Systems): Clarify
that the functions in 'auto-coding-functions' are called both
for decoding and for encoding.

* lisp/international/mule.el (auto-coding-functions): Doc fix.
2019-03-02 10:42:29 +02:00
Eli Zaretskii
04cad5e8ea Fix visiting XML files with non-Unix EOL format
* lisp/international/mule.el (sgml-xml-auto-coding-function)
(sgml-html-meta-auto-coding-function): Don't use
'buffer-file-coding-system' if the buffer is unibyte.
(Bug#34704)
2019-03-02 10:32:06 +02:00
Jean-Christophe Helary
6e0f67b2fc Fix URL in ucs-normalize.el
* lisp/international/ucs-normalize.el: Fix URL of the HFS
normalization reference.  (Bug#34300)
2019-02-03 19:03:41 +02:00
Paul Eggert
26bed8ba10 Update copyright year to 2019
Run 'TZ=UTC0 admin/update-copyright $(git ls-files)'.
2019-01-01 01:01:13 +00:00
Eli Zaretskii
7a4992a0d3 More Symbola-related extensions for default fontset
* lisp/international/fontset.el (setup-default-fontset): Add
few more blocks of symbols and punctuation supported by	latest
Symbola.
2018-11-23 23:33:31 +02:00
Eli Zaretskii
4ae0a75435 Better support for display of U+1F900..U+1F9FF block
* lisp/international/fontset.el (setup-default-fontset): Add
the [#x1F900..#x1F9FF] block to those supported by Symbola.
2018-11-23 22:59:54 +02:00
Eli Zaretskii
df7ed10e4f Fix decoding XML files encoded in ISO-8859
* lisp/international/mule.el (sgml-xml-auto-coding-function):
Avoid signaling an error from coding-system-equal when the XML
encoding tag specifies an encoding whose type is 'charset'.
(Bug#33429)
2018-11-19 18:36:42 +02:00
Eli Zaretskii
7e4229411b Update the locale and language database
* lisp/international/mule-cmds.el (locale-language-names):
Update the list of supported locales.  Use existing language
names where available.
2018-10-06 12:38:36 +03:00
Eli Zaretskii
6e08019af7 Recognize codepage 65001 as a valid encoding
* lisp/international/mule-conf.el (cp65001): Define it as an
alias for UTF-8.
2018-08-21 19:35:31 +03:00
Eli Zaretskii
ec6f588940 Better support utf-8-with-signature and utf-8-hfs in HTML
* lisp/international/mule.el (sgml-html-meta-auto-coding-function):
Support UTF-8 with BOM and utf-8-hfs as variants of UTF-8, and
obey the buffer's encoding if it is one of these variants, instead
of re-encoding in UTF-8 proper.  (Bug#20623)
2018-08-11 12:01:37 +03:00
Ivan Shmakov
155a885158 Reinterpret Esperanto characters in iso-transl as iso-8859-3.
* lisp/international/iso-transl.el (iso-transl-language-alist):
Reinterpret Esperanto characters as iso-8859-3 (were: iso-8859-1).
(Bug#32371)
2018-08-07 18:43:05 +03:00
Eli Zaretskii
0feb6733d4 Display raw bytes as belonging to 'eight-bit' charset
* lisp/descr-text.el (describe-char):
* lisp/simple.el (what-cursor-position): Display characters in the
range #x3FFF80..#x3FFF9F as belonging to charset 'eight-bit', not
'tis620-2533'.
* lisp/international/mule-diag.el (describe-character-set):
Improve description of :supplementary-p.
2018-07-27 09:47:37 +03:00
Eli Zaretskii
36bbdfc017 Update Unicode data files to version 11.0.0 of Unicode
* admin/unidata/UnicodeData.txt:
* admin/unidata/SpecialCasing.txt:
* admin/unidata/NormalizationTest.txt:
* admin/unidata/copyright.html:
* admin/unidata/BidiMirroring.txt:
* admin/unidata/BidiBrackets.txt: Import from Unicode 11.0.
* admin/notes/unicode: Update the URL for OTF script tags.

* lisp/international/mule-cmds.el (ucs-names): Update unused ranges.
* lisp/international/fontset.el (script-representative-chars): Add
hanifi-rohingya, old-sogdian, sogdian, dogra, gunjala-gondi,
makasar, and medefaidrin.
(otf-script-alist): Add old-hungarian.
* lisp/international/characters.el (tbl): Add syntax entries for
Supplemental Mathematical Operators, Miscellaneous Symbols and
Arrows, and Supplemental Punctuation.
Update the list of wide characters.

* test/lisp/international/ucs-normalize-tests.el
(ucs-normalize-tests--failing-lines-part2): Update to match
admin/unidata/NormalizationTest.txt.

* doc/lispref/nonascii.texi (Character Properties): Update the
reference to the Unicode Standard.
* doc/misc/efaq.texi (New in Emacs 26):
* etc/NEWS: Mention compatibility with Unicode 11.0.
2018-06-09 15:41:21 +03:00
Eli Zaretskii
0214ffbe60 Clarify doc string of 'update-glyphless-char-display'
* lisp/international/characters.el
(update-glyphless-char-display): Doc fix.  (Bug#31730)
2018-06-08 18:15:26 +03:00
Eli Zaretskii
3a06e72457 Fix encoding of characters when using GB18030 fonts
* lisp/international/fontset.el (font-encoding-alist): Fix the
GB18030 entry to encode characters correctly when passing them to
the xfont back-end.  (Bug#31315)  See also
http://lists.gnu.org/archive/html/emacs-devel/2008-01/msg00754.html.

(cherry picked from commit bbe2cadc54)
2018-06-02 12:29:15 +03:00
Glenn Morris
4a8ea7d49a * lisp/international/mule.el (keyboard-coding-system): Doc fix.
Since multi-tty, this is always set.
2018-02-23 15:41:29 -05:00
Glenn Morris
66a4e651f3 ; Fix doc typos related to indefinite articles 2018-02-16 15:16:15 -05:00
Paul Eggert
5c7dd8a783 Update copyright year to 2018
Run admin/update-copyright.
2018-01-01 00:57:59 -08:00
Eli Zaretskii
889f07c352 Better support utf-8-with-signature and utf-8-hfs in XML/HTML
* lisp/international/mule.el (sgml-xml-auto-coding-function):
Support UTF-8 with BOM and utf-8-hfs as variants of UTF-8, and
obey the buffer's encoding if it is one of these variants, instead
of re-encoding in UTF-8 proper.  (Bug#20623)
2017-12-15 11:06:07 +02:00
Katsumi Yamaoka
5bcd468a9e Make quail-input-method work when inhibit-read-only is non-nil (bug#29504)
* lisp/international/quail.el (quail-input-method): Work not only
when buffer-read-only is nil but also when inhibit-read-only is non-nil
(bug#29504).
2017-12-11 01:27:17 +00:00
Eli Zaretskii
87baf1242e Fix 'fontset-name-p'
* lisp/international/fontset.el (fontset-name-p): Make the
function work with full fontset names and fontset alias names.
2017-12-10 19:45:25 +02:00
Paul Eggert
a89f0b6f33 maint: shorten https://lists.gnu.org/archive/html/... links 2017-11-25 22:48:12 -08:00
Glenn Morris
5b59841791 Fix doc typos
* lisp/simple.el (line-move-ignore-invisible):
* lisp/sort.el (sort-regexp-fields):
* lisp/cedet/ede.el (project-add-file):
* lisp/gnus/message.el (message-bogus-recipient-p):
* lisp/international/mule.el (define-coding-system):
* lisp/progmodes/ebrowse.el (ebrowse-member-buffer-object-menu):
* lisp/progmodes/xscheme.el (xscheme-allow-output-p)
(scheme-interaction-mode, scheme-debugger-mode)
(xscheme-yank-pop, xscheme-yank-push): Doc fixes.
2017-10-28 17:10:25 -07:00
Paul Eggert
5172fa02cc Prefer HTTPS to HTTP for gnu.org
This fixes some URLs I omitted from my previous pass,
notably those in lists.gnu.org.  Although lists.gnu.org
does not yet support TLS 1.1, TLS 1.0 is better than nothing.
* lisp/erc/erc.el (erc-official-location):
* lisp/mail/emacsbug.el (report-emacs-bug):
Use https:, not http:.
2017-10-01 19:59:01 -07:00
Paul Eggert
bc511a64f6 Prefer HTTPS to FTP and HTTP in documentation
Most of this change is to boilerplate commentary such as license URLs.
This change was prompted by ftp://ftp.gnu.org's going-away party,
planned for November.  Change these FTP URLs to https://ftp.gnu.org
instead.  Make similar changes for URLs to other organizations moving
away from FTP.  Also, change HTTP to HTTPS for URLs to gnu.org and
fsf.org when this works, as this will further help defend against
man-in-the-middle attacks (for this part I omitted the MS-DOS and
MS-Windows sources and the test tarballs to keep the workload down).
HTTPS is not fully working to lists.gnu.org so I left those URLs alone
for now.
2017-09-13 15:54:37 -07:00
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