/* 文字列内のコントロールコード指定を展開する */

#include "defines.h"

int ctrlstr(unchar *str)
{
unint i=0,j=0,c;
	do {
		c=str[i++];
		if (c=='^') {
			/* ^ + @,A〜Z,[\]^_ = CTRL+@,A〜Z,[\]^_ */
			/* ^' = " */
			/* ^~ = ^ */
			/* ^. = スペース */
			/* その他は^が無視されるだけ */
			c=toupper(str[i++]);
			if (c>='@' && c<='_') c-='@';
			else
			if (c=='\'') c='\"';
			else
			if (c=='~') c='^';
			else
			if (c=='.') c=' ';
 		}
		str[j++]=c;
	} while (c!=0);
	return(j-1); /* 展開後の文字列長さ。必ず同じか短くなる:-1 for skip EOS */
}
