21 lines
430 B
Awk
21 lines
430 B
Awk
# usage: awk -f morse.awk [inputfile]
|
|
BEGIN { FS="";
|
|
m="A.-B-...C-.-.D-..E.F..-.G--.H....I..J.---K-.-L.-..M--N-.";
|
|
m=m "O---P.--.Q--.-R.-.S...T-U..-V...-W.--X-..-Y-.--Z--.. ";
|
|
}
|
|
|
|
{ for(i=1; i<=NF; i++)
|
|
{
|
|
c=toupper($i); n=1; b=".";
|
|
|
|
while((c!=b)&&(b!=" ")) { b=substr(m,n,1); n++; }
|
|
|
|
b=substr(m,n,1);
|
|
|
|
while((b==".")||(b=="-")) { printf("%s",b); n++; b=substr(m,n,1); }
|
|
|
|
printf("|");
|
|
}
|
|
printf("\n");
|
|
}
|