Commit graph

213 commits

Author SHA1 Message Date
Takafumi Arakaki
7b1f7ac7d1 Add C-c C-w as an alias of C-c M-w 2012-06-18 17:01:52 +02:00
Takafumi Arakaki
4849b21dc3 Support print page in ein:notebook-open-in-browser 2012-06-17 14:49:54 +02:00
Takafumi Arakaki
efcd1e8f63 Improve ein:notebook-execute-current-cell-and-goto-next 2012-06-17 13:41:23 +02:00
Takafumi Arakaki
54a3d3687b Add messaging in ein:notebook-copy-cell-command 2012-06-17 12:52:09 +02:00
Takafumi Arakaki
7d81026f2c Fix ein:notebook-merge-cell-command
Let binding of buffer-undo-list of shadowed the global variable.
2012-06-17 09:50:45 +02:00
Takafumi Arakaki
4a7c81869f Merge branch 'configurable-undo' 2012-06-17 03:34:55 +02:00
Takafumi Arakaki
4b3cf371c0 Add alternative keybinds for source code jumping 2012-06-17 02:36:00 +02:00
Takafumi Arakaki
6b5b54c965 Trigger ein:notebook-empty-undo-maybe via event
Previous tests were failed because undo was not reset after the
execution callbacks modified the buffer.  This is fixed by calling
ein:notebook-empty-undo-maybe via event in all the callbacks.
2012-06-16 23:42:58 +02:00
Takafumi Arakaki
0c13bc4234 Modifying undo in PP is wrong
Previous change was not complete since the test does NOT fail.
The test must fail because the test was for `full' undo but
actually it was tested against normal undo.

It turned out let binding of buffer-undo-list in ein-cell.el
was the right way to do it, since EWOC does some buffer
modification outside of the pretty printer.  Therefore, setting
inhibit-read-only and buffer-undo-list in the pretty printer
makes no sense.  Thus, they are removed from ein:notebook-pp.

This means that wrapping EWOC functions with let binding of
buffer-undo-list is essential.  Meaning that what I wrote in
the FIXME ein:notebook-pp was wrong.  Therefore,
ein:notebook-empty-undo-maybe cannot be called in ein:notebook-pp
and ein:notebook-empty-undo-maybe must be called in every single
functions that modifies buffer via EWOC.

Tests for three cases of undo configuration are added.
These test still fail:
ein:notebook-undo-after-execution-1-cell/yes
ein:notebook-undo-after-execution-2-cells/yes
2012-06-16 23:42:23 +02:00
Takafumi Arakaki
363b63de04 Make undo in notebook configurable
Note that ein:notebook-empty-undo-maybe is called in:
* ein:notebook-pp
* ein:notebook-delete-cell
2012-06-16 21:48:21 +02:00
Takafumi Arakaki
311151fdc8 Inhibit undo in pretty printer 2012-06-16 21:05:22 +02:00
Takafumi Arakaki
49fa8629b9 Add alternative keybinds for goto/move cell commands
As it seems that some smartrep keybinds does not work properly in
MuMaMo-enabled buffer, this change provides some shortcuts for these
keybinds.

I sent a pull request to smartrep.el regarding this issue:
myuhe/smartrep.el#7
2012-06-14 16:22:13 +02:00
Takafumi Arakaki
a105133bba Kaymap is defined in top-level let clause
There should be no functional change by this change.
This makes it easier to change the keymap while running EIN.
I can just evaluate the let clause.  In the previous version,
I couldn't do that because rebinding the keymap does not alter the
keymap used in the running mode.
2012-06-14 12:42:57 +02:00
Takafumi Arakaki
df9299f02e Add ein:notebook-kill-kernel-then-close-command 2012-06-14 12:24:40 +02:00
Takafumi Arakaki
05aeab19ad Deactivate region after killing/copying cells 2012-06-13 12:58:07 +02:00
Takafumi Arakaki
847c71072f Fix ein:notebook-copy-cell-command
Many cells were put in the kill-ring one by one, instead of a list of cells.
This is wrong.
2012-06-13 04:47:57 +02:00
Takafumi Arakaki
926195da68 Add ein:notebook-insert-clone-below 2012-06-13 00:54:19 +02:00
Takafumi Arakaki
7dc75197af Support killing cells in region 2012-06-13 00:25:55 +02:00
Takafumi Arakaki
0fd56526d1 Document the previous improvement 2012-06-12 23:30:13 +02:00
Takafumi Arakaki
10edb8d239 Tweak documents 2012-06-11 14:24:20 +02:00
Takafumi Arakaki
6cd6c3b2c7 Document more 2012-06-11 06:15:34 +02:00
Takafumi Arakaki
724099ac49 RST-friendly fix 2012-06-11 04:46:11 +02:00
Takafumi Arakaki
37da52a213 Tweak docstrings to make them RST-friendly 2012-06-11 04:21:30 +02:00
Takafumi Arakaki
0437ca16e8 Change the spec of ein:notebook-discard-output-on-save 2012-06-10 04:04:31 +02:00
Takafumi Arakaki
cf27e430f8 Add ein:pytools-jump-back-command (M-,) 2012-06-10 02:14:34 +02:00
Takafumi Arakaki
7ebaac3173 Remove unnecessary progn 2012-06-09 04:40:23 +02:00
Takafumi Arakaki
1f55cfe918 Hack python.el to improve ein:notebook-console-open 2012-06-09 04:38:35 +02:00
Takafumi Arakaki
5a73b7b593 Make ipython executable for console configurable 2012-06-09 03:36:08 +02:00
Takafumi Arakaki
7bbdc03c38 Add ein:notebook-force-kill-buffers 2012-06-08 13:17:41 +02:00
Takafumi Arakaki
1df0da17f0 Fix ein:notebook-request-open-callback-with-callback 2012-06-08 13:15:55 +02:00
Takafumi Arakaki
35dafaed79 Add callback to the function ein:notebook-open 2012-06-08 11:42:42 +02:00
Takafumi Arakaki
f938e71943 Better messaging in ein:notebook-view-traceback 2012-06-07 23:46:42 +02:00
Takafumi Arakaki
cd8d8b9f3e C-c C-x calls ein:notebook-view-traceback 2012-06-07 23:42:18 +02:00
Takafumi Arakaki
907e8cf0ce Add ein:notebook-view-traceback command 2012-06-07 16:08:00 +02:00
Takafumi Arakaki
41de95c9a6 Add traceback viewer module 2012-06-07 15:56:38 +02:00
Takafumi Arakaki
7b93f7c647 Improve ein:notebook-ask-before-kill-emacs
It was needed to answer `y' when killing Emacs and there exists
unsaved buffers.  This change eliminate the need for that by killing
buffers forcefully.
2012-06-06 22:36:47 +02:00
Takafumi Arakaki
422adbdd2b Change variable type of event: use symbol
As there is no "pattern matching" for event handling anymore, using
cons for event-type makes no sense.
2012-06-06 21:16:48 +02:00
Takafumi Arakaki
886ca90fe3 Fix cell yank
This change fix this error:
  Got error from the on-message function: Unbound slot: "#<class ein:codecell>", "#<ein:codecell Cell>", :events, oref

This error was issued when executing yanked cell because the :events
slot of the yanked cell was empty.
2012-06-05 21:52:51 +02:00
Takafumi Arakaki
f1c25510b7 Set events properly for the already existing cells 2012-06-04 19:46:19 +02:00
Takafumi Arakaki
6b3f7d1f8c Code cell sets dirty flag via event 2012-06-04 16:33:19 +02:00
Takafumi Arakaki
93199a392b Remove cell from kernel-execute callbacks 2012-06-04 16:18:17 +02:00
Takafumi Arakaki
853a9ec50e Add ein:pytools-jump-to-source-command (M-.)
As this command requires to invoke multi-line python code, ein.py is
added to store python code needed for EIN.  The sys.path is added
automatically when the kernel is started so that any function can be
called as ``__import__("ein").FUNCTION()``.  This way, namespace is
not contaminated at all.
2012-06-03 17:30:16 +02:00
Takafumi Arakaki
5766a68c29 Add ein:$kernel-after-execute-hook
... and hook ein:kernelinfo-update-ccwd to update default-directory in
very eager manner.
2012-06-03 00:22:16 +02:00
Takafumi Arakaki
a7ed044dc4 Merge branch 'kernelinfo' into master
Conflicts:
	ein-websocket.el
2012-06-02 22:12:50 +02:00
Takafumi Arakaki
be0c3665b9 Fix ein:notebook-toggle-cell-type: set kernel
Set kernel slot if the converted cell is a code cell.
2012-06-02 21:47:03 +02:00
Takafumi Arakaki
351ff8b26b Add ein:notebook-eval-string 2012-06-02 20:40:22 +02:00
Takafumi Arakaki
d922db4b38 Add ein:notebook-change-cell-type command 2012-06-02 18:46:02 +02:00
Takafumi Arakaki
690c752a6e Adapt ein:notebook-toggle-cell-type to v3 notebook 2012-06-02 18:44:29 +02:00
Takafumi Arakaki
043809cc76 Add after-start-hook to kernel and use it for info 2012-05-31 23:01:12 +02:00
Takafumi Arakaki
0715c33e46 Add ein:kernelinfo-init 2012-05-31 18:12:44 +02:00