This is a remote content/code-browsing tool. Small and effective.
Under development,This is a pre-release.
Just to get an impression on what it will become, currently it is viewing only)
(load "//http://www.nodep.nl/downloads/newlisp/nlist.lsp")
Enjoy, Norman.
PS: should work on all OSes ;-)
Nice :)
It works on WinXP in any case.
The info-text in the text-pane is not correctly layed out : first character of each line is hidden... but scripts are well displayed.
Usefull tool.
owww yes thank for this hint..
Im always working on Linux but it looks not as it should under windows,
Ill see how I can fix this for the next release..
[edit] new version v02 uploaded
WinXP and newLISP 9.2.0 here
it return an error:
array, list or string expected : (env "NEWLISPDIR")
on my default installation (env "NEWLISPDIR") return nil
For me on WIN XP/WIN2K it returns:
Quote
newLISP v.9.2.8 on Win32.
> (env "NEWLISPDIR")
"C:\Programme/newlisp"
>
Quote from: "cavva"
on my default installation (env "NEWLISPDIR") return nil
I think that was introduced in 9.2.1 so it's not in the current (non-development) version.
Norman's living on the (b)leading edge!
oo sorry for that,
yes I always have the latest Hot-from-the-oven newlisp version ;-)
Anyway.. the nlist content-browser will have new features in the new release.
'load is removed, a save remote url procedure is introduced..and
some other handy features.. hope to keep it compact and simple ;-)
That release will also join the competition ;-)
nlist.lsp version v0.3 release!
(tested with newlisp-9.2.8 and GS 1.7)
Pre-mature but globaly its working (nice ;-) (lots of feature to add)
Dont use v0.2 any more.. also convert you older nlist.idx into the new format! (strings only)
(load "//http://www.nodep.nl/downloads/newlisp/nlist.lsp")
Enjoy..
PS: perhaps someone with a Mac could show me a picture
on how the nlist looks on MacOs ? just currious...
Quote from: "newdep"
PS: perhaps someone with a Mac could show me a picture
on how the nlist looks on MacOs ? just currious...

(//%3C/s%3E%3CURL%20url=%22http://farm3.static.flickr.com/2123/2086945946_eeb9121266_o.png%22%3E%3CLINK_TEXT%20text=%22http://farm3.static.flickr.com/2123/208%20...%201266_o.png%22%3Ehttp://farm3.static.flickr.com/2123/2086945946_eeb9121266_o.png%3C/LINK_TEXT%3E%3C/URL%3E%3Ce%3E)
Looks pretty good - it took a couple of keypresses to get it started...
Aa great thanks... yes I see alreay a flaw ;-)
You miss the description bar... good to see that it differs per OS..
Ill need to find a different way to dispay the content in the bottom of the screen..
Thanks for the screen dump. looks pritty nice btw ;-)
Do 3 rows by 1 column (or is it 4 rows by 1 column?) grid layout at the top level. Then in each of the 3 (or 4) cells do a flow layout in a gs:panel.
The gs:panel in each cell will expand to its maximum size in the grid and doe not need to be sized. The flow layout inside the gs:panel lets you set the size of the elements contained.
Perhaps for the big cell (list box and text area) you do a border layout with "east", "center" or "east" "west".
On my Mac I see of the URL line only the top half. Even on the same platform there are still differences on different resolution displays.
Lutz
ps: always do nesting of simpler layouts to achieve complexer layouts. gs:panel is cheap on resources.
Hi Lutz,
I tried your advice but the grid-layout on main is a nightmare..
although setting the flow-layout inside the panel its not spacing nicely.
a grid-layout of 3 1 0 0 gives me the list-panel and output-panel in
the midle of the screen and im unable to get them to the top of the main
window... its not outlining to its full size..
I fiddled now for 3 hours with this but its not happening, i tried including
panels make only 2 or three or more.. its not working nicely when grid-
layout is selected.. Ill keep on trying..
Norman.
I wasn't sure about the grid layout choice myself. The grid layout tries to make cells of equal size and of course we don't want this and I forgot about that.
Perhaps a border layout for the main structure instead, where you can size "north" and "south" parts vertically via the panel sizes and the "center" panel will try to take up the rest of the space.
"north" -> ps:panel with flow layout for label and url-bar
"center" -> gs:panel with list-box and text area in flow layout
"south" -> gs:panel flow-layout for the status fields
Lutz
Lutz,
The problem is probably the fact that the system-fonts are directly bound
to the size in height/length of the text-fields and area's..and every OS has different default fonts.. setting a font style for the text-area/field does
simmulate the size, but sizes of font are also different between OS types..
I think its a never ending story ;-) Ill just need to think of something more specific..
PS the "center"is nicer indeed for the middle cell..
Norman.
* new v0.4*
(load "//http://www.nodep.nl/downloads/newlisp/nlist.lsp")
Lots of changes in nlist v0.4
- Expirimented with Panels and grid switched to nlist.cfg colution.
- Changed Info window to Monospaced, better font for script display.
- XY coords/size of nlist are saved when doing "Quit" or windowclose
- nlist now has a configfile called ./nlist/nlist.cfg
- Removed nlist.uri, bookmarks are now stored inside nlist.cfg!
- Shelf-menu is now automaticly updated after doing a bookmark
- Switching between Text and HTLM is now possible in output window.
last textmode is also saved when the nlist is closed.
Lutz.. Is it possible to make newLispDoc compatible with the text/html in GS?
Or the other way around? Would be so nice to view newLIspDoc files from
within a text/html field.
Secondly.. Is it possile that the "web links" that are inside a text/html can
be pre-configured? Seems text/field in html mode now always seeks for
index.html..that not always handly..PS... This works on Windows but NOT under
Linux... Linux seeks always for index.html it seems..
thirdly.. Have a look at the dynamic switch between text/plain and text/html
there must be a better way to do this "on the fly?" what do you think? is GS
up to it? ;-)
Enjoy..
Norman.
coming on nicely...!
Here's some constructive criticism... :)
On Mac the initial display is odd - the idx: label stretches all the way across the top and the text input box is mostly hidden below. It's fixed by changing 800 to 810 for width, for example
I sometimes have to press the return key a few times before I see anything...
Is it possible to get a single click working in the left pane? Double-clicks are OK, but browser-type things often use single clicks...
"text/plain" and "text/html" are built-in Java modes for gs:text-pane (JTextPane and JEditorPane in Java), and there are no Java APIs to change/modify their behavior.
Lutz
Cormullion,
I can change the initial size but it differs per OS very much.
Doing a resize of the window and making it all fit. Then Quit and
restart nlist will make it nicely fit. (saved inside ./nlist/nlist.cfg) Then
you dont have to resize it anymore..or you could..
But i could change the initial sizes indeed.
The Idx input field always reactis to the <enter> I cant change this this is
internal Java/GS behavior. There should not be a delay when loading local
files, there could be a delay when fetching http:// urls..thats a network issue..(or
my ISP has still troubles... :-( But i dont have those much here...
Where did you put your nlist.idx ?? I like to put your files to my nlist shelf! ;-)
Yes would like to have a single click also on the left list-pane but thats
also internaly GS/Java.. Actualy nlist does everything by default of GS
(to keep it simple, i hope..)
Lutz, oke thanks... Although its strange We must accept it ;-)
In the upcoming 9.2.9 (on the weekend) gs:mouse-event can be used also on list boxes to trap single clicks.
Lutz
I put the nlist.idx file here:
http://unbalanced-parentheses.nfshost.com/downloads/
Most of the files seem to display OK.
Usually, that folder is explored more automatically (and colourfully) using //http://unbalanced-parentheses.nfshost.com/index.cgi?download. Perhaps I'll write a bit of code that scans the contents of that folder and updates the nlist.idx file automatically...
Quote from: "Lutz"
In the upcoming 9.2.9 (on the weekend) gs:mouse-event can be used also on list boxes to trap single clicks.
Lutz
aaa nice....
I found another curriosity... the font cant be changed (linux) when
i switch between a text - html pane... odd?? is that static too perhpas?
Quote from: "cormullion"
I put the nlist.idx file here:
http://unbalanced-parentheses.nfshost.com/downloads/
Most of the files seem to display OK.
Usually, that folder is explored more automatically (and colourfully) using //http://unbalanced-parentheses.nfshost.com/index.cgi?download. Perhaps I'll write a bit of code that scans the contents of that folder and updates the nlist.idx file automatically...
Aaa found them...far more easier code browsing this way ;-)
Yes i thought of that too ..something that generates automated nlist.idx
files in text and/or GS/Java html pane format...but be our guest ;-)
PS: I posted v05 with 2 small changes...hope its looks better on Mac now..
Quote from: "newdep"
..something that generates automated nlist.idx
files in text and/or GS/Java html pane format...but be our guest ;-)
For that, the information needs to be attached to each file somehow, then a script could read that information and compile an idx file. Perhaps you could somehow make newlispdoc comments and nlist.idx fields work together...? :)
;; @module - could be same as filename (field 1)?
;; @description - for field 5?
;; @location
;; @version
;; @author
Then you could use:
;; @os
;; @category
;; @ui
for your fields 2 3 4.
Then a script could scan for newlispdoc comments and generate an nlist.idx file as well.
And by forcing us all to write newlispdoc comments for all our files, we defeat the forces of chaos and disorder :) :)
Cormullion..yes ill think about that... Somehow it must be possible ;-)
nlist release v0.6
- You can now decrypt text files that are crypted using 'Encrypt.
This enables you to leave messages for others or protect code from
being viewed by others. The person who knows the Crypt-Key can
enter the key and the encrypted text will be shown in the output-panel.
If the key is incorrect then text will be crypted again! You 'could'
add inside nlist.idx a notification that the files is encrypted
i.e. {crypt} {enc}..
- outlining is again to the "left"
* Decryption/Encryption *
You can include encrypted files, text files or binary's on your location and
display them by including them inside the nlist.idx. Pressing the right mouse
button will popup the menu which includes "Decrypt/Encrypt Text". When
you select this option a new window will appear that enables you to enter
the "Crypt-Key" to Decrypt the text or Encrypt the text. If the text is not
encrypted you can Encrypt the text by providing a Crypt-Key and then select
"Crypt" and "Save File" from the Menu to store the file localy!
If the text/binary is encrypted you can select the Crypt-Key to Decrypt the
file and if the key is correct the text will be shown to you. This is a way
to drop messages or files for people that only know the Crypt-Key.
This option uses the newlisp 'encrypt.
(load "//http://www.nodep.nl/downloads/newlisp/nlist.lsp")
Looks OK now on Mac.
But I'm not seeing your stuff:
no (nlist.idx) found at: (http://www.nodep.nl/downloads/newlisp/)
hahah yes sorry....
download the new one or remove the proxy setting inside
the nlist.lsp... (setenv PROXY..) I forgot to remove it befor uploading...
Norman.
just released version 0.8
(load "//http://www.nodep.nl/downloads/newlisp/nlist.lsp")
see help for changes to v0.8.
PS: cormullion, does it show correctly on OsX?
(now its with Java gui default)
Norman.
It looks - different! I much prefer the native look to the Java look, though. The fonts aren't smoothed in the Java interface, I think...
Tthe big browser window at the right doesn't seem to update to show the file contents, although the status readout reflects the selection...

(//%3C/s%3E%3CURL%20url=%22http://farm3.static.flickr.com/2167/2110254967_97ac0c37eb_o.png%22%3E%3CLINK_TEXT%20text=%22http://farm3.static.flickr.com/2167/211%20...%2037eb_o.png%22%3Ehttp://farm3.static.flickr.com/2167/2110254967_97ac0c37eb_o.png%3C/LINK_TEXT%3E%3C/URL%3E%3Ce%3E)
Quote
It looks - different! I much prefer the native look to the Java look, though. The fonts aren't smoothed in the Java interface, I think...
Tthe big browser window at the right doesn't seem to update to show the file contents, although the status readout reflects the selection...
Thanks for the screen dump. and feedback. ;-)
If you remove the (gs:set-look-and-feel "javax.swing.plaf.metal.MetalLookAndFeel") I dont know what it now will do on the Mac ?? (If you test this remove the nlist.cfg too and restart nlist.lsp)
Well yes the output window has default now "Monospaced fonts" this is perhpas an ugly font but it seems the only font that equals Graphics to Console text conversion (now the Tabs and spaces are correct in size and
the text is outlined better)
*Correction added*
You are using V0.9 If you downloaded the latest GS 1.10 from lutz you should
see with 1 Click the Info of the Link/File at the bottom and with 2 clicks it loads the content..If you did not download the G1.10 then only 2 clicks work..
I like the 1 click direct load also, but to be able to scroll through the info
of nlist.idx the 1 click now shows the info without loading.
Norman.
Quote
You are using V0.9 If you downloaded the latest GS 1.10 from lutz ...
I might have known! All you have to do is look away for a few minutes and there's an upgrade available! Wonderful stuff...
latest version v0.10 minor updates + color scheme
future/announcements updates can be found here
//http://newlisp.nodep.nl/
Enjoy..;-)
For all those newLISPers out there who think that GUIs are for sissies: a new version of the old command line utility -> get-normans ;-)
#!/usr/bin/newlisp
#
# get all of Norman's utilities at once
# upated 2007-12-23 to new format on Norman's site
(set 'page (get-url "http://www.nodep.nl/downloads/newlisp/nlist.idx"))
(set 'files (find-all "{(.*lsp)}" page $1))
(dolist (file files)
(write-file file
(get-url (string "http://www.nodep.nl/downloads/newlisp/" file)))
(println "->" file))
(exit)
Lutz
I just found out that some hosting providers only count statistics on web-traffic
based on html ssh/sftp of ftp traffic. Using nlist keeps the statistics/web-traffic
pretty empty.. ..So if you pay per Kb at your Hosting provider this could be nice
workarround..I hope this can be confirmed by others.. ;-)
btw v0.14 just released...enjoy and please feedback if you have
troubles or an itch regarding nlist..
Norman.
aaaaaaaa I cant stop ;-)
version v0.18 released... enjoy!
v0.23 released.
2 new links for within nlist ->
(pjot) http://www.turtle.dds.nl/newlisp/
(cormullion) http://unbalanced-parentheses.nfshost.com/downloads/
version 0.24 released... Includes direct "script execution"
(load "//http://www.nodep.nl/downloads/newlisp/nlist.lsp")
(-; HAPPY 2008 ;-)
version v0.25
- window resize works 100% now
- SplitPane added
- small layout change
enjoy ! ;-)
tested on Linux and XP not on MacOs...
PS feature request for Lutz: On/off line wrapping in "text/plain" mode..
Pjot requested Syntax Highlighting in nlist..
Well Thanks pjot ... I had to rebuild the Color configuration..
(was about time someone requested it..;-)
Here its is -> version 0.28..
load "//http://www.nodep.nl/downloads/newlisp/nlist.lsp")
- Syntax Highlighting for .lsp files
- new color config menu
enjoy..
please download v0.29 there was a big bug in v0.28 ;-)
Version v0.36 released
- with personal execute menu (still in beta)
i.e.
you can now edit your programs using newlisp-edit by launching
newlisp-edit, doing a copy to clipboard on nlist and paste in newlisp-edit.
(because newlisp-edit does nto yet allow arguments)
or start any other handy i.e. newlisp tool
load "//http://www.nodep.nl/downloads/newlisp/nlist.lsp")
PS:
Just tested "Attic" feaute on windows:
Using this "Attic" feature does crash nlist on windows! (2 out of 3 times)
Linux is a little more stable (only 2 crashed out of 10 times but very
random) (This is due to multiple blocking text-area using gs:get-text
behavior, cant get it working properly)
Okido here is version v0.37
Working fine , no crashes on the "Attic" menu Maintance!
See source code for the solution.
(load "//http://www.nodep.nl/downloads/newlisp/nlist.lsp")
And dont forget... Enjoy!
v0.39
- Font selection and color changes.
(load "//http://www.nodep.nl/downloads/newlisp/nlist.lsp")
v0.43 released
- Added update checking for new nlist version
- ieks.. ;-) A fix for the Idx entry on win32 and OSX
(load "//http://www.nodep.nl/downloads/newlisp/nlist.lsp")
I have tried to run nlist 0.48 on my WinXP box. In general it works fine, but a list of imperfections follows (yes, I am a bit scrupulous):
* When nlist runs a first time, and ./nlist/ directory is not created yet, it doesn't display icons ('go' and 'hist'). When I was reading the help, I was confused a lot: about which icons this guy talks?
* Lisp sources pane is scrolled by PgUp/PgDn, but not by up/down arrows. This is very confusing.
* If the current file extension is neither .lsp nor .html, the decision of how to display the file content is based on last displayed .lsp or .html file. If I came to .txt file from .lsp, it is text, if I came there from .html, it is html.
* If a html file has been selected and displayed, the next selected file will be displayed without colors. Even if I have re-read the same html file, it is displayed without colors.
* html files generated by Vim are not displayed at all. Probably this is not nlist fault but fault of GS, but nevertheless it is not good.
* Design issue: the width of all five information fields at the bottom is the same and cannot be resized. But in practice the description text is long, but class, type and platform are short.
* Message '* created: ./nlist/' is displayed always and is not informative at all.
* It Would Be Nice to accept URL as a command line argument. Also it would be nice to accept "." (and "..") as URL and treat it as "./" (and "../").
By the way, I have created a nlist.idx file on my newLISP page. Point your nlist browser at:
//http://wagner.pp.ru/~slobin/newlisp/
Hello Cyril,
Thanks for the feedback, your are right on all issues.. the help needs corrections..The text-Fields are on my list too and this ..nlist created.. issue i found also on XP..They are all on my todo list ;-)
Thanks for creating the nlist.idx (ill put it in the Shelf of the next nlist release) .. Looks nice and I found some issues for nlist too ill need to look at ;-)
Norman.
I have done a little hacking with nlist, trying to fix some most annoying issues (mad adventure while not understanding nlist internal logic and not even knowing GS API). My modifications:
* Existence of ./nlist/ is tested with directory? instead of file?
* First directory in history is loaded from root, not hardcoded
* text/html vs text/plain logic is fixed by brute force
* Last but not least, interface is redesigned. Decent web browsers users habitually expect green left and right arrows at the west of address bar to be history navigation, and a pair of twisted arrows at the east of address bar to be a reload button. Default nlist design does it upside-down and backwards, so I have fixed this. But don't fear](set 'cs-mode true)[/color] to nlist.cfg (it cannot be set from normal interface). I hope this will be useful...
Oh, I forgot: //http://wagner.pp.ru/~slobin/newlisp/ using nlist
Hello Cyril,
Good to see you hacked your way into nlist..
I was already working on a "plugin" option for nlist.
(thats why the Tabs are now there).. Im on my way
of releasing v0.50 but im a little bussy..meanwhile enjoy the tool ;-)
Norman.
Hi, Norman!
Just have browsing using your nlist. Nice work!
Is there a nlist.idx autogenerator (from the contents of lsp-files)?
Some ideas (I know all we have a lot of them ;-)
- Having a list of all nlist-supporting sites we can have a search engine.
- Probably, you can extend the idea directly to the scripting area:
Recently I have playing with such code:
; usage for directly load:
; (module:load-store "http://en.feautec.pp.ru/store/libs/funlib.lsp"
; "http://en.feautec.pp.ru/store/libs/xmlstream.lsp"
; .....)
;
; usage for once time loading - one file may be requested from many modules
: and it will be loaded only once:
; (module:depend "http://en.feautec.pp.ru/store/libs/funlib.lsp")
;
(context 'module)
; configuration of cache path relative to HOME
(set 'libpath "newlisp/cache")
; prepare the local cache
(define (prepare-space)
(set 'libdir (env "HOME"))
(dolist (l (parse libpath "/"))
(write-buffer libdir (string "/" l))
(unless (directory? libdir)
(begin
(print "creating local folder: " libdir "...")
(if (make-dir libdir) (println "done.")
(begin
(println "error.")
(throw-error (string "cant't create: " libdir))))))))
; if module doesn't exists in the local cache, then download it
; finally, load module from the local cache
(define (load-store)
(prepare-space)
(doargs (l)
(let (f (string libdir "/" (last (parse l "/"))))
(unless (file? f)
(begin
(println "downloading " l " into " libdir)
(if (starts-with "ERR: " (set 's (get-url l)))
(throw-error s)
(write-file f s))))
(load f))))
(set 'loaded '())
; load module once through (load-store)
; remember module in 'loaded runtime list
(define (depend path)
(unless (find path loaded)
(begin
(load-store path)
(push path loaded))))
(context 'MAIN)
This is the working prototype. If Lutz will accept to include similar into newlisp distro, then all we got simple module deploing scheme.
I also thinking about gpg signatures here, versioning and, possible, referencing a libs by a name from idx files.
If there will be an interest, the comments are welcome.
I like the idea's indeed... Though im realy realy bussy currently
and I cant get my fingers to hit the newlisp prompt... But feel free
to update nlist.lsp if you wish ofcourse ;-) If you want me to add
the features you have to wait a little..