[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
new coding system (was: Re: prettify symbols question)
From: |
Alfred M. Szmidt |
Subject: |
new coding system (was: Re: prettify symbols question) |
Date: |
Fri, 13 Nov 2020 09:47:16 -0500 |
> (define-charset 'lispm
> "LISPM"
> :short-name "LISPM"
> :ascii-compatible-p nil
> :code-space [0 255]
> :map "LISPM")
>
> (define-coding-system 'lispm
> "Lisp Machine encoding"
> :coding-type 'charset
> :mnemonic ?L
> :charset-list '(lispm))
>
> So that sorts it out for the native one, but what should be done for
> the Unix friendly mapping? LISPM-ASCII, and similar as above?
Something like that. Although I'm not sure about the name. But why
do you need the native variant? If we only need one charset, for how
it is seen on Unix, we could call that 'lispm'.
Right, it is easy enough to convert if one has native files.
So I've created a LISPM charmap, and a LISPM charset map based on
that. Then calling define-charset and define-coding-system, if I now
try to open a Lisp machine file in the lispm coding it seems to be
unable to handle the various characters; e.g., #o210.
These default coding systems were tried to encode text
in the buffer âlispm-char-test.textâ:
(lispm-unix (1 . 0) (59 . 1) (117 . 2) (175 . 3) (233 . 4) (291 . 5)
(349 . 6) (407 . 7) (465 . 4194184) (523 . 4194185) (581 . 4194186))
However, each of them encountered characters it couldnât encode:
....
Is there something that I forgot to do?
===File ~/emacs/admin/charsets/glibc/LISPM.gz===============
<code_set_name> LISPM
<comment_char> %
<escape_char> /
% version: 1.0
% source: The Lisp Machine Manual, 6th ed.
CHARMAP
<U00B7> /x00 MIDDLE DOT
<U2193> /x01 DOWNWARDS ARROW
<U03B1> /x02 GREEK SMALL LETTER ALPHA
<U03B2> /x03 GREEK SMALL LETTER BETA
<U2227> /x04 LOGICAL AND
<U00AC> /x05 NOT SIGN
<U03B5> /x06 GREEK SMALL LETTER EPSILON
<U03C0> /x07 GREEK SMALL LETTER PI
<U03BB> /x88 GREEK SMALL LETTER LAMDA
<U03B3> /x89 GREEK SMALL LETTER GAMMA
<U03B4> /x8a GREEK SMALL LETTER DELTA
<U2191> /x8b UPWARDS ARROW
<U00B1> /x8c PLUS-MINUS SIGN
<U2295> /x8d CIRCLED PLUS
<U221E> /x0e INFINITY
<U2202> /x0f PARTIAL DIFFERENTIAL
<U2282> /x10 SUBSET OF
<U2283> /x11 SUPERSET OF
<U2229> /x12 INTERSECTION
<U222A> /x13 UNION
<U2200> /x14 FOR ALL
<U2203> /x15 THERE EXISTS
<U2297> /x16 CIRCLED TIMES
<U2194> /x17 LEFT RIGHT ARROW
<U2190> /x18 LEFTWARDS ARROW
<U2192> /x19 RIGHTWARDS ARROW
<U2260> /x1a NOT EQUAL TO
<U25CA> /x1b LOZENGE
<U2264> /x1c LESS-THAN OR EQUAL TO
<U2265> /x1d GREATER-THAN OR EQUAL TO
<U2261> /x1e IDENTICAL TO
<U2228> /x1f LOGICAL OR
<U0020> /x20 SPACE
<U0021> /x21 EXCLAMATION MARK
<U0022> /x22 QUOTATION MARK
<U0023> /x23 NUMBER SIGN
<U0024> /x24 DOLLAR SIGN
<U0025> /x25 PERCENT SIGN
<U0026> /x26 AMPERSAND
<U0027> /x27 APOSTROPHE
<U0028> /x28 LEFT PARENTHESIS
<U0029> /x29 RIGHT PARENTHESIS
<U002A> /x2a ASTERISK
<U002B> /x2b PLUS SIGN
<U002C> /x2c COMMA
<U002D> /x2d HYPHEN-MINUS
<U002E> /x2e FULL STOP
<U002F> /x2f SOLIDUS
<U0030> /x30 DIGIT ZERO
<U0031> /x31 DIGIT ONE
<U0032> /x32 DIGIT TWO
<U0033> /x33 DIGIT THREE
<U0034> /x34 DIGIT FOUR
<U0035> /x35 DIGIT FIVE
<U0036> /x36 DIGIT SIX
<U0037> /x37 DIGIT SEVEN
<U0038> /x38 DIGIT EIGHT
<U0039> /x39 DIGIT NINE
<U003A> /x3a COLON
<U003B> /x3b SEMICOLON
<U003C> /x3c LESS-THAN SIGN
<U003D> /x3d EQUALS SIGN
<U003E> /x3e GREATER-THAN SIGN
<U003F> /x3f QUESTION MARK
<U0040> /x40 COMMERCIAL AT
<U0041> /x41 LATIN CAPITAL LETTER A
<U0042> /x42 LATIN CAPITAL LETTER B
<U0043> /x43 LATIN CAPITAL LETTER C
<U0044> /x44 LATIN CAPITAL LETTER D
<U0045> /x45 LATIN CAPITAL LETTER E
<U0046> /x46 LATIN CAPITAL LETTER F
<U0047> /x47 LATIN CAPITAL LETTER G
<U0048> /x48 LATIN CAPITAL LETTER H
<U0049> /x49 LATIN CAPITAL LETTER I
<U004A> /x4a LATIN CAPITAL LETTER J
<U004B> /x4b LATIN CAPITAL LETTER K
<U004C> /x4c LATIN CAPITAL LETTER L
<U004D> /x4d LATIN CAPITAL LETTER M
<U004E> /x4e LATIN CAPITAL LETTER N
<U004F> /x4f LATIN CAPITAL LETTER O
<U0050> /x50 LATIN CAPITAL LETTER P
<U0051> /x51 LATIN CAPITAL LETTER Q
<U0052> /x52 LATIN CAPITAL LETTER R
<U0053> /x53 LATIN CAPITAL LETTER S
<U0054> /x54 LATIN CAPITAL LETTER T
<U0055> /x55 LATIN CAPITAL LETTER U
<U0056> /x56 LATIN CAPITAL LETTER V
<U0057> /x57 LATIN CAPITAL LETTER W
<U0058> /x58 LATIN CAPITAL LETTER X
<U0059> /x59 LATIN CAPITAL LETTER Y
<U005A> /x5a LATIN CAPITAL LETTER Z
<U005B> /x5b LEFT SQUARE BRACKET
<U005C> /x5c REVERSE SOLIDUS
<U005D> /x5d RIGHT SQUARE BRACKET
<U005E> /x5e CIRCUMFLEX ACCENT
<U005F> /x5f LOW LINE
<U0060> /x60 GRAVE ACCENT
<U0061> /x61 LATIN SMALL LETTER A
<U0062> /x62 LATIN SMALL LETTER B
<U0063> /x63 LATIN SMALL LETTER C
<U0064> /x64 LATIN SMALL LETTER D
<U0065> /x65 LATIN SMALL LETTER E
<U0066> /x66 LATIN SMALL LETTER F
<U0067> /x67 LATIN SMALL LETTER G
<U0068> /x68 LATIN SMALL LETTER H
<U0069> /x69 LATIN SMALL LETTER I
<U006A> /x6a LATIN SMALL LETTER J
<U006B> /x6b LATIN SMALL LETTER K
<U006C> /x6c LATIN SMALL LETTER L
<U006D> /x6d LATIN SMALL LETTER M
<U006E> /x6e LATIN SMALL LETTER N
<U006F> /x6f LATIN SMALL LETTER O
<U0070> /x70 LATIN SMALL LETTER P
<U0071> /x71 LATIN SMALL LETTER Q
<U0072> /x72 LATIN SMALL LETTER R
<U0073> /x73 LATIN SMALL LETTER S
<U0074> /x74 LATIN SMALL LETTER T
<U0075> /x75 LATIN SMALL LETTER U
<U0076> /x76 LATIN SMALL LETTER V
<U0077> /x77 LATIN SMALL LETTER W
<U0078> /x78 LATIN SMALL LETTER X
<U0079> /x79 LATIN SMALL LETTER Y
<U007A> /x7a LATIN SMALL LETTER Z
<U007B> /x7b LEFT CURLY BRACKET
<U007C> /x7c VERTICAL LINE
<U007D> /x7d RIGHT CURLY BRACKET
<U007E> /x7e TILDE
% 177 ctl-qm
% 200 Null character
% 201 Break
% 202 Clear
% 203 Call
% 204 Terminal escape
% 205 Macro/backnext
% 206 Help
% 207 Rubout
<U0008> /x08 BACKSPACE (BS) / Overstrike
<U0009> /x09 CHARACTER TABULATION (HT) / Tab
<U000D> /x0d CARRIAGE RETURN (CR) / Line
<U000B> /x0b LINE TABULATION (VT) / Delete
<U000C> /x0c FORM FEED (FF) / Page
<U000A> /x0a LINE FEED (LF) / Return
% 216 Quote
% 217 Hold-output
% 220 Stop-output
% 221 Abort
% 222 Resume
% 223 Status
% 224 End
% 225 Roman-i
% 226 Roman-ii
% 227 Roman-iii
% 230 Roman-iv
% 231 Hand-up
% 232 Hand-down
% 233 Hand-left
% 234 Hand-right
% 235 System
% 236 Network
% 237-377 reserved for the future
END CHARMAP
============================================================
===File ~/emacs/etc/charsets/LISPM.map======================
# Generated from LISPM in localedata/charmaps of glibc
0x00 0x00B7
0x01 0x2193
0x02-0x03 0x03B1
0x04 0x2227
0x05 0x00AC
0x06 0x03B5
0x07 0x03C0
0x08-0x0D 0x0008
0x0E 0x221E
0x0F 0x2202
0x10-0x11 0x2282
0x12-0x13 0x2229
0x14 0x2200
0x15 0x2203
0x16 0x2297
0x17 0x2194
0x18 0x2190
0x19 0x2192
0x1A 0x2260
0x1B 0x25CA
0x1C-0x1D 0x2264
0x1E 0x2261
0x1F 0x2228
0x20-0x7E 0x0020
0x88 0x03BB
0x89-0x8A 0x03B3
0x8B 0x2191
0x8C 0x00B1
0x8D 0x2295
============================================================
- Re: prettify symbols question, (continued)
- Re: prettify symbols question, Eli Zaretskii, 2020/11/13
- Re: prettify symbols question, Alfred M. Szmidt, 2020/11/13
- Re: prettify symbols question, Alfred M. Szmidt, 2020/11/13
- Re: prettify symbols question, Eli Zaretskii, 2020/11/13
- Re: prettify symbols question, Alfred M. Szmidt, 2020/11/13
- Re: prettify symbols question, Eli Zaretskii, 2020/11/13
- new coding system (was: Re: prettify symbols question),
Alfred M. Szmidt <=
- Re: new coding system (was: Re: prettify symbols question), Eli Zaretskii, 2020/11/13
- Re: new coding system (was: Re: prettify symbols question), Alfred M. Szmidt, 2020/11/13
- Re: new coding system (was: Re: prettify symbols question), Eli Zaretskii, 2020/11/14
- Re: new coding system (was: Re: prettify symbols question), Alfred M. Szmidt, 2020/11/14
- Re: new coding system (was: Re: prettify symbols question), Eli Zaretskii, 2020/11/14
- Re: new coding system (was: Re: prettify symbols question), Alfred M. Szmidt, 2020/11/23
- Re: new coding system (was: Re: prettify symbols question), Eli Zaretskii, 2020/11/23
- Re: new coding system (was: Re: prettify symbols question), Alfred M. Szmidt, 2020/11/28
- Re: new coding system (was: Re: prettify symbols question), Alfred M. Szmidt, 2020/11/13
- Re: new coding system, Andreas Schwab, 2020/11/13