#include <stdio.h>
#include <ncurses.h>
#include <signal.h>
+#include <stdlib.h>
#include <unistd.h>
+#define MAX_TODO_LENGTH 200
+
void winch_handler(int sig);
+char* read_todo(FILE* file);
+
WINDOW* create_list_win(int height, int width, int y, int x);
#include "config.h"
signal(SIGWINCH, winch_handler);
// read command line args
- flag = getopt(argc, argv, "o:n::");
+ flag = getopt(argc, argv, "o:n:");
switch (flag) {
case 'o':
printf("%s does not exist\n", optarg);
return 1;
}
+
+ char* lineptr = read_todo(board_file);
+ printf("lineptr: %p\n", lineptr);
+ printf("first: %c\n", *lineptr);
+ free(lineptr);
+ fclose(board_file);
+
break;
case 'n':
- /* ; */
- /* char to_create[]; */
- /* to_create = (optarg == 0) ? default_board : optarg; */
// make sure file does not exist
// however, it maybe be possible that an different error has occured (besides the file not existing)
printf("%s already exists\n", optarg);
return 1;
}
- /* printf("Successfully created %s\n", to_create); */
+ // create a file here
+ printf("Successfully created %s\n", optarg);
break;
case -1:
case '?':
printf("Help string\n");
return 2;
-
}
+
+
return 0;
// start ncurses
refresh();
}
+
+char*
+read_todo(FILE* file)
+{ // apparently getline isn't rly that portable, so consider other options
+ char* lineptr;
+ size_t len;
+ ssize_t nread;
+
+ lineptr = NULL;
+ len = 0;
+
+ while ((nread = getline(&lineptr, &len, file)) != -1) {
+ printf("Read line of size %zd\n", nread);
+ }
+
+ return lineptr;
+}
+
WINDOW*
create_list_win(int height, int width, int y, int x)
{