Make programs to escape the special characters
[minish.git] / src / minish-read.c
blob93690583094552bd9fc5d44caec9e2a39f007414
1 #define _POSIX_C_SOURCE 200809L
2 #include <errno.h> // errno
3 #include <locale.h> // LC_ALL,setlocale
4 #include <stdio.h> /*
5 * EOF,NULL,ferror,fprintf,getchar,perror,putchar,stderr,stdin
6 */
8 int main(int argc, char** argv) {
9 char const* const name = argv[0] ? argv[0] : "minish-read";
10 char const* const file = argc ? argv[1] : NULL;
11 setlocale(LC_ALL, "");
12 for (;;) {
13 int const c = getchar();
14 switch (c) {
15 case EOF:
16 if (ferror(stdin)) {
17 int const tmp = errno;
18 fprintf(stderr, "%s: ", name);
19 errno = tmp;
20 perror(file);
21 return 1;
23 return 2;
24 case '\n': return 0;
26 putchar(c);