gulp-replace-include
Prefixed variable replacement and file includes
Gulp Replace-Include performs text replacement on prefixed (default @@) variables. The prefix can be changed in the plugin options. There are 5 types of variable:
@@file
and@@path
: The current filename and file path (relative to thesrc
directory)@@include(fileglob*.txt)
: text file includes (path relative to current page)@@require(glob/*.js)
: like@@include
, but will ignore any files that have already been required- Global variables : variables and their replacement (provided as a key:value pairs) applied to all files
- Page variables : variables assigned to specific page path/filenames (relative to the
src
directory)
Options
prefix: '@@' // prefix for all variables src: '' // source root folder include: // paths to search for file includes (and requires) global: {} // global variables (variable:replacement) pairs pages: {} // page variables (path/filename:global variable object) pairs
If the base folder for all your source files is not where your gulpfile is, you can set the src
directory.
You can also provide various paths to search for file includes. This is the include
array.
The paths will be searched before the file's current location.
You can always add './'
as your first path to avoid this.
Gulp example
+-- build
| +-- gulpfile.js
+-- src
| +-- test
| +-- 1.html
| +-- 2.html
+-- dist
+-- welcome.txt
build/gulpfile.js
var gulp = ;var replaceInclude = ; gulp;
Will convert two files src/test/1.html
& src/test/2.html
, each with content:
@@title Test Page: @@file @@include(../welcome.txt)
With a text file dist/welcome.txt
:
@@hello World
Will produce:
+-- dist
| +-- test
| +-- 1.html
| +-- 2.html
dist/test/1.html
First Page Test Page: 1.html Howdy World
dist/test/2.html
Second Page Test Page: 2.html Howdy World