├── README.md ├── Notes └── General │ ├── note.txt │ └── dartfile.dart └── notes.py /README.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Notes/General/note.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Notes/General/dartfile.dart: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /notes.py: -------------------------------------------------------------------------------- 1 | #!/bin/python3.7 2 | 3 | 4 | import sys 5 | import os 6 | 7 | 8 | class NoteAutomator: 9 | ruby = ".rb" 10 | php = ".php" 11 | javascript = ".js" 12 | typescript = ".ts" 13 | python = ".py" 14 | java = ".java" 15 | csharp = ".cs" 16 | dart = ".dart" 17 | text = ".txt" 18 | yaml = ".yaml" 19 | xml = ".xml" 20 | html = ".html" 21 | css = ".css" 22 | json = ".json" 23 | org = ".org" 24 | markdown = ".md" 25 | 26 | extensions = { 27 | "python" : python, 28 | ".py" : python, 29 | "text" : text, 30 | ".txt" : text, 31 | "java" : java, 32 | ".java" : java, 33 | "dart" : dart, 34 | "flutter" : dart, 35 | ".dart" : dart, 36 | "yaml" : yaml, 37 | ".yaml" : yaml, 38 | "json" : json, 39 | "jason" : json, 40 | ".json" : json, 41 | "org" : org, 42 | ".org" : org, 43 | "markdown" : markdown, 44 | ".md" : markdown, 45 | "php" : php, 46 | ".php" : php, 47 | "ruby" : ruby, 48 | ".rb" : ruby, 49 | "javascript" : javascript, 50 | "js" : javascript, 51 | ".js" : javascript, 52 | "ts" : typescript, 53 | "xml" : xml, 54 | ".xml" : xml, 55 | "html" : html, 56 | ".html": html, 57 | "css" : css, 58 | ".css" : css 59 | } 60 | 61 | extension = "" 62 | folderName = "" 63 | fileName = "" 64 | foundFileExtension = "" 65 | path = os.getcwd() 66 | 67 | def getArgs(self, ext_num, fold_num): 68 | try: 69 | self.extension = str(sys.argv[ext_num]).lower() 70 | self.extension = self.extensions[self.extension] 71 | except Exception: 72 | self.extension = ".txt" 73 | try: 74 | self.folderName = str(sys.argv[fold_num]) 75 | except Exception: 76 | self.folderName = "General" 77 | try: 78 | self.fileName = str(sys.argv[2]) 79 | except Exception: 80 | print("Name your note") 81 | sys.exit() 82 | 83 | def createNoteAndFolder(self): 84 | os.chdir("./Notes") 85 | 86 | self.fileName = self.fileName + self.extension 87 | if os.path.isdir("./" + self.folderName): 88 | os.chdir("./" + self.folderName) 89 | else: 90 | os.mkdir(self.folderName) 91 | os.chdir("./" + self.folderName) 92 | 93 | if not os.path.isfile("./" + self.fileName): 94 | open(self.fileName, "a").close() 95 | 96 | os.system("subl " + self.fileName) 97 | 98 | def findFileInFolder(self, folder): 99 | if os.path.isdir(self.path + "/" + folder): 100 | self.path = self.path + "/" + folder 101 | self.findFile(self.fileName, "", self.path) 102 | else: 103 | self.path = self.findFolder(folder, "", self.path) 104 | self.findFile(self.fileName, "", self.path) 105 | 106 | # print(self.path) 107 | os.system("subl " + self.path) 108 | 109 | def findFile(self, fileToFind, folderToSearch, thepath): 110 | fileExists = False 111 | pathToFolder = "" 112 | for subdir, dirs, files in os.walk(thepath + folderToSearch): 113 | for dir_ in dirs: 114 | if dir_.lower() == self.folderName.lower(): 115 | pathToFolder = "" 116 | pathToFolder = subdir + "/" + self.folderName 117 | for file_ in files: 118 | name = "" 119 | for i in range(len(str(file_))): 120 | if len(str(self.fileName)) > i: 121 | if str(file_).lower()[i] == str(self.fileName).lower()[i]: 122 | name = name + str(file_)[i] 123 | if len(name) > len(self.fileName) * 0.8: 124 | self.path = os.path.join(subdir, file_) 125 | fileExists = True 126 | break 127 | if not fileExists: 128 | self.path = os.path.join(pathToFolder ,self.fileName + self.extension) 129 | open(self.path, "a").close() 130 | 131 | 132 | 133 | if __name__ == "__main__": 134 | notes = NoteAutomator() 135 | 136 | command = str(sys.argv[1]) 137 | 138 | if command == "nfe": 139 | notes.getArgs(4, 3) 140 | notes.createNoteAndFolder() 141 | if command == "on": 142 | notes.getArgs(4, 3) 143 | try: 144 | notes.findFileInFolder(str(sys.argv[3])) 145 | except Exception: 146 | notes.findFileInFolder("") 147 | if command == "ne": 148 | notes.getArgs(3, 10) 149 | notes.findFileInFolder("") 150 | 151 | 152 | --------------------------------------------------------------------------------