- "\\DeclareFontEncoding{T2A}{}{}\n";
-
-static string const newlyxcommand_def =
- "%% Math macros with multiple optional parameters\n"
- "% #1<-\\foo\n"
- "\\def\\newlyxcommand#1{\n"
- " \\@ifnextchar[%]\n"
- " {\\newlyxcommand@arity{#1}}\n"
- " {\\newlyxcommand@arity{#1}[0]}\n"
- "}\n"
- "\n"
- "% #1<-\\foo #2<-arity\n"
- "\\def\\newlyxcommand@arity#1[#2]{\n"
- " \\@ifnextchar[%]\n"
- " {\\newlyxcommand@firstopt{#1}{}{#2}}\n"
- " {\\newlyxcommand@def#1{#2}}\n"
- "}\n"
- "\n"
- "% #1<-\\foo #2<-iii #3<-arity #4<-default value for (#2+1)th argument\n"
- "\\def\\newlyxcommand@firstopt#1#2#3[#4]{\n"
- " % ##1<-\\foo@\n"
- " \\def\\@defclause##1{\n"
- " \\def#1{\n"
- " \\@ifnextchar[%]\n"
- " {##1{}{#4}}\n"
- " {##1{}{#4}[#4]}}\n"
- " }\n"
- " \\expandafter\\@defclause\\csname\\expandafter\\@gobble\\string#1@\\endcsname\n"
- " \\@ifnextchar[%]\n"
- " {\\newlyxcommand@opt{#1}{#2}{#3}}\n"
- " {\\newlyxcommand@last{#1}{#2}{#3}[#4]}\n"
- "}\n"
- "\n"
- "\\begingroup\n"
- "\\catcode`\\Q=3\n"
- "\\gdef\\@myempty{Q}\n"
- "\\endgroup\n"
- "\n"
- "% #1<-\\foo #2<-iii #3<-arity #4<-default value for (#2+1)th argument\n"
- "\\def\\newlyxcommand@opt#1#2#3[#4]{\n"
- " % ##1<-\\foo@iii ##2<-\\foo@iiii \n"
- " % ####1<-{a}{b}{c} ####2<-default value ####3<- default arg\n"
- " \\def\\@defclause##1##2{\n"
- " \\def##1####1####2[####3]{\n"
- " \\ifx\\@myempty####3\\@myempty%\n"
- " \\def\\@callnext{\n"
- " \\@ifnextchar[%]\n"
- " {##2{####1{####2}}{#4}}\n"
- " {##2{####1{####2}}{#4}[#4]}\n"
- " }\n"
- " \\else\n"
- " \\def\\@callnext{\n"
- " \\@ifnextchar[%]\n"
- " {##2{####1{####3}}{#4}}\n"
- " {##2{####1{####3}}{#4}[#4]}\n"
- " }\n"
- " \\fi\n"
- " \\@callnext\n"
- " }\n"
- " }\n"
- " \\expandafter\\def\\expandafter\\@clausename\\expandafter{\\csname\\expandafter\\@gobble\\string#1@#2\\endcsname}\n"
- " \\expandafter\\def\\expandafter\\@nextclausename\\expandafter{\\csname\\expandafter\\@gobble\\string#1@#2i\\endcsname}\n"
- " \\expandafter\\expandafter\\expandafter \n"
- " \\@defclause\\expandafter\\@clausename\\@nextclausename\n"
- " \\@ifnextchar[%]\n"
- " {\\newlyxcommand@opt{#1}{#2i}{#3}}\n"
- " {\\newlyxcommand@last{#1}{#2i}{#3}[#4]}\n"
- "}\n"
- "\n"
- "% #1<-\\foo #2<-iii #3<-arity #4<-default value for (#2+1)th argument\n"
- "\\def\\newlyxcommand@last#1#2#3[#4]{\n"
- " \\def\\@defclause##1##2{\n"
- " \\def##1####1####2[####3]{\n"
- " \\ifx\\@myempty####3\\@myempty%\n"
- " \\def\\@callnext{##2####1{####2}}\n"
- " \\else\n"
- " \\def\\@callnext{##2####1{####3}}\n"
- " \\fi\n"
- " \\@callnext\n"
- " }\n"
- " }\n"
- " \\expandafter\\def\\expandafter\\@clausename\\expandafter{\\csname\\expandafter\\@gobble\\string#1@#2\\endcsname}\n"
- " \\expandafter\\def\\expandafter\\@nextclausename\\expandafter{\\csname\\expandafter\\@gobble\\string#1@#2i\\endcsname}\n"
- " \\expandafter\\expandafter\\expandafter\n"
- " \\@defclause\\expandafter\\@clausename\\@nextclausename\n"
- " \\expandafter\\newlyxcommand@def\\csname\\expandafter\\@gobble\\string#1@#2i\\endcsname{#3}\n"
- "}\n"
- "\n"
- "% #1<-\\foo #2<-arity #3<-definition\n"
- "\\def\\newlyxcommand@def#1#2#3{\n"
- " \\ifx#20\n"
- " \\def#1{#3}\n"
- " \\else\n"
- " \\def\\@splitargs##1#2##2.{\\def#1##1#2}\\@splitargs##1##2##3##4##5##6##7##8##9.{#3}\n"
- " \\fi\n"
- "}\n";
-
+ "\\AtBeginDocument{\\DeclareFontEncoding{T2A}{}{}}\n");
+
+static docstring const lyxmathsym_def = from_ascii(
+ "\\newcommand{\\lyxmathsym}[1]{\\ifmmode\\begingroup\\def\\b@ld{bold}\n"
+ " \\text{\\ifx\\math@version\\b@ld\\bfseries\\fi#1}\\endgroup\\else#1\\fi}\n");
+
+static docstring const papersizedvi_def = from_ascii(
+ "\\special{papersize=\\the\\paperwidth,\\the\\paperheight}\n");
+
+static docstring const papersizepdf_def = from_ascii(
+ "\\pdfpageheight\\paperheight\n"
+ "\\pdfpagewidth\\paperwidth\n");
+
+static docstring const cedilla_def = from_ascii(
+ "\\newcommand{\\docedilla}[2]{\\underaccent{#1\\mathchar'30}{#2}}\n"
+ "\\newcommand{\\cedilla}[1]{\\mathpalette\\docedilla{#1}}\n");
+
+static docstring const subring_def = from_ascii(
+ "\\newcommand{\\dosubring}[2]{\\underaccent{#1\\mathchar'27}{#2}}\n"
+ "\\newcommand{\\subring}[1]{\\mathpalette\\dosubring{#1}}\n");
+
+static docstring const subdot_def = from_ascii(
+ "\\newcommand{\\dosubdot}[2]{\\underaccent{#1.}{#2}}\n"
+ "\\newcommand{\\subdot}[1]{\\mathpalette\\dosubdot{#1}}\n");
+
+static docstring const subhat_def = from_ascii(
+ "\\newcommand{\\dosubhat}[2]{\\underaccent{#1\\mathchar'136}{#2}}\n"
+ "\\newcommand{\\subhat}[1]{\\mathpalette\\dosubhat{#1}}\n");
+
+static docstring const subtilde_def = from_ascii(
+ "\\newcommand{\\dosubtilde}[2]{\\underaccent{#1\\mathchar'176}{#2}}\n"
+ "\\newcommand{\\subtilde}[1]{\\mathpalette\\dosubtilde{#1}}\n");
+
+static docstring const dacute_def = from_ascii(
+ "\\DeclareMathAccent{\\dacute}{\\mathalpha}{operators}{'175}\n");
+
+static docstring const tipasymb_def = from_ascii(
+ "\\DeclareFontEncoding{T3}{}{}\n"
+ "\\DeclareSymbolFont{tipasymb}{T3}{cmr}{m}{n}\n");
+
+static docstring const dgrave_def = from_ascii(
+ "\\DeclareMathAccent{\\dgrave}{\\mathord}{tipasymb}{'15}\n");
+
+static docstring const rcap_def = from_ascii(
+ "\\DeclareMathAccent{\\rcap}{\\mathord}{tipasymb}{'20}\n");
+
+static docstring const ogonek_def = from_ascii(
+ "\\newcommand{\\doogonek}[2]{\\setbox0=\\hbox{$#1#2$}\\underaccent{#1\\mkern-6mu\n"
+ " \\ifx#2O\\hskip0.5\\wd0\\else\\ifx#2U\\hskip0.5\\wd0\\else\\hskip\\wd0\\fi\\fi\n"
+ " \\ifx#2o\\mkern-2mu\\else\\ifx#2e\\mkern-1mu\\fi\\fi\n"
+ " \\mathchar\"0\\hexnumber@\\symtipasymb0C}{#2}}\n"
+ "\\newcommand{\\ogonek}[1]{\\mathpalette\\doogonek{#1}}\n");
+