J Viewer
Wiki • Forums • GitHub • RosettaCode • Quora • YouTube • "Reference, education...and rabbit holes."
The J Viewer is a JQt-based add-on that provides fast, fluid navigation of the J Wiki (~3,000 pages) and the J Forums (>120,000 posts). It also supports quick, integrated, full-text search (including code search) of the Wiki, the Forums, the J sections of RosettaCode (>1000), GitHub J source files (~10,000), ~6,000 Quora posts and over 100 YouTube videos.
For an introduction to the J Viewer, see the latest demo: https://youtu.be/SLJS84u4eVc
The J Viewer has been tested on MacOS, Windows and Ubuntu. (It does not run under FreeBSD.) If you'd like to try it out, installation instructions follow.
NB: To avoid unnecessary forum traffic, please write to edward.j.gottsman@gmail.com. (Thanks.)
Note also that it uses the T. primitive, so the minimum release required is J 9.4.
I encourage you to set up a J Viewer launch shortcut (see below) to streamline your workflow. I've found recently that I reach for the viewer first when I have a question; the shortcut improves readiness-to-hand.
First, install the SQLite binaries by evaluating:
load 'data/sqlite'
...you'll probably get a dialog that invites you to evaluate the following code. (Comply.):
getbin_psqlite_ ' '
Then, install the viewer by evaluating:
install 'github:gottsman63/jwikiviz'
Launch by evaluating:
load '~addons/gottsman63/jwikiviz/run.ijs'
To set up a Ctrl-Shift-H launch shortcut in JQt, evaluate:
open '~config/userkeys.cfg'
…then append the line:
Ctrl+Shift+H;0;JViewer;load '~addons/gottsman63/jwikiviz/run.ijs'
…then save, and restart JQt.
Note that J Viewer pulls ~450 MB of data from a server and maintains it in ~user/jviewer/, where (decompressed and indexed) it occupies ~1.2 GB.
The data comprises the structure and full-text index of the Wiki, the Forums, RosettaCode, .ijs (and .ijt) files on GitHub as well as Quora J posts and over 100 YouTube videos. It is refreshed weekly on the server. (The viewer will be unresponsive during the initial data download; subsequent downloads happen in the background.)
Two buttons above the left panel let you retrieve the latest versions of the data and the viewer, respectively. Their labels indicate whether updates are available.
The "Debug (Log)" checkbox turns on fine-grained event logging, which can be helpful when isolating a problem with the viewer. Check it, reproduce the problem, then attach ~user/jviewer/jviewer.log to an email describing the situation, and send it to me.
The J Viewer provides efficient, convenient access to decades of J code and lore, a valuable reference for the beginner…and a warren of tantalizing rabbit holes for the expert. I hope you'll take some time to explore it. Should you encounter any issues or have suggestions for improvement, please let me know.
Thanks very much.
Ed
edward.j.gottsman@gmail.com
Notes
J Viewer is Unresponsive During Initial Data Download
While it downloads its database for the first time, the J Viewer is unresponsive--simply because it has no data to work with. Once the 350MB package has arrived (which may take quite some time if your line is slower) it will be decompressed (to about 1GB) and written to ~user/jviewer/jviewer.db. At that point, NuVoc will appear and the viewer is ready to use.