From 62be20817e926f4a80dbf8392b59e4290fe3df10 Mon Sep 17 00:00:00 2001 From: Rockingcool Date: Wed, 12 Oct 2022 08:24:25 -0500 Subject: [PATCH] Routine changes --- Makefile | 2 +- program3-4 | Bin 57424 -> 0 bytes program3-4-2.c | 700 ------------------------------------------------- program3-4.c | 4 +- test1.c | 5 - texted.c | 8 +- 6 files changed, 7 insertions(+), 712 deletions(-) delete mode 100755 program3-4 delete mode 100644 program3-4-2.c delete mode 100644 test1.c diff --git a/Makefile b/Makefile index 406d012..89b9b3e 100644 --- a/Makefile +++ b/Makefile @@ -1,2 +1,2 @@ program3-4: program3-4.c texted.c fileman.c - gcc -g program3-4.c texted.c fileman.c -o program3-4 -Llib -lncursest -Wl,-rpath=lib + gcc program3-4.c texted.c fileman.c -o program3-4 -Llib -lncursest -Wl,-rpath=lib diff --git a/program3-4 b/program3-4 deleted file mode 100755 index d3859c374c52d08f558f519142eaa00382a14788..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 57424 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 C=z^#K diff --git a/program3-4-2.c b/program3-4-2.c deleted file mode 100644 index eaf3d83..0000000 --- a/program3-4-2.c +++ /dev/null @@ -1,700 +0,0 @@ - -/* - _______ ________ _____ ________ __ _______ __ __ - |__ __| | ______| | _ \ | ______| | | | _____| \ \ / / - | | | |___ | | \ | | |___ | | | |__ \ \/ / - | | | ____| | | | | | ____| | | | ___| / /\ \ - | | | |______ | |_ / | | | | |____ | |_____ / / \ \ - |_| |________| |_____ / |_| |_______| |_______| /__/ \__\ - -*/ - -/* TedFlex - A File Explorer, File Viewer, and Text Editor. - -A combination of two of my programs: Ted (Text EDitor) and Flex (FiLe EXplorer). - -This is an ncurses tool allows you to browse your files and view/edit them in the same window. - -*/ - - -#include "texted.h" -#include "fileman.h" - -#include -#include - -#define MAX_LINE_LENGTH 142857 //This is the maximum length of a line that we can read from a file. -#define START_WIN 5 //This is the position on the terminal window from where we will start drawing our ncurses window. - - - -int main(int argc,char** argv) { - int xLen,yLen,mainX,mainY; //values for the x-length and y-length of stdscr (i.e. the terminal window), and the 'main window' inside it. - int fileCountNum; //Number of files in a given directory - int highlighted=0; //Index of the highlighted file - int choice; //stores the user's key press - int fileRow; //Line number that the user is on when they choose to open a file - int fileCol; //ISN'T USED ELSEWHERE IN THE PROGRAM - SHOULD BE REMOVED - int numNewLines; //Number of new-line characters read in a file - int rowCounter; //Number of rows to skip reading in a file, when the user presses Page Down - bool eofFound; //Self-explanatory; is EOF found? - int colorScheme; //stores the value of the color scheme - changes when user hits Ctrl-D - int colCounter; //ISN'T USED ELSEWHERE IN THE PROGRAM - SHOULD BE REMOVED - char tempChar; //Holds the 'current' character while reading from a file. - int numCharsToPrint; //Weird naming - should be renamed to 'numLinesToPrint' - Number of lines to print in the file explorer. - int numDowns=0; //Stores the number of times the user has pressed the Down Arrow / Page Down - bool hasExited; //Has the user exited from TextView mode? - bool hasChosen; //Has the user chosen to edit or view a file? - char editOrView; //Did the user choose to edit or view a file? - char line[MAX_LINE_LENGTH]; //Holds a line in a text file when the user chooses to view a file - FILE* ptrFile; //Used to open a file to read from - - - bool hasCopied; - FILE* tempFileCopy; - - - char* curDir; - - setlocale(LC_CTYPE,""); - - initscr(); //NCURSES - Initializes screen to begin doing stuff in ncurses - getmaxyx(stdscr,yLen,xLen); /*NCURSES - Gets the maximum x- and y-length of stdscr, which represents the terminal/TTY window - that is running the program. Used to make calculations for the 'main' window based on the size. */ - - curs_set(0); //NCURSES - Makes the cursor (the white rectangle) invisible. - noecho(); //NCURSES - prevents echoing of user choices. - cbreak(); //NCURSES - Similar to Raw Mode, key presses are registered immediately after they are typed. - if (has_colors() == TRUE) { - start_color(); //NCURSES - Initialize color - TODO - Disable colors if color support is not found. - } - -/* NCURSES - The next block of code creates colors and color pairs for our window. */ - - init_color(COLOR_CYAN,500,500,500); - init_color(COLOR_MAGENTA,150,150,150); - init_color(COLOR_YELLOW,650,650,650); - init_color(COLOR_GREEN,40,291,177); - - init_pair(0,COLOR_WHITE,COLOR_BLACK); - init_pair(1,COLOR_BLACK,COLOR_CYAN); - init_pair(2,COLOR_WHITE,COLOR_MAGENTA); - init_pair(4,COLOR_GREEN,COLOR_CYAN); - init_pair(6,COLOR_WHITE,COLOR_BLUE); - init_pair(8,COLOR_BLACK,COLOR_CYAN); - init_pair(10,COLOR_BLACK,COLOR_BLACK); - init_pair(11,COLOR_BLACK,COLOR_YELLOW); - init_pair(12,COLOR_WHITE,COLOR_BLACK); - -/* BLOCK ENDS HERE */ - - colorScheme=1; // Default value for the color scheme. - - rowCounter = 1; // Set this to zero, because we don't want to skip anything - colCounter = 1; - - WINDOW* mainwin = newwin(yLen-7,xLen-9,START_WIN,START_WIN); /*NCURSES - This creates our 'main' window, that will be - used to display ~99% of the actual content.*/ - - wbkgd(stdscr,COLOR_PAIR(6)); //NCURSES - Sets the default foreground and background color for stdscr. - wbkgd(mainwin,COLOR_PAIR(8)); //NCURSES - Sets the default foreground and background color for mainwin. - keypad(mainwin,true); //NCURSES - Allows the use of 'keypad' values: Arrow Keys, Function Keys, etc. - getmaxyx(mainwin,mainY,mainX); //NCURSES - Gets the maximum x- and y-values of the mainwin, and stores them in the appropriate variables. - - wattron(stdscr,COLOR_PAIR(10)); //NCURSES - Sets the color for the 'shadows' in the following block of code. - -/* NCURSES - The following block of code adds 'shadows' to the mainwin. */ - - for (int i=START_WIN+1;i files in the directory 'dir' to the fileList. The reason behind the limit - in the number of files added is that, with large directories (e.g. /lib), I encountered a - weird bug where, after a certain number of files, the list corrupts itself. My solution - was to add a limited number of files at a given time, and change those files depending on - where the user is in the file list. - */ - - - if (!(isFile(dir))) { - addFiles(dir,fileList,0,mainY+5); - } - - int firstItemIndex = 0; //Initializes the index of the first item in the list - - /* This block prints some helpful information regarding the controls to navigte within the program */ - - wmove(stdscr,1,0); - wclrtoeol(stdscr); - mvwaddstr(stdscr,1,17," - Move Up | - Move Down | - Go Back | /Enter - Enter Directory/Open File\n"); - wmove(stdscr,2,0); - wclrtoeol(stdscr); - mvwaddstr(stdscr,2,40," - Scroll Up | - Scroll Down\n"); - - /* BlOCK ENDS HERE */ - - while (true) { - - -// getmaxyx(stdscr,yLen,xLen); -// getmaxyx(mainwin,mainY,mainX); - - wmove(stdscr,3,0); - wclrtoeol(stdscr); - - if (highlighted == firstItemIndex+mainY) { - firstItemIndex++; - refresh(); - wrefresh(mainwin); - } - - - - if (isFile(dir)) { - if (hasChosen == false) { - mvwaddstr(mainwin,5,5,"Do you want to (e)dit or (v)iew this file? "); - editOrView='$'; - if (!(fileExists(dir))) { - while (editOrView != 'e') { - editOrView = wgetch(mainwin); - } - } - else { - while (editOrView != 'e' && editOrView != 'v') { - editOrView = wgetch(mainwin); - } - } - if (editOrView == 'e') { - curs_set(2); - run(dir); - curs_set(0); - wmove(stdscr,1,0); - wclrtoeol(stdscr); - wmove(stdscr,2,0); - wclrtoeol(stdscr); - hasExited = true; - } - } - if (editOrView == 'v' /*&& hasChosen == false*/) { - wclear(mainwin); - refresh(); - wrefresh(mainwin); - mvwprintw(stdscr,3,0,"Line %d",rowCounter); - - ptrFile = fopen(dir,"r"); - rewind(ptrFile); - fileRow=1; - for (int i=0;i<(rowCounter-1);i++) { - fgets(line,MAX_LINE_LENGTH,ptrFile); - } - - while(fgets(line, MAX_LINE_LENGTH, ptrFile)) { - mvwprintw(mainwin,fileRow,1,"%s",line); - fileRow++; - } - fclose(ptrFile); - refresh(); - wrefresh(mainwin); - hasChosen=true; - } - } else { - - if (mainY < fileCountNum) { - if (mainY < fileCountNum-firstItemIndex){ - numCharsToPrint = mainY; - } else { - numCharsToPrint = mainY-1; - } - } else { - numCharsToPrint = fileCountNum; - } - - - - - - for (int i=0,a=0;i - Move Up | - Move Down | - Go Back | /Enter - Enter Directory/Open File\n"); - wmove(stdscr,2,0); - wclrtoeol(stdscr); - mvwaddstr(stdscr,2,40," - Scroll Up | - Scroll Down"); - - - } else { - choice=wgetch(mainwin); - switch (choice) { - - case (('d' & 0x1f)): - - if (colorScheme == 0) { - wbkgd(stdscr,COLOR_PAIR(6)); - init_color(COLOR_GREEN,40,291,177); - init_pair(4,COLOR_GREEN,COLOR_CYAN); - wbkgd(mainwin,COLOR_PAIR(8)); - colorScheme++; - refresh(); - wrefresh(mainwin); - break; - } else if (colorScheme == 1){ - wbkgd(stdscr,COLOR_PAIR(2)); - init_pair(4,COLOR_GREEN,COLOR_BLACK); - wbkgd(mainwin,COLOR_PAIR(0)); - colorScheme++; - refresh(); - wrefresh(mainwin); - break; - } else if (colorScheme == 2) { - wbkgd(stdscr,COLOR_PAIR(12)); - init_color(COLOR_GREEN,40,438,7); - init_pair(4,COLOR_GREEN,COLOR_YELLOW); - wbkgd(mainwin,COLOR_PAIR(11)); - colorScheme=0; - refresh(); - wrefresh(mainwin); - break; - - - } - break; - - - - case KEY_UP: - - if (isFile(dir)) { - if (rowCounter <= 1) { - rowCounter = 1; - break; - } - - rowCounter--; - wclear(mainwin); - refresh(); - wrefresh(mainwin); - break; - } - - - - - highlighted--; - if (highlighted == -1) { - highlighted=0; - } - if (highlighted < 1) { - if (firstItemIndex > 0) { - firstItemIndex--; - highlighted++; - addFiles(dir,(char **)fileList,firstItemIndex,mainY+5); - numDowns--; - - - if (highlighted > mainY-3) - highlighted=mainY-3; - wclear(mainwin); - refresh(); - wrefresh(mainwin); - } - } - break; - case KEY_DOWN: - - if (isFile(dir)) { - numNewLines = 0; - eofFound = false; - ptrFile = fopen(dir,"r"); - for (int i=0;i<(rowCounter-1);i++) { - fgets(line,MAX_LINE_LENGTH,ptrFile); - } - - while (true) { - tempChar = fgetc(ptrFile); - if (tempChar == '\n') { - numNewLines++; - } - if (tempChar == EOF) { - eofFound = true; - break; - } - if (numNewLines >= (mainY-5)) { - break; - } - } - if (eofFound) { - break; - } - fclose(ptrFile); - rowCounter++; - wclear(mainwin); - refresh(); - wrefresh(mainwin); - break; - } - - - if (highlighted > mainY-3) { - break; - } - - if (fileCountNum < mainY-1 && highlighted+numDowns+1 >= fileCountNum) { - break; - } - - - highlighted++; - /* - if (highlighted+numDowns >= fileCountNum) { - if (numCharsToPrint-1 < mainY-2) { - highlighted = numCharsToPrint-1; - } else { - highlighted = mainY-2; - } - break; - } - */ - - - - /* - - if (highlighted > mainY-2) { - if (firstItemIndex < fileCountNum-1) { - firstItemIndex++; - highlighted--; - numDowns++; - addFiles(dir,(char **)fileList,firstItemIndex,mainY+5); - - wclear(mainwin); - refresh(); - wrefresh(mainwin); - } - } - - - - - */ - break; - - case KEY_NPAGE: - if (isFile(dir)) { - numNewLines = 0; - eofFound = false; - ptrFile = fopen(dir,"r"); - for (int i=0;i<(rowCounter-1);i++) { - fgets(line,MAX_LINE_LENGTH,ptrFile); - } - - while (true) { - tempChar = fgetc(ptrFile); - if (tempChar == '\n') { - numNewLines++; - } - if (tempChar == EOF) { - eofFound = true; - break; - } - if (numNewLines >= (mainY-5)) { - break; - } - } - if (eofFound) { - break; - } - fclose(ptrFile); - rowCounter += mainY-5; - wclear(mainwin); - refresh(); - wrefresh(mainwin); - break; - } - - - - - - if (strcmp("linux",getenv("TERM")) == 0) { - mainY+=1; - } - - if (fileCountNum - firstItemIndex > mainY-3) { - firstItemIndex++; - numDowns++; - addFiles(dir,(char **)fileList,firstItemIndex,mainY+5); - wclear(mainwin); - refresh(); - wrefresh(mainwin); - } - - if (strcmp("linux",getenv("TERM")) == 0) { - mainY-=1; - } - - break; - - case KEY_PPAGE: - - - if (isFile(dir)) { - if (rowCounter-mainY+5 <= 1) { - rowCounter = 1; - break; - } - - rowCounter -= mainY+5; - wclear(mainwin); - refresh(); - wrefresh(mainwin); - break; - } - - - if (firstItemIndex > 0) { - firstItemIndex--; - - addFiles(dir,(char **)fileList,firstItemIndex,mainY+5); - - if (highlighted > firstItemIndex+mainY-3) - highlighted=firstItemIndex+mainY-3; - wclear(mainwin); - refresh(); - wrefresh(mainwin); - } - break; - -/* *************************************************************************************** */ -// STUFF TO IMPLEMENT -// -// 1. Show the content of files in another ncurses window -//////////// 2. Use Arrow Keys to scroll in file (line-by-line) -//////////// 3. Define symbolic constants for commonly used values -/* *************************************************************************************** */ - - - - case KEY_RIGHT: - case 10: - if (!(isFile(dir))) { - strcat(dir,*(fileList+highlighted)); - if (!(isFile(dir))) { - strcat(dir,"/"); - } - move(0,1); - printw("%s",dir); - fileCountNum = findFileCount(dir); - firstItemIndex=0; - addFiles(dir,(char **)fileList,firstItemIndex,mainY+5); - numDowns=0; - - highlighted=0; - wclear(mainwin); - refresh(); - wrefresh(mainwin); - } - break; - - case KEY_LEFT: - removeDirFromPath(dir); - highlighted=0; - move(0,0); - wclrtoeol(stdscr); - refresh(); - wrefresh(mainwin); - mvwprintw(stdscr,0,1,"%s",dir); - fileCountNum = findFileCount(dir); - addFiles(dir,(char **)fileList,0,mainY+5); - numDowns=0; - firstItemIndex=0; - highlighted=0; - wclear(mainwin); - refresh(); - wrefresh(mainwin); - - hasChosen=false; - - rowCounter=1; - break; - - case ('n' & 0x1f): -// WINDOW* newFileWin = newwin(6,50,mainY/2-3,mainX/2-25); -// mvwaddstr(newFileWin,1,1,"Enter the name of the file you wish to create"); - char* newFileLoc = getSaveLoc(mainX,mainY,"$$$"); - char* newSaveLoc = malloc(sizeof(char) * (strlen(dir) + strlen(newFileLoc)) + 1); - strcpy(newSaveLoc,dir); -// strcat(newSaveLoc,"/"); - strcat(newSaveLoc,newFileLoc); - curs_set(2); - run(newSaveLoc); - curs_set(0); - refresh(); - wmove(mainwin,2,0); - wclrtoeol(mainwin); - wrefresh(mainwin); - break; - - case ('p' & 0x1f): - char* tempFileDir = malloc(sizeof(char) * MAX_LINE_LENGTH); - strcpy(tempFileDir,dir); -// strcat(tempFileDir,"/"); - strcat(tempFileDir,fileList[highlighted]); - ptrFile = fopen(tempFileDir,"r"); - tempFileCopy = fopen("/tmp/tedflexTempFile","w"); - char tempChar = 'a'; - while(!feof(ptrFile)) { - fscanf(ptrFile,"%c",&tempChar); - fprintf(tempFileCopy,"%c",tempChar); - } - hasCopied = true; - fclose(tempFileCopy); - fclose(ptrFile); -// rewind(ptrFile); - break; - - - - default: - break; - - } - } - - if (choice == 113){ - endwin(); - break; - } - } - - - return 0; -} - - - - - - - - - diff --git a/program3-4.c b/program3-4.c index e99b267..9b37460 100644 --- a/program3-4.c +++ b/program3-4.c @@ -42,7 +42,7 @@ int main(int argc,char** argv) { int rowCounter; //Number of rows to skip reading in a file, when the user presses Page Down bool eofFound; //Self-explanatory; is EOF found? int colorScheme; //stores the value of the color scheme - changes when user hits Ctrl-D - int colCounter; //ISN'T USED ELSEWHERE IN THE PROGRAM - SHOULD BE REMOVED +// int colCounter; //ISN'T USED ELSEWHERE IN THE PROGRAM - SHOULD BE REMOVED char tempChar; //Holds the 'current' character while reading from a file. int numCharsToPrint; //Weird naming - should be renamed to 'numLinesToPrint' - Number of lines to print in the file explorer. int numDowns=0; //Stores the number of times the user has pressed the Down Arrow / Page Down @@ -96,7 +96,7 @@ int main(int argc,char** argv) { colorScheme=1; // Default value for the color scheme. rowCounter = 1; // Set this to zero, because we don't want to skip anything - colCounter = 1; +// colCounter = 1; WINDOW* mainwin = newwin(yLen-7,xLen-9,START_WIN,START_WIN); /*NCURSES - This creates our 'main' window, that will be used to display ~99% of the actual content.*/ diff --git a/test1.c b/test1.c deleted file mode 100644 index 3817298..0000000 --- a/test1.c +++ /dev/null @@ -1,5 +0,0 @@ -#include - -int main() { -*(int*) 0 = 0; -} diff --git a/texted.c b/texted.c index 644bb33..339c70a 100644 --- a/texted.c +++ b/texted.c @@ -33,7 +33,7 @@ int run(char* dir) { char* text; char* saveLocation; - char* tempSaveLoc; +// char* tempSaveLoc; int textCounter; int selRow=1; // int numCharsCurrent; @@ -46,7 +46,7 @@ int run(char* dir) { int numLines; bool newLineFound; // int textIndex; - char* shortText; +// char* shortText; int upArrowDistance; int charsOnLine; @@ -82,7 +82,7 @@ int run(char* dir) { int numNewLinesFound=0; int indexToBegin=0; FILE* readFile; - int tempSelRow,tempSelCol; +// int tempSelRow,tempSelCol; // if (argc > 1) { if (readFile = fopen(dir,"r")) { @@ -432,7 +432,7 @@ int run(char* dir) { endwin(); - + return 0; }