mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-24 06:20:43 -08:00
Replace most insignificant occurrences of '`' with a straight quote, sharp quote or nothing. This includes backquotes in 'pcase' patterns. * admin/admin.el: * lisp/apropos.el: * lisp/arc-mode.el: * lisp/auth-source.el: * lisp/avoid.el: * lisp/bindings.el: * lisp/bs.el: * lisp/calculator.el: * lisp/calendar/todo-mode.el: * lisp/cedet/semantic.el: * lisp/cedet/semantic/analyze/debug.el: * lisp/cedet/semantic/bovine.el: * lisp/cedet/semantic/dep.el: * lisp/cedet/semantic/grammar.el: * lisp/cedet/semantic/wisent/comp.el: * lisp/cedet/semantic/wisent/grammar.el: * lisp/cedet/srecode/mode.el: * lisp/cus-edit.el: * lisp/doc-view.el: * lisp/elec-pair.el: * lisp/electric.el: * lisp/emacs-lisp/autoload.el: * lisp/emacs-lisp/benchmark.el: * lisp/emacs-lisp/byte-opt.el: * lisp/emacs-lisp/bytecomp.el: * lisp/emacs-lisp/cconv.el: * lisp/emacs-lisp/cl-extra.el: * lisp/emacs-lisp/cl-generic.el: * lisp/emacs-lisp/cl-macs.el: * lisp/emacs-lisp/copyright.el: * lisp/emacs-lisp/debug.el: * lisp/emacs-lisp/eieio-compat.el: * lisp/emacs-lisp/ert.el: * lisp/emacs-lisp/generator.el: * lisp/emacs-lisp/inline.el: * lisp/emacs-lisp/macroexp.el: * lisp/emacs-lisp/map.el: * lisp/emacs-lisp/package-x.el: * lisp/emacs-lisp/package.el: * lisp/emacs-lisp/radix-tree.el: * lisp/emacs-lisp/smie.el: * lisp/epa.el: * lisp/erc/erc-dcc.el: * lisp/erc/erc-track.el: * lisp/erc/erc.el: * lisp/eshell/em-ls.el: * lisp/eshell/esh-cmd.el: * lisp/files.el: * lisp/filesets.el: * lisp/font-lock.el: * lisp/frameset.el: * lisp/gnus/gnus-agent.el: * lisp/gnus/gnus-art.el: * lisp/gnus/gnus-cite.el: * lisp/gnus/gnus-group.el: * lisp/gnus/gnus-msg.el: * lisp/gnus/gnus-salt.el: * lisp/gnus/gnus-srvr.el: * lisp/gnus/gnus-sum.el: * lisp/gnus/gnus-topic.el: * lisp/gnus/gnus-util.el: * lisp/gnus/gnus.el: * lisp/gnus/message.el: * lisp/gnus/mm-util.el: * lisp/gnus/mml.el: * lisp/gnus/nnheader.el: * lisp/gnus/nnimap.el: * lisp/gnus/nnmairix.el: * lisp/gnus/spam.el: * lisp/hexl.el: * lisp/hi-lock.el: * lisp/ibuf-ext.el: * lisp/ibuffer.el: * lisp/ido.el: * lisp/info.el: * lisp/international/mule-cmds.el: * lisp/international/mule-util.el: * lisp/json.el: * lisp/jsonrpc.el: * lisp/language/cyrillic.el: * lisp/language/european.el: * lisp/language/georgian.el: * lisp/language/tibetan.el: * lisp/language/utf-8-lang.el: * lisp/language/vietnamese.el: * lisp/ldefs-boot.el: * lisp/mail/mail-extr.el: * lisp/man.el: * lisp/menu-bar.el: * lisp/mh-e/mh-acros.el: * lisp/mh-e/mh-folder.el: * lisp/mh-e/mh-mime.el: * lisp/mh-e/mh-show.el: * lisp/mh-e/mh-speed.el: * lisp/minibuffer.el: * lisp/mpc.el: * lisp/net/ange-ftp.el: * lisp/net/hmac-def.el: * lisp/net/newst-backend.el: * lisp/net/quickurl.el: * lisp/net/tramp-archive.el: * lisp/net/tramp-compat.el: * lisp/notifications.el: * lisp/obsolete/pgg-parse.el: * lisp/obsolete/vc-arch.el: * lisp/obsolete/xesam.el: * lisp/org/ob-C.el: * lisp/org/ob-core.el: * lisp/org/ob-exp.el: * lisp/org/ob-groovy.el: * lisp/org/ob-haskell.el: * lisp/org/ob-io.el: * lisp/org/ob-lisp.el: * lisp/org/ob-lob.el: * lisp/org/ob-lua.el: * lisp/org/ob-octave.el: * lisp/org/ob-perl.el: * lisp/org/ob-python.el: * lisp/org/ob-ref.el: * lisp/org/ob-ruby.el: * lisp/org/ob-sql.el: * lisp/org/org-agenda.el: * lisp/org/org-capture.el: * lisp/org/org-clock.el: * lisp/org/org-colview.el: * lisp/org/org-duration.el: * lisp/org/org-element.el: * lisp/org/org-entities.el: * lisp/org/org-gnus.el: * lisp/org/org-indent.el: * lisp/org/org-info.el: * lisp/org/org-inlinetask.el: * lisp/org/org-lint.el: * lisp/org/org-list.el: * lisp/org/org-mouse.el: * lisp/org/org-plot.el: * lisp/org/org-src.el: * lisp/org/org-table.el: * lisp/org/org.el: * lisp/org/ox-ascii.el: * lisp/org/ox-html.el: * lisp/org/ox-latex.el: * lisp/org/ox-man.el: * lisp/org/ox-md.el: * lisp/org/ox-org.el: * lisp/org/ox-publish.el: * lisp/org/ox-texinfo.el: * lisp/org/ox.el: * lisp/play/bubbles.el: * lisp/play/gamegrid.el: * lisp/progmodes/autoconf.el: * lisp/progmodes/cc-defs.el: * lisp/progmodes/cc-engine.el: * lisp/progmodes/cc-fonts.el: * lisp/progmodes/cc-langs.el: * lisp/progmodes/cperl-mode.el: * lisp/progmodes/ebrowse.el: * lisp/progmodes/elisp-mode.el: * lisp/progmodes/flymake-cc.el: * lisp/progmodes/flymake.el: * lisp/progmodes/fortran.el: * lisp/progmodes/grep.el: * lisp/progmodes/gud.el: * lisp/progmodes/idlwave.el: * lisp/progmodes/js.el: * lisp/progmodes/m4-mode.el: * lisp/progmodes/make-mode.el: * lisp/progmodes/mixal-mode.el: * lisp/progmodes/modula2.el: * lisp/progmodes/octave.el: * lisp/progmodes/opascal.el: * lisp/progmodes/prolog.el: * lisp/progmodes/ps-mode.el: * lisp/progmodes/python.el: * lisp/progmodes/ruby-mode.el: * lisp/progmodes/sh-script.el: * lisp/progmodes/sql.el: * lisp/progmodes/verilog-mode.el: * lisp/ps-mule.el: * lisp/rtree.el: * lisp/ruler-mode.el: * lisp/ses.el: * lisp/simple.el: * lisp/startup.el: * lisp/subr.el: * lisp/term/ns-win.el: * lisp/textmodes/bibtex.el: * lisp/textmodes/conf-mode.el: * lisp/textmodes/css-mode.el: * lisp/textmodes/refill.el: * lisp/textmodes/sgml-mode.el: * lisp/textmodes/tex-mode.el: * lisp/tutorial.el: * lisp/url/url-dav.el: * lisp/url/url-gw.el: * lisp/url/url-http.el: * lisp/url/url-methods.el: * lisp/url/url-privacy.el: * lisp/vc/cvs-status.el: * lisp/vc/diff-mode.el: * lisp/vc/ediff-init.el: * lisp/vc/ediff-ptch.el: * lisp/vc/log-edit.el: * lisp/vc/log-view.el: * lisp/vc/pcvs-info.el: * lisp/vc/pcvs.el: * lisp/vc/smerge-mode.el: * lisp/vc/vc-git.el: * lisp/vc/vc-hg.el: * lisp/vc/vc-mtn.el: * lisp/vc/vc-rcs.el: * lisp/whitespace.el: * lisp/window.el: * test/lisp/electric-tests.el: * test/lisp/emacs-lisp/cl-lib-tests.el: * test/lisp/emacs-lisp/ert-tests.el: * test/lisp/epg-tests.el: * test/lisp/jsonrpc-tests.el: * test/src/data-tests.el: * test/src/json-tests.el: Replace most insignificant backquotes.
274 lines
9 KiB
EmacsLisp
274 lines
9 KiB
EmacsLisp
;;; cyrillic.el --- support for Cyrillic -*- coding: utf-8; -*-
|
|
|
|
;; Copyright (C) 1997-1998, 2001-2018 Free Software Foundation, Inc.
|
|
;; Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
|
|
;; 2005, 2006, 2007, 2008, 2009, 2010, 2011
|
|
;; National Institute of Advanced Industrial Science and Technology (AIST)
|
|
;; Registration Number H14PRO021
|
|
;; Copyright (C) 2003
|
|
;; National Institute of Advanced Industrial Science and Technology (AIST)
|
|
;; Registration Number H13PRO009
|
|
|
|
;; Author: Kenichi Handa <handa@etl.go.jp>
|
|
;; Keywords: multilingual, Cyrillic, i18n
|
|
|
|
;; This file is part of GNU Emacs.
|
|
|
|
;; GNU Emacs is free software: you can redistribute it and/or modify
|
|
;; it under the terms of the GNU General Public License as published by
|
|
;; the Free Software Foundation, either version 3 of the License, or
|
|
;; (at your option) any later version.
|
|
|
|
;; GNU Emacs is distributed in the hope that it will be useful,
|
|
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
;; GNU General Public License for more details.
|
|
|
|
;; You should have received a copy of the GNU General Public License
|
|
;; along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>.
|
|
|
|
;;; Commentary:
|
|
|
|
;; The character set ISO8859-5 is supported. KOI-8 and ALTERNATIVNYJ
|
|
;; are converted to Unicode internally. See
|
|
;; <URL:http://www.ecma.ch/ecma1/STAND/ECMA-113.HTM>. For more info
|
|
;; on Cyrillic charsets, see
|
|
;; <URL:http://czyborra.com/charsets/cyrillic.html>. The KOI and
|
|
;; Alternativnyj coding systems should live in code-pages.el, but
|
|
;; they've always been preloaded and the coding system autoload
|
|
;; mechanism didn't get accepted, so they have to stay here and
|
|
;; duplicate code-pages stuff.
|
|
|
|
;; Note that 8859-5 maps directly onto the Unicode Cyrillic block,
|
|
;; apart from codepoints 160 (NBSP, c.f. U+0400), 173 (soft hyphen,
|
|
;; c.f. U+04OD) and 253 (section sign, c.f U+045D). The KOI-8 and
|
|
;; Alternativnyj coding systems encode both 8859-5 and Unicode.
|
|
;; ucs-tables.el provides unification for cyrillic-iso-8bit.
|
|
|
|
;; Customizing `utf-fragment-on-decoding' allows decoding characters
|
|
;; from KOI and Alternativnyj into 8859-5 where that's possible.
|
|
;; cyrillic-iso8859-5 characters take half as much space in the buffer
|
|
;; as the mule-unicode-0100-24ff equivalents, though that's probably
|
|
;; not normally a big deal.
|
|
|
|
;;; Code:
|
|
|
|
;; Cyrillic (general)
|
|
|
|
;; ISO-8859-5 stuff
|
|
|
|
(define-coding-system 'cyrillic-iso-8bit
|
|
"ISO 2022 based 8-bit encoding for Cyrillic script (MIME:ISO-8859-5)."
|
|
:coding-type 'charset
|
|
:mnemonic ?5
|
|
:charset-list '(iso-8859-5)
|
|
:mime-charset 'iso-8859-5)
|
|
|
|
(define-coding-system-alias 'iso-8859-5 'cyrillic-iso-8bit)
|
|
|
|
(set-language-info-alist
|
|
"Cyrillic-ISO" '((charset iso-8859-5)
|
|
(coding-system cyrillic-iso-8bit)
|
|
(coding-priority cyrillic-iso-8bit)
|
|
(input-method . "cyrillic-yawerty") ; fixme
|
|
(nonascii-translation . iso-8859-5)
|
|
(unibyte-display . cyrillic-iso-8bit)
|
|
(features cyril-util)
|
|
(sample-text . "Russian (Русский) Здравствуйте!")
|
|
(documentation . "Support for Cyrillic ISO-8859-5."))
|
|
'("Cyrillic"))
|
|
|
|
;; KOI-8R stuff
|
|
|
|
(define-coding-system 'cyrillic-koi8
|
|
"KOI8 8-bit encoding for Cyrillic (MIME: KOI8-R)."
|
|
:coding-type 'charset
|
|
;; We used to use ?K. It is true that ?K is more strictly correct,
|
|
;; but it is also used for Korean. So people who use koi8 for
|
|
;; languages other than Russian will have to forgive us.
|
|
:mnemonic ?R
|
|
:charset-list '(koi8)
|
|
:mime-charset 'koi8-r)
|
|
|
|
(define-coding-system-alias 'koi8-r 'cyrillic-koi8)
|
|
(define-coding-system-alias 'koi8 'cyrillic-koi8)
|
|
(define-coding-system-alias 'cp878 'cyrillic-koi8)
|
|
|
|
(set-language-info-alist
|
|
"Cyrillic-KOI8" '((charset koi8)
|
|
(coding-system cyrillic-koi8)
|
|
(coding-priority cyrillic-koi8 cyrillic-iso-8bit)
|
|
(ctext-non-standard-encodings "koi8-r")
|
|
(nonascii-translation . koi8)
|
|
(input-method . "russian-typewriter")
|
|
(features cyril-util)
|
|
(unibyte-display . cyrillic-koi8)
|
|
(sample-text . "Russian (Русский) Здравствуйте!")
|
|
(documentation . "Support for Cyrillic KOI8-R."))
|
|
'("Cyrillic"))
|
|
|
|
(set-language-info-alist
|
|
"Russian" `((charset cyrillic-iso8859-5)
|
|
(nonascii-translation
|
|
. ,(get 'cyrillic-koi8-r-nonascii-translation-table
|
|
'translation-table))
|
|
(coding-system cyrillic-koi8)
|
|
(coding-priority cyrillic-koi8 cyrillic-iso-8bit)
|
|
(input-method . "russian-computer")
|
|
(features cyril-util)
|
|
(unibyte-display . cyrillic-koi8)
|
|
(sample-text . "Russian (Русский) Здравствуйте!")
|
|
(documentation . "\
|
|
Support for Russian using koi8-r and the russian-computer input method.")
|
|
(tutorial . "TUTORIAL.ru"))
|
|
'("Cyrillic"))
|
|
|
|
(define-coding-system 'koi8-u
|
|
"KOI8-U 8-bit encoding for Cyrillic (MIME: KOI8-U)"
|
|
:coding-type 'charset
|
|
:mnemonic ?U
|
|
:charset-list '(koi8-u)
|
|
:mime-charset 'koi8-u)
|
|
|
|
(set-language-info-alist
|
|
"Ukrainian" '((charset koi8-u)
|
|
(coding-system koi8-u)
|
|
(coding-priority koi8-u)
|
|
(nonascii-translation . koi8-u)
|
|
(input-method . "ukrainian-computer")
|
|
(documentation
|
|
. "Support for Ukrainian with KOI8-U character set."))
|
|
'("Cyrillic"))
|
|
|
|
;;; ALTERNATIVNYJ stuff
|
|
|
|
(define-coding-system 'cyrillic-alternativnyj
|
|
"ALTERNATIVNYJ 8-bit encoding for Cyrillic."
|
|
:coding-type 'charset
|
|
:mnemonic ?A
|
|
:charset-list '(alternativnyj))
|
|
|
|
(define-coding-system-alias 'alternativnyj 'cyrillic-alternativnyj)
|
|
|
|
(set-language-info-alist
|
|
"Cyrillic-ALT" '((charset alternativnyj)
|
|
(coding-system cyrillic-alternativnyj)
|
|
(coding-priority cyrillic-alternativnyj)
|
|
(nonascii-translation . alternativnyj)
|
|
(input-method . "russian-typewriter")
|
|
(features cyril-util)
|
|
(unibyte-display . cyrillic-alternativnyj)
|
|
(sample-text . "Russian (Русский) Здравствуйте!")
|
|
(documentation . "Support for Cyrillic ALTERNATIVNYJ."))
|
|
'("Cyrillic"))
|
|
|
|
(define-coding-system 'cp866
|
|
"CP866 encoding for Cyrillic."
|
|
:coding-type 'charset
|
|
:mnemonic ?*
|
|
:charset-list '(ibm866)
|
|
:mime-charset 'cp866)
|
|
|
|
(define-coding-system 'koi8-u
|
|
"KOI8-U 8-bit encoding for Cyrillic (MIME: KOI8-U)"
|
|
:coding-type 'charset
|
|
:mnemonic ?U
|
|
:charset-list '(koi8-u)
|
|
:mime-charset 'koi8-u)
|
|
|
|
(define-coding-system 'koi8-t
|
|
"KOI8-T 8-bit encoding for Cyrillic"
|
|
:coding-type 'charset
|
|
:mnemonic ?*
|
|
:charset-list '(koi8-t)
|
|
:mime-charset 'koi8-t)
|
|
|
|
(define-coding-system 'windows-1251
|
|
"windows-1251 8-bit encoding for Cyrillic (MIME: WINDOWS-1251)"
|
|
:coding-type 'charset
|
|
:mnemonic ?b
|
|
:charset-list '(windows-1251)
|
|
:mime-charset 'windows-1251)
|
|
(define-coding-system-alias 'cp1251 'windows-1251)
|
|
|
|
(define-coding-system 'cp1125
|
|
"cp1125 8-bit encoding for Cyrillic"
|
|
:coding-type 'charset
|
|
:mnemonic ?*
|
|
:charset-list '(cp1125))
|
|
(define-coding-system-alias 'ruscii 'cp1125)
|
|
;; Original name for cp1125, says Serhii Hlodin <hlodin@lutsk.bank.gov.ua>
|
|
(define-coding-system-alias 'cp866u 'cp1125)
|
|
|
|
(define-coding-system 'cp855
|
|
"DOS codepage 855 (Russian)"
|
|
:coding-type 'charset
|
|
:mnemonic ?D
|
|
:charset-list '(cp855)
|
|
:mime-charset 'cp855)
|
|
(define-coding-system-alias 'ibm855 'cp855)
|
|
|
|
(define-coding-system 'mik
|
|
"Bulgarian DOS codepage"
|
|
:coding-type 'charset
|
|
:mnemonic ?D
|
|
:charset-list '(mik))
|
|
|
|
(define-coding-system 'pt154
|
|
"ParaType Asian Cyrillic codepage"
|
|
:coding-type 'charset
|
|
:mnemonic ?D
|
|
:charset-list '(pt154))
|
|
|
|
;; (set-language-info-alist
|
|
;; "Windows-1251" `((coding-system windows-1251)
|
|
;; (coding-priority windows-1251)
|
|
;; (input-method . "russian-typewriter") ; fixme?
|
|
;; (features code-pages)
|
|
;; (documentation . "Support for windows-1251 character set."))
|
|
;; '("Cyrillic"))
|
|
|
|
(set-language-info-alist
|
|
"Tajik" '((coding-system koi8-t)
|
|
(coding-priority koi8-t)
|
|
(nonascii-translation . cyrillic-koi8-t)
|
|
(charset koi8-t)
|
|
(input-method . "russian-typewriter") ; fixme?
|
|
(features code-pages)
|
|
(documentation . "Support for Tajik using KOI8-T."))
|
|
'("Cyrillic"))
|
|
|
|
(set-language-info-alist
|
|
"Bulgarian" '((coding-system windows-1251)
|
|
(coding-priority windows-1251)
|
|
(nonascii-translation . windows-1251)
|
|
(charset windows-1251)
|
|
(ctext-non-standard-encodings "microsoft-cp1251")
|
|
(input-method . "bulgarian-bds")
|
|
(documentation
|
|
. "Support for Bulgarian with windows-1251 character set."))
|
|
'("Cyrillic"))
|
|
|
|
(set-language-info-alist
|
|
"Belarusian" '((coding-system windows-1251)
|
|
(coding-priority windows-1251)
|
|
(nonascii-translation . windows-1251)
|
|
(charset windows-1251)
|
|
(ctext-non-standard-encodings "microsoft-cp1251")
|
|
(input-method . "belarusian")
|
|
(documentation
|
|
. "Support for Belarusian with windows-1251 character set.
|
|
\(The name Belarusian replaced Byelorussian in the early 1990s.)"))
|
|
'("Cyrillic"))
|
|
|
|
(set-language-info-alist
|
|
"Ukrainian" '((coding-system koi8-u)
|
|
(coding-priority koi8-u)
|
|
(input-method . "ukrainian-computer")
|
|
(documentation
|
|
. "Support for Ukrainian with koi8-u character set."))
|
|
'("Cyrillic"))
|
|
|
|
(provide 'cyrillic)
|
|
|
|
;;; cyrillic.el ends here
|