GitHub - purescript-contrib/purescript-vim
source link: https://github.com/purescript-contrib/purescript-vim
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
purescript-vim
Purescript language support for vim and neovim providing syntax highlighting and indentation based on based on idris-vim and haskell-vim.
See purescript-language-server for details on how to set up language server support for Purescript.
Installation
Manual Installation (no plugin manager)
Copy content of this repository into your ~/.vim
directory (or %HOME%\vimfiles
on Windows).
Be sure that the following lines are in your .vimrc
syntax on filetype on filetype plugin indent on
Pathogen
If you are using Pathogen, clone this repo into your ~/.vim/bundle
directory and you are ready to go.
cd ~/.vim/bundle git clone https://github.com/purescript-contrib/purescript-vim.git
vim-plug
If you are using vim-plug, add the following line in between your plug#begin
and plug#end
calls for your vim config file:
Plug 'purescript-contrib/purescript-vim'
Save and restart (neo)vim and run :PlugInstall
.
Configuration
Indentation
To configure indentation in purescript-vim
you can use the following variables:
g:purescript_disable_indent
Disable indentation altogether.
let g:purescript_disable_indent = 1
g:purescript_indent_case
let g:purescript_indent_case = 5
case xs of >>>>>[] -> ... >>>>>(y:ys) -> ...
g:purescript_indent_let
let g:purescript_indent_let = 4
let x = 0 in >>>>x
g:purescript_indent_in
let g:purescript_indent_in = 1
let x = 0 >in x
g:purescript_indent_where
let g:purescript_indent_where = 6
where f :: Int -> Int >>>>>>f x = x
g:purescript_indent_do
let g:purescript_indent_do = 3
do x <- a >>>y <- b
g:purescript_indent_dot
let g:purescript_indent_dot = 1
unsnoc :: forall a >. List a -> Maybe (List a, a)
Contributing
Contributing checklist:
- Opened an issue before investing a significant amount of work into changes
- Update README.md with any new configuration options and behavior
- Update CHANGELOG.md with the proposed changes
- Run
generate-doc.sh
to re-generate the documentation
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK