Gatsby + prism.js で「言語名(language)」を右上に表示する
元記事:genkitech.net
右上のこういうのを表示する方法です。タイトルと別で埋め込む方法が日本語で見つからなかったので貼っておきます。
markdownはこんな感じ
```js:title=filename.js
じゃヴぁすくりぷと
```
```ps
ぽうぇrしぇる
```
やり方
左上のタイトル部分は、プラグイン「gatsby-remark-prismjs-title」で入れられるみたいですが、言語名を別で表示したい場合、以下の様に言語に対応するcssを書いてあげる必要があるようです。
.gatsby-highlight {
position: relative;
}
.gatsby-highlight pre[class*="language-"]::before {
background: lightgray;
border-radius: 0 0 0.25rem 0.25rem;
color: black;
font-size: 12px;
letter-spacing: 0.025rem;
padding: 0.1rem 0.5rem;
position: absolute;
right: 1rem;
text-align: right;
top: 0;
}
.gatsby-highlight pre[class="language-js"]::before {
content: "JavaScript";
background: lightgreen;
color: black;
}
.gatsby-highlight pre[class="language-ps"]::before {
content: "PowerShell";
}
最後の2つのところで言語ごとに色を変えたりしています。必要に応じて自由に追加してください。
言語名を出したいだけであれば「gatsby-remark-prismjs-title」は必要ないですが、ファイル名情報が埋め込まれているコードの言語名を表示したい場合、「gatsby-remark-prismjs-title」を入れておかないとうまく行かない様です。
Author And Source
この問題について(Gatsby + prism.js で「言語名(language)」を右上に表示する), 我々は、より多くの情報をここで見つけました https://qiita.com/genki140/items/423271f183f8ddb8b139著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .