+
+String
+lyric_fudge (String s)
+{
+ char * chars =s.copy_ch_p ();
+
+ for (char * p = chars; *p ; p++)
+ {
+ if (*p == '_' && (p == chars || *(p-1) != '\\'))
+ *p = ' ';
+ }
+
+ s = String (chars);
+ delete[] chars;
+
+ int i =0;
+ if ((i=s.index_i ("\\,")) != -1) // change "\," to TeX's "\c "
+ {
+ * (s.ch_l () + i + 1) = 'c';
+ s = s.left_str (i+2) + " " + s.right_str (s.length_i ()-i-2);
+ }
+
+ return s;
+}
+
+/*
+Convert "NUM/DEN" into a '(NUM . DEN) cons.
+*/
+SCM
+scan_fraction (String frac)
+{
+ int i = frac.index_i ('/');
+ int l = frac.length_i ();
+ String left = frac.left_str (i);
+ String right = frac.right_str (l - i - 1);
+
+ int n = String_convert::dec2_i (left);
+ int d = String_convert::dec2_i (right);
+ return gh_cons (gh_int2scm (n), gh_int2scm (d));
+}
+