107 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			107 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
								 | 
							
								#!/usr/bin/env bash
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# while-menu-dialog: a menu driven system information program
							 | 
						||
| 
								 | 
							
								export ME="/home/gmgauthier"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								DIALOG_CANCEL=1
							 | 
						||
| 
								 | 
							
								DIALOG_ESC=255
							 | 
						||
| 
								 | 
							
								HEIGHT=18
							 | 
						||
| 
								 | 
							
								WIDTH=0
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								tmemo() {
							 | 
						||
| 
								 | 
							
								    tmp=$(date +"memo-%Y.%m.%d-%k.%M.%S")
							 | 
						||
| 
								 | 
							
								    timestamp="${tmp// /}"
							 | 
						||
| 
								 | 
							
								    filename="$HOME/memos/${timestamp}.md"
							 | 
						||
| 
								 | 
							
								    tilde $filename
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								output_panel() {
							 | 
						||
| 
								 | 
							
								  dialog --title "$1" \
							 | 
						||
| 
								 | 
							
								    --no-collapse \
							 | 
						||
| 
								 | 
							
								    --msgbox "$result" 0 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								_stopnow() {
							 | 
						||
| 
								 | 
							
								  test -f stopnow && echo "Stopping!" && rm stopnow && exit 0 || return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								menu() {
							 | 
						||
| 
								 | 
							
								    exec 3>&1
							 | 
						||
| 
								 | 
							
								    selection=$(dialog \
							 | 
						||
| 
								 | 
							
								     --backtitle "TUI Command Center" \
							 | 
						||
| 
								 | 
							
								     --title "Menu" \
							 | 
						||
| 
								 | 
							
								     --clear \
							 | 
						||
| 
								 | 
							
								     --cancel-label "Exit" \
							 | 
						||
| 
								 | 
							
								     --menu "Please select:" $HEIGHT $WIDTH 4 \
							 | 
						||
| 
								 | 
							
								            "e" "Mutt Email" \
							 | 
						||
| 
								 | 
							
								            "c" "Calcurse Calendar" \
							 | 
						||
| 
								 | 
							
								            "a" "Abook Contacts" \
							 | 
						||
| 
								 | 
							
								            "t" "Tudu Tasks" \
							 | 
						||
| 
								 | 
							
								            "k" "Kabmat Kanban" \
							 | 
						||
| 
								 | 
							
								            "n" "Tilde Notepad" \
							 | 
						||
| 
								 | 
							
								            "l" "CLI Calculator" \
							 | 
						||
| 
								 | 
							
								            "f" "MC File Manager" \
							 | 
						||
| 
								 | 
							
								            "i" "IRC Client" \
							 | 
						||
| 
								 | 
							
								            "p" "Castero Podcasts" \
							 | 
						||
| 
								 | 
							
								            "m" "VLC Music Player" \
							 | 
						||
| 
								 | 
							
								         2>&1 1>&3)
							 | 
						||
| 
								 | 
							
								    exit_status=$?
							 | 
						||
| 
								 | 
							
								    exec 3>&-
							 | 
						||
| 
								 | 
							
								        
							 | 
						||
| 
								 | 
							
								    case $exit_status in
							 | 
						||
| 
								 | 
							
								    $DIALOG_CANCEL)
							 | 
						||
| 
								 | 
							
								        clear
							 | 
						||
| 
								 | 
							
								        echo "Exiting Apps Menu."
							 | 
						||
| 
								 | 
							
								        exit 1
							 | 
						||
| 
								 | 
							
								        ;;
							 | 
						||
| 
								 | 
							
								    $DIALOG_ESC)
							 | 
						||
| 
								 | 
							
								        clear
							 | 
						||
| 
								 | 
							
								        echo "Terminating Apps Menu." >&2
							 | 
						||
| 
								 | 
							
								        exit 1
							 | 
						||
| 
								 | 
							
								        ;;
							 | 
						||
| 
								 | 
							
								    esac
							 | 
						||
| 
								 | 
							
								 
							 | 
						||
| 
								 | 
							
								    clear
							 | 
						||
| 
								 | 
							
								    case $selection in
							 | 
						||
| 
								 | 
							
								    e )
							 | 
						||
| 
								 | 
							
								        neomutt -F ${ME}/.config/mutt/.protonmuttrc 
							 | 
						||
| 
								 | 
							
								        ;;
							 | 
						||
| 
								 | 
							
								    c )
							 | 
						||
| 
								 | 
							
								        calcurse -c ${ME}/.local/share/calcurse/calendar -C ${ME}/.config/calcurse
							 | 
						||
| 
								 | 
							
								        ;;
							 | 
						||
| 
								 | 
							
								    a )
							 | 
						||
| 
								 | 
							
								        abook --datafile ${ME}/.local/share/abook/addressbook	
							 | 
						||
| 
								 | 
							
								        ;;
							 | 
						||
| 
								 | 
							
								    t )
							 | 
						||
| 
								 | 
							
								        tudu -f ${ME}/.local/share/tudu/tasks.xml -c ${ME}/.config/tudu/config
							 | 
						||
| 
								 | 
							
								        ;;
							 | 
						||
| 
								 | 
							
								    k )
							 | 
						||
| 
								 | 
							
								        kabmat
							 | 
						||
| 
								 | 
							
								        ;;
							 | 
						||
| 
								 | 
							
								    n )
							 | 
						||
| 
								 | 
							
								        tmemo
							 | 
						||
| 
								 | 
							
								        ;;
							 | 
						||
| 
								 | 
							
								    l )
							 | 
						||
| 
								 | 
							
								        calc
							 | 
						||
| 
								 | 
							
								        ;;
							 | 
						||
| 
								 | 
							
								    f )
							 | 
						||
| 
								 | 
							
								        mc
							 | 
						||
| 
								 | 
							
								        ;;
							 | 
						||
| 
								 | 
							
								    i )
							 | 
						||
| 
								 | 
							
								        weechat
							 | 
						||
| 
								 | 
							
								        ;;
							 | 
						||
| 
								 | 
							
								    p )
							 | 
						||
| 
								 | 
							
								        castero
							 | 
						||
| 
								 | 
							
								        ;;
							 | 
						||
| 
								 | 
							
								    m )
							 | 
						||
| 
								 | 
							
								        vlc -Z -L -I ncurses --no-video --recursive expand ${ME}/Music
							 | 
						||
| 
								 | 
							
								        ;;
							 | 
						||
| 
								 | 
							
								    esac
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								while true
							 | 
						||
| 
								 | 
							
								do
							 | 
						||
| 
								 | 
							
								    _stopnow
							 | 
						||
| 
								 | 
							
								    menu
							 | 
						||
| 
								 | 
							
								done
							 |