Commit Graph

201 Commits

Author SHA1 Message Date
Jeremie Dimino e4962e3f73 fix #30 2013-08-07 12:35:02 -04:00
Jeremie Dimino 893cd5f327 compile with findlib < 1.4 2013-08-07 12:10:10 -04:00
Jeremie Dimino 5b5839c039 hide topfind messages 2013-08-07 11:57:28 -04:00
Jeremie Dimino 99618eafd7 don't fail when a search path does not exist 2013-07-15 12:49:40 +01:00
Jeremie Dimino 3df2cccf51 change the trick for getting type errors
Instead of generating "module (_ : sig end) = struct <phrase> end", we
generate "let _ () = let module _ = struct <phrase> end in ()". This
avoid type errors due to the use of first-class module inside a
functor.
2013-07-15 09:24:18 +01:00
Jeremie Dimino e02a18b4d7 set the filename in the lexbuf 2013-07-12 12:02:18 +01:00
Jeremie Dimino 586bfbdc04 add the #typeof directive 2013-07-10 16:51:52 +01:00
Jeremie Dimino cbc658ca41 handle LTerm_inputrc.Parse_error 2013-07-08 11:04:05 +01:00
Jeremie Dimino 589f0707c4 fix UTop.check_phrase
The [get_ocaml_error_message] was done after the [Btype.backtrack] in
case of error, causing the type to be displayed incorrectly.
2013-05-21 10:26:59 +01:00
Jérémie Dimino b721aa054b fix the split_words function in uTop.ml 2013-05-17 19:39:14 +01:00
Jeremie Dimino c1ec47d83e follow type aliases 2013-04-26 14:14:11 +01:00
Jeremie Dimino c1bb8be73f always show the box for backward search 2013-04-26 09:57:41 +01:00
Jeremie Dimino 8da5b260fa add an option to hide the completion bar 2013-04-26 09:53:59 +01:00
Jérémie Dimino 725c6b0327 Merge pull request #8 from benkard/input-multi
Add multi-phrase input
2013-04-14 09:51:44 -07:00
Matthias Andreas Benkard 244c6cfe01 Apply maintainer's suggestions. 2013-04-14 13:32:04 +02:00
Jérémie Dimino e8c1b5f8ca change the '$' character in the prompt to '#' to match the standard
toplevel.
2013-04-05 17:21:50 +01:00
Matthias Andreas Benkard 022a271565 Fix a typo. 2013-04-03 22:02:56 +02:00
Matthias Andreas Benkard 4db7da7a4c uTop_main: Handle `input-multi` commands. 2013-04-03 21:21:57 +02:00
Matthias Andreas Benkard bef8cb8fed Add function `parse_use_file`. 2013-04-03 21:21:52 +02:00
Jérémie Dimino 5123624b63 automatically load camlp4 when needed 2013-03-09 18:44:57 +00:00
Jeremie Dimino ae1636cf45 added the option -show-reserved to disable [hide_reserved] 2013-02-06 17:27:09 -05:00
Jeremie Dimino 8da31fbdce allow to hide identifiers starting with a '_'
Enabled by default.
2013-02-06 17:22:03 -05:00
Jeremie Dimino 77e525d17a make sure -short-paths is the default with ocaml >= 4.01.0 2013-01-29 15:02:52 -05:00
Jeremie Dimino b166bf9d17 added the command line option -short-paths for ocaml >= 4.01.0 2013-01-29 14:20:31 -05:00
Jeremie Dimino 9d5578d6f8 refactoring of expression rewriting
Ignore-this: 3713a9bc8818619cb8fa0afdc14d6a41

- factorize the code between lwt and async stuff
- handle type aliases

darcs-hash:20121015094544-c41ad-167ffe2a9f5ecb8973914e9e57b9879c09f561af
2012-10-15 11:45:44 +02:00
Jeremie Dimino 6574b1252e remove local variables from uTop_main.ml
Ignore-this: fec887057546e3d42782e2fb33a18bad

darcs-hash:20121015080512-c41ad-c684ef7b334e14ab95b71b85eb827a0aee0d153a
2012-10-15 10:05:12 +02:00
anil 98421358fd async-autorun
Ignore-this: d1d8552acc992f5825101d2a81d29e13
Detect statements that have an Async Deferred type and run them in a
separate thread that blocks the top-level until completed.  This is
similar to the Lwt patch, except that the Deferred types may have a
few more type aliases, and must be wrapped into a unit closure.

darcs-hash:20121015060259-b29a9-51a32b2a217d3097169e5ad9ba4f222227426a79
2012-10-15 08:02:59 +02:00
wojciech.meyer 63bf082195 Add also pre-processor to file local variables in uTop_main as a proof of concept
Ignore-this: 930ca27ff89052f1d8d42e0f7d01fd88

darcs-hash:20120731235039-33bd9-bcc756ab753b24f1f776442a4276609e0d051e89
2012-08-01 01:50:39 +02:00
wojciech.meyer 82cccd480a Improvements for loading packages from the file local variables
Ignore-this: 8795ff387135ceb2b99ff8ae7f322875

darcs-hash:20120731231800-33bd9-adf29b40d61f7f63be893a8473edb6e77863b930
2012-08-01 01:18:00 +02:00
Jeremie Dimino 51f7caafb5 adjustments for ocaml 4
Ignore-this: 8dcb773296b6ac7a6e83bb0b00f6697f

darcs-hash:20120615142321-c41ad-563f6c26dba5a942182e86a369167547ffbff121
2012-06-15 16:23:21 +02:00
wojciech.meyer a2acfb5a87 Small improvement
Ignore-this: f8bd21d0a948e37a9697ecddcde9ed7c

darcs-hash:20120315032047-33bd9-9931fb1c2c888b42466734f89b69f2010379d2eb
2012-03-15 04:20:47 +01:00
wojciech.meyer 0b4d9c8ce3 Now it's possible to load packages defined with the file variable utop-package-list, therefore they can be loaded at startup to the toplevel. Desirable user interface has been implemented as part of it. To enable put something like:
Ignore-this: cd594a9e2a71feadba95000a15838d82

(add-hook 'typerex-mode-hook 'utop-setup-ocaml-buffer)
(add-hook 'hack-local-variables-hook 'utop-query-load-package-list)

in your .emacs

darcs-hash:20120315031645-33bd9-c602dacabd15aaa3a63fd3c4146e7f81f16e567d
2012-03-15 04:16:45 +01:00
wojciech.meyer 023e72933d interactive list of packages now work in Emacs
Ignore-this: f5beeb274d704e63b8520b91ad33b39b

darcs-hash:20120303175448-33bd9-2fca1cf41d9a66bfcbd75262b64bc41a25774fc7
2012-03-03 18:54:48 +01:00
wojciech.meyer f91647a254 Prelimnary support for "require:" command - in progress. Handle links in buttons
Ignore-this: 148a3142a2f40cc05f887cb0c53712fb

darcs-hash:20120301035606-33bd9-14ca041ed4b73a645a5251a4fff63774490d8766
2012-03-01 04:56:06 +01:00
Jeremie Dimino 5be22e37eb handle warnings printed on stderr
Ignore-this: d07506d448326fd2675565215457dddc

darcs-hash:20120223140700-c41ad-6f4576a10ef6b3d3b586803e0de66e0e6d6be698
2012-02-23 15:07:00 +01:00
Jeremie Dimino b6c3d44ac2 better support for revised syntax
Ignore-this: a75d11960fc1daa6c8838f0e00747333

darcs-hash:20120223105439-c41ad-1904218737a1b71fdadc159f606f5c2ca58cfed9
2012-02-23 11:54:39 +01:00
Jeremie Dimino a196bb8802 better detection of Lwt.t values
Ignore-this: c1fb44905029d45646301f66bb3ca078

darcs-hash:20120222172522-c41ad-e4fb0b9b6d0245d4aa958c69bcce3969c822795a
2012-02-22 18:25:22 +01:00
Jeremie Dimino 4171f877a6 better mechanism for colorising output phrases
Ignore-this: 381f771be484c08c09b9aec63e20c686

darcs-hash:20120222162147-c41ad-ac49b2283e41a8ab09e5d413d7df125b0baf33e4
2012-02-22 17:21:47 +01:00
Jeremie Dimino 4fc06ba0a3 correctly lex quotations and antiquotations and do completion inside antiquotations
Ignore-this: 399f6b2dd65fd530e684d09cf5d57d0a

darcs-hash:20120222155931-c41ad-835a2ccf63ac1e853846972880a49d1f8ff6a236
2012-02-22 16:59:31 +01:00
Jeremie Dimino dcdab7ac0f handle directive errors
Ignore-this: f9d34b11616ac661ed173d247b41cfe1

darcs-hash:20120217105127-c41ad-c23ea68992ece18a620ae19947307497935c7fef
2012-02-17 11:51:27 +01:00
Jeremie Dimino 02e8648628 fix fix_string
Ignore-this: 58f31abea9193b83b24d22a659e203e4

darcs-hash:20120215204740-c41ad-b6a63ec253a8b796a82bfb8a9db0b0e098fac131
2012-02-15 21:47:40 +01:00
Jeremie Dimino bd9d70ecfc do not fail when the printing of a phrase contains invalid UTF-8
Ignore-this: 26096597481104d05c42fef1600bcc05

darcs-hash:20120215173608-c41ad-e8b59147ddc66dc91178d83ce5215bdc2491b692
2012-02-15 18:36:08 +01:00
Jeremie Dimino 057f6d81bf add lines that contains errors to history in emacs
Ignore-this: 12a4a9bb9aaa6559543ec5dcfcb7bfc4

darcs-hash:20120215170433-c41ad-bfe19305a59bdd895ef47f061bee9f2f04b8893a
2012-02-15 18:04:33 +01:00
Jeremie Dimino d2e0e79dd4 save history when receving a sighup
Ignore-this: 219e88bce2dafc999b6f2f73a16274bf

darcs-hash:20120215154929-c41ad-6377472357c9ff2e29abfc794ec23e988872f9d9
2012-02-15 16:49:29 +01:00
Jeremie Dimino 6aeb61432a save history before killing the emacs buffer
Ignore-this: 165539f1b3cc25e7bbfe51c29c378798

darcs-hash:20120213145725-c41ad-5c47d1977067310ba024249b47b8251ff1b10ee9
2012-02-13 15:57:25 +01:00
Jeremie Dimino 12dd581b99 allow to gracefully quit utop in emacs
Ignore-this: 3360f5c57bfb97f64d4f4509901ea0cd

darcs-hash:20120213092110-c41ad-88847c98d4a92479772b02d4fe88cdfa85fad9b6
2012-02-13 10:21:10 +01:00
Jeremie Dimino 3fe28723e2 use the real history in emacs
Ignore-this: 2ec438176bdf1549eb2b7c6c8f3f5e50

darcs-hash:20120212204029-c41ad-c5e71ad6e8d290b0c7e19994e3ba46879b38089d
2012-02-12 21:40:29 +01:00
Jeremie Dimino 8725e10070 more history settings
Ignore-this: d048fb6bc7cc235fdc4ea6c75d4525a4

darcs-hash:20120212193712-c41ad-96b5f2057ff55811cdd90a8e8ae2be3e4af3d4d3
2012-02-12 20:37:12 +01:00
Jeremie Dimino 361d6459f6 use the new history system
Ignore-this: 3a1d9830d09215b8c34ac97ee79fd97d

darcs-hash:20120212190432-c41ad-865dd5a514e2a3175f6c5412f54567fb7861638c
2012-02-12 20:04:32 +01:00
Jeremie Dimino c29eaa9f99 do not fail in completion when a compiled interface do not match
Ignore-this: 46faaa2093d746bbbc1ab51a050e8b23

darcs-hash:20120211104110-c41ad-711b0267780ea9ce6ae8a00e9e5548c51a34fac3
2012-02-11 11:41:10 +01:00
Jeremie Dimino 4a43491f55 next gen utop
Ignore-this: c0e7aa3db012df3af520003d99403929

- reimplement the toplevel loop without using the standard one
- handle ocaml parsing/typing/compilation error messages to correctly
  highlight error locations in the console and in emacs
- detect incomplete input and don't try to evaluate it
- automatically run with Lwt_main.run values with type _ Lwt.t
- colorize values

darcs-hash:20120211092107-c41ad-de115ed1ec0806b4261a3182f58fb2498e040d9d
2012-02-11 10:21:07 +01:00