Commit Graph

21 Commits

Author SHA1 Message Date
Michael Henry
99e8842ca5 A "clearsnippets" feature
=========================

It's difficult for the user to control which of the default
bundled snippets are active in his environment.  The
'runtimepath' variable must be set to the root of the ultisnips
installation, which brings in all of the bundled snippets.
Though the user may individually override the definition of the
bundled snippets using the "!" flag, the method has a couple of
problems:

- There's no way to remove a snippet, only to override it (and
  each snippet must be overridden individually).
- The "!" flag currently doesn't remove the overridden snippets
  from the "list snippets" command.

It might be considered a feature that "!" doesn't actually
remove the snippets from the "list snippets" command, though
perhaps that's an unintended effect.  In any case, it would be
more convenient to allow the user to selectively remove the
bundled snippets from his environment.

A patch is provided in the following branch to address these problems:
http://code.launchpad.net/~drmikehenry/ultisnips/clearsnippets

The branch's primary purpose is the addition of a
"clearsnippets" command that may be placed in a user's
~/.vim/UltiSnips/ft.snippets file.  The user may clear all
lower-priority snippet for that file type with the line:

  clearsnippets

Alternatively, he may clear individual snippets by listing their
triggers:

  clearsnippets trigger1 trigger2

A few changes were made to the testing system as part of the
incorporation of this new feature.  These changes include:

- The "extends" directive is now supported on multiple lines
  throughout file.

- A completely empty .snippets file is now possible.

- The test.py scripts now handles most of the vim setup,
  simplifying the running of the tests.  The invocation of Vim
  now reduces to:

    vim -u NONE

  Instructions for running the tests are included at top of
  test.py, where they should be more visible to interested
  users; UltiSnips.vim now just points to test.py's
  instructions.

- A new function vim_quote() encodes an arbitrary string into a
  singly-quoted Vim string, with embedded quotes escaped.
- SnippetsFileParser() now allows file_data to be passed
  directly for unit testing, avoiding the need to create files
  in the filesystem for test purposes.
- A new _error() function reports errors to the user.  At
  runtime, this function uses :echo_err in general, but also can
  append error text to current buffer to check for expected
  errors during unit tests.
- Added error checks to snippets file parsing, along with unit
  tests for the parsing.
- Increased retries from 2 to 4 (on my system, occasionally the
  timing still causes tests to fail).
2009-09-08 20:15:10 -04:00
Holger Rapp
4948c5f7f7 Applied Michael Henrys patch for w option 2009-08-30 20:39:27 +02:00
Holger Rapp
eafbe00a56 Applied suggested patch by Michael Henry to fix problem with tab not being accepted even though ultisnips does nothing with it 2009-08-30 20:04:17 +02:00
Michael Henry
66d35419a4 Added support for snippet option "w" for word-boundary triggers. 2009-08-23 18:44:19 -04:00
Holger Rapp
3cf98270de Implemented listing of current snippets following the suggestion of jceb. This patch took another route than his suggestion, but should be functional equivalent 2009-08-16 20:55:08 +02:00
Holger Rapp
cd0b859b62 Implemented i option (inword snippet expansion) along the line of the patch by jceb, also added his test cases 2009-08-16 16:34:54 +02:00
Holger Rapp
f5610ae451 Added a contributors section to the help file 2009-08-16 16:07:34 +02:00
Holger Rapp
43e60ebd57 Added support for extends keyword. With this it is simple to make inheritance trees of snippets for file types 2009-08-02 11:57:43 +02:00
Holger Rapp
d0a50ae9d2 Made trigger keys configurable. Added support for setting forward jump and expand to the same key 2009-07-21 10:21:05 +02:00
Holger Rapp
47a7948526 Conditional replaces can now be nested 2009-07-19 16:44:29 +02:00
Holger Rapp
e1b66b9bce Added link to Vims script page on vim.org 2009-07-18 01:32:07 +02:00
Holger Rapp
6574033ad0 Removed the snippet options item from the Roadmap. It is already implemented 2009-07-18 01:28:39 +02:00
Holger Rapp
0943961479 Added support for b option. Some snippets can be defined to only be valid at the beginning of the line 2009-07-18 00:51:19 +02:00
Holger Rapp
93b3cc7126 Added support for overwriting of previous snippet definitions 2009-07-17 23:33:48 +02:00
Holger Rapp
e3ae328d8c Added support for dotted ft syntax 2009-07-17 23:00:59 +02:00
Holger Rapp
87922dc5fe added a planned feature that was missing in the roadmap 2009-07-15 21:07:54 +02:00
Holger Rapp
172e943540 Finished first version of help file 2009-07-15 21:06:11 +02:00
Holger Rapp
4633e778b4 Added more help 2009-07-15 20:11:47 +02:00
Holger Rapp
001bb70975 Added support for vimscript interpolation 2009-07-15 16:28:33 +02:00
Holger Rapp
80c70697c0 Enhanced the help snippets, enhanced the help file a bit 2009-07-13 12:28:58 +02:00
Holger Rapp
13eec1fc7a Added the beginning of documentation 2009-07-13 10:46:14 +02:00