# grunt-captain-hook

> Change css and js links within a html file

Latest version **0.3.1** (published 2015-01-22) · MIT license · 0 weekly downloads

## Install

```sh
npm install grunt-captain-hook
pnpm add grunt-captain-hook
yarn add grunt-captain-hook
bun add grunt-captain-hook
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.3.1 |
| Published | 2015-01-22 |
| First published | 2014-03-07 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 0 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 2 |
| Author | Arcane MainFrame |
| Maintainers | arcanemainframe |
| Keywords | links, html, js, css, grunt, grunt plugin |

## Links

- npm: https://www.npmjs.com/package/grunt-captain-hook
- Repository: https://github.com/arcanemainframe/grunt-captain-hook
- Issues: https://github.com/arcanemainframe/grunt-captain-hook/issues
- npm.io page: https://npm.io/package/grunt-captain-hook

## Alternatives

- [@mapbox/jsonlint-lines-primitives](https://npm.io/package/@mapbox/jsonlint-lines-primitives.md) — 5.3M weekly downloads
- [reftools](https://npm.io/package/reftools.md) — 3.5M weekly downloads
- [@hey-api/openapi-ts](https://npm.io/package/@hey-api/openapi-ts.md) — 3.5M weekly downloads
- [@mapbox/geojson-rewind](https://npm.io/package/@mapbox/geojson-rewind.md) — 2.4M weekly downloads
- [turbo-stream](https://npm.io/package/turbo-stream.md) — 1.7M weekly downloads

## Recent versions

- 0.3.1 (latest) — 2015-01-22
- 0.3.0 — 2015-01-21
- 0.2.2 — 2014-03-07

## README

# grunt-captain-hook

> Insert css and Javascript links into html file

## Getting Started
This plugin requires Grunt `~0.4.0`

If you haven't used [Grunt](http://gruntjs.com/) before, be sure to check out the [Getting Started](http://gruntjs.com/getting-started) guide, as it explains how to create a [Gruntfile](http://gruntjs.com/sample-gruntfile) as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:

```shell
npm install grunt-captain-hook --save-dev
```

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

```js
grunt.loadNpmTasks('grunt-captain-hook');
```

## The "captain_hook" task

### Overview
In your project's Gruntfile, add a section named `captain-hook` to the data object passed into `grunt.initConfig()`.

```js
grunt.initConfig({
  captain_hook: {
    your_target: {
      // Target-specific file lists and/or options go here.
      jsFiles: ['path/to/js/files.js'],
      cssFiles: ['path/to/css/files.css'],
      targetHtml: ['path/to/html/files.html']
    }
  }
})
```

Then in your html pages add the directives on where to place css and javascript.

```html
<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
    <!-- begin:css -->
    <!-- end:css -->
  </head>
  <body>
    <!-- begin:js -->
    <!-- end:js -->
  </body>
</html>
```

After running the task it will modify the html file with links and script tags inserted between the directives.


```html
<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
    <!-- begin:css -->
    <link rel="stylesheet" type="text/css" herf="reset.css">
    <link rel="stylesheet" type="text/css" herf="awesome_styling.css">
    <!-- end:css -->
  </head>
  <body>
    <!-- begin:js -->
    <script src="jquery.js"></script>
    <script src="awesome_stuff.js"></script>
    <!-- end:js -->
  </body>
</html>
```

### Options

#### options.cwd
Type: `String`
Default value: `.`

Path to where to reference all files from (maybe be used for a CDN later).

#### options.nonull
Type: `Boolean`
Default value: `true`

Will return a file path even if it doesn't exist locally. Especially helpful for external links.

## Contributing
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using [Grunt](http://gruntjs.com/).

## Release History
0.1.0 - Initial release.

0.2.0 - Added ability to use arrays in the parameters

0.3.0 - Added ability to use globbing patterns

---
_Source: https://npm.io/package/grunt-captain-hook · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
