Using the raw `org-toggle-latex-fragment` function creates some havoc
with the overlays, resulting in nonfunctional notebooks. Add some
custom logic to improve behaviour.
With respect to ein-company,
Py2 kernels prepend prefixes, e.g., np.array.
Py3 kernels do not, e.g., array.
The :cursor_start and :cursor_end fields tell us whether we need to
prepend the prefix ourselves.
Fixes#436
Say `Contents API 5.7.4` instead of `Notebook v5` in notebooklist.
EIN doesn't care about the python version (2.7, 3.5) or the
ipython version (5.8.0, 6.2.1). The "jupyter notebook contents api"
version (currently at 5.7.4) is the thing that matters.
Do not assume python... leverage ESS to improve R interaction.
Fix both undo and fontify in the presence of toggling cells (`C-c
C-t`)
Fix and test switching kernels
Be more informative to the user when we cannot find an executing cell in either
`ein:worksheet-jump-to-first-executing-cell' or
`ein:worksheet-jump-to-next-executing-cell'.
test-compile attempts to egrep "bad" warnings with hardcoded strings.
This is better than nothing, but misses a lot. We are close
to elimiinating this hack in favor of `(setq
byte-compile-error-on-warn t)` to enforce no warnings whatsoever. Until
then, keep adding egrep strings to `test-compile`.
Without `(package-refresh-contents)`, the `make install` won't be able
to download and install dependencies for new users. Remedy this.
Retire files that will never be used.
```
M-x customize-group RET ein-completion
```
Set `Ein:Completion Backend` to `ein:use-none-backend`, Set `State` to
`Save for Future Sessions`.
Also use `featurep` and `with-eval-after-load` to clean up the
subpackage requiring gymnastics.
Previously `notebook-mode` was an ordinary function that called
`notebook-minor-mode` to install `ein:notebook-mode-map`. Make
`ein:notebook-mode` a proper minor mode via `define-minor-mode`. This
has a few visible benefits primarily that `describe-mode` or `F1 m` will now
show all the keybindings, and mode-line will reflect.
As a consequence `ein:notebook-mode-hook` is no longer an explicit
`defcustom` (proper minor modes get it for free). This had been a
dangerous situation as the default hook containing critical functions could be overridden.