scheme_tree bib_upcase_first (scheme_tree st) { tree t= simplify_correct (scheme_tree_to_tree (st)); char* ch= bib_first_char (t); if (ch != 0) *ch= upcase (*ch); return tree_to_scheme_tree (t); }
static string get_prompt (scheme_tree p, int i) { if (is_atomic (p[i]) && is_quoted (p[i]->label)) return translate (scm_unquote (p[i]->label)); else if (is_tuple (p[i]) && N(p[i])>0) { if (is_atomic (p[i][0]) && is_quoted (p[i][0]->label)) return translate (scm_unquote (p[i][0]->label)); return translate (scheme_tree_to_tree (p[i][0])); } return translate ("Input:"); }
scheme_tree bib_add_period (scheme_tree st) { tree t= simplify_correct (scheme_tree_to_tree (st)); char* ch= bib_last_char (t); if (ch == 0) return tree_to_scheme_tree (t); if (*ch == ',' || *ch == ';') { *ch= '.'; return tree_to_scheme_tree (t); } else if (*ch != '!' && *ch != '?' && *ch != '.') { tree res (CONCAT); res << t; res << "."; return tree_to_scheme_tree (res); } else return tree_to_scheme_tree (t); }
scheme_tree bib_default_upcase_first (scheme_tree st) { tree t= simplify_correct (scheme_tree_to_tree (st)); bib_change_case (t, 0); return tree_to_scheme_tree (t); }
scheme_tree bib_default_preserve_case (scheme_tree st) { tree t= simplify_correct (scheme_tree_to_tree (st)); return tree_to_scheme_tree (t); }
scheme_tree bib_upcase (scheme_tree st) { tree t= simplify_correct (scheme_tree_to_tree (st)); bib_change_case (t, upcase_all); return tree_to_scheme_tree (t); }