sponsor Vim development Vim logo Vim Book Ad

OCaml instructions signature + parser : Script that parses and provides signature of instructions

 script karma  Rating 31/10, Downloaded by 2348  Comments, bugs, improvements  Vim wiki

created by
Grzegorz Dymarek
 
script type
utility
 
description
Project is closed!
Anyone who would like to continue it please let me know.


If you have any suggestions or have found a bug please write to me:
125783@student.pwr.wroc.pl

If you want to know how OCaml understands your instructions try this small script.
This script just shows you the signature of instruction - shows the OCaml answer after parsing.

Ver 0.81
Remember to clear the buffer!! (see description below)

Ver 0.79:
Example (returning the first and the last element of the list):
let example a =
  if (List.length a)=0 then failwith "Empty list!!"
  else List.hd a, List.hd (List.rev a);;
example [1;2;3;4];;

:OCamlSigParseAllF
# let example a  =
  if (List.length a)=0 then failwith \"Error!!!\"
  else List.hd a, List.hd (List.rev a);;
      val example : 'a list -> 'a * 'a = <fun>
# example [1;2;3;4];;
- : int * int = (1, 4)

If you want to use menu type:
:OCamlSigMenu

For parsing one instruction type
:OCamlSigParseInstruction

For parsing whole program:
:OCamlSigParseAll
or (for full parsing information)
:OCamlSigParseF

To close Status Window:
:OCamlSigStatusWinClose

To open Status Window:
:OCamlSigStatusWinShow

If you want to see the buffer (list of parsed and remembered instructions):
:OCamlSigShowOCamlBuffer

For clearing this buffer:
:OCamlSigClearOCamlBuffer

If the plugin cannot find OCaml edit the plugin file, find this line:
let s:OCamlPath = ""
and set it to path where you have "ocaml" file
 
install details
You need OCaml for using this script!
Just copy the file to ~/.vim/plugin
If you want (for shortcut for parsing one instruction) you can add to ~/.vimrc something like:
autocmd FileType omlet nmap <F4> :OCamlSigParseInstruction <RETURN>
for shortcut for parsing all:
autocmd FileType omlet nmap <S-F4> :OCamlSigParseAll <RETURN>

You can add other shortcuts if you want
 

rate this script Life Changing Helpful Unfulfilling 
script versions (upload new version)

Click on the package to download.

package script version date Vim version user release notes
OCamlSig.vim 0.81 2005-04-28 6.0 Grzegorz Dymarek Improved recognition of imperative programming
OCamlSig.vim 0.80 2005-04-07 6.0 Grzegorz Dymarek Should now work everything fine (structuers, types, etc) but sometimes bit slow. Clear the buffer then. (see description)
OCamlSig.vim 0.80-beta2 2005-03-31 6.0 Grzegorz Dymarek Bug fixes
OCamlSig.vim 0.80-beta 2005-03-20 6.0 Grzegorz Dymarek Should recognize types and structures (tested on trees)
OCamlSig.vim 0.79a 2005-03-14 6.0 Grzegorz Dymarek Repaired ver of 0.79 (0.79 doesn't work good - bug: instraction recognition)
OCalmSig.vim 0.79 2005-03-12 6.0 Grzegorz Dymarek Added status window and a few improvements. Now you can work more effectively. No need to clear buffer so often.
OCalmSig.vim 0.72 2005-03-05 6.0 Grzegorz Dymarek Don't have to be in first line of instruction to parse it,
"Inteligent" buffer - doesn't add instructions that shouldn't be there (hence: buffer doesn't grow so fast - faster parsing)
OCalmSig.vim 0.7 2005-03-04 6.0 Grzegorz Dymarek Added menu, error and warning handling, recognizing functions in functions, parsing instructions that calls functions, can also parse whole buffer, interpretating instructions that have strings in " "
OCalmSig.vim 0.2 2005-03-02 6.0 Grzegorz Dymarek Faster execution, more comfortable, no need to have csh, don't have to save file before running (working on buffer). Just better OCaml instructions signature plugin (not script)
ocaml.sign.csh 0.13 2005-03-01 6.0 Grzegorz Dymarek Hanging eliminated
ocaml.sign.csh 0.12 2005-02-28 6.0 Grzegorz Dymarek Recognizing instructions that take/are in more then one line
ocaml.sign.csh 0.1 2005-02-27 6.0 Grzegorz Dymarek Initial upload
ip used for rating: 3.15.190.144

If you have questions or remarks about this site, visit the vimonline development pages. Please use this site responsibly.
Questions about Vim should go to the maillist. Help Bram help Uganda.
   
Vim at Github