coquille

Interactive theorem proving with Coq in vim.

Subscribe to updates I use coquille


Statistics on coquille

Number of watchers on Github 134
Number of open issues 25
Average time to close an issue about 2 months
Main language VimL
Average time to merge a PR 28 days
Open pull requests 12+
Closed pull requests 5+
Last commit 7 months ago
Repo Created about 5 years ago
Repo Last Updated 5 months ago
Size 195 KB
Organization / Authorthe-lambda-church
Contributors9
Page Updated
Do you use coquille? Leave a review!
View open issues (25)
View coquille activity
View on github
Latest Open Source Launches
Trendy new open source projects in your inbox! View examples

Subscribe to our mailing list

Evaluating coquille for your project? Score Explanation
Commits Score (?)
Issues & PR Score (?)

Coquille

Build Status

Coquille is a vim plugin aiming to bring the interactivity of CoqIDE into your favorite editor.

Installation

This repository is meant to be used as a pathogen bundle. If you don't already use pathogen, I strongly recommend that you start right now.

As everybody knows, vim is a wonderful editor which offers no way for a plugin to track modifications on a buffer. For that reason Coquille depends on a set of heuristicts collected in vimbufsync to detect modifications in the buffer. You will need to make this plugin available in your runtime path (it can be installed as a pathogen bundle as well) if you want Coquille to work.

Once that is done, installing Coquille is just as simple as doing :

cd ~/.vim/bundle
git clone https://github.com/trefis/coquille.git

Not that by default, you will be in the pathogen-bundle branch, which also ships Vincent Aravantinos syntax and indent scripts for Coq, as well as an ftdetect script. If you already have those in your vim config, then just switch to the master branch.

Getting started

To launch Coquille on your Coq file, run :CoqLaunch which will make the commands :

  • CoqNext
  • CoqToCursor
  • CoqUndo
  • CoqKill

available to you.

By default Coquille forces no mapping for these commands, however two sets of mapping are already defined and you can activate them by adding :

" Maps Coquille commands to CoqIDE default key bindings
au FileType coq call coquille#CoqideMapping()

or

" Maps Coquille commands to <F2> (Undo), <F3> (Next), <F4> (ToCursor)
au FileType coq call coquille#FNMapping()

to your .vimrc.

Alternatively you can, of course, define your owns.

Running query commands

You can run an arbitrary query command (that is Check, Print, etc.) by calling :Coq MyCommand foo bar baz. and the result will be displayed in the Infos panel.

Configuration

Note that the color of the lock zone is hard coded and might not be pretty in your specific setup (depending on your terminal, colorscheme, etc). To change it, you can overwrite the CheckedByCoq and SentToCoq highlight groups (:h hi and :h highlight-groups) to colors that works better for you. See coquille.vim for an example.

You can set the following variable to modify Coquille's behavior:

g:coquille_auto_move            Set it to 'true' if you want Coquille to
    (default = 'false')         move your cursor to the end of the lock zone
                                after calls to CoqNext or CoqUndo

Screenshoots

Because pictures are always the best sellers :

Coquille at use

coquille open issues Ask a question     (View All Issues)
  • about 2 years Broken pipe during RawQuery
  • about 2 years provide details on pathogen installation
  • about 3 years Crash on Coq 8.5
  • over 3 years a few shortcuts would be nice
  • about 4 years Coq-HoTT
  • over 4 years is there an easy way to put back some old coq ide features?
coquille open pull requests (View All Pulls)
  • try to add syntax for typeclasses
  • Auto remove cursor as default behavior
  • Comply with coq8.5
  • Support commentstring
  • Decode the input before building XML commands.
  • Miscellaneous minimal syntax fixes
  • fix handling of message in answers
  • Python 2.x hard dependency
  • Add debug buffer, fix a bug
  • Fix #46
  • Allow multiple coq buffers to opened at the same time
  • Fix issue #61 by suppressing Coqtop stderr output
coquille list of languages used
More projects by the-lambda-church View all
Other projects in VimL