blob: ae6c646f3c8c67e9a73f6deeeefa15c6ccfb51fe (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
#include <pdcurses.h>
int main() {
initscr();
noecho();
char word[128];
int index = 0;
int level = 1;
char words[10][128];
int numWords = 1;
words[0][0] = '(';
while (true) {
int key = getch();
/**/ if (key == ' ') {
if (index == 0) {
if (level > 0) {
// end list
printw(")");
level--;
}
}
else {
// add to list
printw("%.*s ", index, word);
index = 0;
}
}
else if (key == '\n') {
if (index == 0) {
// add to list
printw("%.*s ", index, word);
index = 0;
// add list
printw("\n");
for (int i = 0; i < level; i++)
printw(" ");
printw("(");
level++;
}
}
else {
word[index++] = (char)key;
}
}
endwin();
return 0;
}
|