Updating a bunch of stuff.
This commit is contained in:
parent
fe3694fe68
commit
688b44914d
|
@ -6,7 +6,6 @@ TESTS = tests/dirlist_test \
|
||||||
dist_noinst_DATA = LICENSE \
|
dist_noinst_DATA = LICENSE \
|
||||||
testdata \
|
testdata \
|
||||||
README \
|
README \
|
||||||
example/ \
|
|
||||||
autobuild.sh
|
autobuild.sh
|
||||||
|
|
||||||
test: check
|
test: check
|
||||||
|
|
|
@ -2,8 +2,8 @@ AC_PREREQ([2.59])
|
||||||
AC_INIT([kst], [1.0.0], [kyle@imap.cc],
|
AC_INIT([kst], [1.0.0], [kyle@imap.cc],
|
||||||
[libdirutils], [https://hg.sr.ht/~kisom/kst])
|
[libdirutils], [https://hg.sr.ht/~kisom/kst])
|
||||||
AM_INIT_AUTOMAKE([1.11 foreign subdir-objects])
|
AM_INIT_AUTOMAKE([1.11 foreign subdir-objects])
|
||||||
AC_CONFIG_SRCDIR([docs/srm.1])
|
AC_CONFIG_SRCDIR([doc/srm.1])
|
||||||
AC_CONFIG_FILES([Makefile src/Makefile doc/Makefile test/Makefile])
|
AC_CONFIG_FILES([Makefile src/Makefile doc/Makefile tests/Makefile])
|
||||||
AC_PROG_CC
|
AC_PROG_CC
|
||||||
AC_PROG_INSTALL
|
AC_PROG_INSTALL
|
||||||
AC_PROG_RANLIB
|
AC_PROG_RANLIB
|
||||||
|
|
|
@ -91,6 +91,7 @@ erow_insert(int at, char *s, int len)
|
||||||
assert(editor->row != NULL);
|
assert(editor->row != NULL);
|
||||||
|
|
||||||
if (at < editor->nrows) {
|
if (at < editor->nrows) {
|
||||||
|
printf("%d, %d\n", at, editor->nrows);
|
||||||
memmove(&editor->row[at+1], &editor->row[at],
|
memmove(&editor->row[at+1], &editor->row[at],
|
||||||
sizeof(struct erow) * (editor->nrows - at + 1));
|
sizeof(struct erow) * (editor->nrows - at + 1));
|
||||||
}
|
}
|
||||||
|
|
28
ke/main.c
28
ke/main.c
|
@ -40,6 +40,8 @@
|
||||||
void editor_set_status(const char *fmt, ...);
|
void editor_set_status(const char *fmt, ...);
|
||||||
void display_refresh();
|
void display_refresh();
|
||||||
char *editor_prompt(char *, void (*cb)(char *, int16_t));
|
char *editor_prompt(char *, void (*cb)(char *, int16_t));
|
||||||
|
void init_editor();
|
||||||
|
void process_normal(int16_t c);
|
||||||
|
|
||||||
|
|
||||||
enum KeyPress {
|
enum KeyPress {
|
||||||
|
@ -547,6 +549,24 @@ editor_find()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void
|
||||||
|
editor_openfile()
|
||||||
|
{
|
||||||
|
char *filename;
|
||||||
|
|
||||||
|
/* TODO(kyle): combine with dirutils for tab-completion */
|
||||||
|
filename = editor_prompt("Load file: %s", NULL);
|
||||||
|
if (filename == NULL) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
free(editor->row);
|
||||||
|
init_editor();
|
||||||
|
|
||||||
|
open_file(filename);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
move_cursor(int16_t c)
|
move_cursor(int16_t c)
|
||||||
{
|
{
|
||||||
|
@ -667,10 +687,18 @@ process_kcommand(int16_t c)
|
||||||
case 'w':
|
case 'w':
|
||||||
exit(save_file());
|
exit(save_file());
|
||||||
case 'd':
|
case 'd':
|
||||||
|
while ((editor->row[editor->cury].size - editor->curx) > 0) {
|
||||||
|
process_normal(DEL_KEY);
|
||||||
|
}
|
||||||
|
break;
|
||||||
case CTRL_KEY('\\'):
|
case CTRL_KEY('\\'):
|
||||||
/* sometimes it's nice to dump core */
|
/* sometimes it's nice to dump core */
|
||||||
disable_termraw();
|
disable_termraw();
|
||||||
abort();
|
abort();
|
||||||
|
case 'e':
|
||||||
|
case CTRL_KEY('e'):
|
||||||
|
editor_openfile();
|
||||||
|
break;
|
||||||
case 'f':
|
case 'f':
|
||||||
editor_find();
|
editor_find();
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -2,9 +2,9 @@ CFLAGS := -pedantic -Wall -Werror -Wextra -O2 -std=c99 -g
|
||||||
|
|
||||||
lib_LIBRARIES := libdirutils.a libiniparser.a
|
lib_LIBRARIES := libdirutils.a libiniparser.a
|
||||||
nobase_include_HEADERS := kst/dirutils.h \
|
nobase_include_HEADERS := kst/dirutils.h \
|
||||||
kst/iniparser.h \
|
kst/iniparser.h
|
||||||
dist_noinst_HEADERS := kst/dirlist.h
|
dist_noinst_HEADERS = kst/dirlist.h
|
||||||
bin_PROGRAMS := srm
|
bin_PROGRAMS = srm
|
||||||
|
|
||||||
|
|
||||||
## programs
|
## programs
|
||||||
|
@ -13,7 +13,7 @@ srm_SOURCES = srm.c
|
||||||
|
|
||||||
## libraries
|
## libraries
|
||||||
libdirutils_a_SOURCES = dirutils.c dirlist.c dirwalk.c dirlist.h
|
libdirutils_a_SOURCES = dirutils.c dirlist.c dirwalk.c dirlist.h
|
||||||
|
libiniparser_a_SOURCES = iniparser.c
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -147,7 +147,7 @@ _rmdirs(const char *path)
|
||||||
char child[FILENAME_MAX + 1];
|
char child[FILENAME_MAX + 1];
|
||||||
struct dirent *dp;
|
struct dirent *dp;
|
||||||
DIR *dirp;
|
DIR *dirp;
|
||||||
int fail;
|
int fail = EXIT_FAILURE;
|
||||||
|
|
||||||
if (NULL == (dirp = opendir(path))) {
|
if (NULL == (dirp = opendir(path))) {
|
||||||
return EXIT_FAILURE;
|
return EXIT_FAILURE;
|
||||||
|
|
|
@ -21,9 +21,9 @@
|
||||||
#define __DIRUTILS_DIRLIST_H
|
#define __DIRUTILS_DIRLIST_H
|
||||||
|
|
||||||
|
|
||||||
|
#include <sys/queue.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <dirent.h>
|
#include <dirent.h>
|
||||||
#include "queue.h"
|
|
||||||
|
|
||||||
|
|
||||||
struct dirlst {
|
struct dirlst {
|
||||||
|
|
|
@ -1,9 +0,0 @@
|
||||||
AM_LDFLAGS = -L/usr/local/include -lcunit -L../src/
|
|
||||||
AM_CFLAGS = -Wall -g -I/usr/local/include -I../src -O0
|
|
||||||
|
|
||||||
check_PROGRAMS = dirlist_test dirutils_test
|
|
||||||
dirlist_test_CFLAGS = $(AM_CFLAGS)
|
|
||||||
dirlist_test_SOURCES = dirlist_test.c
|
|
||||||
dirutils_test_CFLAGS = $(AM_CFLAGS)
|
|
||||||
dirutils_test_SOURCES = dirutils_test.c
|
|
||||||
|
|
|
@ -0,0 +1,9 @@
|
||||||
|
AM_LDFLAGS = -L/usr/local/lib -lcunit
|
||||||
|
AM_CFLAGS = -Wall -g -I/usr/local/include -I../src -O0
|
||||||
|
|
||||||
|
check_PROGRAMS = dirlist_test dirutils_test iniparser-test
|
||||||
|
dirlist_test_SOURCES = dirlist_test.c ../src/dirlist.c
|
||||||
|
dirutils_test_SOURCES = dirutils_test.c ../src/dirlist.c ../src/dirutils.c
|
||||||
|
iniparser_test_SOURCES = iniparser_test.c ../src/iniparser.c
|
||||||
|
|
||||||
|
|
|
@ -45,6 +45,7 @@ main(int argc, char *argv[])
|
||||||
argc--;
|
argc--;
|
||||||
argv++;
|
argv++;
|
||||||
|
|
||||||
|
iniparser_line_init(&line);
|
||||||
for (i = 0; i < argc; i++) {
|
for (i = 0; i < argc; i++) {
|
||||||
printf("Processing %s\n", argv[i]);
|
printf("Processing %s\n", argv[i]);
|
||||||
ret = iniparser_open(argv[i], &file);
|
ret = iniparser_open(argv[i], &file);
|
||||||
|
@ -92,5 +93,6 @@ exit:
|
||||||
iniparser_destroy();
|
iniparser_destroy();
|
||||||
}
|
}
|
||||||
|
|
||||||
return ret==0;
|
return ret!=0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue