gatsby-remark-jargon
v2.22.2
Published
A gatsby-transformer-remark sub-plugin for jargon terms
Downloads
113
Readme
gatsby-remark-jargon
A gatsby-transformer-remark sub-plugin for jargon terms
🚨🚨 This packages is deprecated 🚨🚨
This package will not be part of FreeSewing v3.
About
This wraps the remark-jargon plugin for Gatsby so you can use jargon in the markdown/mdx of your Gatsby site:
Install
npm install --save gatsby-remark-jargon
Configuration
In gatsby-config.js
include your jargon file, and add the remark plugin:
{
resolve: 'gatsby-remark-jargon',
options: { jargon: require('./jargon.js') }
}
Usage
The jargon file
The jagon file is a simple key-value file:
const jargon = {
msf: "<b>MSF</b> Médecins Sans Frontières / Doctors Without Borders — An international, independent, medical humanitarian organisation. See <a href='https://www.msf.org/'>msf.org</a>"
}
export default jargon
Using jargon in markdown
This plugin will only add markup to your jargon if you emphasize it. In the following example, only the first mention of MSF will be changed:
_MSF_ was founded in 1971 by 13 doctors and journalists. Today, MSF is a worldwide movement of more than 67,000 people.
This will be rendered as:
<p>
<em>
<span class="jargon-term">
MSF
<span class="jargon-info">
<b>MSF</b> Médecins Sans Frontières / Doctors Without Borders — An international, independent, medical humanitarian organisation. See <a href='https://www.msf.org/'>msf.org</a>
</span>
</span>
</em>
was founded in 1971 by 13 doctors and journalists. Today, MSF is a worldwide movement of more than 67,000 people.
</p>
Which you can then style so that the definition is only show on hover/touch.
Styling your jargon
You will need to add CSS to style your jargon properly, and hide the definition by default. Below is an example to get you started:
// Add a dashed line under jargon terms
.jargon-term {
text-decoration: underline dotted #228be6
}
// Add a question mark behind/above jargon terms
.jargon-term::after {
content: "?";
font-weight: bold;
display: inline-block;
transform: translate(0, -0.5em);
font-size: 75%;
color: #228be6;
margin-left: 3px;
}
// Hover behavior for the therm itself
.jargon-term:hover {
position: relative;
text-decoration: none;
cursor: help;
}
// Hide info by default
.jargon-term .jargon-info {
display: none
}
// Show info on hover
.jargon-term:hover .jargon-info {
display: block;
position: absolute;
top: 1.5em;
left: 0;
background: #F8F8F8;
border: 1px solid #DCDCDC;
padding: 1rem;
border-radius: 4px;
font-size: 90%;
min-width: 250px;
max-width: 450px;
z-index: 1;
}
Tips for using jargon
Lowercase your terms in the jargon file
When looking for terms to match, we lowercase the term your emphazised.
So in the jargon file, you should use msf
, but in your text, you can use MSF
, Msf
, or msf
.
If you use HTML, only use inline elements
Your jargon term definition can contain HTML, but only inline elements. Typically, you will want to stick to:
- Making things bold
- Inserting links
Note: this is the last v2 minor release
We'll be moving to a new major version (v3) so this is the last minor release. We'll continue to support this while we work on v3, and backport important fixes.
Once v3 is out, we'll drop official support for v2.
What am I looking at? 🤔
This repository is our monorepo holding all our NPM designs, plugins, other NPM packages, and (web)sites.
This folder holds: gatsby-remark-jargon
If you're not entirely sure what to do or how to start, type this command:
npm run tips
If you don't want to set up a dev environment, you can run it in your browser:
We recommend that you fork our repository and then put
gitpod.io/#<entire-url-of-your-fork
into a browser to start up a browser-based dev environment of your own.
About FreeSewing 💀
Where the world of makers and developers collide, that's where you'll find FreeSewing.
If you're a maker, checkout freesewing.org where you can generate our sewing patterns adapted to your measurements.
If you're a developer, our documentation is on freesewing.dev. Our core library is a batteries-included toolbox for parametric design of sewing patterns. But we also provide a range of plugins that further extend the functionality of the platform.
If you have NodeJS installed, you can try it right now by running:
npx create-freesewing-pattern
Or, consult our getting started guides for Linux, MacOS, or Windows.
We also have a pattern design tutorial that walks you through your first parametric design, and a friendly community with people who can help you when you get stuck.
Support FreeSewing: Become a patron 🥰
FreeSewing is an open source project run by a community, and financially supported by our patrons.
If you feel what we do is worthwhile, and you can spend a few coind without hardship, then you should join us and become a patron.
Links 👩💻
- 💻 Makers website: freesewing.org
- 💻 Developers website: freesewing.dev
- 💬 Chat: On Discord via discord.freesewing.org
- ✅ Todo list/Kanban board: On Github via todo.freesewing.org
- 🐦 Twitter: @freesewing_org
- 📷 Instagram: @freesewing_org
License: MIT 🤓
© Joost De Cock.
See the license file for details.
Where to get help 🤯
Our chatrooms on Discord are the best place to ask questions, share your feedback, or just hang out.
If you want to report a problem, please create an issue.
Contributors ✨
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!