FrigoEU / psc-ide-vim

Vim plugin for psc-ide
96 stars 36 forks source link

psc-ide-vim

A vim plugin that interfaces with purs ide, PureScript's editor support server.

Setup

Installing the plugin via Vundle/NeoBundle/etc:

NeoBundle "frigoeu/psc-ide-vim"

If you manually install the plugin don't forget to generate help tags with :helptags vim commands:

helptags ~/.vim/bundles/psc-ide-vim/doc

Just change the path to one that points to the doc dir.

Syntax checking

This plugin provides two kinds of syntax checking with syntastic. Controlling which one you use happens via the global variable g:psc_ide_syntastic_mode.

:PSCIDE syntastic gif

Commands

Check :help psc-ide-vim or here.

Mappings

No custom mappings are provided, but it's easy to map the above commands to any key mapping you want. You can add these mappings to after/ftplugin/purescript.vim:

nm <buffer> <silent> <leader>L :Plist<CR>
nm <buffer> <silent> <leader>l :Pload!<CR>
nm <buffer> <silent> <leader>r :Prebuild!<CR>
nm <buffer> <silent> <leader>f :PaddClause<CR>
nm <buffer> <silent> <leader>t :PaddType<CR>
nm <buffer> <silent> <leader>a :Papply<CR>
nm <buffer> <silent> <leader>A :Papply!<CR>
nm <buffer> <silent> <leader>C :Pcase!<CR>
nm <buffer> <silent> <leader>i :Pimport<CR>
nm <buffer> <silent> <leader>qa :PaddImportQualifications<CR>
nm <buffer> <silent> <leader>g :Pgoto<CR>
nm <buffer> <silent> <leader>p :Pursuit<CR>
nm <buffer> <silent> <leader>T :Ptype<CR>

Omnicompletion and user completion

Omnicompletion gets possibilities based on the word under your cursor, and shows the types.

:PSCIDE omnicompletion gif

Prerequisites

Debugging

Add the following to have psc-ide-vim spit out all logs:

let g:psc_ide_log_level = 3