]> git.lyx.org Git - lyx.git/blob - src/tex-accent.h
multicol; small stuff
[lyx.git] / src / tex-accent.h
1 // -*- C++ -*-
2 /* This file is part of
3  * ======================================================
4  *
5  *           LyX, The Document Processor
6  *
7  *           Copyright 1995 Matthias Ettrich
8  *           Copyright 1995-2001 The LyX Team.
9  *
10  * ====================================================== */
11
12 #ifndef TEX_ACCENT
13 #define TEX_ACCENT
14
15 #include "commandtags.h"
16
17 /* the names used by TeX and XWindows for deadkeys/accents are not the same
18    so here follows a table to clearify the differences. Please correct this
19    if I got it wrong
20
21    |------------------|------------------|------------------|--------------|
22    |      TeX         |     XWindows     |   \bind/LFUN     | used by intl |
23    |------------------|------------------|------------------|--------------|
24    |    grave         |    grave         |LFUN_GRAVE        | grave
25    |    acute         |    acute         |LFUN_ACUTE        | acute
26    |    circumflex    |    circumflex    |LFUN_CIRCUMFLEX   | circumflex
27    | umlaut/dieresis  |    diaeresis     |LFUN_UMLAUT       | umlaut
28    |    tilde         |    tilde         |LFUN_TILDE        | tilde
29    |    macron        |    maron         |LFUN_MACRON       | macron
30    |    dot           |    abovedot      |LFUN_DOT          | dot
31    |    cedilla       |    cedilla       |LFUN_CEDILLA      | cedilla
32    |    underdot      |                  |LFUN_UNDERDOT     | underdot
33    |    underbar      |                  |LFUN_UNDERBAR     | underbar
34    |    hácek         |    caron         |LFUN_CARON        | caron
35    |    breve         |    breve         |LFUN_BREVE        | breve
36    |    tie           |                  |LFUN_TIE          | tie
37    | Hungarian umlaut |    doubleacute   |LFUN_HUNG_UMLAUT  | hungarian umlaut
38    |    circle        |    abovering     |LFUN_CIRCLE       | circle
39    |                  |    ogonek        |                  |
40    |                  |    iota          |                  |
41    |                  |    voiced_sound  |                  |
42    |                  | semivoiced_sound |                  |
43    |                  |                  |LFUN_SPECIAL_CARON| special caron
44    */
45 // I am not sure how some of the XWindows names coresponds to the TeX ones.
46
47 ///
48 enum tex_accent {
49         ///
50         TEX_NOACCENT = 0,
51         ///
52         TEX_ACUTE,
53         ///
54         TEX_GRAVE,
55         ///
56         TEX_MACRON,
57         ///
58         TEX_TILDE,
59         ///
60         TEX_UNDERBAR,
61         ///
62         TEX_CEDILLA,
63         ///
64         TEX_UNDERDOT,
65         ///
66         TEX_CIRCUMFLEX,
67         ///
68         TEX_CIRCLE,
69         ///
70         TEX_TIE,
71         ///
72         TEX_BREVE,
73         ///
74         TEX_CARON,
75 //  TEX_SPECIAL_CARON,
76         ///
77         TEX_HUNGUML,
78         ///
79         TEX_UMLAUT,
80         ///
81         TEX_DOT,
82         ///
83         TEX_OGONEK,
84         ///
85         TEX_MAX_ACCENT= TEX_OGONEK
86 };
87
88
89 /** the native is so we know what characters TeX can write in a decent way
90  it should be up to the user if _all_ characters should be allowed to
91  be accented. Lgb. */
92 struct tex_accent_struct {
93         ///
94         tex_accent accent;
95         ///
96         char const * cmd;
97 #if 0
98         ///
99         char const * native;
100 #endif
101         ///
102         char const * name;
103         ///
104         kb_action action;
105 };
106
107 ///
108 extern tex_accent_struct lyx_accent_table[];
109
110 #endif