|
21 | 21 | The following accents are provided: \hat, \breve, \grave, \bar, |
22 | 22 | \acute, \tilde, \vec, \dot, \ddot. All of them have the same |
23 | 23 | syntax, eg to make an overbar you do \bar{o} or to make an o umlaut |
24 | | - you do \ddot{o}. |
| 24 | + you do \ddot{o}. The shortcuts are also provided, eg: \"o \'e \`e |
| 25 | + \~n \.x \^y |
25 | 26 |
|
26 | 27 | The spacing elements \ , \/ and \hspace{num} are provided. \/ |
27 | 28 | inserts a small space, and \hspace{num} inserts a fraction of the |
@@ -795,15 +796,21 @@ def accent(self, s, loc, toks): |
795 | 796 | accent, sym = toks[0] |
796 | 797 |
|
797 | 798 | d = { |
798 | | - r'\hat' : r'\circumflexaccent', |
799 | | - r'\breve' : r'\combiningbreve', |
800 | | - r'\bar' : r'\combiningoverline', |
801 | | - r'\grave' : r'\combininggraveaccent', |
802 | | - r'\acute' : r'\combiningacuteaccent', |
803 | | - r'\ddot' : r'\combiningdiaeresis', |
804 | | - r'\tilde' : r'\combiningtilde', |
805 | | - r'\dot' : r'\combiningdotabove', |
806 | | - r'\vec' : r'\combiningrightarrowabove', |
| 799 | + r'\hat' : r'\circumflexaccent', |
| 800 | + r'\breve' : r'\combiningbreve', |
| 801 | + r'\bar' : r'\combiningoverline', |
| 802 | + r'\grave' : r'\combininggraveaccent', |
| 803 | + r'\acute' : r'\combiningacuteaccent', |
| 804 | + r'\ddot' : r'\combiningdiaeresis', |
| 805 | + r'\tilde' : r'\combiningtilde', |
| 806 | + r'\dot' : r'\combiningdotabove', |
| 807 | + r'\vec' : r'\combiningrightarrowabove', |
| 808 | + r'\"' : r'\combiningdiaeresis', |
| 809 | + r"\`" : r'\combininggraveaccent', |
| 810 | + r"\'" : r'\combiningacuteaccent', |
| 811 | + r'\~' : r'\combiningtilde', |
| 812 | + r'\.' : r'\combiningdotabove', |
| 813 | + r'\^' : r'\circumflexaccent', |
807 | 814 | } |
808 | 815 | above = SymbolElement(d[accent]) |
809 | 816 | sym.neighbors['above'] = above |
@@ -913,7 +920,10 @@ def subsuperscript(self, s, loc, toks): |
913 | 920 |
|
914 | 921 | accent = Literal('hat') | Literal('check') | Literal('dot') | \ |
915 | 922 | Literal('breve') | Literal('acute') | Literal('ddot') | \ |
916 | | - Literal('grave') | Literal('tilde') | Literal('bar') | Literal('vec') |
| 923 | + Literal('grave') | Literal('tilde') | Literal('bar') | \ |
| 924 | + Literal('vec') | Literal('"') | Literal("`") | Literal("'") |\ |
| 925 | + Literal('~') | Literal('.') | Literal('^') |
| 926 | + |
917 | 927 |
|
918 | 928 |
|
919 | 929 |
|
@@ -953,7 +963,7 @@ def subsuperscript(self, s, loc, toks): |
953 | 963 | #~ composite = Group( Combine(bslash + composite) + group + group).setParseAction(handler.composite).setName("composite") |
954 | 964 | composite = Group( Combine(bslash + overUnder) + group + group).setParseAction(handler.composite).setName("composite") |
955 | 965 |
|
956 | | -accent = Group( Combine(bslash + accent) + group).setParseAction(handler.accent).setName("accent") |
| 966 | +accent = Group( Combine(bslash + accent) + Optional(lbrace) + symbol + Optional(rbrace)).setParseAction(handler.accent).setName("accent") |
957 | 967 |
|
958 | 968 | #~ symgroup = symbol ^ group |
959 | 969 | symgroup = symbol | group |
|
0 commit comments