Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/posthtml/gulp-posthtml
PostHTML for Gulp
https://github.com/posthtml/gulp-posthtml
deps-url gulpfile posthtml
Last synced: about 1 month ago
JSON representation
PostHTML for Gulp
- Host: GitHub
- URL: https://github.com/posthtml/gulp-posthtml
- Owner: posthtml
- License: other
- Created: 2015-09-24T10:15:54.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2023-01-06T01:32:13.000Z (almost 2 years ago)
- Last Synced: 2024-10-29T21:06:03.253Z (about 2 months ago)
- Topics: deps-url, gulpfile, posthtml
- Language: JavaScript
- Homepage:
- Size: 1.45 MB
- Stars: 18
- Watchers: 7
- Forks: 4
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
[![npm][npm]][npm-url]
[![node][node]][node-url]
[![deps][deps]][deps-url]
[![tests][tests]][tests-url]
[![coverage][cover]][cover-url]
[![code style][style]][style-url]
[![chat][chat]][chat-url]Install
```bash
npm i -D gulp-posthtml
```Usage
```js
import { task, src, dest } from 'gulp'import posthtml from 'gulp-posthtml'
task('html', () => {
return src('src/*.html')
.pipe(posthtml())
.pipe(dest('dest'))
})
```Options
### `Plugins`
|Name|Type|Default|Description|
|:--:|:--:|:-----:|:----------|
|`plugins`|`{Array}`|`[]`|PostHTML Plugins|### `Options`
|Name|Type|Default|Description|
|:--:|:--:|:-----:|:----------|
|`options`|`{Object}`|`{}`|PostHTML Options|**gulpfile.js**
```js
import { task, src, dest } from 'gulp'import tap from 'gulp-tap'
import rename from 'gulp-rename'
import posthtml from 'gulp-posthtml'task('html', () => {
let pathconst plugins = [ require('posthtml-include')({ root: path }) ]
const options = { parser: require('posthtml-sugarml')() }return src('src/*.html')
.pipe(tap((file) => path = file.path))
.pipe(posthtml(plugins, options))
.pipe(rename({ ext: '.html' }))
.pipe(dest('dest'))
})
```### `Config`
|Name|Type|Default|Description|
|:--:|:--:|:-----:|:----------|
|`plugins`|`{Array}`|`[]`|PostHTML Plugins|
|`options`|`{Object}`|`{}`|PostHTML Options|**gulpfile.js**
```js
import { task, src, dest } from 'gulp'import rename from 'gulp-rename'
import posthtml from 'gulp-posthtml'task('ssml', () => {
const config = (file) => ({
plugins: [ require('posthtml-include')({ root: file.dirname }) ],
options: { parser: require('posthtml-sugarml')() }
})return src('src/*.sml')
.pipe(posthtml(config))
.pipe(rename({ ext: '.html' }))
.pipe(dest('dest'))
})
```### [`posthtml.config.js`](https://github.com/posthtml/posthtml-load-config)
#### `Context`
|Name|Type|Default|Description|
|:--:|:--:|:-----:|:----------|
|`env`|`{String}`|`'development'`|process.env.NODE_ENV|
|`file`|`{Object}`|`dirname, basename, extname`|File|
|`options`|`{Object}`|`{}`|Options (Parser, Render, Plugin Options)|**posthtml.config.js**
```js
module.exports = ({ file, options, env }) => ({
parser: 'posthtml-sugarml'
plugins: {
'posthtml-include': { root: file.dirname },
'posthtm-expressions': { locals: options.locals }
'htmlnano': env === 'production' ? {} : false
}
})
```**gulpfile.js**
```js
import { task, src, dest } from 'gulp'import rename from 'gulp-rename'
import posthtml from 'gulp-posthtml'task('ssml', () => {
const ctx = { locals: { a: 'Hello World!'} }return src('src/*.sml')
.pipe(posthtml(ctx))
.pipe(rename({ ext: '.html' }))
.pipe(dest('dest'))
})
```Maintainer
Contributors
[npm]: https://img.shields.io/npm/v/gulp-posthtml.svg
[npm-url]: https://npmjs.com/package/gulp-posthtml[node]: https://img.shields.io/node/v/gulp-posthtml.svg
[node-url]: https://nodejs.org/[deps]: https://david-dm.org/posthtml/gulp-posthtml.svg
[deps-url]: https://david-dm.org/posthtml/gulp-posthtml[tests]: http://img.shields.io/travis/posthtml/gulp-posthtml.svg
[tests-url]: https://travis-ci.org/posthtml/gulp-posthtml[cover]: https://coveralls.io/repos/github/posthtml/gulp-posthtml/badge.svg
[cover-url]: https://coveralls.io/github/posthtml/gulp-posthtml[style]: https://img.shields.io/badge/code%20style-standard-yellow.svg
[style-url]: http://standardjs.com/[chat]: https://badges.gitter.im/posthtml/posthtml.svg
[chat-url]: https://gitter.im/posthtml/posthtml