changes for README from SirVers 32650 (last commit of last PR)
This commit is contained in:
parent
26ff066e73
commit
d5ae1f721a
105
README.md
105
README.md
@ -1,5 +1,3 @@
|
|||||||
IMPORTANT: comment on: [What about merging with Ultisnip using its engine](https://github.com/garbas/vim-snipmate/issues/114)
|
|
||||||
|
|
||||||
Snipmate & UltiSnip Snippets
|
Snipmate & UltiSnip Snippets
|
||||||
============================
|
============================
|
||||||
|
|
||||||
@ -9,51 +7,48 @@ It is community-maintained and many people have contributed snippet files and
|
|||||||
other improvements already.
|
other improvements already.
|
||||||
|
|
||||||
Contents
|
Contents
|
||||||
========
|
--------
|
||||||
|
|
||||||
snippets/*: snippets using snipmate format
|
- `snippets/*`: snippets using snipmate format
|
||||||
UltiSnips/*: snippets using UltiSnips format
|
- `UltiSnips/*`: snippets using UltiSnips format
|
||||||
|
|
||||||
Snippet engines supporting vim-snippets
|
Snippet engines supporting vim-snippets
|
||||||
========================================
|
----------------------------------------
|
||||||
|
|
||||||
There are different forks of snippet engines which allow the user to insert
|
There are different forks of snippet engines which allow the user to insert
|
||||||
snippets by typing the name of a snippet hitting the expansion mapping.
|
snippets by typing the name of a snippet hitting the expansion mapping.
|
||||||
|
|
||||||
github.com/garbas/vim-snipmate:
|
- [github.com/SirVer/ultisnips](https://github.com/SirVer/ultisnips):
|
||||||
VimL, snipmate-snippets, engine sometimes behaves strange, supports
|
python, supports all snippets in this repo.
|
||||||
rewriting snippets on the fly (eg adding a second version with folding
|
- [github.com/garbas/vim-snipmate](https://github.com/garbas/vim-snipmate):
|
||||||
markers)
|
VimL, snipmate-snippets, engine sometimes behaves strange. Supports
|
||||||
|
snippets/*
|
||||||
|
- [github.com/Shougo/neosnippet](https://github.com/Shougo/neosnippet.vim):
|
||||||
|
VimL, supports snippets/* with some configuration.
|
||||||
|
- [github.com/drmingdrmer/xptemplate](https://github.com/drmingdrmer/xptemplate):
|
||||||
|
Totally different syntax, does not read snippets contained in this file, but
|
||||||
|
it is also very powerful. It does not support vim-snippets (just listing it
|
||||||
|
here for completness)
|
||||||
|
|
||||||
|
There tries to be a more comprehensive list (which still is incomplete) here:
|
||||||
|
http://vim-wiki.mawercer.de/wiki/topic/text-snippets-skeletons-templates.html
|
||||||
|
|
||||||
github.com/MarcWeber/UltiSnips:
|
UltiSnips has additional features such as high speed, nesting snippets,
|
||||||
python, snipmate-snippets and UltiSnips-snippets
|
expanding snippets in snippets and offers powerful transformations on text in
|
||||||
|
snippets (like visual selections or placeholder texts).
|
||||||
|
|
||||||
github.com/SirVer/ultisnips:
|
Which one to use? If you have python give
|
||||||
python, UltiSnips-snippets
|
[SirVer/ultisnips](https://github.com/SirVer/ultisnips) a try because its fast
|
||||||
|
and has the most features.
|
||||||
github.com/Shougo/neosnippet:
|
|
||||||
viml, has a compatible mode allowing to reuse most snipmate snippets ?
|
|
||||||
|
|
||||||
github.com/drmingdrmer/xptemplate:
|
|
||||||
Totally different syntax, does not read snippets contained in this file,
|
|
||||||
but it is also very powerful. It does not support vim-snippets (just
|
|
||||||
listing it here for completness)
|
|
||||||
|
|
||||||
This tries to be a more comprehensive list (which still is incomplete)
|
|
||||||
http://vim-wiki.mawercer.de/wiki/topic/text-snippets-skeletons-templates.html
|
|
||||||
|
|
||||||
UltiSnips engine has additional features such as "nested snippets".
|
|
||||||
|
|
||||||
Which one to use? If you have python give MarcWeber/UltiSnips a try because its
|
|
||||||
fast and supports all important features. You can prefer the UltiSnip versions
|
|
||||||
of the snippets by setting the "always_use_first_snippet" option to 1.
|
|
||||||
|
|
||||||
If you have VimL only (vim without python support) your best option is using
|
If you have VimL only (vim without python support) your best option is using
|
||||||
garbas/vim-snipmate and cope with the minor bugs found in the engine.
|
[garbas/vim-snipmate](https://github.com/garbas/vim-snipmate) and cope with the
|
||||||
|
minor bugs found in the engine.
|
||||||
|
|
||||||
|
|
||||||
Installation
|
Installation
|
||||||
============
|
------------
|
||||||
|
|
||||||
First be aware that there are many options, see "Snippet engines" above.
|
First be aware that there are many options, see "Snippet engines" above.
|
||||||
Second be aware than there are [tons of plugin managers](http://vim-wiki.mawercer.de/wiki/topic/vim%20plugin%20managment.html)
|
Second be aware than there are [tons of plugin managers](http://vim-wiki.mawercer.de/wiki/topic/vim%20plugin%20managment.html)
|
||||||
which is why Marc Weber thinks that it doesn't make sense to repeat the same
|
which is why Marc Weber thinks that it doesn't make sense to repeat the same
|
||||||
@ -84,7 +79,8 @@ If you still have trouble getting this to work create a github ticket, ask on
|
|||||||
irc or the mailinglist.
|
irc or the mailinglist.
|
||||||
|
|
||||||
Policies / for contributors
|
Policies / for contributors
|
||||||
===========================
|
---------------------------
|
||||||
|
|
||||||
Some snippets are useful for almost all languages, so let's try to have the same
|
Some snippets are useful for almost all languages, so let's try to have the same
|
||||||
triggers for them:
|
triggers for them:
|
||||||
|
|
||||||
@ -96,11 +92,7 @@ el : else ..
|
|||||||
wh : while (cond) ...
|
wh : while (cond) ...
|
||||||
```
|
```
|
||||||
|
|
||||||
If you're not satisfied with these defaults, open a ticket that we implement
|
Don't add useless placeholder default texts like
|
||||||
aliasing. Then you can remap "else" to "el" or the like.
|
|
||||||
|
|
||||||
|
|
||||||
Don't add stupid placeholder default texts like
|
|
||||||
```
|
```
|
||||||
if (${1:condition}){
|
if (${1:condition}){
|
||||||
${2:some code here}
|
${2:some code here}
|
||||||
@ -127,7 +119,7 @@ Discuss at: https://github.com/honza/vim-snippets/issues/230
|
|||||||
|
|
||||||
|
|
||||||
Related repositories
|
Related repositories
|
||||||
====================
|
--------------------
|
||||||
We also encourage people to maintain sets of snippets for particular use cases
|
We also encourage people to maintain sets of snippets for particular use cases
|
||||||
so that all users can benefit from them. People can list their snippet repositories here:
|
so that all users can benefit from them. People can list their snippet repositories here:
|
||||||
|
|
||||||
@ -138,15 +130,15 @@ so that all users can benefit from them. People can list their snippet reposito
|
|||||||
|
|
||||||
Installation using VAM: "github:rbonvall/snipmate-snippets-bib"
|
Installation using VAM: "github:rbonvall/snipmate-snippets-bib"
|
||||||
|
|
||||||
|
|
||||||
Future - ideas - examples
|
Future - ideas - examples
|
||||||
=========================
|
-------------------------
|
||||||
|
|
||||||
[overview snippet engines](http://vim-wiki.mawercer.de/wiki/topic/text-snippets-skeletons-templates.html)
|
[overview snippet engines](http://vim-wiki.mawercer.de/wiki/topic/text-snippets-skeletons-templates.html)
|
||||||
If you have ideas you can add them to that list of "snippet engine features by example".
|
If you have ideas you can add them to that list of "snippet engine features by example".
|
||||||
|
|
||||||
|
|
||||||
Historical notes
|
Historical notes
|
||||||
================
|
----------------
|
||||||
|
|
||||||
[vim-snipmate][1] was originally started by [Michael Sanders][2] who has now
|
[vim-snipmate][1] was originally started by [Michael Sanders][2] who has now
|
||||||
unfortunately abandoned the project. [Rok Garbas][3] is now maintaining a
|
unfortunately abandoned the project. [Rok Garbas][3] is now maintaining a
|
||||||
@ -170,14 +162,6 @@ let g:snipMate.scope_aliases = {}
|
|||||||
let g:snipMate.scope_aliases['ruby'] = 'ruby,ruby-rails,ruby-1.9'
|
let g:snipMate.scope_aliases['ruby'] = 'ruby,ruby-rails,ruby-1.9'
|
||||||
```
|
```
|
||||||
|
|
||||||
or github.com/MarcWeber/UltiSnips this way:
|
|
||||||
|
|
||||||
|
|
||||||
```vim
|
|
||||||
let g:UltiSnips = {}
|
|
||||||
|
|
||||||
let g:UltiSnips.snipmate_ft_filter = {
|
|
||||||
\ 'default' : {'filetypes': ["FILETYPE"] },
|
|
||||||
\ 'ruby' : {'filetypes': ["ruby", "ruby-rails", "ruby-1.9"] },
|
\ 'ruby' : {'filetypes': ["ruby", "ruby-rails", "ruby-1.9"] },
|
||||||
```
|
```
|
||||||
|
|
||||||
@ -192,16 +176,15 @@ ruby-library-version triplet. Sometimes postfixing a name such as
|
|||||||
|
|
||||||
will do it then if syntax has changed.
|
will do it then if syntax has changed.
|
||||||
|
|
||||||
|
|
||||||
Language maintainers
|
Language maintainers
|
||||||
--------------------
|
--------------------
|
||||||
|
|
||||||
No one can really be proficient in all programming languages. If you would like
|
No one can really be proficient in all programming languages. If you would like
|
||||||
to maintain snippets for a language, please get in touch.
|
to maintain snippets for a language, please get in touch.
|
||||||
|
|
||||||
Notes: People are interested in snippets - and their interest may stop again
|
Notes: People are interested in snippets - and their interest may wane again.
|
||||||
at will. So its ok if people maintain a language only for a short period of
|
This list is kept up-to-date on a best effort basis.
|
||||||
time - or jump in and get things done - don't let the flow stop :)
|
|
||||||
vim-snippets is not like the "linux kernel".
|
|
||||||
|
|
||||||
* Python - [honza](http://github.com/honza)
|
* Python - [honza](http://github.com/honza)
|
||||||
* Javascript - [honza](http://github.com/honza)
|
* Javascript - [honza](http://github.com/honza)
|
||||||
@ -220,18 +203,13 @@ Until further work is done on `vim-snipmate`, please don't add folding markers
|
|||||||
into snippets. `vim-snipmate` has some comments about how to patch all snippets
|
into snippets. `vim-snipmate` has some comments about how to patch all snippets
|
||||||
on the fly adding those.
|
on the fly adding those.
|
||||||
|
|
||||||
Because MarcWeber/UltiSnips [6] supports also snipmate-snippets there is no
|
Because UltiSnips reads snipmate-snippets too there is no need to duplicate all
|
||||||
need to duplicate all snippets - only those snippets who use advanced UltiSnips
|
snippets - only those snippets who use advanced UltiSnips features should be
|
||||||
features should be duplicated in UltiSnips (?)
|
duplicated in UltiSnips.
|
||||||
|
|
||||||
Currently all snippets from UltiSnips have been put into UltiSnips - some work
|
Currently all snippets from UltiSnips have been put into UltiSnips - some work
|
||||||
on merging should be done (dropping duplicates etc)
|
on merging should be done (dropping duplicates etc)
|
||||||
|
|
||||||
Authors
|
|
||||||
-------
|
|
||||||
|
|
||||||
For a list of authors, please see the `AUTHORS` files.
|
|
||||||
|
|
||||||
License
|
License
|
||||||
-------
|
-------
|
||||||
|
|
||||||
@ -243,5 +221,4 @@ terms of the MIT license.
|
|||||||
[2]: http://github.com/msanders
|
[2]: http://github.com/msanders
|
||||||
[3]: http://github.com/garbas
|
[3]: http://github.com/garbas
|
||||||
[4]: http://github.com/garbas/vim-snipmate
|
[4]: http://github.com/garbas/vim-snipmate
|
||||||
[6]: http://github.com/MarcWeber/UltiSnips
|
|
||||||
[7]: http://github.com/SirVer/ultisnips
|
[7]: http://github.com/SirVer/ultisnips
|
||||||
|
Loading…
Reference in New Issue
Block a user