Advertisement
Guest User

fpc-fallback.sh

a guest
Mar 11th, 2017
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.52 KB | None | 0 0
  1. #!/bin/bash
  2. WORKDIR="$HOME/Pascal"
  3. EDITOR="gedit"
  4. COMPILER="fpc"
  5.  
  6. ####
  7.  
  8. local-open-editor() {
  9.     $EDITOR "$WORKDIR/$FILENAME.pas" &
  10. }
  11. local-compile() {
  12.     $COMPILER "$WORKDIR/$FILENAME.pas"
  13. }
  14. local-run() {
  15.     echo ">>> Running $FILENAME..."
  16.     "./$FILENAME" && echo ">>> Exited normally" \
  17.         || echo ">>> Runtime error"
  18. }
  19. local-change-filename() {
  20.     echo "Новое имя файла? (текущее - $FILENAME)"
  21.     read -p '> ' FILENAME
  22.     echo 'Изменено'
  23. }
  24. local-help() {
  25.     echo 'Что делать: [e] - открыть редактор, [c] - компиляция, [r] - запуск, [f] - другой файл, [h] - помощь, [q] - выход'
  26. }
  27. local-main-loop() {
  28.     KEY=''
  29.     while [ ! "z$KEY" == "zq" ]; do
  30.         read -p '> ' -n1 KEY
  31.         echo
  32.         case $KEY in
  33.             "e" | "E") local-open-editor;;
  34.             "c" | "C") local-compile;;
  35.             "r" | "R") local-run;;
  36.             "f" | "F") local-change-filename;;
  37.             "h" | "H") local-help;;
  38.         esac
  39.     done
  40.     unset KEY
  41. }
  42.  
  43. ####
  44.  
  45. [ -d $WORKDIR ] || mkdir -p $WORKDIR
  46. cd $WORKDIR
  47.  
  48. echo 'Имя файла? (без расширения)'
  49. read -p '> ' FILENAME
  50. echo '(Сохраняй почаще)'
  51.  
  52. local-help
  53.  
  54. QUIT=''
  55. while [ ! "z$QUIT" == "zДа" ]; do
  56.     local-main-loop
  57.     echo -e '\033[00;31mТочно\033[00;0m хочешь выйти? Да/Нет'
  58.     read -p '> ' QUIT
  59.     [ "z$QUIT" == "zДа" ] || echo 'Окей, нет. Имя файла то же.'
  60. done
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement