From 10118774f37da33a0570a1f52015df64e9bd7e99 Mon Sep 17 00:00:00 2001 From: dmarakom6 Date: Sun, 18 Apr 2021 12:51:43 +0300 Subject: [PATCH] Log directly from executables --- bash_update.sh | 12 ++++-------- docs/github/README.md | 12 ++++++------ install.sh | 17 +++++++---------- set_defaults.sh | 20 ++++++++------------ uninstall.sh | 26 +++++++++----------------- update.sh | 18 ++++++------------ util/exec/disfailed | Bin 0 -> 17792 bytes util/exec/enfailed | Bin 0 -> 17792 bytes util/exec/ifailed | Bin 0 -> 17792 bytes util/exec/sdfailed | Bin 0 -> 17872 bytes util/exec/ufailed | Bin 0 -> 17792 bytes util/exec/uninfailed | Bin 0 -> 17792 bytes 12 files changed, 40 insertions(+), 65 deletions(-) create mode 100644 util/exec/disfailed create mode 100644 util/exec/enfailed create mode 100644 util/exec/ifailed create mode 100644 util/exec/sdfailed create mode 100644 util/exec/ufailed create mode 100644 util/exec/uninfailed diff --git a/bash_update.sh b/bash_update.sh index 44c6f74..4bc10ae 100644 --- a/bash_update.sh +++ b/bash_update.sh @@ -15,10 +15,8 @@ if [ -e ~/.shellnotes/ver/.shellnotes_version ]; then NEW_VER=$(curl -s https://raw.githubusercontent.com/dmarakom6/shellnotes/master/ver/.shellnotes_version) else echo "Shellnotes is not installed. Try running 'sh install.sh'." - cd ~/.shellnotes/util/failed - g++ ufailed.cpp -o ufailed - ~/.shellnotes/util/failed/ufailed - rm -f ufailed + cd ~/.shellnotes/util/exec + ./ufailed cd $dir return 0 fi @@ -122,10 +120,8 @@ else echo -ne ">>>>>>>>>>>>>>>>>>>>$LGREEN[done]$NC " else echo -ne ">>>>>>>>>>>>>>>>>>>>$RED[failed]$NC " - cd ~/.shellnotes/util/failed - g++ ufailed.cpp -o ufailed - ~/.shellnotes/util/failed/ufailed - rm -f ufailed + cd ~/.shellnotes/util/exec + ./ufailed return 0 fi echo -ne '\n' diff --git a/docs/github/README.md b/docs/github/README.md index 003a8a4..c56e318 100644 --- a/docs/github/README.md +++ b/docs/github/README.md @@ -3,8 +3,8 @@ A easy, simple and fast way to keep notes via your linux terminal. # What is shellnotes? -Shellnotes is a note system for advanced linux and terminal users. It is made out of a lot of other commands and scripts, and has tons of abilities, like a logging system, an auto-update feature, and much more! -Shellnotes uses your favourite text editor to save notes on the go. If you are the type of guy that has his terminal open 24/7, you can also save notes __directly__ via terminal! +Shellnotes is a note system for advanced linux and terminal users. It is made out of commands and scripts, and has tons of abilities. +Shellnotes uses your favourite text editor to save notes on-the-go. If you are the type of guy that has his terminal open 24/7, you can also save notes __directly__ via terminal! With shellnotes, you can make, find, list, edit or delete your notes from wherever you are, whenever you want. # Why use shellnotes? @@ -13,13 +13,13 @@ With shellnotes, you can make, find, list, edit or delete your notes from wherev * It can suit both dynamic and regular users, as it brings a classic TUI experience as well as some more modern abilities. * It runs __exclusively__ in your terminal, its source files are stored in your home folder. * It's lightweight -* It's [more than just a program for taking notes.](#learn-everything-shellnotes-can-do). It has a ton of other interesting abilities. +* It's [more than just a program for taking notes](#learn-everything-shellnotes-can-do). It has a ton of other interesting abilities. * It's portable and compatible with most shells. -* It matches all the users' experience, by creating the appropriate environment for both beginners and advanced users linux users. +* It matches all users, by creating the appropriate environment for both beginners and advanced linux users. * Even if you delete shellnotes, your notes will stay where they are. * It has a simple file organization system and [TUI](https://en.wikipedia.org/wiki/Text-based_user_interface). * It's easy to install, delete, update or use. -* It's mostly written in [shell](https://en.wikipedia.org/wiki/Shell_script), which is the language for Unix/Linux [CLI](https://en.wikipedia.org/wiki/Command-line_interface) applications. +* It's mostly written in [shell](https://en.wikipedia.org/wiki/Shell_script), which is the language for Unix/Linux [CLI](https://en.wikipedia.org/wiki/Command-line_interface) in-terminal applications. # How to install After downloading the source code, navigate to the folder where it's stored, and execute the install script (`install.sh`), using the `sh` command. @@ -120,4 +120,4 @@ Want even more information? Feel free to see the whole [shellnotes documentation *WARNING*: The default shell for shellnotes is bash. However, shellnotes will find your shell if it's different and continue installing according to it. If your shell is not supported though, the installation will fail. -*WARNING*: install.sh must be run from the folder where it was downloaded WITH the other files from the repo. Otherwise, installation will fail. (see [installation documentation](https://github.com/dmarakom6/shellnotes/blob/master/docs/installing.txt) for more). \ No newline at end of file +*WARNING*: install.sh must be run from the folder where it was downloaded WITH the other files from the repo. Otherwise, installation will fail. (see [installation documentation](https://github.com/dmarakom6/shellnotes/blob/master/docs/installing.txt) for more). diff --git a/install.sh b/install.sh index 4850f8a..955c449 100644 --- a/install.sh +++ b/install.sh @@ -11,11 +11,9 @@ VER_TO_INSTALL=3.0 #This is used when updating, it will be changed in every new if [ -e ~/.shellnotes/.shellnotes.sh ]; then echo "Shellnotes is already installed." echo "If you want to update, please run 'update.sh'." - cd ~/.shellnotes/util/failed - g++ ifailed.cpp -o ifailed - ~/.shellnotes/util/failed/ifailed - rm -f ifailed - cd $dir + cd ~/.shellnotes/util/exec + ./ifailed + else mkdir ~/.shellnotes mv docs ~/.shellnotes/ @@ -41,7 +39,8 @@ else sudo apt install python3-pip pip install pathlib sudo apt update - chmod +x ~/.shellnotes.sh + sudo chmod a+rwx ~/.shellnotes/util/exec/* + sudo chmod +x ~/.shellnotes/.shellnotes.sh echo "$VER_TO_INSTALL" > ~/.shellnotes/ver/.shellnotes_version @@ -89,10 +88,8 @@ else clear echo "Your shell is not supported by shellnotes." echo "Installation Failed." - cd ~/.shellnotes/util/failed - g++ ifailed.cpp -o ifailed - ~/.shellnotes/util/failed/ifailed - rm -f ifailed + cd ~/.shellnotes/util/exec + ./ifailed cd $dir fi fi diff --git a/set_defaults.sh b/set_defaults.sh index d0f5a0f..c696ab3 100644 --- a/set_defaults.sh +++ b/set_defaults.sh @@ -37,10 +37,8 @@ if [[ "$input" == "1" ]]; then else echo "This program name is invalid or not a text editor." - cd ~/.shellnotes/util/failed - g++ sdfailed.cpp -o sdfailed - ~/.shellnotes/util/failed/sdfailed - rm -f sdfailed + cd ~/.shellnotes/util/exec + ./sdfailed fi @@ -56,10 +54,8 @@ elif [[ "$input" == "2" ]]; then echo "Please restart your terminal." fi echo "This program name is invalid or not a text editor." - cd ~/.shellnotes/util/failed - g++ sdfailed.cpp -o sdfailed - ~/.shellnotes/util/failed/sdfailed - rm -f sdfailed + cd ~/.shellnotes/util/exec + ./sdfailed fi @@ -71,6 +67,8 @@ elif [[ "$input" == "3" ]]; then if [ -d $name ]; then if [[ "$name" == "$input3" ]]; then echo "This is already the default notes folder." + cd ~/.shellnotes/util/exec + ./sdfailed else mv $DEFAULT_PATH/* $name echo "$name" > ~/.shellnotes/util/sd/sd-input3.txt @@ -80,10 +78,8 @@ elif [[ "$input" == "3" ]]; then else echo "This directory does not exist." - cd ~/.shellnotes/util/failed - g++ sdfailed.cpp -o sdfailed - ~/.shellnotes/util/failed/sdfailed - rm -f sdfailed + cd ~/.shellnotes/util/exec + ./sdfailed fi diff --git a/uninstall.sh b/uninstall.sh index c874466..24e2eb3 100644 --- a/uninstall.sh +++ b/uninstall.sh @@ -70,31 +70,25 @@ if [ $option = "1" ]; then fi else echo "Your shell is not supported." - cd ~/.shellnotes/util/failed - g++ uninfailed.cpp -o uninfailed - ~/.shellnotes/util/failed/uninfailed - rm -f uninfailed + cd ~/.shellnotes/util/exec + ./uninfailed cd $dir fi esac else echo "An error occured." echo "Shellnotes is not installed." - cd ~/.shellnotes/util/failed - g++ uninfailed.cpp -o uninfailed - ~/.shellnotes/util/failed/uninfailed - rm -f uninfailed - cd $dir + cd ~/.shellnotes/util/exec + ./uninfailed + cd $dir fi elif [ $option = "2" ]; then if grep 'return' <~/.shellnotes/.shellnotes.sh >/dev/null; then echo "Shellnotes is already disabled." - cd ~/.shellnotes/util/failed - g++ disfailed.cpp -o disfailed - ~/.shellnotes/util/failed/disfailed - rm -f disfailed + cd ~/.shellnotes/util/exec + ./disfailed cd $dir else sed -i '2 i\return 0 #Shellnotes is disabled by the user. Do not change this line.' ~/.shellnotes/.shellnotes.sh @@ -106,10 +100,8 @@ elif [ $option = "3" ]; then echo "Shellnotes is now enabled. Please restart your terminal." else echo "Shellnotes is already enabled." - cd ~/.shellnotes/util/failed - g++ enfailed.cpp -o enfailed - ~/.shellnotes/util/failed/enfailed - rm -f enfailed + cd ~/.shellnotes/util/exec + ./enfailed cd $dir fi else diff --git a/update.sh b/update.sh index 2ddcef7..daa784f 100644 --- a/update.sh +++ b/update.sh @@ -13,10 +13,8 @@ if [ -e ~/.shellnotes/ver/.shellnotes_version ]; then NEW_VER=$(curl -s https://raw.githubusercontent.com/dmarakom6/shellnotes/master/ver/.shellnotes_version) else echo "Shellnotes is not installed. Try running 'sh install.sh'." - cd ~/.shellnotes/util/failed - g++ ufailed.cpp -o ufailed - ~/.shellnotes/util/failed/ufailed - rm -f ufailed + cd ~/.shellnotes/util/exec + ./ufailed return 0 fi clear @@ -25,10 +23,8 @@ dir="$(pwd)" if [ "$VER" = "$NEW_VER" ]; then echo "No new update found." echo "Shellnotes is up to date (version $VER)." - cd ~/.shellnotes/util/failed - g++ ufailed.cpp -o ufailed - ~/.shellnotes/util/failed/ufailed - rm -f ufailed + cd ~/.shellnotes/util/exec + ./ufailed cd $dir else echo "Good news!" @@ -46,10 +42,8 @@ else else sleep 0.5 echo "Update Failed." - cd ~/.shellnotes/util/failed - g++ ufailed.cpp -o ufailed - ~/.shellnotes/util/failed/ufailed - rm -f ufailed + cd ~/.shellnotes/util/exec + ./ufailed cd $dir return 0 fi diff --git a/util/exec/disfailed b/util/exec/disfailed new file mode 100644 index 0000000000000000000000000000000000000000..7cea8b748dc47692a5a469294b6a310d1e77bfca GIT binary patch literal 17792 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 literal 0 HcmV?d00001 diff --git a/util/exec/enfailed b/util/exec/enfailed new file mode 100644 index 0000000000000000000000000000000000000000..a4e4e8cc9f02b73b4151aa7d9c7e58843ef50e0d GIT binary patch literal 17792 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 literal 0 HcmV?d00001 diff --git a/util/exec/ifailed b/util/exec/ifailed new file mode 100644 index 0000000000000000000000000000000000000000..1fb028cd360e77d2e5dfb793854989bfd29a2031 GIT binary patch literal 17792 zcmeHPeQ;FO6~CKJAS!GEf=1}b;zuW_SrP~sRLX8X;H?ITkSJB~x!HY?r^#;IeXEI6 zG!(J!VA@otQ>L{e&h*2XPA&bTqgAIu@$-*5FzvKBPN%7rX=2r4l$N&2_IK{P=kfMs z*FmR$bUJ%s_uTWl=bU@*dH3DB_q}^^e@Exq3ZGAK@{2DC;zs7!NLUq&tX3J2uxJsp z@f{S4#0>D260^(0HbJSKj#U)WYK8kjNw1DFMd%l7STN-l5+%J-sqtL9gsG^tdD5$* ztm3`2M;T?xrR{bTCZBj1D@Z27SAA5-?rxYB1mVo7g{(%Yi+nAR$J zrtD8@K7Cr0KfN@FGD<=DEreHZi_-Jbb|uf0>Y%jwxRv-k^>wjcP?`}f9@=fgf+^Q` zBlO5GXPfvkZ&LM@x()}GKbg|?rnI!*>|NQsv_H|%Zzi)t4MQy}8&)=lGO5rqSx)Vu zI%rI-+t4Fm<{)9pjq+N|Q#_St%r!r$&)vVK;iAlzjW<8{_>G6}c$95Wog_nv^i`82 zPkFi(NyhH~E{Ut#Qyev3ACN$aujimRw@BGjCGh7<;6I0rVs@HK$bYW{{?!t8s!GVe zS3;gTU93HefCusMrUy#cKT-mxYa8?$0e@`?oUUH6_8fx!ON!VL7+)DH5x??E8dEEU zuJ0H~CH0IIOIx}w^l0~bJz=Dc9cIQd(%tLZ`cp}xJJ#E8*k#2_ZrQNeYB5t8y*HLI znxje6YH#Yen~V<)>4Qc(lS;<=O>0=cyHV&Q+|&$7Gp?t$XRNdl8;Hh%HO2d4Y28Z4 zOe+(OcXX_X_op%j*|}x2)t`wL5!nQ6xiZC;y7i9DEA*}#;&xSq?P`lyNSlhAvT_n66qzRAdB2V`NKF9xnd{7yaIcc;ER zX79fv<+=H$)WcW3)`?Puirq-Op0}FZTj+1qiEZ*CDIzzn?lRQ zy3S}TSisG8USH_FHXATA5~=#7xPSWHmxW=Oh9BKyTCk$+IAjI zNJzYn@j7z58vL4CuNZ&&d|STDg9nv-b=WRvdFGF-v2mL7c&;Plm$aJ*Hm`Uh2sJ{=~Wj#%R$STvIoi@D0`snf&Ui| zd{}ewzqH-&R%?5!-dHMxw&$Q#kw2pCezE$n>|%b!^?;}Hm)`(Vvq+G9AC*i^{wbf& zk4c^uzNyKh4o?f-)Z`(Dr-g26@@EcD3*6M?6An)c+tlPY9iA4nsmWaqPYc=9sQ=hu&YK9XjRLd@pN9Ph0a~;CO>=pgKRk zUHXmn>H3bWeh7)@_lkk!_LNBKqO&+e0;r9w0Z# z`-^4@=?$7koS8!wm%qv$D0`snfwBk69w>XD?18ce${r|t;D5*i^qxS3LQC<#KeZ#X z)TH+vMj~VlSt7b&b9bb(GtwR1xFNVU67B404@Nfx<@0afLjSe&j+VCG6MxI+9|GNX zBA-71`XuP9pxOud{2*x46m}`tqb&O{pRWhKA5;U~2igZ({Sov)DbYJqO1^tH3Exny zZ{e(&)nh0loX!Fqfo(jA5Tbpid^~>{vd#ExK^v%U5vW}osJp)AynCug#F_=yT(SJJ zO9&?Yt@w;XPAU?JM7V{|G2r__IXUMJ?(OQ7Et&b<;};9DklRD`(q{?!NXI8Cp9a$r zsC}@aZT1Xpx4+^98V-o;{1%@I_+UM#BU8~X1*rTZe3qj8B6oS0t=|r89_-hn+@SKc zf!c3WL<4nS_jd$>qm>0W4{QaHZaL}`@A=$CR9iWfJy7;Q*#l({ls!=PK-mLj50pJn_JGR+ zeC~l6wPCK6kZHqK>#±uK z#rqf9gHSqoI-erCUmZH)ANoTo!)J(IRporf=|XG|De+mWI-3>q6=kB-M4vi0q}0R- zC7`+?_)OA;3J=o;5{dB^)nIOSwepV=6I?&`VluHD-ek%CL0m$3|0elolwrIalRUQ* z+epcesq%j+zEau!ZxcSh?X}yeHltxhyA-`$(LqH=6dhA^zoG{eJ*cSH{@L<;?vCYg zdhwcIeNS&TX=Q_}LO96S&~$ZHvQ76bYYa6uFR@`(_!R2LXs=_(yX5FBBcD@u!Sc)_ zpF=OiE5%oe+NpBJb)ozW!Q;6QpDB3U7vj}|$3r20j^J@rh@UHXycXi;2_DylIPUTy z*U68&Jy;YEh$BVu8ZllJuXW-!3hSLCcpfRlaR@W$M(n&_obQ~=cbEF{v}CNPJZ1y= zl*KJgr%Nwz<|}uJUtB17o+`xaM6vtCkJ*psl|p&UdSN$W=lx=#s4I%|tawI;rk6_b z0p6k)CYp~caIp@!51#@HD16+5FIG6u|6pah8s9!wd#FB2Yw__F@xuUcs+ZRllBG0^ zkFSV7_W>`~{_jiqxuPZ)zLD{hBQ=7xH{ropzt{GBDac|E#+&4sgyV*i{dxt zR4fqQ`T14gi-Fgw_V7CRXZUSy#q|6AZE3%tDUum2fgePF=fe3TYMd`ss;5iHw@LZw z_8%#MKLwon<-Jdz1zuak&-A>w7WYvwTv*2|CG5{6KNN~et_?WZ@z%SsguEs3T5&|( z7lyL=KneLD01pHz+k^&;RQiU<4VMk6cf@B6k+PI zbUHSy8%ZlYEVid(1BRZ+4h#%K#l`86vojks}-nKATuDv98d zY}~SoT6En^kp-~LO*#c%ScqjI#H6SUa0sc1A;KeJ*m}e_nx@d#b#82pbV4QDt4DPi zuc7N}H$~QW=p7r{DF8=DM3&y6DNt+QB=q(#Z-}gqwxO(`*@;3xhJZLVY+So`b4Rz{ z9ck_CfK?+Avto$g*@(s_%%q;p7zsO|BpjB}A&3Z}IFQ2V5^q@|lhXUpF9ZX%-yBLC z+e5`8d|Xj09uuE0kVhF&5iDmPKvW_e$77DJpDXC*OpBZ04n#mXSB89ON7~qtMV~2% z$y4cBhZIo+l1EqX&1Br|m>%KeRgf`4@k~|@AoOZ_SXMafiWmCSD6oRyB~+xsjZ`2K zRYLb6D)9s+sWv$SZF=0jzBm&t6MJSoFjL?o`HZ+({ zAtcQjc0s*a6A_nYLP3a|YOrEEgcR?KW%@)YF`PsdHnq}r$=wKS!<}8g=qO7Y{V`Hd zxxs!*gyeJ)LN>G`1(q@yBQ8P+?E))37D}h&T^cg_)LhkF6VF zLTS~W#%vp$N9C~r6XtD$7%w7(DRcnSVv#lC^FZ_*081l&E7^(nSxmjZcuCfsE(Jqd zVAkjT7}KCz7$U+hBd(FEZu#($q%s9qaRR2oo4}ne};J$&{a;Ktv|5|L+1y z&n8%(_n%C??Pocr_d%bYbuiESRHh@cR@=waPHw+~#V9i5Q`YDGEK`2|;`JZ*|JzEx zRT<=cFVhnWCw`agyOw|-FRF+ISFih9h8A9?h7 zzs;28*$nec4|w#)RRPoetf(mKG5v){pMP&NeTgrON1x5w`?)jz<9$9;evZiU-uvez zRlieBP)RCE_qRKF^?!{*@;~dh1Z`=i-8Sodd-dN$iCcdxXp1r(q(WEX@x#z@WZe4B z=IRn#!u#9TV@~`7Vzj4M)0XqRg8yCsUnkqzneof*@WWt@OP`->bT!x-ELTdu2KqGi zxqg2B!GHgO|IP!=Ka|)Wx9i8is86iV&q?~!hK-&NxD)F$t%I^#Uxbx(qfPlfWgD!= z{KZfvjO*upRh`oJ%2QqLbg8Oei91ECe}#kC8P<1G9(!(4O&L6(97oTKm*d0j;eOF` kWp2A${}esALAuE^V7Xqq)Q(LqroZ7jTjDB@f`=9V0mK&)WdHyG literal 0 HcmV?d00001 diff --git a/util/exec/sdfailed b/util/exec/sdfailed new file mode 100644 index 0000000000000000000000000000000000000000..25624ae591a46b416f60a18d515c2aa6647f1628 GIT binary patch literal 17872 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 literal 0 HcmV?d00001 diff --git a/util/exec/ufailed b/util/exec/ufailed new file mode 100644 index 0000000000000000000000000000000000000000..e99b42b9adb5e75866db0215139f7937426389e3 GIT binary patch literal 17792 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 literal 0 HcmV?d00001 diff --git a/util/exec/uninfailed b/util/exec/uninfailed new file mode 100644 index 0000000000000000000000000000000000000000..729cd5513c951e96f1995a847036b255ef7b7061 GIT binary patch literal 17792 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 n_lwSzx$RE`>-yd)RK literal 0 HcmV?d00001