
Security News
Nx npm Packages Compromised in Supply Chain Attack Weaponizing AI CLI Tools
Malicious Nx npm versions stole secrets and wallet info using AI CLI tools; Socket’s AI scanner detected the supply chain attack and flagged the malware.
grunt-typeset
Advanced tools
A Grunt wrapper for Typeset
Typeset is an HTML pre-processor for web typography. It uses no client-side JavaScript and gives you hanging punctuation, soft hyphen insertion, optical margin outdents, small-caps conversion and punctuation substitution.
If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:
npm install grunt-typeset --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-typeset');
Tweak or add the following CSS:
/* Small caps */
/*.small-caps {font-variant: small-cap;}*/
/* Double quote (") marks */
.pull-double{margin-left:-.46em}
.push-double{margin-right:.46em}
/* Single quote (') marks */
.pull-single{margin-left:-.27em}
.push-single{margin-right:.27em}
.pull-double, .push-double,
.pull-single, .push-single {display: inline-block}
/* Optical margin alignment for particular letters */
.pull-T, .pull-V, .pull-W, .pull-Y {margin-left: -0.07em}
.push-T, .push-V, .push-W, .push-Y {margin-right: 0.07em}
.pull-O, .pull-C, .pull-o, .pull-c {margin-left: -0.04em}
.push-O, .push-C, .push-o, .push-c {margin-right: 0.04em}
.pull-A {margin-left: -0.03em}
.push-A {margin-right: 0.03em}
You can pass the following options object:
typeset: {
options: {
ignore: '.skip, #skip', // string of a CSS selector to skip
only: '#only-typeset, .only-typeset', // string of a CSS selector to only apply typeset,
disable: '', // [quotes, hyphenate, ligatures, smallCaps, punctuation, hangingPunctuation, spaces]
dest: 'dist' // default destination folder
}
}
// ! typeset options
module.exports = grunt => {
grunt.initConfig({
typeset: {
options: {
ignore: '.skip, #skip',
only: '#only-typeset, .only-typeset',
disable: 'smallCaps',
dest: 'dist',
},
src: [
'test/*.html',
'test/**/*.html'
]
}
});
};
// ! custom tasks
module.exports = grunt => {
grunt.initConfig({
typeset: {
// ! grunt typeset:custom_task1
custom_task1: {
options: {
only: '.only-typeset',
disable: 'smallCaps',
dest: 'dist',
},
src: ['test/task1.html']
},
// ! grunt typeset:custom_task2
custom_task2: {
options: {
ignore: '.skip, #skip',
only: '#only-typeset, .only-typeset',
dest: 'dist',
},
src: ['test/task2.html']
},
}
});
};
The following features may be disabled:
This plugin is compatible with Grunt ^1.0.3
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.
FAQs
A Grunt wrapper for Typeset.js
The npm package grunt-typeset receives a total of 2 weekly downloads. As such, grunt-typeset popularity was classified as not popular.
We found that grunt-typeset demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Malicious Nx npm versions stole secrets and wallet info using AI CLI tools; Socket’s AI scanner detected the supply chain attack and flagged the malware.
Security News
CISA’s 2025 draft SBOM guidance adds new fields like hashes, licenses, and tool metadata to make software inventories more actionable.
Security News
A clarification on our recent research investigating 60 malicious Ruby gems.