The branch, master, has been updated. - Log -----------------------------------------------------------------
commit f67cf6f4bb3e3d22ac9aebfa22027c3537cbdf61 Author: Georg Baum <[email protected]> Date: Sat Dec 15 13:02:40 2012 +0100 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. diff --git a/development/tools/generate_symbols_list.py b/development/tools/generate_symbols_list.py index a18dd69..de64393 100644 --- a/development/tools/generate_symbols_list.py +++ b/development/tools/generate_symbols_list.py @@ -1,7 +1,9 @@ #!/usr/bin/python -import sys,string,re,os +import sys,string,re,os,os.path def get_code(code, font): + if font != "dontknowwhichfontusesthisstrangeencoding": + return code if code < 10: return code+161 elif code < 32: @@ -20,10 +22,16 @@ def process(file): fh = open(file) lines = fh.readlines() fh.close() + package, ext = os.path.splitext(os.path.basename(file)) + if ext != ".sty": + package = '' n = len(lines) for i in xrange(n): line = lines[i] + mo = re.match(r'\s*%.*', line) + if mo != None: + continue next_line = "" if i+1 < n: next_line = lines[i+1] @@ -36,19 +44,28 @@ def process(file): if mo != None: font_names[mo.group(1)] = mo.group(3) - mo = re.match(r'.*\\DeclareMath(Symbol|Delimiter)\s*\{?\\(\w*?)\}?\s*\{?\\(.*?)\}?\s*\{(.*?)\}\s*\{"(.*?)\}.*', line) - if mo != None: - symbol = mo.group(2) - type = mo.group(3) - font = mo.group(4) - code = mo.group(5) - else: - mo = re.match(r'.*\\edef\\(\w*?)\{.*?\{\\hexnumber@\\sym(.*?)\}(.*?)\}', line) - if mo != None: - symbol = mo.group(1) - type = "mathord" - font = mo.group(2) - code = mo.group(3) + mo = re.match(r'.*\\DeclareMath(Symbol|Delimiter)\s*\{?\\(\w*?)\}?\s*\{?\\(.*?)\}?\s*\{(.*?)\}\s*\{([\'"]?)(.*?)\}.*', line) + code = -1 + try: + if mo != None: + symbol = mo.group(2) + type = mo.group(3) + font = mo.group(4) + if mo.group(5) == '': + code = int(mo.group(6)) + elif mo.group(5) == '"': + code = int(mo.group(6), 16) + else: + code = int(mo.group(6), 8) + else: + mo = re.match(r'.*\\edef\\(\w*?)\{.*?\{\\hexnumber@\\sym(.*?)\}(.*?)\}', line) + if mo != None: + symbol = mo.group(1) + type = "mathord" + font = mo.group(2) + code = int(mo.group(3), 16) + except ValueError: + code = -1 if mo != None and symbol not in ignore_list: mo2 = re.match(r'\s*\\def\\(.*?)\{', next_line) @@ -59,8 +76,8 @@ def process(file): if font_names.has_key(font): font = font_names[font] - code = get_code(string.atoi(code, 16), font) - if code == 0: + code = get_code(code, font) + if code < 0: continue xcode = 0 @@ -74,7 +91,10 @@ def process(file): sys.stderr.write("code is not equal!!!\n") else: symbols[symbol] = code - print "%-18s %-4s %3d %3d %-6s" % (symbol,font,code,xcode,type) + if package == '': + print "%-18s %-4s %3d %3d %-6s" % (symbol,font,code,xcode,type) + else: + print "%-18s %-4s %3d %3d %-9s x %s" % (symbol,font,code,xcode,type,package) path = os.path.split(sys.argv[0])[0] diff --git a/lib/Makefile.am b/lib/Makefile.am index 04516e5..9888787 100644 --- a/lib/Makefile.am +++ b/lib/Makefile.am @@ -14,6 +14,7 @@ dist_pkgdata_DATA += configure.py dist_noinst_DATA = \ fonts/stmary10.sfd \ + fonts/test/stmary10.lyx \ images/README \ images/font-smallcaps.png \ images/math/ams_arrows.png \ @@ -298,6 +299,7 @@ dist_fonts_DATA = \ fonts/msbm10.ttf \ fonts/ReadmeBaKoMa4LyX.txt \ fonts/rsfs10.ttf \ + fonts/stmary10.ttf \ fonts/wasy10.ttf imagesdir = $(pkgdatadir)/images diff --git a/lib/chkconfig.ltx b/lib/chkconfig.ltx index f198ae1..22297e5 100644 --- a/lib/chkconfig.ltx +++ b/lib/chkconfig.ltx @@ -343,6 +343,7 @@ \TestPackage{slashed} \TestPackage{soul} \TestPackage{splitidx} +\TestPackage{stmaryrd} \TestPackage{subfig} \TestPackage{Sweave} \TestPackage{textcomp} diff --git a/lib/doc/LaTeXConfig.lyx b/lib/doc/LaTeXConfig.lyx index adabe17..01de5ab 100644 --- a/lib/doc/LaTeXConfig.lyx +++ b/lib/doc/LaTeXConfig.lyx @@ -6581,6 +6581,35 @@ splitindex \end_layout \begin_layout Subsection +stmaryrd +\end_layout + +\begin_layout Description +Found: +\begin_inset Info +type "package" +arg "stmaryrd" +\end_inset + + +\end_layout + +\begin_layout Description +CTAN: +\family typewriter +fonts/stmaryrd/ +\end_layout + +\begin_layout Description +Notes: The package +\family sans +stmaryrd +\family default + is needed by LyX to be able to output additional characters that come from + the St Mary's Road symbol font. +\end_layout + +\begin_layout Subsection subfig \end_layout diff --git a/lib/fonts/ReadmeBaKoMa4LyX.txt b/lib/fonts/ReadmeBaKoMa4LyX.txt index 9314f73..d158d7c 100644 --- a/lib/fonts/ReadmeBaKoMa4LyX.txt +++ b/lib/fonts/ReadmeBaKoMa4LyX.txt @@ -56,6 +56,14 @@ created by Eddie Saudrais using METAFONT, is freely available for general use. + In addition to the BaKoMa fonts, this font bundle contains the stmary font + 'stmary10.ttf' from the stmaryrd package. It was converted from the type1 + version available at + http://www.ctan.org/tex-archive/fonts/stmaryrd/ps-type1/hoekwater/. + This PostScript Type 1 implementation of the font stmary10, originally + created by Jeremy Gibbons and Alan Jeffrey using METAFONT, is in the + public domain. + Ekkehart Schlicht [email protected] diff --git a/lib/fonts/stmary10.ttf b/lib/fonts/stmary10.ttf new file mode 100644 index 0000000..692a30e Binary files /dev/null and b/lib/fonts/stmary10.ttf differ diff --git a/lib/fonts/test/stmary10.lyx b/lib/fonts/test/stmary10.lyx new file mode 100644 index 0000000..3eb80e0 --- /dev/null +++ b/lib/fonts/test/stmary10.lyx @@ -0,0 +1,547 @@ +#LyX 2.1 created this file. For more info see http://www.lyx.org/ +\lyxformat 453 +\begin_document +\begin_header +\textclass article +\begin_preamble + +\end_preamble +\use_default_options false +\maintain_unincluded_children false +\language english +\language_package none +\inputencoding auto +\fontencoding default +\font_roman default +\font_sans default +\font_typewriter default +\font_math auto +\font_default_family default +\use_non_tex_fonts false +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 +\graphics default +\default_output_format default +\output_sync 0 +\bibtex_command default +\index_command default +\paperfontsize 12 +\spacing single +\use_hyperref false +\papersize a4paper +\use_geometry false +\use_package amsmath 1 +\use_package amssymb 0 +\use_package esint 1 +\use_package mathdots 0 +\use_package mathtools 0 +\use_package mhchem 0 +\use_package stmaryrd 2 +\use_package undertilde 0 +\cite_engine basic +\cite_engine_type numerical +\biblio_style plain +\use_bibtopic false +\use_indices false +\paperorientation portrait +\suppress_date false +\justification true +\use_refstyle 0 +\index Index +\shortcut idx +\color #008000 +\end_index +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\paragraph_indentation default +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\html_math_output 0 +\html_css_as_file 0 +\html_be_strict false +\end_header + +\begin_body + +\begin_layout Standard +This file contains each symbol of the font stmary10.ttf that is made accessible + by stmaryrd.sty, even the ones that are not used in LyX, because they are + already provided by other packages. +\end_layout + +\begin_layout Standard +\begin_inset Formula $\shortleftarrow$ +\end_inset + + +\begin_inset Formula $\shortrightarrow$ +\end_inset + + +\begin_inset Formula $\shortuparrow$ +\end_inset + + +\begin_inset Formula $\shortdownarrow$ +\end_inset + + +\begin_inset Formula $\Yup$ +\end_inset + + +\begin_inset Formula $\Ydown$ +\end_inset + + +\begin_inset Formula $\Yleft$ +\end_inset + + +\begin_inset Formula $\Yright$ +\end_inset + + +\begin_inset Formula $\varcurlyvee$ +\end_inset + + +\begin_inset Formula $\varcurlywedge$ +\end_inset + + +\begin_inset Formula $\minuso$ +\end_inset + + +\begin_inset Formula $\baro$ +\end_inset + + +\begin_inset Formula $\sslash$ +\end_inset + + +\begin_inset Formula $\bbslash$ +\end_inset + + +\begin_inset Formula $\moo$ +\end_inset + + +\begin_inset Formula $\varotimes$ +\end_inset + + +\begin_inset Formula $\varoast$ +\end_inset + + +\begin_inset Formula $\varobar$ +\end_inset + + +\begin_inset Formula $\varodot$ +\end_inset + + +\begin_inset Formula $\varoslash$ +\end_inset + + +\begin_inset Formula $\varobslash$ +\end_inset + + +\begin_inset Formula $\varocircle$ +\end_inset + + +\begin_inset Formula $\varoplus$ +\end_inset + + +\begin_inset Formula $\varominus$ +\end_inset + + +\begin_inset Formula $\boxast$ +\end_inset + + +\begin_inset Formula $\boxbar$ +\end_inset + + +\begin_inset Formula $\boxdot$ +\end_inset + + +\begin_inset Formula $\boxslash$ +\end_inset + + +\begin_inset Formula $\boxbslash$ +\end_inset + + +\begin_inset Formula $\boxcircle$ +\end_inset + + +\begin_inset Formula $\boxbox$ +\end_inset + + +\begin_inset Formula $\boxempty$ +\end_inset + + +\begin_inset Formula $\lightning$ +\end_inset + + +\begin_inset Formula $\merge$ +\end_inset + + +\begin_inset Formula $\vartimes$ +\end_inset + + +\begin_inset Formula $\fatsemi$ +\end_inset + + +\begin_inset Formula $\sswarrow$ +\end_inset + + +\begin_inset Formula $\ssearrow$ +\end_inset + + +\begin_inset Formula $\curlywedgeuparrow$ +\end_inset + + +\begin_inset Formula $\curlywedgedownarrow$ +\end_inset + + +\begin_inset Formula $\fatslash$ +\end_inset + + +\begin_inset Formula $\fatbslash$ +\end_inset + + +\begin_inset Formula $\lbag$ +\end_inset + + +\begin_inset Formula $\rbag$ +\end_inset + + +\begin_inset Formula $\varbigcirc$ +\end_inset + + +\begin_inset Formula $\leftrightarroweq$ +\end_inset + + +\begin_inset Formula $\curlyveedownarrow$ +\end_inset + + +\begin_inset Formula $\curlyveeuparrow$ +\end_inset + + +\begin_inset Formula $\nnwarrow$ +\end_inset + + +\begin_inset Formula $\nnearrow$ +\end_inset + + +\begin_inset Formula $\leftslice$ +\end_inset + + +\begin_inset Formula $\rightslice$ +\end_inset + + +\begin_inset Formula $\varolessthan$ +\end_inset + + +\begin_inset Formula $\varogreaterthan$ +\end_inset + + +\begin_inset Formula $\varovee$ +\end_inset + + +\begin_inset Formula $\varowedge$ +\end_inset + + +\begin_inset Formula $\talloblong$ +\end_inset + + +\begin_inset Formula $\interleave$ +\end_inset + + +\begin_inset Formula $\obar$ +\end_inset + + +\begin_inset Formula $\obslash$ +\end_inset + + +\begin_inset Formula $\olessthan$ +\end_inset + + +\begin_inset Formula $\ogreaterthan$ +\end_inset + + +\begin_inset Formula $\ovee$ +\end_inset + + +\begin_inset Formula $\owedge$ +\end_inset + + +\begin_inset Formula $\oblong$ +\end_inset + + +\begin_inset Formula $\inplus$ +\end_inset + + +\begin_inset Formula $\niplus$ +\end_inset + + +\begin_inset Formula $\nplus$ +\end_inset + + +\begin_inset Formula $\subsetplus$ +\end_inset + + +\begin_inset Formula $\supsetplus$ +\end_inset + + +\begin_inset Formula $\subsetpluseq$ +\end_inset + + +\begin_inset Formula $\supsetpluseq$ +\end_inset + + +\begin_inset Formula $\Lbag$ +\end_inset + + +\begin_inset Formula $\Rbag$ +\end_inset + + +\begin_inset Formula $\llbracket$ +\end_inset + + +\begin_inset Formula $\rrbracket$ +\end_inset + + +\begin_inset Formula $\llparenthesis$ +\end_inset + + +\begin_inset Formula $\rrparenthesis$ +\end_inset + + +\begin_inset Formula $\binampersand$ +\end_inset + + +\begin_inset Formula $\bindnasrepma$ +\end_inset + + +\begin_inset Formula $\trianglelefteqslant$ +\end_inset + + +\begin_inset Formula $\trianglerighteqslant$ +\end_inset + + +\begin_inset Formula $\ntrianglelefteqslant$ +\end_inset + + +\begin_inset Formula $\ntrianglerighteqslant$ +\end_inset + + +\begin_inset Formula $\llfloor$ +\end_inset + + +\begin_inset Formula $\rrfloor$ +\end_inset + + +\begin_inset Formula $\llceil$ +\end_inset + + +\begin_inset Formula $\rrceil$ +\end_inset + + +\begin_inset Formula $\arrownot$ +\end_inset + + +\begin_inset Formula $\Arrownot$ +\end_inset + + +\begin_inset Formula $\Mapstochar$ +\end_inset + + +\begin_inset Formula $\mapsfromchar$ +\end_inset + + +\begin_inset Formula $\Mapsfromchar$ +\end_inset + + +\begin_inset Formula $\leftrightarrowtriangle$ +\end_inset + + +\begin_inset Formula $\leftarrowtriangle$ +\end_inset + + +\begin_inset Formula $\rightarrowtriangle$ +\end_inset + + +\begin_inset Formula $\bigtriangledown$ +\end_inset + + +\begin_inset Formula $\bigtriangleup$ +\end_inset + + +\begin_inset Formula $\bigcurlyvee$ +\end_inset + + +\begin_inset Formula $\bigcurlywedge$ +\end_inset + + +\begin_inset Formula $\bigsqcap$ +\end_inset + + +\begin_inset Formula $\bigbox$ +\end_inset + + +\begin_inset Formula $\bigparallel$ +\end_inset + + +\begin_inset Formula $\biginterleave$ +\end_inset + + +\begin_inset Formula $\bignplus$ +\end_inset + + +\begin_inset Formula $\llbracket$ +\end_inset + + +\begin_inset Formula $\rrbracket$ +\end_inset + + +\begin_inset Formula $\varcopyright$ +\end_inset + + +\begin_inset Formula $\longarrownot$ +\end_inset + + +\begin_inset Formula $\Longarrownot$ +\end_inset + + +\begin_inset Formula $\Mapsto$ +\end_inset + + +\begin_inset Formula $\mapsfrom$ +\end_inset + + +\begin_inset Formula $\Mapsfrom$ +\end_inset + + +\begin_inset Formula $\Longmapsto$ +\end_inset + + +\begin_inset Formula $\longmapsfrom$ +\end_inset + + +\begin_inset Formula $\Longmapsfrom$ +\end_inset + + +\end_layout + +\end_body +\end_document diff --git a/lib/lyx2lyx/lyx_2_1.py b/lib/lyx2lyx/lyx_2_1.py index 26aab3e..0084458 100644 --- a/lib/lyx2lyx/lyx_2_1.py +++ b/lib/lyx2lyx/lyx_2_1.py @@ -417,6 +417,83 @@ def revert_use_mathtools(document): i = j +def convert_use_stmaryrd(document): + "insert use_package stmaryrd" + i = find_token(document.header, "\\use_package", 0) + if i == -1: + document.warning("Malformed LyX document: Can't find \\use_package.") + return; + j = find_token(document.preamble, "\\usepackage{stmaryrd}", 0) + if j == -1: + document.header.insert(i + 1, "\\use_package stmaryrd 0") + else: + document.header.insert(i + 1, "\\use_package stmaryrd 2") + del document.preamble[j] + + +def revert_use_stmaryrd(document): + "remove use_package stmaryrd" + regexp = re.compile(r'(\\use_package\s+stmaryrd)') + i = find_re(document.header, regexp, 0) + value = "1" # default is auto + if i != -1: + value = get_value(document.header, "\\use_package" , i).split()[1] + del document.header[i] + if value == "2": # on + add_to_preamble(document, ["\\usepackage{stmaryrd}"]) + elif value == "1": # auto + commands = ["shortleftarrow", "shortrightarrow", "shortuparrow", \ + "shortdownarrow", "Yup", "Ydown", "Yleft", "Yright", \ + "varcurlyvee", "varcurlywedge", "minuso", "baro", \ + "sslash", "bbslash", "moo", "varotimes", "varoast", \ + "varobar", "varodot", "varoslash", "varobslash", \ + "varocircle", "varoplus", "varominus", "boxast", \ + "boxbar", "boxdot", "boxslash", "boxbslash", "boxcircle", \ + "boxbox", "boxempty", "merge", "vartimes", \ + "fatsemi", "sswarrow", "ssearrow", "curlywedgeuparrow", \ + "curlywedgedownarrow", "fatslash", "fatbslash", "lbag", \ + "rbag", "varbigcirc", "leftrightarroweq", \ + "curlyveedownarrow", "curlyveeuparrow", "nnwarrow", \ + "nnearrow", "leftslice", "rightslice", "varolessthan", \ + "varogreaterthan", "varovee", "varowedge", "talloblong", \ + "interleave", "obar", "obslash", "olessthan", \ + "ogreaterthan", "ovee", "owedge", "oblong", "inplus", \ + "niplus", "nplus", "subsetplus", "supsetplus", \ + "subsetpluseq", "supsetpluseq", "Lbag", "Rbag", \ + "llbracket", "rrbracket", "llparenthesis", \ + "rrparenthesis", "binampersand", "bindnasrepma", \ + "trianglelefteqslant", "trianglerighteqslant", \ + "ntrianglelefteqslant", "ntrianglerighteqslant", \ + "llfloor", "rrfloor", "llceil", "rrceil", "arrownot", \ + "Arrownot", "Mapstochar", "mapsfromchar", "Mapsfromchar", \ + "leftrightarrowtriangle", "leftarrowtriangle", \ + "rightarrowtriangle", \ + "bigcurlyvee", "bigcurlywedge", "bigsqcap", "bigbox", \ + "bigparallel", "biginterleave", "bignplus", \ + "varcopyright", "longarrownot", "Longarrownot", \ + "Mapsto", "mapsfrom", "Mapsfrom" "Longmapsto", \ + "longmapsfrom", "Longmapsfrom"] + # commands provided by stmaryrd.sty but LyX uses other packages: + # lightning, bigtriangledown, bigtriangleup + + i = 0 + while True: + i = find_token(document.body, '\\begin_inset Formula', i) + if i == -1: + return + j = find_end_of_inset(document.body, i) + if j == -1: + document.warning("Malformed LyX document: Can't find end of Formula inset at line " + str(i)) + i += 1 + continue + code = "\n".join(document.body[i:j]) + for c in commands: + if code.find("\\%s" % c) != -1: + add_to_preamble(document, ["\\usepackage{stmaryrd}"]) + return + i = j + + def convert_cite_engine_type(document): "Determine the \\cite_engine_type from the citation engine." i = find_token(document.header, "\\cite_engine", 0) @@ -2679,10 +2756,12 @@ convert = [ [449, []], [450, []], [451, [convert_beamerargs, convert_againframe_args, convert_corollary_args, convert_quote_args]], - [452, [convert_beamerblocks]] + [452, [convert_beamerblocks]], + [453, [convert_use_stmaryrd]] ] revert = [ + [452, [revert_use_stmaryrd]], [451, [revert_beamerblocks]], [450, [revert_beamerargs, revert_beamerargs2, revert_beamerargs3, revert_beamerflex]], [449, [revert_garamondx, revert_garamondx_newtxmath]], diff --git a/lib/symbols b/lib/symbols index 89a64d6..717303b 100644 --- a/lib/symbols +++ b/lib/symbols @@ -4,6 +4,9 @@ # # The syntax of lib/symbols is very ad hoc. # There are several possible formats of a line, which are quite different. +# New symbols for font packages may be created using +# development/tools/generate_symbols_list.py (but may require manual fixes +# as well). # decorations acute decoration none @@ -812,6 +815,150 @@ logof wasy 22 0 mathrel x varint wasy 114 0 mathop ∫ varoint wasy 117 0 mathop ∫ +# Generated from stmaryrd.sty + +shortleftarrow stmry 0 0 mathrel x stmaryrd +shortrightarrow stmry 1 0 mathrel x stmaryrd +shortuparrow stmry 2 0 mathrel x stmaryrd +shortdownarrow stmry 3 0 mathrel x stmaryrd +Yup stmry 4 0 mathbin x stmaryrd +Ydown stmry 5 0 mathbin x stmaryrd +Yleft stmry 6 0 mathbin x stmaryrd +Yright stmry 7 0 mathbin x stmaryrd +varcurlyvee stmry 8 0 mathbin x stmaryrd +# qt does not display characters at the \t position (0x09) +# therefore our .ttf font contains a copy at 254 (0xfe) +#varcurlywedge stmry 9 0 mathbin x stmaryrd +varcurlywedge stmry 254 0 mathbin x stmaryrd +minuso stmry 10 0 mathbin x stmaryrd +baro stmry 11 0 mathbin x stmaryrd +sslash stmry 12 0 mathbin x stmaryrd +bbslash stmry 13 0 mathbin x stmaryrd +moo stmry 14 0 mathbin x stmaryrd +varotimes stmry 15 0 mathbin x stmaryrd +varoast stmry 16 0 mathbin x stmaryrd +varobar stmry 17 0 mathbin x stmaryrd +varodot stmry 18 0 mathbin x stmaryrd +varoslash stmry 19 0 mathbin x stmaryrd +varobslash stmry 20 0 mathbin x stmaryrd +varocircle stmry 21 0 mathbin x stmaryrd +varoplus stmry 22 0 mathbin x stmaryrd +varominus stmry 23 0 mathbin x stmaryrd +boxast stmry 24 0 mathbin x stmaryrd +boxbar stmry 25 0 mathbin x stmaryrd +boxdot stmry 26 0 mathbin x stmaryrd +boxslash stmry 27 0 mathbin x stmaryrd +boxbslash stmry 28 0 mathbin x stmaryrd +boxcircle stmry 29 0 mathbin x stmaryrd +boxbox stmry 30 0 mathbin x stmaryrd +boxempty stmry 31 0 mathbin x stmaryrd +#lightning stmry 32 0 mathord x stmaryrd # already in wasy +merge stmry 33 0 mathbin x stmaryrd +vartimes stmry 34 0 mathbin x stmaryrd +fatsemi stmry 35 0 mathbin x stmaryrd +sswarrow stmry 36 0 mathrel x stmaryrd +ssearrow stmry 37 0 mathrel x stmaryrd +curlywedgeuparrow stmry 38 0 mathrel x stmaryrd +curlywedgedownarrow stmry 39 0 mathrel x stmaryrd +fatslash stmry 40 0 mathbin x stmaryrd +fatbslash stmry 41 0 mathbin x stmaryrd +lbag stmry 42 0 mathbin x stmaryrd +rbag stmry 43 0 mathbin x stmaryrd +varbigcirc stmry 44 0 mathbin x stmaryrd +leftrightarroweq stmry 45 0 mathrel x stmaryrd +curlyveedownarrow stmry 46 0 mathrel x stmaryrd +curlyveeuparrow stmry 47 0 mathrel x stmaryrd +nnwarrow stmry 48 0 mathrel x stmaryrd +nnearrow stmry 49 0 mathrel x stmaryrd +leftslice stmry 50 0 mathbin x stmaryrd +rightslice stmry 51 0 mathbin x stmaryrd +varolessthan stmry 52 0 mathbin x stmaryrd +varogreaterthan stmry 53 0 mathbin x stmaryrd +varovee stmry 54 0 mathbin x stmaryrd +varowedge stmry 55 0 mathbin x stmaryrd +talloblong stmry 56 0 mathbin x stmaryrd +interleave stmry 57 0 mathbin x stmaryrd +obar stmry 58 0 mathbin x stmaryrd +obslash stmry 59 0 mathbin x stmaryrd +olessthan stmry 60 0 mathbin x stmaryrd +ogreaterthan stmry 61 0 mathbin x stmaryrd +ovee stmry 62 0 mathbin x stmaryrd +owedge stmry 63 0 mathbin x stmaryrd +oblong stmry 64 0 mathbin x stmaryrd +inplus stmry 65 0 mathrel x stmaryrd +niplus stmry 66 0 mathrel x stmaryrd +nplus stmry 67 0 mathbin x stmaryrd +subsetplus stmry 68 0 mathrel x stmaryrd +supsetplus stmry 69 0 mathrel x stmaryrd +subsetpluseq stmry 70 0 mathrel x stmaryrd +supsetpluseq stmry 71 0 mathrel x stmaryrd +Lbag stmry 72 0 mathopen x stmaryrd +Rbag stmry 73 0 mathclose x stmaryrd +llbracket stmry 74 0 mathopen x stmaryrd +rrbracket stmry 75 0 mathclose x stmaryrd +llparenthesis stmry 76 0 mathopen x stmaryrd +rrparenthesis stmry 77 0 mathclose x stmaryrd +binampersand stmry 78 0 mathopen x stmaryrd +bindnasrepma stmry 79 0 mathclose x stmaryrd +trianglelefteqslant stmry 80 0 mathrel x stmaryrd +trianglerighteqslant stmry 81 0 mathrel x stmaryrd +ntrianglelefteqslant stmry 82 0 mathrel x stmaryrd +ntrianglerighteqslant stmry 83 0 mathrel x stmaryrd +llfloor stmry 84 0 mathopen x stmaryrd +rrfloor stmry 85 0 mathclose x stmaryrd +llceil stmry 86 0 mathopen x stmaryrd +rrceil stmry 87 0 mathclose x stmaryrd +arrownot stmry 88 0 mathrel x stmaryrd +Arrownot stmry 89 0 mathrel x stmaryrd +Mapstochar stmry 90 0 mathrel x stmaryrd +mapsfromchar stmry 91 0 mathrel x stmaryrd +Mapsfromchar stmry 92 0 mathrel x stmaryrd +leftrightarrowtriangle stmry 93 0 mathrel x stmaryrd +leftarrowtriangle stmry 94 0 mathrel x stmaryrd +rightarrowtriangle stmry 95 0 mathrel x stmaryrd +#bigtriangledown stmry 96 0 mathop x stmaryrd #already in cmsy +#bigtriangleup stmry 97 0 mathop x stmaryrd #already in cmsy +bigcurlyvee stmry 98 0 mathop x stmaryrd +bigcurlywedge stmry 99 0 mathop x stmaryrd +bigsqcap stmry 100 0 mathop x stmaryrd +bigbox stmry 101 0 mathop x stmaryrd +bigparallel stmry 102 0 mathop x stmaryrd +biginterleave stmry 103 0 mathop x stmaryrd +#hugetriangledown stmry 104 0 mathop x stmaryrd # only in the font, not the .sty +#hugetriangleup stmry 105 0 mathop x stmaryrd # only in the font, not the .sty +#hugecurlyvee stmry 106 0 mathop x stmaryrd # only in the font, not the .sty +#hugecurlywedge stmry 107 0 mathop x stmaryrd # only in the font, not the .sty +#hugesqcap stmry 108 0 mathop x stmaryrd # only in the font, not the .sty +#hugebox stmry 109 0 mathop x stmaryrd # only in the font, not the .sty +#hugeparallel stmry 110 0 mathop x stmaryrd # only in the font, not the .sty +#hugeinterleave stmry 111 0 mathop x stmaryrd # only in the font, not the .sty +bignplus stmry 112 0 mathop x stmaryrd # caution: named hugenplus in the font +#largellbracket stmry 113 0 mathopen x stmaryrd # only in the font, not the .sty +#Largellbracket stmry 114 0 mathopen x stmaryrd # only in the font, not the .sty +#LARGEllbracket stmry 115 0 mathopen x stmaryrd # only in the font, not the .sty +#hugellbracket stmry 116 0 mathopen x stmaryrd # only in the font, not the .sty +#Largellbrackettop stmry 117 0 mathopen x stmaryrd # only in the font, not the .sty +#Largellbracketbot stmry 118 0 mathopen x stmaryrd # only in the font, not the .sty caution: named Hugellbrackettop in the font +#llbracketex stmry 119 0 mathopen x stmaryrd # only in the font, not the .sty caution: named Hugellbracketbot in the font +#hugenplus stmry 120 0 mathop x stmaryrd # only in the font, not the .sty caution: named Hugenplus in the font +#largerrbracket stmry 121 0 mathclose x stmaryrd # only in the font, not the .sty +#Largerrbracket stmry 122 0 mathclose x stmaryrd # only in the font, not the .sty +#LARGErrbracket stmry 123 0 mathclose x stmaryrd # only in the font, not the .sty +#hugerrbracket stmry 124 0 mathclose x stmaryrd # only in the font, not the .sty +#Largerrbrackettop stmry 125 0 mathclose x stmaryrd # only in the font, not the .sty caution: named Hugerrbrackettop in the font +#Largerrbracketbot stmry 126 0 mathclose x stmaryrd # only in the font, not the .sty caution: named Hugerrbracketbot in the font +#rrbracketex stmry 127 0 mathclose x stmaryrd # only in the font, not the .sty caution: named Hugerrbracketex in the font + +\def\varcopyright{c\kern-14mu\varbigcirc} stmaryrd +\def\longarrownot{\kern5.5mu\arrownot\kern-5.5mu} stmaryrd +\def\Longarrownot{\kern5.5mu\Arrownot\kern-5.5mu} stmaryrd +\def\Mapsto{\Mapstochar\kern-9mu\Rightarrow} stmaryrd +\def\mapsfrom{\leftarrow\kern-9mu\mapsfromchar} stmaryrd +\def\Mapsfrom{\Leftarrow\kern-9mu\Mapsfromchar} stmaryrd +\def\Longmapsto{\Mapstochar\kern-7mu\Longrightarrow} stmaryrd +\def\longmapsfrom{\longleftarrow\kern-7mu\mapsfromchar} stmaryrd +\def\Longmapsfrom{\Longleftarrow\kern-7mu\Mapsfromchar} stmaryrd + # symbols from the mhchem package, all of them are equivalent to a math symbol # mhchem is not loaded because these commands can only be used inside # a \ce or a \cf inset diff --git a/lib/unicodesymbols b/lib/unicodesymbols index 7c22dc5..249447e 100644 --- a/lib/unicodesymbols +++ b/lib/unicodesymbols @@ -1868,14 +1868,14 @@ 0x219a "" "" "" "\\nleftarrow" "amssymb" # LEFTWARDS ARROW WITH STROKE 0x219b "" "" "" "\\nrightarrow" "amssymb" # RIGHTWARDS ARROW WITH STROKE #0x219c "" "" "" "" "" # LEFTWARDS WAVE ARROW -#0x219d "" "" "" "" "" # RIGHTWARDS WAVE ARROW +0x219d "" "" "" "\\leadsto" "amssymb" # RIGHTWARDS WAVE ARROW 0x219e "" "" "" "\\twoheadleftarrow" "amssymb" # LEFTWARDS TWO HEADED ARROW #0x219f "" "" "" "" "" # UPWARDS TWO HEADED ARROW 0x21a0 "" "" "" "\\twoheadrightarrow" "amssymb" # RIGHTWARDS TWO HEADED ARROW #0x21a1 "" "" "" "" "" # DOWNWARDS TWO HEADED ARROW 0x21a2 "" "" "" "\\leftarrowtail" "amssymb" # LEFTWARDS ARROW WITH TAIL 0x21a3 "" "" "" "\\rightarrowtail" "amssymb" # RIGHTWARDS ARROW WITH TAIL -#0x21a4 "" "" "" "" "" # LEFTWARDS ARROW FROM BAR +0x21a4 "" "" "" "\\mapsfromchar" "stmaryrd" # LEFTWARDS ARROW FROM BAR #0x21a5 "" "" "" "" "" # UPWARDS ARROW FROM BAR 0x21a6 "" "" "" "\\mapsto" "" # RIGHTWARDS ARROW FROM BAR #0x21a7 "" "" "" "" "" # DOWNWARDS ARROW FROM BAR @@ -1886,7 +1886,7 @@ 0x21ac "" "" "" "\\looparrowright" "amssymb" # RIGHTWARDS ARROW WITH LOOP #0x21ad "" "" "" "" "" # LEFT RIGHT WAVE ARROW 0x21ae "" "" "" "\\nleftrightarrow" "amssymb" # LEFT RIGHT ARROW WITH STROKE -0x21af "" "" "" "\\lightning" "wasysym" # DOWNWARDS ZIGZAG ARROW +0x21af "" "" "" "\\lightning" "stmaryrd|wasysym" # DOWNWARDS ZIGZAG ARROW 0x21b0 "" "" "" "\\Lsh" "amssymb" # UPWARDS ARROW WITH TIP LEFTWARDS 0x21b1 "" "" "" "\\Rsh" "amssymb" # UPWARDS ARROW WITH TIP RIGHTWARDS #0x21b2 "" "" "" "" "" # DOWNWARDS ARROW WITH TIP LEFTWARDS @@ -2549,6 +2549,8 @@ # # miscellaneous mathematical symbols-A # +0x27e6 "" "" "" "\\llbracket" "stmaryrd" # MATHEMATICAL LEFT WHITE SQUARE BRACKET +0x27e7 "" "" "" "\\rrbracket" "stmaryrd" # MATHEMATICAL RIGHT WHITE SQUARE BRACKET 0x27e8 "\\textlangle" "textcomp" "" "\\langle" "" # MATHEMATICAL LEFT ANGLE BRACKET 0x27e9 "\\textrangle" "textcomp" "" "\\rangle" "" # MATHEMATICAL RIGHT ANGLE BRACKET # diff --git a/src/BufferParams.cpp b/src/BufferParams.cpp index e672525..37fa651 100644 --- a/src/BufferParams.cpp +++ b/src/BufferParams.cpp @@ -454,6 +454,7 @@ vector<string> const & BufferParams::auto_packages() packages.push_back("mathdots"); packages.push_back("mathtools"); packages.push_back("mhchem"); + packages.push_back("stmaryrd"); packages.push_back("undertilde"); } return packages; diff --git a/src/Font.cpp b/src/Font.cpp index 7595265..6b072d8 100644 --- a/src/Font.cpp +++ b/src/Font.cpp @@ -57,8 +57,8 @@ namespace { char const * GUIFamilyNames[NUM_FAMILIES + 2 /* default & error */] = { N_("Roman"), N_("Sans Serif"), N_("Typewriter"), N_("Symbol"), - "cmr", "cmsy", "cmm", "cmex", "msa", "msb", "eufrak", "rsfs", "wasy", "esint", - N_("Inherit"), N_("Ignore") }; + "cmr", "cmsy", "cmm", "cmex", "msa", "msb", "eufrak", "rsfs", "stmry", + "wasy", "esint", N_("Inherit"), N_("Ignore") }; char const * GUISeriesNames[NUM_SERIES + 2 /* default & error */] = { N_("Medium"), N_("Bold"), N_("Inherit"), N_("Ignore") }; diff --git a/src/FontEnums.h b/src/FontEnums.h index d06c5d6..5dd7839 100644 --- a/src/FontEnums.h +++ b/src/FontEnums.h @@ -49,6 +49,8 @@ enum FontFamily { /// RSFS_FAMILY, /// + STMARY_FAMILY, + /// WASY_FAMILY, /// ESINT_FAMILY, diff --git a/src/FontInfo.cpp b/src/FontInfo.cpp index 15054ee..251e509 100644 --- a/src/FontInfo.cpp +++ b/src/FontInfo.cpp @@ -32,8 +32,8 @@ namespace lyx { // char const * LyXFamilyNames[NUM_FAMILIES + 2 /* default & error */] = { "roman", "sans", "typewriter", "symbol", - "cmr", "cmsy", "cmm", "cmex", "msa", "msb", "eufrak", "rsfs", "wasy", - "esint", "default", "error" }; + "cmr", "cmsy", "cmm", "cmex", "msa", "msb", "eufrak", "rsfs", "stmry", + "wasy", "esint", "default", "error" }; char const * LyXSeriesNames[NUM_SERIES + 2 /* default & error */] = { "medium", "bold", "default", "error" }; @@ -380,6 +380,7 @@ string getFamilyCSS(FontFamily const & f) case MSB_FAMILY: case EUFRAK_FAMILY: case RSFS_FAMILY: + case STMARY_FAMILY: case WASY_FAMILY: case ESINT_FAMILY: case INHERIT_FAMILY: diff --git a/src/FontInfo.h b/src/FontInfo.h index b471c29..a083eae 100644 --- a/src/FontInfo.h +++ b/src/FontInfo.h @@ -127,6 +127,7 @@ public: case CMEX_FAMILY: case MSA_FAMILY: case MSB_FAMILY: + case STMARY_FAMILY: case WASY_FAMILY: case ESINT_FAMILY: return true; diff --git a/src/LaTeXFeatures.cpp b/src/LaTeXFeatures.cpp index 12db9f6..37c2e78 100644 --- a/src/LaTeXFeatures.cpp +++ b/src/LaTeXFeatures.cpp @@ -850,6 +850,11 @@ string const LaTeXFeatures::getPackages() const params_.use_package("yhmath") != BufferParams::package_off) packages << "\\usepackage{yhmath}\n"; + // stmaryrd must be loaded after amsmath + if (mustProvide("stmaryrd") && + params_.use_package("stmaryrd") != BufferParams::package_off) + packages << "\\usepackage{stmaryrd}\n"; + if (mustProvide("undertilde") && params_.use_package("undertilde") != BufferParams::package_off) packages << "\\usepackage{undertilde}\n"; diff --git a/src/frontends/qt4/GuiDocument.cpp b/src/frontends/qt4/GuiDocument.cpp index dbdf691..180a83a 100644 --- a/src/frontends/qt4/GuiDocument.cpp +++ b/src/frontends/qt4/GuiDocument.cpp @@ -156,6 +156,10 @@ char const * packages_gui[][4] = N_("Use mhchem &package automatically"), N_("Use mh&chem package"), N_("The LaTeX package mhchem is only used if either the command \\ce or \\cf is inserted into formulas")}, + {"stmaryrd", + N_("Use stmaryrd package automatically"), + N_("Use stmaryrd package"), + N_("The LaTeX package stmaryrd is only used if symbols from the St Mary's Road symbol font for theoretical computer science are inserted into formulas")}, {"undertilde", N_("Use u&ndertilde package automatically"), N_("Use undertilde pac&kage"), diff --git a/src/frontends/qt4/GuiFontLoader.cpp b/src/frontends/qt4/GuiFontLoader.cpp index 695d21b..5614606 100644 --- a/src/frontends/qt4/GuiFontLoader.cpp +++ b/src/frontends/qt4/GuiFontLoader.cpp @@ -36,7 +36,8 @@ using namespace std; using namespace lyx::support; QString const math_fonts[] = {"cmex10", "cmmi10", "cmr10", "cmsy10", - "esint10", "eufm10", "msam10", "msbm10", "rsfs10", "wasy10"}; + "esint10", "eufm10", "msam10", "msbm10", "rsfs10", "stmary10", + "wasy10"}; int const num_math_fonts = sizeof(math_fonts) / sizeof(*math_fonts); namespace lyx { @@ -78,6 +79,7 @@ SymbolFont symbol_fonts[] = { { MSB_FAMILY, "msbm10", "-*-msbm10-*-*-*-*-*-*-*-*-*-*-*-*" }, { EUFRAK_FAMILY,"eufm10", "-*-eufm10-medium-*-*-*-*-*-*-*-*-*-*-*" }, { RSFS_FAMILY, "rsfs10", "-*-rsfs10-medium-*-*-*-*-*-*-*-*-*-*-*" }, + { STMARY_FAMILY,"stmary10","-*-stmary10-medium-*-*-*-*-*-*-*-*-*-*-*" }, { WASY_FAMILY, "wasy10", "-*-wasy10-medium-*-*-*-*-*-*-*-*-*-*-*" }, { ESINT_FAMILY, "esint10","-*-esint10-medium-*-*-*-*-*-*-*-*-*-*-*" } }; diff --git a/src/frontends/qt4/GuiFontMetrics.cpp b/src/frontends/qt4/GuiFontMetrics.cpp index 799121b..40c1802 100644 --- a/src/frontends/qt4/GuiFontMetrics.cpp +++ b/src/frontends/qt4/GuiFontMetrics.cpp @@ -38,7 +38,7 @@ namespace { * This is no real conversion but a simple cast in reality. This is the reason * why this works well for symbol fonts used in mathed too, even though * these are not real ucs4 characters. These are codepoints in the - * modern fonts used, nothing unicode related. + * computer modern fonts used, nothing unicode related. * See comment in QLPainter::text() for more explanation. **/ inline QChar const ucs4_to_qchar(char_type const ucs4) diff --git a/src/mathed/MathSupport.cpp b/src/mathed/MathSupport.cpp index 82de873..95d27b4 100644 --- a/src/mathed/MathSupport.cpp +++ b/src/mathed/MathSupport.cpp @@ -574,6 +574,8 @@ fontinfo fontinfos[] = { inh_shape, Color_math}, {"msb", MSB_FAMILY, inh_series, inh_shape, Color_math}, + {"stmry", STMARY_FAMILY, inh_series, + inh_shape, Color_math}, {"wasy", WASY_FAMILY, inh_series, inh_shape, Color_math}, {"esint", ESINT_FAMILY, inh_series, diff --git a/src/tex2lyx/Preamble.cpp b/src/tex2lyx/Preamble.cpp index 38f3918..fe6de69 100644 --- a/src/tex2lyx/Preamble.cpp +++ b/src/tex2lyx/Preamble.cpp @@ -517,6 +517,7 @@ Preamble::Preamble() : one_language(true), title_layout_found(false) h_use_packages["mhchem"] = "0"; h_use_packages["mathdots"] = "0"; h_use_packages["mathtools"] = "0"; + h_use_packages["stmaryrd"] = "0"; h_use_packages["undertilde"] = "0"; } @@ -702,7 +703,8 @@ void Preamble::handle_package(Parser &p, string const & name, else if (name == "amsmath" || name == "amssymb" || name == "esint" || name == "mhchem" || name == "mathdots" || - name == "mathtools" || name == "undertilde") + name == "mathtools" || name == "stmaryrd" || + name == "undertilde") h_use_packages[name] = "2"; else if (name == "babel") { diff --git a/src/tex2lyx/TODO.txt b/src/tex2lyx/TODO.txt index 96f0c8f..8085ae8 100644 --- a/src/tex2lyx/TODO.txt +++ b/src/tex2lyx/TODO.txt @@ -89,6 +89,7 @@ Format LaTeX feature LyX feature \command<arg>, \begin{env}<arg> 452 beamer block arguments InsetArgument \begin{block}<overlay>{title} +453 automatic stmaryrd loading \use_package stmaryrd General diff --git a/src/tex2lyx/test/CJK.lyx.lyx b/src/tex2lyx/test/CJK.lyx.lyx index a2b9f63..ef1b7fb 100644 --- a/src/tex2lyx/test/CJK.lyx.lyx +++ b/src/tex2lyx/test/CJK.lyx.lyx @@ -1,5 +1,5 @@ #LyX file created by tex2lyx 2.1.0dev -\lyxformat 452 +\lyxformat 453 \begin_document \begin_header \textclass article @@ -46,6 +46,7 @@ \use_package mathdots 0 \use_package mathtools 0 \use_package mhchem 0 +\use_package stmaryrd 0 \use_package undertilde 0 \cite_engine basic \cite_engine_type numerical diff --git a/src/tex2lyx/test/DummyDocument.lyx b/src/tex2lyx/test/DummyDocument.lyx index 871797b..7f95c83 100644 --- a/src/tex2lyx/test/DummyDocument.lyx +++ b/src/tex2lyx/test/DummyDocument.lyx @@ -1,5 +1,5 @@ #LyX file created by tex2lyx 2.1.0dev -\lyxformat 450 +\lyxformat 453 \begin_document \begin_header \textclass article @@ -44,6 +44,7 @@ \use_package mathdots 0 \use_package mathtools 0 \use_package mhchem 0 +\use_package stmaryrd 0 \use_package undertilde 0 \cite_engine natbib \cite_engine_type numerical @@ -77,7 +78,6 @@ \begin_layout Subsection - \begin_inset CommandInset label LatexCommand label name "sub:External-Subsection" @@ -88,7 +88,6 @@ External Subsection \end_layout \begin_layout Standard - This is a small dummy child document to show how files can be inserted to another document. Here are some accented characters to make sure the encoding is passed to included files: éè \end_layout diff --git a/src/tex2lyx/test/XeTeX-polyglossia.lyx.lyx b/src/tex2lyx/test/XeTeX-polyglossia.lyx.lyx index 0f37fa5..c39ac11 100644 --- a/src/tex2lyx/test/XeTeX-polyglossia.lyx.lyx +++ b/src/tex2lyx/test/XeTeX-polyglossia.lyx.lyx @@ -1,5 +1,5 @@ #LyX file created by tex2lyx 2.1.0dev -\lyxformat 452 +\lyxformat 453 \begin_document \begin_header \textclass article @@ -46,6 +46,7 @@ \use_package mathdots 0 \use_package mathtools 0 \use_package mhchem 0 +\use_package stmaryrd 0 \use_package undertilde 0 \cite_engine basic \cite_engine_type numerical diff --git a/src/tex2lyx/test/box-color-size-space-align.lyx.lyx b/src/tex2lyx/test/box-color-size-space-align.lyx.lyx index 5cddec2..a855321 100644 --- a/src/tex2lyx/test/box-color-size-space-align.lyx.lyx +++ b/src/tex2lyx/test/box-color-size-space-align.lyx.lyx @@ -1,5 +1,5 @@ #LyX file created by tex2lyx 2.1.0dev -\lyxformat 452 +\lyxformat 453 \begin_document \begin_header \textclass article @@ -70,6 +70,7 @@ \use_package mathdots 0 \use_package mathtools 0 \use_package mhchem 0 +\use_package stmaryrd 0 \use_package undertilde 0 \cite_engine basic \cite_engine_type numerical diff --git a/src/tex2lyx/test/test-insets.lyx.lyx b/src/tex2lyx/test/test-insets.lyx.lyx index 2594281..df09a02 100644 --- a/src/tex2lyx/test/test-insets.lyx.lyx +++ b/src/tex2lyx/test/test-insets.lyx.lyx @@ -1,5 +1,5 @@ #LyX file created by tex2lyx 2.1.0dev -\lyxformat 452 +\lyxformat 453 \begin_document \begin_header \textclass article @@ -50,6 +50,7 @@ \use_package mathdots 0 \use_package mathtools 0 \use_package mhchem 0 +\use_package stmaryrd 0 \use_package undertilde 0 \cite_engine natbib \cite_engine_type numerical diff --git a/src/tex2lyx/test/test-modules.lyx.lyx b/src/tex2lyx/test/test-modules.lyx.lyx index 1674124..fcdaa1f 100644 --- a/src/tex2lyx/test/test-modules.lyx.lyx +++ b/src/tex2lyx/test/test-modules.lyx.lyx @@ -1,5 +1,5 @@ #LyX file created by tex2lyx 2.1.0dev -\lyxformat 452 +\lyxformat 453 \begin_document \begin_header \textclass amsart @@ -42,6 +42,7 @@ theorems-ams \use_package mathdots 0 \use_package mathtools 0 \use_package mhchem 0 +\use_package stmaryrd 0 \use_package undertilde 0 \cite_engine basic \cite_engine_type numerical diff --git a/src/tex2lyx/test/test-structure.lyx.lyx b/src/tex2lyx/test/test-structure.lyx.lyx index a02550f..1c83fc3 100644 --- a/src/tex2lyx/test/test-structure.lyx.lyx +++ b/src/tex2lyx/test/test-structure.lyx.lyx @@ -1,5 +1,5 @@ #LyX file created by tex2lyx 2.1.0dev -\lyxformat 452 +\lyxformat 453 \begin_document \begin_header \textclass article @@ -75,6 +75,7 @@ logicalmkup \use_package mathdots 0 \use_package mathtools 0 \use_package mhchem 0 +\use_package stmaryrd 0 \use_package undertilde 0 \cite_engine basic \cite_engine_type numerical diff --git a/src/tex2lyx/test/test.lyx.lyx b/src/tex2lyx/test/test.lyx.lyx index f698bbe..9bf19cb 100644 --- a/src/tex2lyx/test/test.lyx.lyx +++ b/src/tex2lyx/test/test.lyx.lyx @@ -1,5 +1,5 @@ #LyX file created by tex2lyx 2.1.0dev -\lyxformat 452 +\lyxformat 453 \begin_document \begin_header \textclass article @@ -46,6 +46,7 @@ \use_package mathdots 0 \use_package mathtools 0 \use_package mhchem 0 +\use_package stmaryrd 0 \use_package undertilde 0 \cite_engine basic \cite_engine_type numerical diff --git a/src/version.h b/src/version.h index 9d1ea70..1c3c401 100644 --- a/src/version.h +++ b/src/version.h @@ -30,8 +30,8 @@ extern char const * const lyx_version_info; // Do not remove the comment below, so we get merge conflict in // independent branches. Instead add your own. -#define LYX_FORMAT_LYX 452 // spitz: support beamer block args -#define LYX_FORMAT_TEX2LYX 452 // spitz: support beamer block args +#define LYX_FORMAT_LYX 453 // gb: support the stmaryrd package +#define LYX_FORMAT_TEX2LYX 453 // gb: support the stmaryrd package #if LYX_FORMAT_TEX2LYX != LYX_FORMAT_LYX #ifndef _MSC_VER ----------------------------------------------------------------------- Summary of changes: development/tools/generate_symbols_list.py | 54 ++- lib/Makefile.am | 2 + lib/chkconfig.ltx | 1 + lib/doc/LaTeXConfig.lyx | 29 + lib/fonts/ReadmeBaKoMa4LyX.txt | 8 + lib/fonts/stmary10.ttf | Bin 0 -> 18624 bytes lib/fonts/test/stmary10.lyx | 547 ++++++++++++++++++++ lib/lyx2lyx/lyx_2_1.py | 81 +++- lib/symbols | 147 ++++++ lib/unicodesymbols | 8 +- src/BufferParams.cpp | 1 + src/Font.cpp | 4 +- src/FontEnums.h | 2 + src/FontInfo.cpp | 5 +- src/FontInfo.h | 1 + src/LaTeXFeatures.cpp | 5 + src/frontends/qt4/GuiDocument.cpp | 4 + src/frontends/qt4/GuiFontLoader.cpp | 4 +- src/frontends/qt4/GuiFontMetrics.cpp | 2 +- src/mathed/MathSupport.cpp | 2 + src/tex2lyx/Preamble.cpp | 4 +- src/tex2lyx/TODO.txt | 1 + src/tex2lyx/test/CJK.lyx.lyx | 3 +- src/tex2lyx/test/DummyDocument.lyx | 5 +- src/tex2lyx/test/XeTeX-polyglossia.lyx.lyx | 3 +- .../test/box-color-size-space-align.lyx.lyx | 3 +- src/tex2lyx/test/test-insets.lyx.lyx | 3 +- src/tex2lyx/test/test-modules.lyx.lyx | 3 +- src/tex2lyx/test/test-structure.lyx.lyx | 3 +- src/tex2lyx/test/test.lyx.lyx | 3 +- src/version.h | 4 +- 31 files changed, 902 insertions(+), 40 deletions(-) create mode 100644 lib/fonts/stmary10.ttf create mode 100644 lib/fonts/test/stmary10.lyx hooks/post-receive -- The LyX Source Repository
