Scripts/qjide
&npsp;
What is qjide?
- qjide is an AJAX based browser IDE for the J programming language.
- qjide is an experiment, not a replacement for the existing JHS/IDE.
- qjide is based on the Qooxdoo AJAX web application framework, and Python (2.7.x / 3.x)
- qjide is able to create single page web applications with desktop class GUI widgets
Requirements
- J 805 (32bit or 64bit)
- J Add-On "convert/json"
- J Add-On "ide/jhs"
- J Add-On "graphics/viewmat"
- J Add-On "graphics/bmp"
- J Add-On "labs/labs"
- Python 2.7.x / 3.x
- An up-to-date Web-Browser
What's new in 2.2.2 (15.02.2017);
- J 805 compatibility
Why another browser based J IDE?
Some people, like me, are still desktop application minded, and prefer IDEs like Microsoft’s VisualStudio, Apples Xcode, Eclipse or Netbeans instead of browser based IDEs, mostly because of their usability and look-and-feel.
Why not having the best of both worlds?
Qooxdoo has a rich set of widgets to create the look-and-feel of a web application, similar to that one of a desktop application. Together with Pythons ready-to-use web application server, and the ability to include foreign functions from a .dll, .so, .dylib, Qooxdoo and Python are the perfect "duo infernale" to create a nice looking and usable browser based IDE.
Currently implemented features
- Directory/File browser (like the one in the GTK IDE Editor)
- Locale/Definitions browser
- Multi-Tab Script Editor with syntax coloring (borrowed from JHS IDE)
- Interactive J Terminal (J console)
- Definitions Viewer
- Pull down Menus
- Many editor features
- Keyboard shortcuts
- Viewmat
- Plot
- Labs
- Package manager
- WWD (Web Window Driver)
What's missing?
- ??? (Tell me, what you are missing)
Is it cross platform?
- Yes
I've tested it successfully on the following architectures:
- Mac OS X 10.11
- Linux Ubuntu 14
- Windows 7/8/10 32-bit, 64-bit
- Firefox 44
- Google Chrome 48
- Safari 9
- Microsoft's Internet Explorer is currently not supported
. The CodeMirror Editor window cannot be focused ??? . All other browsers (I tested) do work very well. . But ... there are no problems with WWD web applications in IE.
Installation and configuration
Just download the zip/tgz archive, and unpack it into any folder of your choice.
Copy qjide.cfg.template to qjide.cfg:
################################################################################ # File: qjide.cfg # Author: M. Saurer, 14.04.2013, Datavision GmbH # Description: qjide configuration file. # # License: GPL Version 3 (see gpl3.txt) # # Note 1: To enforce python run in 32bit mode on Mac OS X, # set the following environment variable: # export VERSIONER_PYTHON_PREFER_32_BIT=yes # # Note 2: Ensure that the following J add-ons are installed: # convert/json # ide/jhs # graphics/bmp # graphics/viewmat # labs/labs ################################################################################ # Setup web server ############################################################# SrvHost = '127.0.0.1' # Listening IP address or host name #SrvHost = '192.168.1.39' # Listening IP address or host name SrvPort = 8080 # Application server port to listen on HlpPort = SrvPort + 1 # Help document server port to listen on DocRoot = '' # Document root (other than sub dir webapp) HlpRoot = '' # Help doc root (Def: <JInsFol>/addons/docs/help) SrvMesg = False # Enable/Disable web server messages VerBose = False # Enable/Disable verbose messages # Setup web client ############################################################# # Examples: # --------- # WebClnt = '' # Do not start a web browser # WebClnt = '<default>' # Start system default web browser # WebClnt = 'C:\\Program Files\\Mozilla Firefox\\firefox.exe -width 1280 -height 1024 -url' # System defined default web browser WebClnt = '<default>' # Setup IDE fonts sizes ######################################################## # Editor font size EditorFontSize = 12 # Console font size ConsoleFontSize = 16 # Setup J environment ########################################################## # J Installation Folder JInsFol = 'C:\\Home\\J701' # On my windows pc #JInsFol = '/Users/martin/J701' # On my mac #JInsFol = '/home/martin/J701' # On my linux box # J Multi Session # True = Each web connection (ip address) use its own J instance # False = All web connections (ip address) share the same J instance JMulSes = True # J startup #################################################################### # Specify a J script here, to start a wwd based web app, instead of the IDE # Note: Make sure, there is absolutely no output generated from any of # your startup files. The wwd start script must be the first one # which generates output. # Load J script at startup WwdStart = '' #WwdStart = 'load \'~user/wwd_example1.ijs\'' #WwdStart = 'load \'~user/StockTerm/StockTerm.ijs\'' #WwdStart = 'load \'~user/DvTimeManager/dvtm_wwd.ijs\'' ################################################################################ # EOF ################################################################################
- Start it, using the command line: python qjide.py
- Or use one of the included scripts/shortcuts: qjide.app (qjide.command), qjide.sh, qjide.lnk
- Please edit scripts/shortcuts so the Python and qjide paths fits you environment
- On *nix systems (Mac, Linux), please don't forget to do a: chmod -R 755 qjide
If everything goes well, a browser window/tab is opened, and qjide is ready to use.
Is it free?
YES!
It's released under the GPL3 license, like the J source code.
And last but not least
Have fun!
Feedback
Directly to: martin DOT saurer AT bluewin DOT ch
Or via J general mailing list.
Screen Shots
Downloads
Download qjide from: github