commit - 7a9072e20ad89d8fd88a5b1c19e1dc3952cea755
commit + a6eeeca9635652f025f38281f152c650036f8b33
blob - ef7ad987f78e26ca6ec40a0c15b0428e89549b2b
blob + b6c33b74dcd09bf028b2d9d0db4b3e379f84fd44
--- config.h
+++ config.h
#define RVK_CD_UP "h"
#define RVK_HOME "H"
#define RVK_TARGET "t"
+#define RVK_COPY_PATH "y"
+#define RVK_PASTE_PATH "p"
#define RVK_REFRESH "r"
#define RVK_SHELL "^M"
#define RVK_VIEW " "
blob - 640d0d5d9d399ef66b80e5f67cc850a9791edf70
blob + a942d883b97b83f390dd3d00f32964a2e08b03c7
--- rover.c
+++ rover.c
static char BUF1[BUFLEN];
static char BUF2[BUFLEN];
static char INPUT[BUFLEN];
+static char CLIPBOARD[BUFLEN];
static wchar_t WBUF[BUFLEN];
/* Paths to external programs. */
rover.window = subwin(stdscr, LINES - 2, COLS, 1, 0);
init_marks(&rover.marks);
cd(1);
+ strcpy(CLIPBOARD, CWD);
+ strcat(CLIPBOARD, ENAME(ESEL));
while (1) {
ch = rover_getch();
key = keyname(ch);
strcat(CWD, "/");
try_to_sel(bname);
*bname = '\0';
+ update_view();
+ } else if (!strcmp(key, RVK_COPY_PATH)) {
+ strcpy(CLIPBOARD, CWD);
+ strcat(CLIPBOARD, ENAME(ESEL));
+ } else if (!strcmp(key, RVK_PASTE_PATH)) {
+ strcpy(BUF1, CLIPBOARD);
+ strcpy(CWD, dirname(BUF1));
+ strcat(CWD, "/");
+ cd(1);
+ strcpy(BUF1, CLIPBOARD);
+ try_to_sel(basename(BUF1));
update_view();
} else if (!strcmp(key, RVK_REFRESH)) {
reload();