Commit graph

50 commits

Author SHA1 Message Date
Stefan Monnier
b0e96e554c Use lexical-binding in of all lisp/language
* lisp/international/titdic-cnv.el (pinyin-convert):
Enable lexical-binding in the generated file(s).

* lisp/language/ethio-util.el: Use lexical-binding.
(ethio-tex-to-fidel-buffer): Use `inhibit-read-only`.  Remove unused
vars `p` and `ch`.

* lisp/language/hanja-util.el: Use lexical-binding.

* lisp/language/ind-util.el: Use lexical-binding.
(indian-translate-region): Actually use the `from` and `to` arguments.
(<toplevel>): Use `dlet`.  Remove unused var `current-repertory`.
(indian-2-column-to-ucs-region): Remove unused var `pos`.

* lisp/language/japan-util.el: Use lexical-binding.
(japanese-katakana-region, japanese-hiragana-region)
(japanese-zenkaku-region): Remove unused var `next`.

* lisp/language/korea-util.el: Use lexical-binding.

* lisp/language/lao-util.el: Use lexical-binding.
(lao-composition-function): Remove unused var `glyph`.

* lisp/language/thai-util.el: Use lexical-binding.
(thai-composition-function): Remove unused var `glyph`.

* lisp/language/thai-word.el: Use lexical-binding.
(thai-forward-word): Remove unused var `tail`.

* lisp/language/tibet-util.el: Use lexical-binding.
(tibetan-add-components): Remove unused var `tmp`.
(tibetan-compose-region): Remove unused vars `str`, `result`, `chars`.

* lisp/language/viet-util.el:
* lisp/language/tv-util.el:
* lisp/language/cyril-util.el:
* lisp/language/china-util.el: Use lexical-binding.
2021-01-27 11:13:39 -05:00
Stefan Monnier
898a94a9be Use lexical-binding in the remaining preloaded files
* lisp/widget.el:
* lisp/w32-fns.el:
* lisp/textmodes/fill.el:
* lisp/term/common-win.el:
* lisp/scroll-bar.el:
* lisp/rfn-eshadow.el:
* lisp/menu-bar.el:
* lisp/language/tibetan.el:
* lisp/language/thai.el:
* lisp/language/misc-lang.el:
* lisp/language/lao.el:
* lisp/language/korean.el:
* lisp/language/japanese.el:
* lisp/language/indian.el:
* lisp/language/hebrew.el:
* lisp/language/european.el:
* lisp/language/ethiopic.el:
* lisp/language/english.el:
* lisp/language/cyrillic.el:
* lisp/language/chinese.el:
* lisp/jka-cmpr-hook.el:
* lisp/international/ucs-normalize.el:
* lisp/international/mule.el:
* lisp/international/mule-conf.el:
* lisp/international/iso-transl.el:
* lisp/international/fontset.el:
* lisp/international/characters.el:
* lisp/format.el:
* lisp/facemenu.el:
* lisp/electric.el:
* lisp/dos-w32.el:
* lisp/dos-fns.el:
* lisp/disp-table.el:
* lisp/cus-face.el:
* lisp/composite.el:
* lisp/bindings.el:
* admin/unidata/blocks.awk:
* admin/charsets/eucjp-ms.awk:
* admin/charsets/cp51932.awk: Use `lexical-binding`.
2021-01-04 20:57:42 -05:00
Eli Zaretskii
8164f3e1ab Improve support for shaping Egyptian Hieroglyphs
* src/composite.c (composition_gstring_lookup_cache): Renamed from
gstring_lookup_cache and made external.  All callers changed.
* src/composite.h (composition_gstring_lookup_cache): Add
prototype.
* src/font.c (Ffont_shape_gstring): Call
composition_gstring_lookup_cache and return the cached composition
if it is already in the cache.

* lisp/language/misc-lang.el (egyptian-shape-grouping): New
function.
(composition-function-table): Use egyptian-shape-grouping in
setting up compositions for Egyptian Hieroglyphs.  Fix the
composition setup for horizontal and vertical joiners.
2020-10-25 18:05:37 +02:00
Eli Zaretskii
d21cdb6c05 Set up composition-function-table for Egyptian
* lisp/language/misc-lang.el (composition-function-table): Set up
for Egyptian Hieroglyphs.
2020-10-23 17:23:23 +03:00
Eli Zaretskii
22b2e9c901 Fix Arabic composition rules
* lisp/language/misc-lang.el (composition-function-table): Reorder
Arabic composition rules in descending order of lookback.

* src/composite.c (syms_of_composite): Document the order of rules
in 'composition-function-table'.
2020-06-02 20:44:59 +03:00
Eli Zaretskii
48776b7011 Provide text directionality and language to HarfBuzz shaper
* lisp/language/tv-util.el (tai-viet-composition-function):
* lisp/language/ethio-util.el (ethio-composition-function):
* lisp/language/japanese.el (compose-gstring-for-variation-glyph):
* lisp/language/thai-util.el (thai-composition-function):
* lisp/language/misc-lang.el (arabic-shape-gstring):
* lisp/language/lao-util.el (lao-composition-function):
* lisp/language/hebrew.el (hebrew-shape-gstring):
* lisp/composite.el (compose-gstring-for-graphic)
(compose-gstring-for-dotted-circle, auto-compose-chars)
(compose-gstring-for-terminal): Accept 2nd argument DIRECTION; all
callers changed.

* src/composite.c (composition_reseat_it): Call
auto-composition-function with one more argument DIRECTION.
(syms_of_composite) <auto-composition-function>: Update the doc
string.
* src/ftfont.c (ftfont_shape_by_hb): Compute language and
direction, and set buffer properties accordingly.
* src/composite.c (autocmp_chars):
* src/w32uniscribe.c (uniscribe_shape):
* src/xftfont.c (xftfont_shape):
* src/ftfont.c (ftfont_shape, ftfont_shape_by_hb):
* src/font.c (Ffont_shape_gstring): Accept an additional argument
DIRECTION.
* src/macfont.m (lgstring_direction): New enum.
(mac_font_shape_1, mac_screen_font_shape, mac_font_shape):
Accept an additional argument specifying text direction.  All
callers changed.
* src/font.c (syms_of_font): New symbols QL2R and QR2L.
* src/font.h (shape): Accept new argument DIRECTION.  All
implementations changed.  (Bug#33729)
(ftfont_shape): Update prototype.
2018-12-29 16:35:09 +02:00
K. Handa
3d61657694 Fix docstring of arabic-shaper-ZWNJ-handling
* lisp/language/misc-lang.el (arabic-shaper-ZWNJ-handling): Adjusted
the doctstring for addition of :set (bug#28312).
2017-11-07 20:50:46 +09:00
K. Handa
f95cd5cd70 Improve customization of arabic-shaper-ZWNJ-handling.
Make the effect of customizing arabic-shaper-ZWNJ-handling appear
immediately.
* lisp/language/misc-lang.el (arabic-shaper-ZWNJ-handling): Add :set
value.
* src/composite.c (Fclear_composition_cache): New function.
(syms_of_composite): Defsubr it.
2017-10-15 23:15:47 +09:00
Paul Eggert
0d004ed01a ; Spelling fixes 2017-10-09 22:55:05 -07:00
K. Handa
64baaff8c5 New option for handling ZWNJ in Arabic text rendering
Provide a new option 'arabic-shaper-ZWNJ-handling' that controls how
to display ZWNJ in Arabic text rendering (Bug#28339).
* lisp/language/misc-lang.el: Register arabic-shape-gstring in
composition-function-table.
(arabic-shaper-ZWNJ-handling): New variable.
(arabic-shape-log): New variable.
(arabic-shape-gstring): New function.
* lisp/composite.el (lgstring-remove-glyph): New function.
2017-10-08 11:48:01 +09: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
Eli Zaretskii
7e83f50226 ; Another minor fix in misc-lang.el 2015-10-05 22:24:25 +03:00
Eli Zaretskii
0a74e2b590 Fix composition-function-table for Arabic and Syriac
* lisp/language/misc-lang.el (composition-function-table): Fix
entries for Arabic and Syriac.
2015-10-05 22:19:39 +03:00
Eli Zaretskii
c6400e17e7 Fix composition of characters from Syriac and Arabis scripts.
lisp/language/misc-lang.el (composition-function-table): Add Syriac
 characters and also ZWJ/ZWNJ.  See
 http://lists.gnu.org/archive/html/help-gnu-emacs/2014-12/msg00248.html
 for the details.
2014-12-27 14:07:06 +02:00
Glenn Morris
32ac3a6ba3 Merge language/persian.el into language/misc-lang.el
* lisp/language/persian.el: Remove file.
* lisp/language/misc-lang.el: Move non-unique part of persian.el here.
* lisp/loadup.el: Remove language/persian.

* src/lisp.mk (lisp): Remove language/persian.elc.

* etc/NEWS: Improve entry.
2012-08-08 00:19:58 -07:00
Glenn Morris
c052c904ff Remove no-byte-compile setting from some lisp/language files.
Same comments as per 2012-05-01T06:59:34Z!rgm@gnu.org, for lisp/term:

  Not that compiling these will bring any noticeable speed benefit, but
  there's really no reason not to compile them.  The extra disk space
  and build time is negligible, and it might reveal use of obsolete
  functions, bugs, etc.
2012-05-07 21:50:17 -04:00
Glenn Morris
0d9f702fd0 Nuke arch-tags. 2011-01-15 15:16:57 -08:00
Stefan Monnier
77ab81d054 Merge from emacs-23 2011-01-14 12:18:41 -05:00
Glenn Morris
5df4f04cd3 Add 2011 to FSF/AIST copyright years. 2011-01-02 15:50:46 -08:00
Kenichi Handa
b60f961f6c Add Arabic support. 2010-08-25 14:13:27 +09:00
Kenichi Handa
aec663190b Add coding system windows-1256 (alias cp1256). 2010-03-08 10:50:35 +09:00
Glenn Morris
114f9c9679 Add 2010 to copyright years. 2010-01-13 00:35:10 -08:00
Kenichi Handa
6c87545241 ("IPA"): Change coding systems to utf-8. Delete unibyte-display. 2009-07-15 12:22:38 +00:00
Glenn Morris
ae940284fa Add 2009 to copyright years. 2009-01-05 03:18:22 +00:00
Glenn Morris
4936186e9c Switch to recommended form of GPLv3 permissions notice. 2008-05-06 04:29:13 +00:00
Stefan Monnier
cbee283dd7 Fix up comment convention on the arch-tag lines. 2008-04-10 14:10:46 +00:00
Miles Bader
430d2ee291 Merge from emacs--devo--0
Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-312
2008-01-09 01:21:15 +00:00
Glenn Morris
38141d208d Add 2008 to copyright years. 2008-01-07 01:33:37 +00:00
Miles Bader
e468b87f91 Merge from emacs--devo--0
Patches applied:

 * emacs--devo--0  (patch 824-831)

   - Update from CVS
   - Merge from emacs--rel--22

 * emacs--rel--22  (patch 70-74)

   - Update from CVS

Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-238
2007-07-27 10:52:18 +00:00
Glenn Morris
d7142f3e55 Restore comma mistakenly removed in last change. 2007-07-25 07:41:05 +00:00
Glenn Morris
a32f6e9e4e Switch license to GPLv3 or later. 2007-07-25 07:24:56 +00:00
Miles Bader
c0466914ba Merge from emacs--devo--0
Patches applied:

 * emacs--devo--0  (patch 586-614)

   - Update from CVS
   - Update from erc--emacs--22
   - Merge from gnus--rel--5.10
   - Merge from erc--main--0
   - Make byte compiler correctly write circular constants

 * gnus--rel--5.10  (patch 186-196)

   - Update from CVS
   - Merge from emacs--devo--0

Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-162
2007-01-26 06:16:11 +00:00
Glenn Morris
7cdc02a62a Add 2007 to copyright. 2007-01-21 20:49:59 +00:00
Miles Bader
4bc5d7668e Merge from emacs--devo--0
Patches applied:

 * emacs--devo--0  (patch 545-562)

   - Update from CVS
   - Update from erc--emacs--22
   - Merge from gnus--rel--5.10
   - erc-iswitchb: Temporarily enable iswitchb mode

 * gnus--rel--5.10  (patch 172-176)

   - Merge from emacs--devo--0
   - Update from CVS
   - Update from CVS: lisp/legacy-gnus-agent.el: Add Copyright notice.

Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-156
2006-12-16 01:29:26 +00:00
Kenichi Handa
7976eda061 Update AIST copyright years. 2006-12-13 01:13:58 +00:00
Kenichi Handa
c7ac825959 (iso-8859-6): New coding system. 2006-10-02 08:05:16 +00:00
Lute Kamstra
3a35cf56e7 Update FSF's address. 2005-07-04 17:55:18 +00:00
Kenichi Handa
eaa6121822 Fix copyrights. 2005-05-16 07:03:28 +00:00
Miles Bader
ab5796a9f9 Add arch taglines 2003-09-01 15:45:59 +00:00
Juanma Barranquero
0a10297a06 Add "no-byte-compile: t" in first line. 2002-10-01 17:06:54 +00:00
Pavel Janík
60370d4073 Some fixes to follow coding conventions. 2001-07-15 19:53:53 +00:00
Dave Love
41da80b109 Use provide. 2000-11-22 19:28:28 +00:00
Dave Love
0922d3b44c Remove all the setup-...-environment functions. 2000-05-14 15:21:41 +00:00
Kenichi Handa
8f76845d7e (setup-XXX-environment): Just call set-language-environment. If
they used to do some other jobs than what done by
set-language-environment, those jobs are done in
setup-XXX-environment-internal now.
("LANUGAGE-ENVIRONMENT"): Delete property setup-function or change
the value to setup-XXX-environment-internal.  Add properties
nonascii-translation, input-method, features, unibyte-syntax, and
unibyte-display.
1998-08-10 06:29:02 +00:00
Kenichi Handa
40e8f3ad0f ("IPA"): Add coding-priority and coding-system. 1998-07-08 02:19:14 +00:00
Kenichi Handa
3c606ef462 Call set-language-info-alist for IPA.
(setup-ipa-environment): New function.
1997-07-02 12:58:31 +00:00
Richard M. Stallman
fa526c4a22 Change copyright notice. 1997-06-22 08:57:18 +00:00
Kenichi Handa
650e8505e2 Provide XXX-util instead of
language/XXX-util.  Delete local variable declartion.
Delete the code of calling register-input-method form
all files under this directory.
1997-06-18 13:06:17 +00:00
Karl Heuer
369314dc63 Fix FSF address in comment. 1997-02-23 09:20:52 +00:00
Karl Heuer
4ed4686978 Initial revision 1997-02-20 07:02:49 +00:00