fixed formatting
This commit is contained in:
		
							parent
							
								
									041ae59c96
								
							
						
					
					
						commit
						cf22f99d68
					
				
							
								
								
									
										166
									
								
								rodo.rkt
									
									
									
									
									
								
							
							
						
						
									
										166
									
								
								rodo.rkt
									
									
									
									
									
								
							| @ -15,89 +15,121 @@ | ||||
| 
 | ||||
| (define messages  | ||||
|   (hash  | ||||
|     'incorrect-usage (string-append  | ||||
|                        "> For usage type "  | ||||
|                        "`" program-name " -h`"  | ||||
|                        " or "  | ||||
|                        "`" program-name " --help`\n") | ||||
|     'incorrect-usage  | ||||
|     (string-append  | ||||
|       "> For usage type "  | ||||
|       "`" program-name " -h`"  | ||||
|       " or "  | ||||
|       "`" program-name " --help`\n") | ||||
| 
 | ||||
|     'creating (string-append  | ||||
|                 "> Creating a "  | ||||
|                 program-directory  | ||||
|                 " folder in "  | ||||
|                 program-path " ...\n") | ||||
|     'creating  | ||||
|     (string-append  | ||||
|       "> Creating a "  | ||||
|       program-directory  | ||||
|       " folder in "  | ||||
|       program-path " ...\n") | ||||
| 
 | ||||
|     'creation-error (string-append  | ||||
|                       "> Error: Could not create "  | ||||
|                       program-directory  | ||||
|                       " in "  | ||||
|                       program-path ".\n"  | ||||
|                       "> This may be due to directory permissions\n") | ||||
|     'creation-error  | ||||
|     (string-append  | ||||
|       "> Error: Could not create "  | ||||
|       program-directory  | ||||
|       " in "  | ||||
|       program-path ".\n"  | ||||
|       "> This may be due to directory permissions\n") | ||||
| 
 | ||||
|     'already-exists (string-append  | ||||
|                       "> "  | ||||
|                       program-directory  | ||||
|                       " folder already exists in "  | ||||
|                       program-path "\n") | ||||
|     'already-exists  | ||||
|     (string-append  | ||||
|       "> "  | ||||
|       program-directory  | ||||
|       " folder already exists in "  | ||||
|       program-path "\n") | ||||
| 
 | ||||
|     'successfully-created (string-append  | ||||
|                             "> "  | ||||
|                             program-path program-directory  | ||||
|                             " has been successfully created\n")  | ||||
|     'successfully-created  | ||||
|     (string-append  | ||||
|       "> "  | ||||
|       program-path program-directory  | ||||
|       " has been successfully created\n")  | ||||
| 
 | ||||
|     'not-found (string-append  | ||||
|                  "> "  | ||||
|                  program-directory  | ||||
|                  " has not been setup in "  | ||||
|                  program-path "\n") | ||||
|     'not-found  | ||||
|     (string-append  | ||||
|       "> "  | ||||
|       program-directory  | ||||
|       " has not been setup in "  | ||||
|       program-path "\n") | ||||
| 
 | ||||
|     'setup-y/n (string-append | ||||
|                  "> Would you like to set it up now? [y/n]\n") | ||||
|     'setup-y/n  | ||||
|     (string-append | ||||
|       "> Would you like to set it up now? [y/n]\n") | ||||
| 
 | ||||
|     'try-initializing (string-append | ||||
|                         "> Try typing " | ||||
|                         "`" program-name | ||||
|                         " init` " | ||||
|                         "to set it up\n") | ||||
|     'try-initializing  | ||||
|     (string-append | ||||
|       "> Try typing " | ||||
|       "`" program-name | ||||
|       " init` " | ||||
|       "to set it up\n") | ||||
| 
 | ||||
|     'choose-y/n "> Error: Please choose y or n\n" | ||||
|     'choose-y/n | ||||
|     "> Error: Please choose y or n\n" | ||||
| 
 | ||||
|     'item-added-prefix "> Added "  | ||||
|     'item-added-suffix " to list\n"  | ||||
|     'item-added-prefix  | ||||
|     "> Added "  | ||||
| 
 | ||||
|     'item-removed-prefix "> Removed " | ||||
|     'item-removed-suffix " from list\n" | ||||
|     'item-added-suffix  | ||||
|     " to list\n"  | ||||
| 
 | ||||
|     'terminating (string-append "> Exiting " program-name " ...\n"))) | ||||
|     'item-removed-prefix  | ||||
|     "> Removed " | ||||
| 
 | ||||
|     'item-removed-suffix  | ||||
|     " from list\n" | ||||
| 
 | ||||
|     'terminating  | ||||
|     (string-append  | ||||
|       "> Exiting "  | ||||
|       program-name  | ||||
|       " ...\n"))) | ||||
| 
 | ||||
| (define y/n  | ||||
|   (hash | ||||
|     'yes '("yes" "Yes" "y" "Y") | ||||
|     'no '("no" "No" "n" "N"))) | ||||
|     'yes  | ||||
|     '("yes" "Yes" "y" "Y") | ||||
| 
 | ||||
|     'no  | ||||
|     '("no" "No" "n" "N"))) | ||||
| 
 | ||||
| (define (open/create-file) | ||||
|   (let ([path (expand-user-path (string-append  | ||||
|                                   program-path  | ||||
|                                   program-directory))]) | ||||
|     (let ([opened-file (open-output-file path | ||||
|                                          #:mode 'text | ||||
|                                          #:exists 'can-update)]) | ||||
|   (let  | ||||
|     ([path  | ||||
|        (expand-user-path  | ||||
|          (string-append  | ||||
|            program-path  | ||||
|            program-directory))]) | ||||
|     (let  | ||||
|       ([opened-file  | ||||
|          (open-output-file path | ||||
|                            #:mode 'text | ||||
|                            #:exists 'can-update)]) | ||||
|       (close-output-port opened-file)))) | ||||
| 
 | ||||
| (define (create-folder) | ||||
|   (make-directory (expand-user-path (string-append  | ||||
|                                       program-path  | ||||
|                                       program-directory)))) | ||||
|   (make-directory  | ||||
|     (expand-user-path  | ||||
|       (string-append  | ||||
|         program-path  | ||||
|         program-directory)))) | ||||
| 
 | ||||
| (define (check-for-folder) | ||||
|   (directory-exists? (expand-user-path (string-append  | ||||
|                                          program-path  | ||||
|                                          program-directory)))) | ||||
|   (directory-exists?  | ||||
|     (expand-user-path  | ||||
|       (string-append  | ||||
|         program-path  | ||||
|         program-directory)))) | ||||
| 
 | ||||
| (define (prompt-user chosen-message) | ||||
|   (d-hash-ref messages chosen-message) | ||||
|   (display "> ") | ||||
|   (let ([user-input (read-line)]) | ||||
|   (let  | ||||
|     ([user-input (read-line)]) | ||||
|     (cond | ||||
|       [(member user-input (hash-ref y/n 'yes))   | ||||
|        (d-hash-ref messages 'creating) | ||||
| @ -123,20 +155,28 @@ | ||||
|       (d-hash-ref messages 'try-initializing)))) | ||||
| 
 | ||||
| (define (check-args args) | ||||
|   (let ([args-length (vector-length args)]) | ||||
|   (let  | ||||
|     ([args-length (vector-length args)]) | ||||
|     (cond | ||||
|       [(and (equal? args-length 2) (equal? (vector-member "add" args) 0)) | ||||
|       [(and  | ||||
|          (equal? args-length 2)  | ||||
|          (equal? (vector-member "add" args) 0)) | ||||
|        (add-item args)] | ||||
| 
 | ||||
|       [(and (equal? args-length 2) (equal? (vector-member "remove" args) 0)) | ||||
|       [(and  | ||||
|          (equal? args-length 2)  | ||||
|          (equal? (vector-member "remove" args) 0)) | ||||
|        (d-hash-ref messages 'item-removed-prefix)  | ||||
|        (d-vector-ref args 1)  | ||||
|        (d-hash-ref messages 'item-removed-suffix)] | ||||
| 
 | ||||
|       [(and (equal? args-length 1) (equal? (vector-member "init" args) 0)) | ||||
|       [(and  | ||||
|          (equal? args-length 1)  | ||||
|          (equal? (vector-member "init" args) 0)) | ||||
|        (todo-folder-exist?)] | ||||
| 
 | ||||
|       [else (d-hash-ref messages 'incorrect-usage)]))) | ||||
|       [else  | ||||
|         (d-hash-ref messages 'incorrect-usage)]))) | ||||
| 
 | ||||
| (define (todo-folder-exist?) | ||||
|   (if (check-for-folder) | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user