-
-
Notifications
You must be signed in to change notification settings - Fork 4.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Htmlnotebook #705
Merged
Merged
Htmlnotebook #705
Changes from 179 commits
Commits
Show all changes
232 commits
Select commit
Hold shift + click to select a range
1bc3aac
Fixing code to assume msg_type and msg_id are top-level.
ellisonbg efa1f33
Renaming unpack_message to unserialize and updating docstrings.
ellisonbg d86d45f
Fixing docstrings and a few more places for msg_id/msg_type.
ellisonbg a09b42a
Adding tests for zmq.session.
ellisonbg b95a185
More tests for Session.send/recv.
ellisonbg fa7cc46
Fixing messaging docs to reflect msg_type in header.
ellisonbg e5d9e2c
Adding temp refs to msg_type to prevent nested dict gets.
ellisonbg e4a965d
Fixing bug in ipkernel.py related to msg_type refactoring.
ellisonbg f0d2271
Fixing another bug in msg_type refactoring.
ellisonbg 0494d13
Adding html notebook subpackage.
ellisonbg adcfbf8
Initial draft of HTML5/JS/CSS3 notebook.
ellisonbg 9e95afe
Adding shift-enter support.
ellisonbg 04da04e
Fixing selection and focus logic.
ellisonbg 927f44b
Added placeholder text for TextCell.
ellisonbg d7f2add
Adding preventDefault to shift-up/down events.
ellisonbg 398f176
Work on the server side of the html notebook.
ellisonbg b7248bf
Basic server for htmlnotebook working.
ellisonbg 0bfc754
Initial reply handling implemented along with css fixes.
ellisonbg 5a8489e
Make the main notebook div auto scroll.
ellisonbg 5dc428b
Server side of file based notebook store implemented.
ellisonbg a2dd039
Initial template for notebook browser.
ellisonbg 74b8ea8
Added message to help users open notebook.
ellisonbg 1497e96
Updating jquery UI and themes.
ellisonbg 339135b
Fixing main toolbar area and cleaning up jquery themes.
ellisonbg 2ad3ee4
Different clients now share a single zmq session.
ellisonbg df52f21
Minor changes to notebook css.
ellisonbg 7731a50
Interrupt and restart work for kernels.
ellisonbg 9fe1c2c
Cleaned up kernel action interface.
ellisonbg 1f5c4be
Status monitoring added to notebook.
ellisonbg 2050714
Fixes to notebook scrolling and layout.
ellisonbg 169110d
Tweaking and cleanup of notebook.css.
ellisonbg 3b1715e
Further font adjustments to the notebook.
ellisonbg 5d9b6e7
Work on the notebook's code cell.
ellisonbg 2607443
Basic notebook saving and loading.
ellisonbg 68db752
Initial latex printing for sympy and fixes to autogrow.
ellisonbg 9e126bc
Refactoring of the output and display system.
ellisonbg 6c644c6
Fixes to the latex rendering by adjusting the MathJax config.
ellisonbg bffb119
Basic exception display in the notebook is working.
ellisonbg 9447eb0
Added basic styling to text cells.
ellisonbg a563b92
Cells call grow by hand when they reload from JSON.
ellisonbg e6b3e5b
include html frontend in packages/package_data
minrk e341cf4
Shift-Enter only selects the next cell if it is a CodeCell.
ellisonbg e513eb9
Fine tuning of notebook styles.
ellisonbg 5e55e20
Adding logic to look for CDN version of MathJax and fallback to local.
ellisonbg ff6dc82
Added note about tornado version to main script.
ellisonbg 5d05db0
Minor fix to sympy latex printing.
ellisonbg 7877585
Adding new notebook examples.
ellisonbg 1ff5a82
Minor changes to text_analysis notebook example.
ellisonbg 264b061
Updating notebook examples, and notebook js/html.
ellisonbg e3dc236
General CSS cleanup.
ellisonbg f5911d3
CodeMirror code editing added.
ellisonbg e270403
Better handling of up/down arrows for CodeCells.
ellisonbg c14e651
Much improved nagivation for the notebook cells.
ellisonbg c9ad4e8
Updating notebook examples.
ellisonbg b2aa21f
Updating sympy notebook examples.
ellisonbg 0f16a10
Updating examples notebooks.
ellisonbg b55bc76
Adding new density of states notebook example.
ellisonbg 98f7851
Creating files to new notebook app.
ellisonbg a94f1fa
Fixing import statments in handlers and notebookapp.
ellisonbg 02f9051
Initial reorg of files complete.
ellisonbg 8deb465
Renaming NotebookApplication to NotebookWebApplication.
ellisonbg 3f3cd92
Refactored htmlnotebook session and kernel manager.
ellisonbg 9ce4875
Refactoring the notebook app to support the new config system.
ellisonbg e051436
Notebook app debugging.
ellisonbg f0ab259
Work to adapt routers to new Session message protocol.
ellisonbg fd1d84c
More work on updating the notebook zmq forwarding.
ellisonbg 97f1ce7
Updating the notebook to work with the latex master.
ellisonbg 82dfeed
Splitting notebook.js into muliple files for development ease.
ellisonbg 90a9bbc
Updating main notebook template to use split scripts.
ellisonbg 27afdf3
Change unpack_message to unserialize in routers.py.
ellisonbg c5b0c06
Implemented module and namespace pattern in js notebook.
ellisonbg 73126bf
Using $.proxy to clean up callbacks.
ellisonbg 7fc2c96
Actually kill old kernels upon restart.
ellisonbg ad2890a
Starting to refactor the notebook layout
ellisonbg af64139
Initial payload handling.
ellisonbg aa37ef2
Refactoring pager into its own class.
ellisonbg 8766e94
Updating jQuery to 1.6.2 and jQuery UI to 1.8.14.
ellisonbg ed4b3fd
Adding note about vbox related scroll bugs.
ellisonbg a0257f5
More work updating the notebook to use dynamics resizing.
ellisonbg 9262f15
Pager is working again.
ellisonbg e37fefa
More accuract height calculations for the pager collapse/expand.
ellisonbg 450ed2f
Left panel is now working.
ellisonbg 1579023
Improving the scrolling model.
ellisonbg c6ab30b
Initial draft of panel section and the cell section working.
ellisonbg a7ef503
Minor fixes to fonts and spacing.
ellisonbg 71e8168
Controls in cell section have a solid layout.
ellisonbg 0376908
Help section implemented and working.
ellisonbg e4683b7
Minors fixes and initial work on save widget.
ellisonbg 67aa594
Work on save widget, kernel status widget and notebook section.
ellisonbg f1b3d4a
Fixing execution related things.
ellisonbg 0c51946
Updating font-sizing to use the YUI protocol.
ellisonbg d8294f0
Prevent shift-enter from propagating and performing default.
ellisonbg 00dc27f
Colors now working in tracebacks and the pager.
ellisonbg 5829983
Added complete method of JS kernel object.
ellisonbg dad53c3
Autocompletion working with CTRL-SPACE.
ellisonbg 6a242ba
CTRL-ENTER now runs a cell in "terminal mode"
ellisonbg b1f1dde
Removing default input prompt number.
ellisonbg 68687d2
Adding nbformat subpackage.
ellisonbg 4b71ab3
Notebook now uses tab for autocompletion.
ellisonbg c88117a
Fixes to terminal mode execution (ctrl-enter).
ellisonbg fbddd43
Hacks to prevent FLOUC (flash of unformatted content).
ellisonbg 27379eb
Fixing minor resize bug on the Mac.
ellisonbg 8012152
Adding Cell.grow back to fix bug.
ellisonbg f3a5072
Initial draft of more formal notebook format.
ellisonbg 4b0e672
Updates to basic notebook format.
ellisonbg 1cc83a7
support html representations in the notebook frontend
minrk 0251893
Full versioning added to nbformat.
ellisonbg a65c2d3
Merge branch 'repr_html' of https://github.com/minrk/ipython into min…
ellisonbg c292a9c
Added lib/display.py for extra display related things.
ellisonbg 4c2aebb
update add_packages for reorganized nbformat
minrk 540b3f1
Fixing setupbase.py for nbformat package.
ellisonbg 65666c0
Massive work on the notebook document format.
ellisonbg d77eb2c
Merge branch 'htmlnotebook' of github.com:ipython/ipython into htmlno…
ellisonbg 1699c90
Implemented basic notebook browser and fixed numerous bugs.
ellisonbg b0243db
Implemented delete functionality in nb browser.
ellisonbg 53c7ec7
File upload/import working from notebook browser.
ellisonbg 8f4eb62
Improvements to file uploaded, mime types and .py reader.
ellisonbg 03eb23c
Adding kernel/notebook associations.
ellisonbg 708c73e
Fixed subtle bug in kernel restarting.
ellisonbg 7640e54
Using beforeunload to save at exit and kill the kernel.
ellisonbg 2a85499
Added saving and loading of output of all types.
ellisonbg b0e516c
Starting to rename text cell to html cell.
ellisonbg 653f157
New HTMl cell working with CodeMirror editing.
ellisonbg 981bc0c
Updating CodeMirror to v 2.12.
ellisonbg 3896ff1
Fixing HTML cell syntax highlighting.
ellisonbg f5f6198
Starting work on a Markdown cell.
ellisonbg fbce942
Refactoring of text/markdown/rst/html cells.
ellisonbg 978f742
Reordering Export button and renaming Export->Export As
ellisonbg a85c3e7
Markdown cells are now saved and restored in notebooks.
ellisonbg 4fb6f61
Implemented smart autoindenting.
ellisonbg 8bee5f8
Fixed text cell rendering bug.
ellisonbg db81ec2
Updates to the css style of rendered html text cells.
ellisonbg 89e253a
Minor fixes to config system for notebook.
ellisonbg ddb901b
Adding minor help strings for keyboard shortcuts.
ellisonbg fd892df
Merge branch 'master' into htmlnotebook
ellisonbg 53df0ac
Updating notebook configuration.
ellisonbg 46fc646
Created new notebook magic that can export/convert notebooks.
ellisonbg 1bcb722
Adding initial documentation on the notebook.
ellisonbg b633a93
Reducing/adjusting the padding of cells to make the notebook more
ellisonbg b84d895
Updates to the display system.
ellisonbg 08ef328
Finishing display system work.
ellisonbg eaf692f
Autoindentation fixed and enabled by default.
ellisonbg 1de26e1
%loadpy works in the notebook and bug with inline plotting fixed.
ellisonbg b85982d
Fixing padding of output cells.
ellisonbg 1d01468
Added note about imports in IPython.__init__.
ellisonbg 1c4a699
Added collapsed field to the code cell.
ellisonbg 31ac0f3
HTML/Markdown cells no longer saved their rendered output.
ellisonbg 40d4a55
Adding time delay to show the notebook saving more clearly.
ellisonbg 7debcc4
New .py notebook format implemented.
ellisonbg 3669962
Adding tracebacks, evalue and etype to the nbformat and notebook.
ellisonbg df0ed78
HTML output cells are now styled with the rendered_html class.
ellisonbg 453bf75
Disabling auto-save at exit.
ellisonbg 31e9da5
Clear all output is implemented.
ellisonbg 5bad195
Major refactor of kernel connection management in the notebook.
ellisonbg cc6010e
Merge branch 'master' into htmlnotebook
ellisonbg f5c5121
Fixing bug that caused plots to not be saved.
ellisonbg d1499b6
Autotry additional ports if 8888 if already in use.
ellisonbg 1786348
Browser window title follows the name of the notebook.
ellisonbg fb55a88
Added a notebook dirty flag that is used when exiting page.
ellisonbg a86896d
Notebook id removed from the notebook format.
ellisonbg bee9c06
Updating notebook examples to current format.
ellisonbg feaba3c
Fixing latex rendering bug.
ellisonbg 49fa32f
A single tab-completion match is now automatically selected.
ellisonbg 2d7e32b
Fixing tab completion edge cases.
ellisonbg 95590c1
Adding additional whitespace at botton of notebook for TAB comp.
ellisonbg 54eeb77
Code cell gets focused after "To Code" is triggered.
ellisonbg 09a90c4
Export works with filenames having spaces.
ellisonbg 50206b2
I like ClearAll better than Clr All.
ellisonbg baf6e69
Pager is not activated if the pager text is empty.
ellisonbg b796f24
Date is properly removed from JSON reply before WebSocket forward.
ellisonbg a1dcaf6
Kernel/notebook mapping is removed when a kernel dies.
ellisonbg 856b17f
WebSocket url is now passed to browser when a kernel is started.
ellisonbg 56475d6
Removing old CodeMirror version.
ellisonbg bedc0f7
Fixing two minor things for review.
ellisonbg f6078d0
Stripping notebook server flags from kernel's argv.
ellisonbg 3ec3b24
Reworking parallel examples as notebooks.
ellisonbg a968795
Renaming and moving around parallel examples.
ellisonbg 2eae784
More file renaming in parallel examples.
ellisonbg 18ad520
Updating RMT parallel example.
ellisonbg 567f1c3
Implement static publishing of HTML notebook.
stefanv 1e86624
htmlnotebook: Suppress cell boundary when publishing.
stefanv 2c580e7
Don't scroll to bottom when last cell is selected.
ellisonbg a661b7c
More review changes.
ellisonbg 2e45b3a
Finish removing ipython-notebook.
ellisonbg bf61e42
Adding code to handle MozWebSocket for FF 6.
ellisonbg 719e65a
Better WebSocket detection added.
ellisonbg 486e84f
Better alert message if no WebSockets are detected.
ellisonbg eb895bf
Removed HTMLCell from UI and added better placeholder logic.
ellisonbg 968e3fe
Refactor static printing.
stefanv 7421012
Modifying CodeMirror focus hack to work better.
ellisonbg 7777bdd
Fixing parallel options pricing example.
ellisonbg d5b4ff0
Merge branch 'htmlnotebook_publish' of https://github.com/stefanv/ipy…
ellisonbg f4c8372
Changing notebook uuid algorithm to preserver across sessions.
ellisonbg a2b246f
Allow period characters in notebook names.
stefanv 0e2ee7f
Move glob to global level import.
stefanv 898a609
Adding page break logic to the print css.
ellisonbg d33fac5
Merge branch 'stefanv-htmlnotebook_publish' into htmlnotebook
ellisonbg a82fa5d
Merge branch 'htmlnotebook_list_notebooks' of https://github.com/stef…
ellisonbg cb5364f
Double clicking on the end space will insert a new cell.
ellisonbg bdb89a7
Better tabindex support.
ellisonbg 507621d
Save button becomes Rename when the notebook name changes.
ellisonbg 1e2b197
Help links work on Firefox.
ellisonbg 6d3001f
Fixing logic for rename behavior.
ellisonbg cc19c96
Making JSON the default .ipynb format.
ellisonbg 1cfbe5d
Converting notebooks to JSON format.
ellisonbg 33e3025
Notebook upload handles filenames with periods.
ellisonbg d919e2e
Implemented metadata for notebook format.
ellisonbg 68889f9
Changing CodeMirror-scroll to overflow-y: hidden.
ellisonbg 8013d52
Cell collapse/expand is not called "Toggle".
ellisonbg b1af148
Reorganize the L panel buttons.
ellisonbg bc7865e
Fixing bug in new metadata implementation.
ellisonbg 9748902
All output types are not indented.
ellisonbg 54111d3
Adjusting width of prompt area.
ellisonbg b5134ae
Right-align prompts to remove spurious whitespace.
fperez d11e8eb
Adding keyboard shortcuts.
ellisonbg 7e2eee1
Adding keyboard shortcut help dialog.
ellisonbg 4a3930a
Fixing console.log messages related to keyboard shortcuts.
ellisonbg 14ae374
Changing prev/next keyboard shortcut to use p/n.
ellisonbg 5dc0439
Fixing XML notebook reader.
ellisonbg c5f13bc
Align colons in help dialog.
stefanv 4408742
Merge pull request #713 from stefanv/htmlnotebook_help_dialog
ellisonbg ff2b547
Add utility function for installing mathjax for offline use
minrk 89aca0b
update notebook template to prefer offline mathjax
minrk d6a97e9
Add code highlighting to markdown cells.
stefanv e591917
Add prettify license.
stefanv 88fabb9
Try to match CodeMirror theme.
stefanv 9460984
Merge pull request #717 from stefanv/htmlnotebook_highlight_markdown
fperez 9600e07
Fix above/below keybinding mismatch and rename api to use above/below
fperez de11baf
underline keyboard shortcut letter on buttons
minrk 2213211
Merge branch 'mathjax' of https://github.com/minrk/ipython into minrk…
ellisonbg 0bfb0fb
Adding information about MathJax to notebook install docs.
ellisonbg 876e689
Temporary fix for placeholder related CM bug.
ellisonbg File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I suggest that instead, we have a top-level 'display' module that simply imports the things we want to expose (possibly including core and lib).
In general, I think we should follow a pattern where things meant for public use should be at most one module deep:
even if these top-level modules are mostly just pass-throughs that load from deeper parts of the hierarchy. But these will be the ones we consider public, and things deeper in are more subject to change. That way we only have to explain to people in normal docs and instructions these top-level namespaces, leaving the rest as 'an implementation detail'.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Or do you think all of the user facing stuff (not just the display stuff) should go into a single module? Right now there is IPython.embed and we will definitely have more and more user facing code.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How about we just remove these for now from the merge, since the organization of the public api is really a separate issue from the notebook code, and we make sure that in the next month or two when the dust on the notebook settles, we set up a time to discuss the public api with a clear head. I don't think there's major hurry in getting that right, so as long as we do it before too long (say a few months, in the 0.12-0.13 timeframe), we'll be OK. And we can calmly review all the pieces we want exposed, and think about the cleanest way to do so...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done.