bsc

Comprehensive codebase and cou...
Log | Files | Refs | README | LICENSE

tasks.json (6437B)


      1 {
      2     "version": "2.0.0",
      3     "tasks": [
      4         {
      5             "label": "Silent Auto-Pull",
      6             "type": "shell",
      7             "command": "git pull",
      8             "runOptions": {
      9                 "runOn": "folderOpen"
     10             },
     11             "presentation": {
     12                 "reveal": "never",
     13                 "panel": "shared",
     14                 "showReuseMessage": false,
     15                 "clear": true
     16             }
     17         },
     18         {
     19             "label": "C/C++: build active file",
     20             "type": "shell",
     21             "command": "if [ \"${fileExtname}\" = \".cpp\" ]; then c=\"g++\"; else c=\"gcc\"; fi; exe=\"${fileDirname}/${fileBasenameNoExtension}\"; B=\"━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\"; fnH() { if [ \"${2:-true}\" = \"true\" ]; then echo \"\"; fi; echo -e \"\\e[90m$B\\e[0m\"; echo -e \" \\e[36m$1\\e[0m\"; echo -e \"\\e[90m$B\\e[0m\"; echo \"\"; }; fnR() { printf \"%-15s\" \"$1\"; echo -e \"\\e[${3:-0}m$2\\e[0m\"; }; fnT() { if [ $1 -ge 1000 ]; then echo \"$((1 / 1000)) sec ($1 ms)\"; else echo \"$1 ms\"; fi; }; fnH \"BUILD\" false; echo \"Compiling ${fileBasename}...\"; echo \"\"; start_t=$(date +%s%3N); out=$($c -fdiagnostics-color=always -g \"${file}\" -o \"$exe\" 2>&1); bexit=$?; end_t=$(date +%s%3N); bms=$((end_t - start_t)); if [ -n \"$out\" ]; then echo -e \"$out\"; fi; w=$(echo \"$out\" | grep -ic \"warning:\"); e=$(echo \"$out\" | grep -ic \"error:\"); if [ $bexit -eq 0 ]; then bs=\"✓ Success\"; bc=\"32\"; else bs=\"✗ Failed\"; bc=\"31\"; fi; echo -e \"\\e[${bc}m${bs} in $(fnT $bms)\\e[0m\"; fnH \"BUILD REPORT\"; fnR \"File\" \"${fileBasename}\"; fnR \"Compiler\" \"$c\"; fnR \"Target\" \"x64\"; fnR \"Build\" \"$bs\" \"$bc\"; if [ $w -gt 0 ]; then wc=\"33\"; else wc=\"0\"; fi; fnR \"Warnings\" \"$w\" \"$wc\"; if [ $e -gt 0 ]; then ec=\"31\"; else ec=\"0\"; fi; fnR \"Errors\" \"$e\" \"$ec\"; if [ -f \"$exe\" ]; then sz=$(du -h \"$exe\" | cut -f1); fnR \"Size\" \"$sz\"; fi; fnR \"Build Time\" \"$(fnT $bms)\"; if [ $bexit -ne 0 ]; then exit 1; fi; exit 0",
     22             "args": [],
     23             "options": {
     24                 "cwd": "${fileDirname}",
     25                 "shell": {
     26                     "executable": "/bin/bash",
     27                     "args": ["-c"]
     28                 }
     29             },
     30             "problemMatcher": ["$gcc"],
     31             "group": "build",
     32             "detail": "Auto-selects gcc for .c and g++ for .cpp"
     33         },
     34         {
     35             "label": "C/C++: build and run active file",
     36             "type": "shell",
     37             "command": "if [ \"${fileExtname}\" = \".cpp\" ]; then c=\"g++\"; else c=\"gcc\"; fi; exe=\"${fileDirname}/${fileBasenameNoExtension}\"; logDir=\"/home/notamitgamer/Documents/bsc/buildLog\"; mkdir -p \"$logDir\"; ts=$(date +\"%Y-%m-%d_%H-%m-%M_%S\"); logFile=\"$logDir/buildLog_$ts.txt\"; B=\"━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\"; fnH() { title=\"$1\"; show_c=\"${2:-true}\"; show_l=\"${3:-true}\"; nl=\"${4:-true}\"; if [ \"$show_c\" = \"true\" ]; then if [ \"$nl\" = \"true\" ]; then echo \"\"; fi; echo -e \"\\e[90m$B\\e[0m\"; echo -e \" \\e[36m$title\\e[0m\"; echo -e \"\\e[90m$B\\e[0m\"; echo \"\"; fi; if [ \"$show_l\" = \"true\" ]; then if [ \"$nl\" = \"true\" ]; then echo \"\" >> \"$logFile\"; fi; echo \"$B\" >> \"$logFile\"; echo \" $title\" >> \"$logFile\"; echo \"$B\" >> \"$logFile\"; echo \"\" >> \"$logFile\"; fi; }; fnR() { pad=$(printf \"%-16s\" \"$1\"); echo -e \"${pad}\\e[${3:-0}m$2\\e[0m\"; echo \"${pad}$2\" >> \"$logFile\"; }; fnL() { echo -e \"\\e[${2:-0}m$1\\e[0m\"; clean=$(echo \"$1\" | sed -r \"s/\\x1B\\[([0-9]{1,3}(;[0-9]{1,3})*)?[mGK]//g\"); echo \"$clean\" >> \"$logFile\"; }; fnT() { if [ $1 -ge 1000 ]; then echo \"$(($1 / 1000)) sec ($1 ms)\"; else echo \"$1 ms\"; fi; }; ver=$($c --version | head -n 1); fnH \"BUILD\" true true false; fnL \"Compiling ${fileBasename}...\" \"0\"; fnL \"$ver\" \"90\"; fnL \"\" \"0\"; start_t=$(date +%s%3N); out=$($c -fdiagnostics-color=always -g \"${file}\" -o \"$exe\" 2>&1); bexit=$?; end_t=$(date +%s%3N); bms=$((end_t - start_t)); if [ -n \"$out\" ]; then echo -e \"$out\"; cleanOut=$(echo \"$out\" | sed -r \"s/\\x1B\\[([0-9]{1,3}(;[0-9]{1,3})*)?[mGK]//g\"); echo \"$cleanOut\" >> \"$logFile\"; fi; w=$(echo \"$out\" | grep -ic \"warning:\"); e=$(echo \"$out\" | grep -ic \"error:\"); if [ $bexit -eq 0 ]; then bs=\"✓ Success\"; bc=\"32\"; else bs=\"✗ Failed\"; bc=\"31\"; fi; fnL \"$bs in $(fnT $bms)\" \"$bc\"; fnH \"BUILD REPORT\"; fnR \"Source\" \"${file}\"; loc=$(wc -l < \"${file}\"); fnR \"Lines of Code\" \"$loc\"; fnR \"Timestamp\" \"$(date +'%Y-%m-%d %H:%M:%S')\"; fnR \"Compiler\" \"$c\"; fnR \"Target\" \"x64\"; fnR \"Build\" \"$bs\" \"$bc\"; if [ $w -gt 0 ]; then wc=\"33\"; else wc=\"0\"; fi; fnR \"Warnings\" \"$w\" \"$wc\"; if [ $e -gt 0 ]; then ec=\"31\"; else ec=\"0\"; fi; fnR \"Errors\" \"$e\" \"$ec\"; if [ -f \"$exe\" ]; then sz=$(du -h \"$exe\" | cut -f1); fnR \"Size\" \"$sz\"; fi; fnR \"Build Time\" \"$(fnT $bms)\"; fnR \"Log File\" \"$logFile\" \"90\"; if [ $bexit -ne 0 ]; then exit 1; fi; fnH \"RUN\" true false; rstart_t=$(date +%s%3N); \"$exe\"; rexit=$?; rend_t=$(date +%s%3N); rms=$((rend_t - rstart_t)); fnH \"EXECUTION REPORT\"; if [ $rexit -eq 0 ]; then rc=\"32\"; else rc=\"31\"; fi; fnR \"Exit Code\" \"$rexit\" \"$rc\"; fnR \"Runtime\" \"$(fnT $rms)\"; rm -f \"$exe\"; fnR \"Executable\" \"Removed\"; fnH \"SOURCE CODE\" false true; cat \"${file}\" >> \"$logFile\"; exit 0",
     38             "args": [],
     39             "options": {
     40                 "cwd": "${fileDirname}",
     41                 "shell": {
     42                     "executable": "/bin/bash",
     43                     "args": ["-c"]
     44                 }
     45             },
     46             "problemMatcher": ["$gcc"],
     47             "group": {
     48                 "kind": "build",
     49                 "isDefault": true
     50             },
     51             "presentation": {
     52                 "echo": false,
     53                 "reveal": "always",
     54                 "focus": true,
     55                 "panel": "shared",
     56                 "showReuseMessage": true,
     57                 "clear": true
     58             },
     59             "detail": "Builds, runs, dynamic time, full logging, one-click close, flush top"
     60         }
     61     ]
     62 }
© notamitgamer • Site Built: 2026-07-21 13:58:23 UTC • git-mirror commit: 1037f62 [view raw info]
Originally created with stagit • modified by notamitgamer
Forked from github.com/notamitgamer/git-mirror