Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tomtom/templator_vim
Multi-file project templates using skeleton/snippets engines
https://github.com/tomtom/templator_vim
vim vim-plugin vim-script
Last synced: 11 days ago
JSON representation
Multi-file project templates using skeleton/snippets engines
- Host: GitHub
- URL: https://github.com/tomtom/templator_vim
- Owner: tomtom
- Created: 2012-12-02T13:02:11.000Z (almost 12 years ago)
- Default Branch: master
- Last Pushed: 2015-11-24T18:00:15.000Z (almost 9 years ago)
- Last Synced: 2024-08-07T18:46:01.081Z (3 months ago)
- Topics: vim, vim-plugin, vim-script
- Language: VimL
- Homepage: http://www.vim.org/scripts/script.php?script_id=4345
- Size: 45.9 KB
- Stars: 8
- Watchers: 3
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README
- Changelog: CHANGES.TXT
Awesome Lists containing this project
README
In many programming languages/environments, you usually work with a set of files
that belong together. E.g. if you create a c file, you usually also want to
create a h header file. If you create a viewer file, you usually also want to
create corresponding model and controller files. If you want to create a
library file, you usually also want to create some test file etc. This is were
templator comes in.The templator plugin allows the creation of filesets based on multi-file
templates. Possible use cases:- Create multi-file projects
- Create multiple-files within a project, e.g.
- a source file and the corresponding header file
- a source file and the corresponding test file
- files for a model, a view, and a controllerTemplates can be written in any code template/skeleton/snippets style. At the
time of writing, templates can be written in:- template vim (see |templator-tvim|) ("tvim" extension)
- tskeleton (vimscript #1160) ("tskel" extension)It shouldn't be too difficult to add support for additional template
engines.The |:Templator| command can be used to create multi-file projects.
Example 1: Create files for the "vimplugin" template-set in the current root
directory, which usually is the current working directory unless
|b:templator_root_dir| is set (see |templator-arguments| for details): >:Templator vimplugin myplugin
"myplugin" is the plugin's name. The argument is required by the
template set used in this example. It is also possible to use named
arguments.Example 2: Create files for the "vimplugin" template-set in some directory (the
directory is created if it doesn't already exist): >:Templator ~/src/foo/bar/vimplugin myplugin
Templates are kept in "templator" subdirectories in your 'runtimepath' (e.g.
~/.vim/templator). A subdirectory's name consists of
"TEMPLATE_NAME.TEMPLATE_TYPE". TEMPLATE_NAME is the name that is used for the
|:Templator| command. TEMPLATE_TYPE is the name of the template engine used to
expand file templates.Templates consist of a bunch of files and an optional vim script (see
|templator-scripts|) that is run after creating the files.-----------------------------------------------------------------------
Status: Experimental
Install: See http://github.com/tomtom/vimtlib/blob/master/INSTALL.TXT
See http://github.com/tomtom for related plugins.