Using the Shell
A non-quoted backslash \ is the Bash escape character. It preserves the literal value of the next character that follows, with the exception of newline. If a \newline pair appears, and the backslash itself is not quoted, the \newline is treated as a line continuation (that is, it is removed from the input stream and effectively ignored). So moving in dirs in the Shell its slightly different so if you want to walk thru dirs you shoud use / instead of \ as in *nix.
Sample
cd c:\ # This is wrong and it will return c: cd c:/ # This is right and it will return c:\ cd c:\\ # This is also right and it will return c:\
BashRC and aliases
The Shell uses a simple ini file called PTShell.ini in the PTSource directory as its RC startup it fully supports aliases and it reads by default as fallows :
alias vi='vim -v' alias vimdiff='vim -d' alias edit='nano' alias h='history' alias nc='mc' alias more='less' alias ls='ls --color' alias dir='ls -la --color' alias ll='ls -la' alias l='ls -lh' alias now='date +"%T"' alias back='cd $OLDPWD' alias texclean='rm -f *.toc *.aux *.log *.cp *.fn *.tp *.vr *.pg *.ky' alias curl='curl -k' alias npm='npm -g' alias pip='python -m pip --disable-pip-version-check' alias frink='frink -w 200 -r -j' alias clear='cls' alias cpan='cpanm' alias cmd='ptcmd' BASH='bash' SHELL='bash' CC='gcc.exe' CXX='g++.exe' CPP='gcc.exe -E' M4='m4.exe' PERL='perl.exe' export PERL5LIB=C:\\PTSOURCE\\Platform\\PTEditor\\lib\\perl5\\5.8 TERM=cygwin HISTSIZE=200 HISTFILESIZE=200 HISTFILE=C:\\PTSOURCE\\Platform\\PTEditor\\home\\bash_history HOME=C:\\PTSOURCE\\Platform\\PTEditor\\home export SYSCONFDIR=C:\\PTSOURCE\\Platform\\PTEditor\\etc export TMP=C:\\PTSOURCE\\Platform\\PTEditor\\tmp export TEMP=C:\\PTSOURCE\\Platform\\PTEditor\\tmp PKG_CONFIG='pkg-config.exe' export PKG_CONFIG_PATH=C:\\PTSOURCE\\Platform\\PTEditor\\share\\pkgconfig export GROFF_FONT_PATH=C:\\PTSOURCE\\Platform\\PTEditor\\share\\groff\\1.21\\font export GROFF_TMAC_PATH=C:\\PTSOURCE\\Platform\\PTEditor\\share\\groff\\1.21\\tmac PATH0=C:\\PTSOURCE\\Platform\\PTEditor PATH1=C:\\PTSOURCE\\Platform\\PTEditor\\bin #x86 MinGW and Harbour PATH2=C:\\PTSOURCE\\Platform\\PTEditor\\builder\\comp\\mingw32\\bin PATH3=C:\\PTSOURCE\\Platform\\PTEditor\\builder\\comp\\harbour32\\bin #x64 MinGW and Harbour #PATH2=C:\\PTSOURCE\\Platform\\PTEditor\\builder\\comp\\mingw64\\bin #PATH3=C:\\PTSOURCE\\Platform\\PTEditor\\builder\\comp\\harbour64\\bin #x86 and x64 Fasm PATH4=C:\\PTSOURCE\\Platform\\PTEditor\\builder\\comp\\fasm32_64 #x86 NSIS PATH5=C:\\PTSOURCE\\Platform\\PTEditor\\builder\\comp\\nsis32 #x86 FreeBasic PATH6=C:\\PTSOURCE\\Platform\\PTEditor\\builder\\comp\\fbc32 #x64 FreeBasic #PATH6=C:\\PTSOURCE\\Platform\\PTEditor\\builder\\comp\\fbc64 #x86 FreePascal PATH7=C:\\PTSOURCE\\Platform\\PTEditor\\builder\\comp\\fpc32 #x64 FreePascal #PATH7=C:\\PTSOURCE\\Platform\\PTEditor\\builder\\comp\\fpc64 PATH8=C:\\PTSOURCE\\Platform\\PTEditor\\libexec\\python PATH9=C:\\PTSOURCE\\Platform\\PTEditor\\libexec\\phphum PATH10=C:\\PTSOURCE\\Platform\\PTEditor\\libexec\\nodejs PATH11=C:\\PTSOURCE\\Platform\\PTEditor\\libexec\\nodejs\\node_modules\\npm PATH12=C:\\PTSOURCE\\Platform\\PTEditor\\libexec\\git-core PATH13=C:\\PTSOURCE\\Platform\\PTEditor\\libexec\\mc PATH14=C:\\PTSOURCE\\Platform\\PTEditor\\libexec\\vim PATH=$PATH0:$PATH1:$PATH2:$PATH3:$PATH4:$PATH5:$PATH6:$PATH7:$PATH8:$PATH9:$PATH10:$PATH11:$PATH12:$PATH13:$PATH14 MANPATH=C:\\PTSOURCE\\Platform\\PTEditor\\man SAMPLES=C:\\PTSOURCE\\Platform\\PTEditor\\samples FASMINC=C:\\PTSOURCE\\Platform\\PTEditor\\builder\\comp\\fasm32_64\\INCLUDE export HOME PATH HISTFILE HISTSIZE HISTFILESIZE MANPATH SHELL TERM BASH SAMPLES CC CXX CPP M4 PERL FASMINC export PYTHONWARNINGS=ignore:::pip._internal.cli.base_command pip list export TERMINFO=C:\\PTSOURCE\\Platform\\PTEditor\\share\\terminfo LOGIN_SHELL=true cd $HOME
It can be edited to fit your needs.
Development Environment
The Shell as MinGW-w64 and Harbour already configured to build for Win32 and Win64.
Standard make commands
- make (standard *nix make)
- makeharbour32 (HarbourMG make for x86 GUI)
- makeharbour64 (HarbourMG make for x64 GUI)
- makeharbour32c (HarbourMG make for x86 CONSOLE)
- makeharbour64c (HarbourMG make for x64 CONSOLE)
- tcc (TCC make for x86 or x64)
- makefasm (FASM for x86 and x64)
- makensis (Generates installer from NSI)