Addons Calculator Cmdline Designer Formats Howtos Regexp Start Tutorial Git Tutorial Python Tutorial Tcl Videos
UNIX Programming Environment
Even though the UNIX system introduces a number of innovative programs and techniques, no single program or idea makes it work well. Instead, what makes it effective is the approach to programming, a philosophy of using the computer. Although that philosophy cant be written down in a single sentence, at its heart is the idea that the power of a system comes more from the relationships among programs than from the programs themselves.
PTSource Shell
PTSource Shell is a free UNIX programming environment compatible environment for Windows x86 and x64 included in the PTSource Developer Platform. Its goal is to allow programs of UNIX like systems to be recompiled and run natively on Windows with minimal source code modifications by providing them with the same underlying API they would expect in those systems.
PTSource Shell provides native integration of Windows based applications, data, and other system resources with applications, software tools, and data of the UNIX like environment. Thus it is possible to launch Windows applications from the PTSource Shell environment, as well as to use PTSource Shell tools and applications within the Windows operating context.
Screenshots
Features
- Smooth window resizing
- Several panels in one window
- Tabs for editors, viewers, panels and consoles
- Normal, maximized and full screen window graphic modes
- Window fonts (family, height, width, bold, italic)
- Drag and drop (explorer style)
- UNIX tools
- Development Tools
- ShellCheck
- NodeJS
- Python
- Perl
- Tcl/Tk
- GIT
- Vim
- Nano
- Dialog
- Lynx
- … and much more
Using PTSource 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
PTSource 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 cmd='ptcmd' alias lynx='ptlynx' 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 export GOROOT=C:\\PTSOURCE\\Platform\\PTEditor 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 PYSCRIPTS=C:\\PTSOURCE\\Platform\\PTEditor\\libexec\\python\\Scripts PATH=$PATH0:$PATH1:$PATH2:$PATH3:$PATH4:$PATH5:$PATH6:$PATH7:$PATH8:$PATH9:$PATH10:$PATH11:$PATH12:$PATH13:$PATH14:$PYSCRIPTS 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
PTSource Shell as MinGW-w64 and Harbour already configured to build for Win32 and Win64.
Standard make commands
- make (standard *nix make)
- mgmake32 (MinGW-w64 make for x86)
- mgmake64 (MinGW-w64 make for x64)
- makeharbour32 (HarbourMG make for x86 GUI)
- makeharbour64 (HarbourMG make for x64 GUI)
- makeharbour32c (HarbourMG make for x86 CONSOLE)
- makeharbour64c (HarbourMG make for x64 CONSOLE)
- makefasm (FASM for x86 and x64)
- makensis (Generates installer from NSI)
Download
Note : This software does not use a digitally signed installer, so you might get a warning. You should dismiss it and continue.
- Download the Installer.
- When Windows says the installer is not trusted, click “more info” and then “run anyway”.
- Follow the instructions in the installer.
- You can now launch the software from your desktop.
Note : Although this software is completely free a small download fee is applied to help us support hosting costs and help with development.