Commit Graph

87 Commits

Author SHA1 Message Date
Mitchell Plamann 7bd35e08ae Remove now-broken elisp that depends on utop-ocaml-preprocessor 2019-07-15 14:36:03 -04:00
Anton Kochkov ca00ce6146 Remove camlp4 remnants 2019-07-09 11:55:13 -04:00
Hongchang Wu a589d5caee Fix typo: mode -> modes 2019-06-15 17:32:37 +08:00
Jeremie Dimino 7e8567682d Allow to statically link utop
Fixes #285

Signed-off-by: Jeremie Dimino <jeremie@dimino.org>
2019-06-06 13:32:57 +01:00
Dmitry Bely 5637c67a7c Correct quoting for Windows command shell (#272) 2019-04-23 07:48:21 +01:00
Anil Madhavapeddy 641af3fd63 port build from jbuilder to dune 2019-01-15 09:50:54 +00:00
Mario Rodas ea38850e60 Company backend only complete on utop buffers 2018-10-10 17:55:03 -04:00
Wilfred Hughes 2d358b2d9c Fix utop-eval-phrase on recent tuareg-mode
tuareg-next-phrase was moved to tuareg_indent.el in
ocaml/tuareg@b40e733c1 and removed entirely in
ocaml/tuareg@b2ad75f3d5 (September 2017).

As a result, utop-eval-phrase crashes due to the missing function.

Instead, write a small function to move to the next phrase, similar to
the movement logic in tuareg-eval-phrase.
2018-07-06 21:02:29 +01:00
Rudi Grinberg 90bd622f85 Don't discard line if the protocol-version isn't matched 2018-02-28 16:59:04 +07:00
Rudi Grinberg e65468882b Add version detection based on utop printing protocol-version 2018-02-28 16:28:35 +07:00
Rudi Grinberg 27ae188261 Replace while loops with dolist 2018-02-27 01:38:12 +07:00
Rudi Grinberg 49de3344f7 Make company completion conditional 2018-02-27 00:50:42 +07:00
Rudi Grinberg 1f295f49da Add support for detecting utop version 2018-02-27 00:42:01 +07:00
Rudi Grinberg 1f3a5d66ef Company backend for utop completion 2018-02-26 22:30:00 +07:00
Rudi Grinberg fe8b2b8aae Prefix unused argument with _ 2018-02-26 22:23:00 +07:00
Rudi Grinberg e1e589b5ea fix cond default clause 2018-02-26 22:23:00 +07:00
Rudi Grinberg f54d1291b1 enable lexical scoping 2018-02-26 22:23:00 +07:00
Rudi Grinberg 4aafcfbbe7 remove tabuluated-list compatibility
the package already requires emacs 24, there's no need for this shim.
2018-02-26 22:23:00 +07:00
Rudi Grinberg afca031099 refactor utop-set-state, utop-cannot-edit, utop-process-line
Make them all use pcase and and gets rid of some duplicate code in the process
2018-02-26 22:23:00 +07:00
Rudi Grinberg e838896e53 Use pcase in utop-compat-resolve
Simpler than cond (and pcase is available since emacs 24)
2018-02-26 22:23:00 +07:00
Rudi Grinberg 14c2282449 fix indentation
no semantic changes here
2018-02-26 22:23:00 +07:00
Rudi Grinberg b46cf690a7 fix docstring of utop-compat-resolve
It forgot to mention the recently supported reason mode
2018-02-26 22:23:00 +07:00
Rudi Grinberg 39d18c9541 Enable -safe-string everywhere
Useful for testing on OCaml < 4.06.0
2017-11-06 18:33:48 +08:00
Andrea Richiardi ea49d8e947 Add support for Reason
Include the necessary hooks for phrase detection in Reason.
2017-05-09 07:43:46 +01:00
Andrea Richiardi d9f198899b Refactor hooks for better handling of phrase eval, closes #201.
The patch tries to improve on the current way of evaluating a phrase and
skipping to the next. It removes both `utop-skip-to-end-of-phrase` and
`utop-skip-blank-and-comments`, but adds `utop-next-phrase-beginning`.
We assume `utop-discover-phrase` is always returning the end position as
at end of a `;;`. Thereafter we use `utop-next-phrase-beginning` to skip
to the next phase if `utop-skip-after-eval-phrase` is non-nil.
2017-04-24 07:54:13 +01:00
Jeremie Dimino f5ee983845 Link the toplevel with -linkall 2017-04-10 18:13:54 +01:00
Jeremie Dimino 2f64eb4785 restore expunge 2017-04-04 13:36:28 +01:00
Jérémie Dimino ba3d278b32 Switch to jbuilder 2017-04-04 13:36:28 +01:00
Syohei YOSHIDA 5c58afb3de Fix non-exist function
Emacs does not have 'replace-in-string' function.
2015-11-05 19:32:03 +09:00
Jeremie Dimino a721d13082 update error message for utop-setup-ocaml-buffer 2015-08-06 10:58:42 +01:00
Jeremie Dimino 0a386c3fb8 use simpler emacs features for utop-compat-resolve
Some people have complained about this in the past IIRC.
2015-01-12 09:56:50 +00:00
Jeremie Dimino 1fa1b1f0b3 simplify utop-compat-resolve
No need to try loading one of the major mode as utop-mode is now a
minor mode and has to be used in conjunction with the current major
mode of the buffer.
2015-01-12 09:36:54 +00:00
Mads Hartmann Jensen 6e7314861e Code review by @diml
- Changed default key-binding for utop to C-c C-s to match tuareg
  default
- Add some compatibility functions to make the transition easier for
  existing users
2015-01-11 13:20:03 +01:00
Mads Hartmann Jensen ff3a379c5b Use autoload cookies 2015-01-02 13:06:48 +01:00
Mads Hartmann Jensen 1290b09521 A step closer to not relying on other major mode's variables 2015-01-02 12:11:02 +01:00
Mads Hartmann Jensen 3c958ebf2e Use minor mode rather than overriding variables at runtime 2015-01-02 11:44:08 +01:00
Mads Hartmann Jensen 137151cca9 #108 Enable utop-command to be buffer-local 2014-11-04 17:44:28 +01:00
Mads Hartmann Jensen 064d874e61 Prettier fix for closing completion buffer 2014-08-21 22:35:26 +02:00
Mads Hartmann Jensen 081a10dadd Close *Completions* buffer after evaluation
This is a quick fix for #84. There might be a better place in the
code for the fix but this certainly does the trick.
2014-08-21 19:06:08 +02:00
Martin Trojer 3fdec164a8 better boiler plate 2014-03-07 21:47:37 +00:00
Martin Trojer 7290a63513 some boilerplate so utop.el can go up on melpa (http://melpa.milkbox.net/) 2014-03-07 14:59:29 +00:00
Jeremie Dimino cb2711067f emacs-mode: [tab] --> (kbd "TAB")
fixes #54
2014-01-17 09:17:53 +00:00
Matthias Andreas Benkard c9e89f0079 Emacs: Enable the use of multi-phrase input on startup. 2013-04-14 14:01:40 +02:00
Matthias Andreas Benkard 9deca3da21 `input-multi`: Fix error highlighting. 2013-04-03 22:53:12 +02:00
Matthias Andreas Benkard 3c10f874bc Support the `input-multi` command on the Emacs side. 2013-04-03 22:03:18 +02:00
wojciech.meyer ee65d72abd Showing type of an identifier at point
Ignore-this: 40b69923375d0ccdf6b1a98891b1bca6

darcs-hash:20120801020653-33bd9-7e0a38b19718bfe0965d9570388f9f5cb74dda48
2012-08-01 04:06:53 +02:00
wojciech.meyer 354b6d774a Allow C-j to eval with auto-end
Ignore-this: 8cd09eabbc6b9d5483a5aa380e2cb278

darcs-hash:20120801001337-33bd9-a5d76dab972820c41fc2beb40818a98013f111c6
2012-08-01 02:13:37 +02:00
wojciech.meyer 718fb69db1 Print only OCaml preprocessor message loaded if it was really loaded
Ignore-this: b96ea788d929cf7dbb853adfa59e4213

darcs-hash:20120731235343-33bd9-711df107c2b3b4580c0c37fe8271e732a4caeada
2012-08-01 01:53:43 +02:00
wojciech.meyer e4796c8e51 car $ cdr -> cadr
Ignore-this: 2b5aa46e42282ee30710daaf8d735116

darcs-hash:20120731235124-33bd9-9fd2bf3a358e2ed54eac23aaa56df50ece816004
2012-08-01 01:51:24 +02:00
wojciech.meyer 272f6f5c29 utop-ocaml-preprocessor - allow loading also pre-procesor from local file variables
Ignore-this: 50e32972f422612675d47fd9ce33fc43

darcs-hash:20120731234941-33bd9-16a892de7fff014771091a9a138380d665bdadd9
2012-08-01 01:49:41 +02:00