-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtodoConsole
More file actions
executable file
·132 lines (115 loc) · 3.61 KB
/
todoConsole
File metadata and controls
executable file
·132 lines (115 loc) · 3.61 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
#!/bin/zsh
# ▗▄▄▄▖▗▖ ▗▖▗▖ ▗▖ ▗▄▄▖▗▄▄▄▖▗▄▄▄▖ ▗▄▖ ▗▖ ▗▖ ▗▄▄▖
# ▐▌ ▐▌ ▐▌▐▛▚▖▐▌▐▌ █ █ ▐▌ ▐▌▐▛▚▖▐▌▐▌
# ▐▛▀▀▘▐▌ ▐▌▐▌ ▝▜▌▐▌ █ █ ▐▌ ▐▌▐▌ ▝▜▌ ▝▀▚▖
# ▐▌ ▝▚▄▞▘▐▌ ▐▌▝▚▄▄▖ █ ▗▄█▄▖▝▚▄▞▘▐▌ ▐▌▗▄▄▞▘
# ###############################################
function clearScreen() {
# MARK: CLEARSCREEN
echo "\x1b[2J\x1b[H\x1b[3A"
} ###############################################
function consoleSetUp() {
# MARK: CONSOLESETUP
EXE_PATH="$1"
SCRIPT_DIR=$(dirname $EXE_PATH)
cd $SCRIPT_DIR
PYTHON_VENV="$HOME/.config/pyenv/versions/3.13.0/envs/ToDo/bin/python"
ITEM_LIST=()
PYTHON_SCRIPT="makeTasks.py"
HEIGHT=$(tput lines)
clearScreen
# CHANGE FONT COLOR
echo "\x1b[1A\x1b[38;5;244m Task - Date"
# echo "\x1b[1A\x1b[38;5;202m"
} ###############################################
function showTasks() {
# MARK: SHOWTASKS
clearScreen
task_str=$(sed 's/,/ - /' TaskList.csv)
echo $task_str
echo "\x1b[${HEIGHT}B"
read -q "CONTINUE?Continue? (enter: no; y: yes): "
clearScreen
} ###############################################
function helpMessage() {
# MARK: HELPMESSAGE
clearScreen
cat << EOF
ToDo Application:
"list" | "l" ---------------- to show all tasks
"open" | "tasks" ------------ open csv file
"vscode" | "code" ----------- open vscode
"update" -------------------- update all tasks
"t" | "toggle" | "desktop" -- toggle todo view
"" | " " | "q" | "quit" ----- quit
"help" | "h" ---------------- this message
To rename a task use "task-name|index - r - new-name"
To flag a task use "task-name|index - i"
EOF
echo "\x1b[${HEIGHT}B"
read -q "CONTINUE?Continue? (enter: no; y: yes): "
clearScreen
} ###############################################
# MARK: ----START---
# ▗▄▄▖▗▄▄▄▖▗▄▖ ▗▄▄▖▗▄▄▄▖
# ▐▌ █ ▐▌ ▐▌▐▌ ▐▌ █
# ▝▀▚▖ █ ▐▛▀▜▌▐▛▀▚▖ █
# ▗▄▄▞▘ █ ▐▌ ▐▌▐▌ ▐▌ █
# #######################
consoleSetUp $0
while true; do
# read "INPUT?: "
INPUT=""
PROMPT=$'\x1b[38;5;202m'
vared -p "$PROMPT: " INPUT
case "${INPUT}" in
"" | " " | "q" | "quit" )
if [[ -z $ITEM_LIST ]]; then
exit
fi
break
;;
"list" | "l" | "-list" | "-l" )
showTasks;
if [ $CONTINUE = "y" ]; then
consoleSetUp $EXE_PATH
else
break
fi
;;
"open" | "tasks" )
open TaskList.csv
;;
"vscode" | "code" )
code $SCRIPT_DIR
break
;;
"update" )
PYTHON_SCRIPT="makeUpdate.py"
break
;;
"t" | "toggle" | "desktop" )
PYTHON_SCRIPT="makeTasks.py"
ITEM_LIST+="toggle"
break
;;
"help" | "h" )
helpMessage;
if [ $CONTINUE = "y" ]; then
consoleSetUp $EXE_PATH
else
break
fi
;;
* )
ITEM_LIST+=($INPUT)
PYTHON_SCRIPT="makeTasks.py"
;;
esac
done
nohup $PYTHON_VENV $PYTHON_SCRIPT $ITEM_LIST > /dev/null 2>&1 &
echo "\x1b[0m"
exit
############################################################################
############################################################################
############################################################################