auctex-devel
[Top][All Lists]
Advanced

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

Re: [AUCTeX-devel] double struck capitals


From: Tassilo Horn
Subject: Re: [AUCTeX-devel] double struck capitals
Date: Sat, 05 Dec 2015 10:18:29 +0100
User-agent: Gnus/5.130014 (Ma Gnus v0.14) Emacs/25.0.50 (gnu/linux)

Uwe Brauer <address@hidden> writes:

Hi Uwe,

>    > You are a mathematician, aren't you?
>
> What makes you think that? mat is a randomly selected string of
> characters selected by my hm university.

Ah, I've thought it stands for Facultad de Ciencias Matemáticas of the
University Madrid.

>    >  So you probably know that 02115 is
>    > the same number as 2115.  But is 1D54B really the same as D54B?
>
> Haha, [1]
>
> I thought (from some previous discussion) that the length of that
> string

It's not a string, it's a hexadecimal number.

> is restricted in Emacs to four digits and one has to delete *always* the
> first.
>
> So I tried
>               ("\\setT" . ?\u1D54B)

Ah, sorry.  Indeed, the \u character notation accepts only four, or only
eight digits but not one, two, three, five, six, or seven.

,----[ (info "(elisp)General Escape Syntax") ]
|    Firstly, you can specify characters by their Unicode values.
| ‘?\uNNNN’ represents a character with Unicode code point ‘U+NNNN’, where
| NNNN is (by convention) a hexadecimal number with exactly four digits.
| The backslash indicates that the subsequent characters form an escape
| sequence, and the ‘u’ specifies a Unicode escape sequence.
| 
|    There is a slightly different syntax for specifying Unicode
| characters with code points higher than ‘U+FFFF’: ‘?\U00NNNNNN’
| represents the character with code point ‘U+NNNNNN’, where NNNNNN is a
| six-digit hexadecimal number.  The Unicode Standard only defines code
| points up to ‘U+10FFFF’, so if you specify a code point higher than
| that, Emacs signals an error.
| 
|    Secondly, you can specify characters by their hexadecimal character
| codes.  A hexadecimal escape sequence consists of a backslash, ‘x’, and
| the hexadecimal character code.  Thus, ‘?\x41’ is the character ‘A’,
| ‘?\x1’ is the character ‘C-a’, and ‘?\xe0’ is the character ‘à’ (‘a’
| with grave accent).  You can use any number of hex digits, so you can
| represent any character code in this way.
`----

,----[ (info "(elisp)Integer Basics") ]
|    The syntax for integers in bases other than 10 uses ‘#’ followed by a
| letter that specifies the radix: ‘b’ for binary, ‘o’ for octal, ‘x’ for
| hex, or ‘RADIXr’ to specify radix RADIX.  Case is not significant for
| the letter that specifies the radix.  Thus, ‘#bINTEGER’ reads INTEGER in
| binary, and ‘#RADIXrINTEGER’ reads INTEGER in radix RADIX.  Allowed
| values of RADIX run from 2 to 36.  For example:
| 
|      #b101100 ⇒ 44
|      #o54 ⇒ 44
|      #x2c ⇒ 44
|      #24r1k ⇒ 44
`----

So these two notations work:

(insert ?\U0001D54B) => 𝕋
(insert #x1D54B)     => 𝕋

Bye,
Tassilo




reply via email to

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