bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#20499: [PROPOSED PATCH] C-x 8 shorthands for curved quotes, Euro, et


From: Paul Eggert
Subject: bug#20499: [PROPOSED PATCH] C-x 8 shorthands for curved quotes, Euro, etc.
Date: Sun, 3 May 2015 18:13:10 -0700

Although C-x 8 lets you insert arbitrary Unicode characters, it's
awkward to use this to insert commonly used symbols such as curved
quotes, the Euro symbol, etc.  This patch adds simpler sequences for
ISO 8859-15 characters (which includes the Euro), plus characters that
are commonly found in English text and in basic math.  For example,
assuming the Alt key works on your keyboard and iso-transl is loaded,
one can now type "A-[" instead of "A-RET LEFT SIN TAB RET" to get the
character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
* doc/emacs/mule.texi (Unibyte Mode), etc/NEWS: Latin-9 and a few
other printing characters now work too.
* lisp/international/iso-transl.el (iso-transl-char-map):
Also support ISO 8859-15 characters (e.g., "€"), plus the characters
"–—‘’“”†‡•′″←→↔−≈≠≤≥" which are commonly used in English text
or basic math.
This patch is a followup to Bug#20385; although it is a separate issue
and does not fix Bug#20385, it could make fixing Bug#20385 easier.
---
 doc/emacs/mule.texi              |  4 ++--
 etc/NEWS                         |  2 ++
 lisp/international/iso-transl.el | 33 ++++++++++++++++++++++++++++++++-
 3 files changed, 36 insertions(+), 3 deletions(-)

diff --git a/doc/emacs/mule.texi b/doc/emacs/mule.texi
index de381df..03e70da 100644
--- a/doc/emacs/mule.texi
+++ b/doc/emacs/mule.texi
@@ -1660,8 +1660,8 @@ characters present directly on the keyboard or using 
@key{Compose} or
 @cindex compose character
 @cindex dead character
 @item
-For Latin-1 only, you can use the key @kbd{C-x 8} as a ``compose
-character'' prefix for entry of non-@acronym{ASCII} Latin-1 printing
+You can use the key @kbd{C-x 8} as a ``compose character'' prefix for
+entry of non-@acronym{ASCII} Latin-1, Latin-9, and a few other printing
 characters.  @kbd{C-x 8} is good for insertion (in the minibuffer as
 well as other buffers), for searching, and in any other context where
 a key sequence is allowed.
diff --git a/etc/NEWS b/etc/NEWS
index 7497652..3313c56 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -213,6 +213,8 @@ successive char insertions.
 
 ** Unicode names entered via C-x 8 RET now use substring completion by default.
 
+** C-x 8 now has shorthands for Latin-9 and a few other commonly used chars.
+
 ** New minor mode global-eldoc-mode is enabled by default.
 
 ** Emacs now supports "bracketed paste mode" when running on a terminal
diff --git a/lisp/international/iso-transl.el b/lisp/international/iso-transl.el
index 73bcae0..ac91c1e 100644
--- a/lisp/international/iso-transl.el
+++ b/lisp/international/iso-transl.el
@@ -1,4 +1,4 @@
-;;; iso-transl.el --- keyboard input definitions for ISO 8859-1  -*- coding: 
utf-8 -*-
+;;; iso-transl.el --- keyboard input for ISO characters -*- coding: utf-8 -*-
 
 ;; Copyright (C) 1987, 1993-1999, 2001-2015 Free Software Foundation,
 ;; Inc.
@@ -36,6 +36,10 @@
 ;; to make all of the Alt keys autoload, and it is not clear
 ;; that the dead accent keys SHOULD autoload this package.
 
+;; This package supports all characters defined by ISO 8859-1 and ISO 8859-15,
+;; along with a few other ISO 10646 characters commonly used in English
+;; and computing text.
+
 ;;; Code:
 
 ;;; Provide some binding for startup:
@@ -192,6 +196,33 @@
     ("~o"   . [?õ])
     ("~t"   . [?þ])
     ("~~"   . [?¬])
+    ("OE"   . [?Œ])
+    ("Oe"   . [?œ])
+    ("vS"   . [?Š])
+    ("vs"   . [?š])
+    ("\"Y"  . [?Ÿ])
+    ("vZ"   . [?Ž])
+    ("vz"   . [?ž])
+    ("_n"   . [?–])
+    ("_m"   . [?—])
+    ("["    . [?‘])
+    ("]"    . [?’])
+    ("{"    . [?“])
+    ("}"    . [?”])
+    ("1+"   . [?†])
+    ("2+"   . [?‡])
+    ("**"   . [?•])
+    ("*'"   . [?′])
+    ("*\""  . [?″])
+    ("*E"   . [?€])
+    ("a<"   . [?←])
+    ("a>"   . [?→])
+    ("a="   . [?↔])
+    ("_-"   . [?−])
+    ("~="   . [?≈])
+    ("/="   . [?≠])
+    ("_<"   . [?≤])
+    ("_>"   . [?≥])
     ("' "   . "'")
     ("` "   . "`")
     ("\" "  . "\"")
-- 
2.1.0






reply via email to

[Prev in Thread] Current Thread [Next in Thread]