Commit Graph

139 Commits

Author SHA1 Message Date
Günter Milde
99310b7e3f Fix export of Unicode characters (Unicode blocks <=72)
Fix problems revealed by hand-compiling an examining the test samples in autotests/export/Unicode-characters/:

* new definitions
* fixed definitions
* "force=utf8" when required
* some IPA symbols fail without the "extraipa" package
* fix direction of "textcommaaboveright"
2016-09-10 12:35:51 +02:00
Günter Milde
b9a47dff4e Test and fix lib/unicodesymbols for Latin, Greek, and Cyrillic. 2016-09-08 23:22:51 +02:00
Günter Milde
bc72b4602f Math definitions of Greek symbol variants for lib/unicodesymbols
+ test sample for Greek and Coptic Unicode block
2016-09-08 23:22:51 +02:00
Georg Baum
f69d11f97b Add more lib/symbols unicodemapping
There are still many math symbols in lib/symbols that lack a corresponding
entry in lib/unicodesymbols, although a clear mapping exists. This commit
adds some of them (not all yet). In the future we should probably move the
information from both files into one database.
2016-08-27 11:52:31 +02:00
Georg Baum
5b04b91d54 whitespace 2016-07-02 14:52:46 +02:00
Georg Baum
521c0cde3a Add some symbols from fontmath.ltx
These are all in lib/symbols, but we did not yet know the corresponding unicode
numbers. unicodesymbols does still not contain all symbols from lib/symbols.
2016-06-30 22:25:56 +02:00
Georg Baum
4df8117a9d Escape backslashes
The parser that reads unicodesymbols uses backslashes to escape quotes, so
every backslash that is part of a LaTeX command needs to be escaped as well.
There are more candidates in the greek and cyrillic sections, but I don't
know those commands, so I did not touch them.
2016-06-26 20:36:44 +02:00
Georg Baum
f35ed0c168 Improve \AA and \aa tex2lyx import
The lib/unicodesymbols part is based on work by Günter Milde:

Both, \r{A} and \AA (rsp. \r{a} and \aa) are equivalent standard LICR macros
for Aring/aring  as well as the deprecated "angstrom sign" character (212B).

However, with \AA for 212B and \r{A} for 00C5, tex2lyx converts \AA to the
deprecated "angstrom sign" which is missing in many fonts including the
Unicode version of Latin Modern.

I added the normalize_c() calls so that tex2lyx prefers the precomposed forms
(these are better editable in LyX) and the deprecated flag.
2016-01-08 21:06:24 +01:00
Günter Milde
e1a54ebbe4 Force replacement for U2015 (horizontal bar/quotation dash). 2015-12-14 23:53:39 +01:00
Günter Milde
1814739853 Fix #9770 (unicodesymbols for wasysym) 2015-10-28 11:35:25 +01:00
Günter Milde
d0af891eb2 Fix #9764, combining diacritical characters for line below (part 1).
Correct mappings in lib/unicodesymbols (see #9764 for details).
2015-10-19 18:34:48 +02:00
Günter Milde
268bd0075e Add LICR replacement for COMBINING MACRON BELOW. 2015-08-26 22:46:59 +02:00
Günter Milde
00e1936d81 unicodesymbols: "textgreek" must not be used together with "combining".
With the current code, this leads to output like "\\\\textgreek{\\\\~}"
which results in a LaTeX error as the accent macro \\\\~ expects an argument.
2015-08-13 10:55:04 +02:00
Günter Milde
3f6b034167 Fix Ticket #9607 (support comma below accent in unicodesymbols).
LaTeXFeatures defines \textcommabelow and \textcommaabove based on a 
generic \LyXTextAccent and declares TextCompositeCommands for the Baltic 
letters in the T1 font encoding, using \textcommaabove for the small letter g 
and \textcommabelow else.

This allows overwriting of the composite definition for other font encodings. 
Especially, it does not interfere with the polish/baltic font encoding L7x 
(supported by LatinModern and TeXGyre fonts)  that provides pre-composed 
glyphs.
2015-07-12 16:21:25 +02:00
Günter Milde
476a073c61 Greek subsript letters require "textgreek" flag.
Add the "textgreek" feature to entries for greek subscript letters
in "unicodesymbols".
2015-07-11 18:18:28 +02:00
Günter Milde
5a47e4bc70 Fix #9636 textgreek: restore compatibility with lgrenc.def.
Greek characters with perispomeni (tilde) accent were not properly shown
in the output document, because the "textgreek" feature re-defined \~ in
a way incompatible with lgrenc.def since version 0.8  (2013-05-13)
(package greek-fontenc).

The compatibility-definition is required for older versions of the font setup
(before the move of "lgrenc.def" from "babel" to "greek-fontenc").
It is now done with "ProvideTextCommand" to not overwrite the more complete
implementation in lgrenc.def.
With the compatibility definition, combined diacritics with tilde
must be input with the tilde first (e.g. \~>, not \>~).
"unicodesymbols" is changed accordingly.

Also, some LICRs for combining Greek diacritical characters were added to
Unicodesymbols.
2015-07-11 15:39:02 +02:00
Günter Milde
2a7deb802a Remove "notermination" flags from combining characters in "unicodesymbols".
This fixes bug #9615.

The "notermination" flag tells LyX, that terminating an LICR macro with {} is 
not necessary. This is normally the case for all macros with non-alphabetical
name (e.g. \{).

However, combining diacritical characters are converted to *accent macros*,
which expect an argument (the base character). 
In Unicode, the base character precedes the combining character, 
in LaTeX the combining character precedes the base character. 
LyX changes the order of the two characters to get this right,
e.g. "x" + "combining tilde" becomes "\~{x}". 

In the special case there is no preceding character (e.g. at the start of the 
document or a paragraph), Unicode shows the combining diacritical character
without base character.
The replacement is currently not "terminated" (e.g. "\~"), because of the 
"notermination=text" flags in "unicodesymbols". 
The accent macros take the *following* character as base character, which is
clearly not intended.
In case of a paragraph consisting of just one combining diacritical character,
LaTeX compilation fails with an error.

With the patch, LyX writes the accent macros with an empty argument,
e.g.  "\~{}", the output is similar to the view in the GUI with the diacritical 
character on its own, not on the follwoing character.
2015-07-09 11:54:37 +02:00
Georg Baum
f61555cf48 Improve alignment 2015-06-14 14:16:49 +02:00
Juergen Spitzmueller
ca1aea5427 Revert "remove unneeded notermination tags in unicodesymbols (bug #9615)"
This reverts commit a6fdc1196b.

The issue needs more discussion. See #9615.
2015-06-14 13:44:50 +02:00
Georg Baum
0cd7d1f699 Support very much greater/less than
This is bug #9612. The patch is from Günter Milde. He wrote:
The patch uses the "long" macro names (\llless and \gggtr) to minimize
name-clash probability. (There is, e.g., a name clash of \lll with Babel's
polish.ldf (cf. bug #6197))
2015-06-11 20:40:04 +02:00
Juergen Spitzmueller
a6fdc1196b remove unneeded notermination tags in unicodesymbols (bug #9615)
Patch by Guenter Milde
2015-06-11 11:14:01 +02:00
Juergen Spitzmueller
0c8019a903 consistent replacement for CEDILLA in unicodesymbols (bug #9614)
Patch by Guenter Milde
2015-06-11 11:11:26 +02:00
Georg Baum
507cc07c2d Add commented ASCII control pictures
The list was taken by a patch from Jürgen for bug #5704.
2015-05-08 22:00:40 +02:00
Juergen Spitzmueller
23e8db3e5c Fixes and additions to the textcyr macros in unicodesymbols
Patch by Guenter Milde.

See #8600.
2015-01-24 17:29:41 +01:00
Georg Baum
188dd74618 Add two missing unicodesymbols 2014-03-08 10:59:43 +01:00
Juergen Spitzmueller
30a01da78f Support (black) card suites in text mode (#8971) 2014-02-13 15:23:15 +01:00
Georg Baum
ee08aefeac Add some missing unicode math symbols
and fix wrong ones. This fixes the safe part of bug #8888. The symbols
provided by mdsymbol.sty have to wait, since mdsymbol.sty provides a huge
number of symbols, I don't have the time right now to process them all, and
a partial file format update does not make sense.
2013-12-11 20:58:28 +01:00
Juergen Spitzmueller
c2d076a640 Do not use 'unsafe' tipa shortcuts
Turns out they are, well, unsafe (i.e. conflict with existing 'core' macros).
2013-09-13 15:41:12 +02:00
Juergen Spitzmueller
4347046bb6 Bind unicode glyph 0x2026 to \dots
The macro is identical to \ldots in texted, but this way, tex2lyx can import both \ldots (as InsetSpecialChar) and \dots (as unicode glyph), while retaining the original distinction (which might get relevant with some special packages or via user redefinition of one of these macros).
2013-08-17 10:18:26 +02:00
Georg Baum
89b2c54c00 Fix wrong space symbols (#8729)
The main part of the fix (unicodesymbols) is from Jürgen. This commit fixes
tree problems:
- \; etc. were also used in text mode, but are math only
- all of those glyphs need to be forced with utf8
- actually, \; etc. are not the correct macros, since the encoded spaces are
  breakable, but the math spaces are all protected. The sapce symbols are not
  defined in the utf8 encodings.
2013-07-13 22:43:31 +02:00
Georg Baum
3a6441f38c Fix bug #8509: sigma in PDF bookmarks
The fix was provided by Günter Milde. Basically, the forced replacement is
only needed for the iso8859-7 encoding to circumvent its autosigma feature.
2013-03-04 21:54:15 +01:00
Georg Baum
9229f38ecf Fix LaTeX macro for symbol 0x02f7
\textsubtilde is a combining character (0x0330), but 0x02f7 is not.
Apart from the wrong LaTeX output, having the same command for two symbols
confuses texc2lyx.
2013-02-24 15:08:36 +01:00
Georg Baum
9f93983b61 Extend unicodesymbols force flag
As suggested by Günter Milde.
2013-02-19 22:19:10 +01:00
Georg Baum
0f268ef78d Clarify the force flag 2013-02-17 13:21:07 +01:00
Georg Baum
c0395333b2 Fix force flag for multiple encodings
A comma cannot be used as delimiter, since it is already the flag delimiter.
2013-02-17 10:19:58 +01:00
Georg Baum
8fbf142cb9 Fixes for utf8 encoding by Günter Milde 2013-01-23 21:52:17 +01:00
Georg Baum
89a2e9589b Fix stupid typo from 7c6a6a05
This breaks compilation of the math manual and much more. Thanks Scott who
found it out.
2013-01-22 21:11:38 +01:00
Georg Baum
7c6a6a05a2 Fix bug #5087 as suggested by Jürgen
Now it is possible to force certain commands only for some encodings.
2013-01-13 21:36:41 +01:00
Georg Baum
6ab8d2e54b Add symbol I stumbled upon 2013-01-10 21:22:55 +01:00
Georg Baum
a6f12e8a5c Document feature alternatives 2012-12-28 13:25:42 +01:00
Georg Baum
13b288bc5e Remove duplicate symbols
There were found with -dbg mathed ans entering a math inset.
I kept the AMS versions, except leadsto, which is only an approximation in AMS.
hbar was simply defined twice with identical definitions.
2012-12-28 13:25:42 +01:00
Georg Baum
f67cf6f4bb Add support for stmaryrd.sty (bug #8434)
The stmaryrd package adds support for lots of math symbols, using a font
designed to accompany the computer modern fonts. The changes in detail:

- Fix generate_symbols_list.py to work with stmaryrd.sty. It loooks like it
  was automatically translated from a perl version and never used.
- Generate the new symbols in lib/symbols using generate_symbols_list.py and
  add some manual adjustments
- Generate stmary10.ttf by a simple ttf export from stmary10.sfd with fontforge
- Add license info for stmary10.ttf
- Create a test file with all symbols from stmaryrd.sty. Actually it would be
  nice to have this for the other fonts as well.
- The mechanics: lyx2lyx, tex2lyx, font machinery etc.
2012-12-15 13:10:31 +01:00
Georg Baum
72533da25b Add some unicode arrow symbols 2012-12-02 17:22:05 +01:00
Uwe Stöhr
8bac60bd4c unicodesymbols: revert because this was accidentally committed in the last commit 2012-10-15 01:31:21 +02:00
Uwe Stöhr
add9c6e2a9 g-brief layouts: remove the dependency on europs.sty as this package is an optional one and add info to the template file 2012-10-15 01:26:35 +02:00
Juergen Spitzmueller
f251c4973c More tipa shortcuts 2012-08-21 12:47:50 +02:00
Juergen Spitzmueller
1267319117 The tipa tone macro requires the tone package from the tipa bundle 2012-08-20 08:52:42 +02:00
Juergen Spitzmueller
16ec8a08ef TIPA additions 2012-08-19 19:33:48 +02:00
Juergen Spitzmueller
66729e434e TIPA fixes 2012-08-19 16:59:53 +02:00
Juergen Spitzmueller
db50cc7c1e remove problematic IPA shortcut 2012-08-16 19:04:11 +02:00