Hi, just wanted to give a brief status update. I improved the pyjamas version of the notebook here:
http://gamma.sympy.org/nb/ it now shows the evaluate button, adding new cells work, joining cells work. Click on the "About" to get the sourcecode (BSD licensed). Compared to the current Sage notebook at sagenb.org: sage notebook * lot's of handwritten javascript * enter in the cell behaves funny, it first moves out of sight almost, only then the textarea updates (in chromium, the top line actually goes out of the window temporarily too...) * backspace doesn't join the cells, unless the cell is empty * backspace doesn't delete 4 spaces (if only spaces are on the left of the current line) * shift+enter doesn't move to the next cell in my Chromium browser sympy gamma notebook * only pure Python (here is the code that runs in the browser: http://github.com/certik/sympy_gamma/blob/master/templates/nb.py * it doesn't highlights the current cell by blue color (I'll implement this too, didn't get to it yet, but Chromium highlights the cell by itself, so it looks good there even now) * TAB completion isn't implemented yet * TAB doesn't indent the selection (it only inserts 4 spaces so far) * only tested in firefox and chromium in Linux. In opera (on linux), shift+enter and backspace (when deleting cells) behaves funny, for some reason, preventDefault (event) doesn't work in Opera. I didn't test on IE8 yet, I hope it works, I'll report back once I test it. Some observations: * it was easy for me to continue working on this after couple months of not seeing the code at all. It's pure Python, so it's very easy and readable for me. * it's very pleasant to work with pyjamas, I just learn from the source code (UI library in pyjamas), if something doesn't work, I just put there print statements into the pyjamas source code, no need to recompile anything, I just compile my project and everything shows immediately. * I'll implement sessions and logging in now (well, when I find a bit of time for this again), allow to publish worksheets etc. Only then we can really start comparing it with the Sage notebook I will try to pursue this further, I feel that having this in pure Python makes it very hackable and more people can join in and fix bugs in the code then. It's sort of reimplementation from scratch, but the javascript in the Sage notebook should imho be rewritten anyway. My code pyjamas could eventually be ported to the Sage notebook too, it really is just the reimplementation of the code that runs in the browser itself. I am still learning pyjamas, but it seems to me now, that I will be able to have pyjamas widgets, implementing the notebook cells, and it doesn't matter how you use it (e.g. if you use it from the sage notebook, or my own notebook implementation in django, or codenode). So I think it's a very cool and reusable technology. If you want to try it out, use my "ondrej" branch of pyjamas from here: http://github.com/certik/pyjamas it contains some patches that are not yet incorporated upstream (I sent them to pyjamas dev though). Ondrej -- To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org