Changeset 2377 in Sophya
- Timestamp:
- May 7, 2003, 9:37:28 AM (22 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/SophyaPI/PIext/piacmd.cc
r2308 r2377 1879 1879 */ 1880 1880 1881 // Fonction qui remplace tout caractere non alphanumerique en Z 1882 static void check_latex_reflabel(string & prl) 1883 { 1884 for(int k=0; k<prl.length(); k++) 1885 if (! isalnum(prl[k]) ) prl[k] = 'Z'; 1886 } 1887 // Fonction qui remplace _ en \_ 1888 static string check_latex_underscore(string const & mot) 1889 { 1890 string rs; 1891 for(int k=0; k<mot.length(); k++) { 1892 if (mot[k] == '_') rs += "\\_"; 1893 else rs += mot[k]; 1894 } 1895 return rs; 1896 } 1897 1881 1898 /* --Methode-- */ 1882 1899 void PIACmd::HelptoLaTeX(string const & fname) … … 1891 1908 fputs("List of {\\bf piapp} on-line Help groups: \n", fip); 1892 1909 fputs("\\begin{itemize} \n",fip); 1910 string prl; 1911 string mol; 1893 1912 CmdHGroup::iterator it; 1894 1913 for(it = cmdhgrp.begin(); it != cmdhgrp.end(); it++) { 1895 1914 if ((*it).first == "All") continue; 1915 prl = (*it).first; check_latex_reflabel(prl); 1916 mol = check_latex_underscore((*it).first); 1896 1917 fprintf(fip,"\\item {\\bf %s } (p. \\pageref{%s}) \n", 1897 (*it).first.c_str(), (*it).first.c_str());1918 mol.c_str(), prl.c_str()); 1898 1919 } 1899 1920 … … 1903 1924 1904 1925 CmdExmap::iterator ite; 1905 fputs("% ----- Liste de toutes les commandes ----- \n",fip); 1926 fputs("% ----- Liste de toutes les commandes et help item ----- \n",fip); 1927 fputs("\\vspace{5mm} \n",fip); 1928 // fputs("\\begin{table}[h!] \n", fip); 1906 1929 fputs("\\begin{center} \n ", fip); 1907 fputs("\\rule{2cm}{1mm} List of {\\bf piapp} Help items \\rule{2cm}{1mm} \ n", fip);1908 fputs("\ n \n \\vspace{5mm} \n",fip);1930 fputs("\\rule{2cm}{1mm} List of {\\bf piapp} Help items \\rule{2cm}{1mm} \\\\ \n", fip); 1931 fputs("\\vspace{3mm} \n",fip); 1909 1932 fputs("\\begin{tabular}{llllll} \n", fip); 1910 1933 int kt = 0; 1911 1934 for(ite = helpexmap.begin(); ite != helpexmap.end(); ite++) { 1912 fprintf(fip,"%s & p. \\pageref{%s} ", (*ite).first.c_str(), (*ite).first.c_str() ); 1935 prl = (*ite).first; check_latex_reflabel(prl); 1936 mol = check_latex_underscore((*ite).first); 1937 fprintf(fip,"%s & p. \\pageref{%s} ", mol.c_str(), prl.c_str() ); 1913 1938 kt++; 1914 1939 if (kt < 3) fputs(" & ", fip); … … 1919 1944 fputs("\\end{tabular} \n", fip); 1920 1945 fputs("\\end{center} \n", fip); 1921 fputs("\n \n \\newpage \\vspace{1cm} \n",fip); 1922 1923 fputs("\\begin{center} \n ", fip); 1924 fputs("\\rule{2cm}{1mm} List of {\\bf piapp} Commands \\rule{2cm}{1mm} \n", fip); 1925 fputs("\n \n \\vspace{5mm} \n",fip); 1926 fputs("\\begin{tabular}{llllll} \n", fip); 1927 kt = 0; 1928 for(ite = cmdexmap.begin(); ite != cmdexmap.end(); ite++) { 1929 fprintf(fip,"%s & p. \\pageref{%s} ", (*ite).first.c_str(), (*ite).first.c_str() ); 1930 kt++; 1931 if (kt < 3) fputs(" & ", fip); 1932 else { fputs(" \\\\ \n", fip); kt = 0; } 1933 } 1934 if (kt == 1) fputs(" & & & \\\\ \n", fip); 1935 else if (kt == 2) fputs(" & \\\\ \n", fip); 1936 fputs("\\end{tabular} \n", fip); 1937 fputs("\\end{center} \n", fip); 1938 // fputs("\\newline \n",fip); 1939 1940 fputs("% ----- Liste des commandes dans chaque groupe ----- \n",fip); 1941 fputs("\\newpage \n",fip); 1946 //fputs("\\end{table} \n", fip); 1947 fputs("\\newpage \n",fip); 1948 1942 1949 int gid; 1943 1950 for(it = cmdhgrp.begin(); it != cmdhgrp.end(); it++) { 1944 1951 gid = (*it).second; 1945 1952 if (gid == 0) continue; 1953 // fputs("\\begin{table}[h!] \n",fip); 1954 fputs("\\vspace{6mm} \n",fip); 1955 fputs("\\begin{center} \n ", fip); 1956 fprintf(fip, "\\rule{2cm}{1mm} \\makebox[60mm]{{ \\bf %s } help group} \\rule{2cm}{1mm} \\\\ \n", 1957 (*it).first.c_str()); 1958 fputs("\\vspace{3mm} \n",fip); 1959 fputs("\\begin{tabular}{llllll} \n", fip); 1960 kt = 0; 1961 for(ite = helpexmap.begin(); ite != helpexmap.end(); ite++) { 1962 if ((*ite).second.group != gid) continue; 1963 prl = (*ite).first; check_latex_reflabel(prl); 1964 mol = check_latex_underscore((*ite).first); 1965 fprintf(fip,"%s & p. \\pageref{%s} ", mol.c_str(), prl.c_str() ); 1966 kt++; 1967 if (kt < 3) fputs(" & ", fip); 1968 else { fputs(" \\\\ \n", fip); kt = 0; } 1969 } 1970 for(ite = cmdexmap.begin(); ite != cmdexmap.end(); ite++) { 1971 if ((*ite).second.group != gid) continue; 1972 prl = (*ite).first; check_latex_reflabel(prl); 1973 mol = check_latex_underscore((*ite).first); 1974 fprintf(fip,"%s & p. \\pageref{%s} ", mol.c_str(), prl.c_str() ); 1975 kt++; 1976 if (kt < 3) fputs(" & ", fip); 1977 else { fputs(" \\\\ \n", fip); kt = 0; } 1978 } 1979 if (kt == 1) fputs(" & & & \\\\ \n", fip); 1980 else if (kt == 2) fputs(" & \\\\ \n", fip); 1981 fputs("\\end{tabular} \n", fip); 1982 fputs("\\end{center} \n", fip); 1983 // fputs("\\end{table} \n",fip); 1984 // fputs("\\vspace{5mm} \n",fip); 1985 } 1986 // fputs("\\newline \n",fip); 1987 1988 fputs("% ----- Liste des commandes dans chaque groupe ----- \n",fip); 1989 fputs("\\newpage \n",fip); 1990 1991 for(it = cmdhgrp.begin(); it != cmdhgrp.end(); it++) { 1992 gid = (*it).second; 1993 if (gid == 0) continue; 1994 prl = (*it).first; check_latex_reflabel(prl); 1946 1995 fprintf(fip,"\\subsection{%s} \\label{%s} \n", 1947 (*it).first.c_str(), (*it).first.c_str());1996 (*it).first.c_str(), prl.c_str()); 1948 1997 fprintf(fip,"\\noindent \n"); 1949 1998 for(ite = helpexmap.begin(); ite != helpexmap.end(); ite++) { 1950 1999 if ((*ite).second.group != gid) continue; 2000 prl = (*ite).first; check_latex_reflabel(prl); 2001 mol = check_latex_underscore((*ite).first); 1951 2002 fprintf(fip,"\\piahelpitem{%s} \\label{%s} \n", 1952 (*ite).first.c_str(), (*ite).first.c_str());2003 mol.c_str(), prl.c_str()); 1953 2004 fputs("\\begin{verbatim} \n",fip); 1954 2005 fprintf(fip,"%s\n", (*ite).second.us.c_str()); … … 1957 2008 for(ite = cmdexmap.begin(); ite != cmdexmap.end(); ite++) { 1958 2009 if ((*ite).second.group != gid) continue; 2010 prl = (*ite).first; check_latex_reflabel(prl); 2011 mol = check_latex_underscore((*ite).first); 1959 2012 fprintf(fip,"\\piacommand{%s} \\label{%s} \n", 1960 (*ite).first.c_str(), (*ite).first.c_str());2013 mol.c_str(), prl.c_str()); 1961 2014 fputs("\\begin{verbatim} \n",fip); 1962 2015 fprintf(fip,"%s\n", (*ite).second.us.c_str());
Note:
See TracChangeset
for help on using the changeset viewer.