/*
 * slashquote - Take the first char of the second arg (it should be a single
 * char anyway, but we be paranoid), and put's that character in front of
 * any double-quotes or occurenses of that charater in the string that is
 * the first arg, and returns the result with double quotes around it.
 *
 * Usefull in mg for quoting things to be inserted when called as:
 *
 *	slashquote(string_to_insert, '\')
 *
 * and for things to issue to a shell if called as:
 *
 *	slashquote(command_argument_to_fix, '*')
 *
 * There are probably other uses for the silly thing.
 *
 */

parse arg in, char

char = left(char, 1)
i = index(in, char)
do while i > 0
	in = substr(in, 1, i - 1) || char || char || substr(in, i + 1)
	i = index(in, char, i + 2)
	end

i = index(in, '"')
do while i > 0
	in = substr(in, 1, i - 1) || char'"'substr(in, i + 1)
	i = index(in, '"', i + 2)
	end

return '"'in'"'
