The attached patch adds about 120 symbols to the "supported" list. Fall
back if the fonts are not present works exactly as for the AMS symbol, i.e.
display as ERT.

Currently the user has to add a \usepackage{wasysym} in the preamble to
make it known to LaTeX. I don't want to do that by default as the package
redefines a few things in a not-so-nice way.

Ok to apply?

Andre'

PS: I certainly would not mind if somebody would come up with some extension
for the math panel...

-- 
Those who desire to give up Freedom in order to gain Security,
will not have, nor do they deserve, either one. (T. Jefferson)
? wasy.diff
Index: lib/configure.m4
===================================================================
RCS file: /usr/local/lyx/cvsroot/lyx-devel/lib/configure.m4,v
retrieving revision 1.44
diff -u -p -r1.44 configure.m4
--- lib/configure.m4    4 Jul 2002 09:58:12 -0000       1.44
+++ lib/configure.m4    9 Jul 2002 10:57:22 -0000
@@ -544,7 +544,7 @@ fi
 # create a fonts.dir file to make X fonts available to LyX
 echo "checking for TeX fonts"
 
-fontlist="cmex10 cmmi10 cmr10 cmsy10 eufm10 msam10 msbm10"
+fontlist="cmex10 cmmi10 cmr10 cmsy10 eufm10 msam10 msbm10i wasy10"
 rm -f xfonts/fonts.dir xfonts/fonts.scale xfonts/tmpfonts
 
 num=0
Index: lib/symbols
===================================================================
RCS file: /usr/local/lyx/cvsroot/lyx-devel/lib/symbols,v
retrieving revision 1.9
diff -u -p -r1.9 symbols
--- lib/symbols 8 Jul 2002 11:51:14 -0000       1.9
+++ lib/symbols 9 Jul 2002 10:57:22 -0000
@@ -423,6 +423,157 @@ lyxdabar           msa          57   0 m
 lyxright           msa          75   0 mathord  x
 lyxleft            msa          76   0 mathord  x
 
+male               wasy          26  0 x        x
+female             wasy          25  0 x        x
+currency           wasy          27  0 x        x
+phone              wasy          7   0 x        x
+recorder           wasy          6   0 x        x
+clock              wasy          28  0 x        x
+lightning          wasy          18  0 x        x
+pointer            wasy          9   0 x        x
+RIGHTarrow         wasy          17  0 x        x
+LEFTarrow          wasy          16  0 x        x
+UParrow            wasy          75  0 x        x
+DOWNarrow          wasy          76  0 x        x
+#AC                 wasy          n0.5pt\wasyfamily\char58\kern0.5pt}}
+#HF         {\leavevmode
+#   \lower0.9pt\hbox to 0pt{\kern0.5pt\wasyfamily\char58\hss}%
+#   \raise0.9pt\hbox{\kern0.5pt\wasyfamily\char58\kern0.5pt}}
+#VHF                wasy          64  0 x        x
+Square             wasy          50  0 x        x
+#CheckedBox         wasy          50\hss}\hbox{\wasyfamily\char8  0 x
+XBox               wasy          52  0 x        x
+hexagon            wasy          55  0 x        x
+pentagon           wasy          68  0 x        x
+octagon            wasy          56  0 x        x
+varhexagon         wasy          57  0 x        x
+hexstar            wasy          65  0 x        x
+varhexstar         wasy          66  0 x        x
+davidsstar         wasy          67  0 x        x
+diameter           wasy          31  0 x        x
+invdiameter        wasy          21  0 x        x
+varangle           wasy          30  0 x        x
+wasylozenge        wasy          53  0 x        x
+kreuz              wasy          54  0 x        x
+smiley             wasy          44  0 x        x
+frownie            wasy          47  0 x        x
+blacksmiley        wasy          45  0 x        x
+sun                wasy          46  0 x        x
+checked            wasy          8   0 x        x
+bell               wasy          10  0 x        x
+eighthnote         wasy          11  0 x        x
+quarternote        wasy          12  0 x        x
+halfnote           wasy          13  0 x        x
+fullnote           wasy          14  0 x        x
+twonotes           wasy          15  0 x        x
+brokenvert         wasy          124 0 x        x
+ataribox           wasy          109 0 x        x
+wasytherefore      wasy          5   0 x        x
+Circle             wasy          35  0 x        x
+CIRCLE             wasy          32  0 x        x
+Leftcircle         wasy          73  0 x        x
+LEFTCIRCLE         wasy          71  0 x        x
+Rightcircle        wasy          74  0 x        x
+RIGHTCIRCLE        wasy          72  0 x        x
+#LEFTcircle {\hbox to 0pt{\wasyfamily\char71\hss}\hbox{\wasyfamily\char35}}
+#RIGHTcircle{\hbox to 0pt{\wasyfamily\char72\hss}\hbox{\wasyfamily\char35}}
+
+#
+# wasy astronomy
+#
+
+vernal             wasy          23  0 x        x
+ascnode            wasy          19  0 x        x
+descnode           wasy          20  0 x        x
+fullmoon           wasy          35  0 x        x
+newmoon            wasy          32  0 x        x
+leftmoon           wasy          36  0 x        x
+rightmoon          wasy          37  0 x        x
+astrosun           cmsy         175  0 mathbin  x
+mercury            wasy          39  0 x        x
+venus              wasy          25  0 x        x
+earth              wasy          38  0 x        x
+mars               wasy          26  0 x        x
+jupiter            wasy          88  0 x        x
+saturn             wasy          89  0 x        x
+uranus             wasy          90  0 x        x
+neptune            wasy          91  0 x        x
+pluto              wasy          92  0 x        x
+
+#
+# wasy zodiac
+#
+aries              wasy          23  0 x        x
+taurus             wasy          93  0 x        x
+gemini             wasy          94  0 x        x
+cancer             wasy          95  0 x        x
+leo                wasy          19
+virgo              wasy          96  0 x        x
+libra              wasy          97  0 x        x
+scorpio            wasy          98  0 x        x
+sagittarius        wasy          99  0 x        x
+capricornus        wasy          100 0 x        x
+aquarius           wasy          101 0 x        x
+pisces             wasy          102 0 x        x
+conjunction        wasy          86  0 x        x
+opposition         wasy          87  0 x        x
+% APL characters
+APLstar            wasy          69  0 x        x
+APLlog             wasy          22  0 x        x
+APLbox             wasy          126 0 x        x
+APLup              wasy          0   0 x        x
+APLdown            wasy          70  0 x        x
+APLinput           wasy          125 0 x        x
+APLcomment         wasy          127 0 x        x
+#APLinv     {{\hbox to 0pt{$\div$\hss}\APLbox}}
+APLuparrowbox      wasy         110  0 x        x
+APLdownarrowbox    wasy         111  0 x        x
+APLleftarrowbox    wasy         112  0 x        x
+APLrightarrowbox   wasy         113  0 x        x
+
+# math characters
+Bowtie             wasy          49  0 x        x
+leftturn           wasy          34  0 x        x
+rightturn          wasy          33  0 x        x
+# diagrams
+#photon             wasy          58\char58\char58\char58}}
+#gluon              wasy          81\char80\char80\char80%
+#char80\char80\char80\char82}}
+# special characters
+cent               wasy         103   0 x        x
+permil             wasy         104   0 x        x
+agemO              wasy          48   0 x        x
+thorn              wasy         105   0 x        x
+Thorn              wasy         106   0 x        x
+openo              wasy         108   0 x        x
+inve               wasy          85   0 x        x
+
+#mho               wasy          48    0  mathord x
+Join               wasy          49    0  mathrel x
+Box                wasy          50    0  mathord x
+Diamond            wasy          51    0  mathord x
+leadsto            wasy          59    0  mathrel x
+#sqsubset          wasy          60    0  mathrel x
+#sqsupset          wasy          61    0  mathrel x
+#lhd               wasy           1    0  mathbin x
+#unlhd             wasy           2    0  mathbin x
+LHD                wasy          16    0  mathbin x
+#rhd               wasy           3    0  mathbin x
+#unrhd             wasy           4    0  mathbin x
+RHD                wasy          17    0  mathbin x
+apprle             wasy          62    0  mathrel x
+apprge             wasy          63    0  mathrel x
+wasypropto         wasy          29    0  mathrel x
+invneg             wasy          24    0  mathrel x
+ocircle            wasy          35    0  mathbin x
+logof              wasy          22    0  mathrel x
+varint             wasy         114    0  mathop  x
+iint               wasy         115    0  mathop  x
+iiint              wasy         116    0  mathop  x
+varoint            wasy         117    0  mathop  x
+oiint              wasy         118    0  mathop  x
+
+
 log                lyxblacktext  0   0 func     x
 lg                 lyxblacktext  0   0 func     x
 ln                 lyxblacktext  0   0 func     x
Index: src/LaTeXFeatures.C
===================================================================
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/LaTeXFeatures.C,v
retrieving revision 1.64
diff -u -p -r1.64 LaTeXFeatures.C
--- src/LaTeXFeatures.C 24 Jun 2002 20:27:58 -0000      1.64
+++ src/LaTeXFeatures.C 9 Jul 2002 10:57:22 -0000
@@ -141,7 +141,8 @@ char const * simplefeatures[] = {
        "floatflt",
        "varioref",
        "prettyref",
-       "float"
+       "float",
+       "wasy"
 };
 
 const int nb_simplefeatures = sizeof(simplefeatures) / sizeof(char const *);
@@ -154,21 +155,20 @@ string const LaTeXFeatures::getPackages(
        LyXTextClass const & tclass = textclasslist[params.textclass];
 
 
-       /**
-        *  These are all the 'simple' includes.  i.e
-        *  packages which we just \usepackage{package}
-        **/
-       for (int i = 0 ; i < nb_simplefeatures ; ++i) {
+       //
+       //  These are all the 'simple' includes.  i.e
+       //  packages which we just \usepackage{package}
+       //
+       for (int i = 0; i < nb_simplefeatures; ++i) {
                if (isRequired(simplefeatures[i]))
                        packages << "\\usepackage{"
-                                << simplefeatures[i]
-                                << "}\n";
+                                << simplefeatures[i] << "}\n";
        }
 
-       /**
-        * The rest of these packages are somewhat more complicated
-        * than those above.
-        **/
+       //
+       // The rest of these packages are somewhat more complicated
+       // than those above.
+       //
 
        if (isRequired("amsmath")
            && ! tclass.provides(LyXTextClass::amsmath)) {
Index: src/lyxfont.C
===================================================================
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/lyxfont.C,v
retrieving revision 1.77
diff -u -p -r1.77 lyxfont.C
--- src/lyxfont.C       10 Jun 2002 07:57:35 -0000      1.77
+++ src/lyxfont.C       9 Jul 2002 10:57:22 -0000
@@ -41,7 +41,7 @@ namespace {
 
 char const * GUIFamilyNames[LyXFont::NUM_FAMILIES + 2 /* default & error */] =
 { N_("Roman"), N_("Sans serif"), N_("Typewriter"), N_("Symbol"),
-  "cmr", "cmsy", "cmm", "cmex", "msa", "msb", "eufrak",
+  "cmr", "cmsy", "cmm", "cmex", "msa", "msb", "eufrak", "wasy",
   N_("Inherit"), N_("Ignore") };
 
 char const * GUISeriesNames[4] =
@@ -65,7 +65,7 @@ char const * GUIMiscNames[5] =
 //
 char const * LyXFamilyNames[LyXFont::NUM_FAMILIES + 2 /* default & error */] =
 { "roman", "sans", "typewriter", "symbol",
-  "cmr", "cmsy", "cmm", "cmex", "msa", "msb", "eufrak",
+  "cmr", "cmsy", "cmm", "cmex", "msa", "msb", "eufrak", "wasy",
   "default", "error" };
 
 char const * LyXSeriesNames[4] =
Index: src/lyxfont.h
===================================================================
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/lyxfont.h,v
retrieving revision 1.49
diff -u -p -r1.49 lyxfont.h
--- src/lyxfont.h       10 Jun 2002 07:57:35 -0000      1.49
+++ src/lyxfont.h       9 Jul 2002 10:57:22 -0000
@@ -59,6 +59,8 @@ public:
                ///
                EUFRAK_FAMILY,
                ///
+               WASY_FAMILY,
+               ///
                INHERIT_FAMILY,
                ///
                IGNORE_FAMILY,
@@ -425,6 +427,7 @@ bool LyXFont::isSymbolFont() const
        case LyXFont::CMEX_FAMILY:
        case LyXFont::MSA_FAMILY:
        case LyXFont::MSB_FAMILY:
+       case LyXFont::WASY_FAMILY:
                return true;
        default:
                return false;
Index: src/frontends/xforms/xfont_loader.C
===================================================================
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/frontends/xforms/xfont_loader.C,v
retrieving revision 1.4
diff -u -p -r1.4 xfont_loader.C
--- src/frontends/xforms/xfont_loader.C 12 Jun 2002 09:47:10 -0000      1.4
+++ src/frontends/xforms/xfont_loader.C 9 Jul 2002 10:57:22 -0000
@@ -147,6 +147,11 @@ void xfont_loader::getFontinfo(LyXFont::
                                new FontInfo("-*-eufm10-medium-*-*-*-*-*-*-*-*-*-*-*");
                        return;
 
+               case LyXFont::WASY_FAMILY:
+                       fontinfo[family][series][shape] =
+                               new FontInfo("-*-wasy10-medium-*-*-*-*-*-*-*-*-*-*-*");
+                       return;
+
                default:
                        break;
        }
Index: src/mathed/math_support.C
===================================================================
RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/mathed/math_support.C,v
retrieving revision 1.47
diff -u -p -r1.47 math_support.C
--- src/mathed/math_support.C   8 Jul 2002 11:29:51 -0000       1.47
+++ src/mathed/math_support.C   9 Jul 2002 10:57:22 -0000
@@ -554,6 +554,7 @@ fontinfo fontinfos[] = {
        {"eufrak", LyXFont::EUFRAK_FAMILY, inh_series, inh_shape, LColor::math},
        {"msa",    LyXFont::MSA_FAMILY, inh_series, inh_shape, LColor::math},
        {"msb",    LyXFont::MSB_FAMILY, inh_series, inh_shape, LColor::math},
+       {"wasy",   LyXFont::WASY_FAMILY, inh_series, inh_shape, LColor::math},
        {"text",   inh_family, inh_series, inh_shape, LColor::black},
        {"textbf", inh_family, LyXFont::BOLD_SERIES, inh_shape, LColor::black},
        {"textit", inh_family, inh_series, LyXFont::ITALIC_SHAPE, LColor::black},

Reply via email to