だから私はそれがいくつかの言語をサポートするために要素でコード化されていたことを認識しなかったので、それが動作していない理由があります。
私のソリューションは、プリズム+プリズム要素のコンポーネントを編集/フォークすることでした。 (注:名前またはディレクトリを変更せずにbower_components内のファイルを編集する場合は、次の更新時に変更が失われる可能性があります)
私は、追加の言語を含めるためにprism-element/prism-highlighter.html
ファイルに編集:インポートに
if (lang === 'js' || lang.substr(0, 2) === 'es') {
return Prism.languages.javascript;
} else if (lang === 'css') {
return Prism.languages.css;
} else if (lang === 'c') {
return Prism.languages.clike;
} else if (lang === 'bash') { // Check for bash markdown
return Prism.languages.bash;
} else if (lang === 'python') { // Check for python markdown
return Prism.languages.python;
} else {
...
prism/gulpfile.js
をより多くの言語コンポーネント:
paths = {
componentsFile: 'components.js',
components: ['components/**/*.js', '!components/**/*.min.js'],
main: [
'components/prism-core.js',
'components/prism-markup.js',
'components/prism-css.js',
'components/prism-clike.js',
'components/prism-javascript.js',
'components/prism-bash.js', // Include bash component
'components/prism-python.js', // Include python component
'plugins/file-highlight/prism-file-highlight.js'
],
...
あなたがprism
の名前/パスを変更した場合は、prism-element/prism-import.html
に相対パスを変更してください。
その後prism
フォルダランnpm install
に依存関係をインストールするには、とgulp
gulpfile.js
を実行し、prism/prism.js
にコンパイルします。
私はフォークプリズム蛍光ペンプラスと名付けているので、私の最終的なコードは次のようになります。答えを
<link rel="import" href="../../bower_components/marked-element/marked-element.html">
<link rel="import" href="../../bower_components/prism-element-plus/prism-highlighter-plus.html">
<dom-module id="backup-script">
<template>
<style>
:host {
display: block;
}
.markdown-html {
overflow-x: auto;
}
</style>
<prism-highlighter-plus></prism-highlighter-plus>
<marked-element>
<div class="markdown-html"></div>
<script type="text/markdown">
```bash
#!/bin/bash
...
excluded_databases="Database|information_schema|performance_schema|mysql"
databases=`mysql -u $mysql_user -p$mysql_password -Bse "SHOW DATABASES;" | egrep -v $excluded_databases`
for db in $databases; do
mysqldump -u $mysql_user -p$mysql_password --databases $db > $mysql_output/$today/$db.sql
done
...
</script>
</marked-element>
</template>
<script>
Polymer({
is: 'backup-script'
});
</script>
</dom-module>
おかげで、それは、それは間違っていたこと、私はそれをやったかではなかったことを私に示しました。私が使用しようとしていた言語は、プリズム・ハイライターまたはコンパイルされたprism.jsファイルには含まれていませんでした。私はあなたの答えを正しいものとしてマークするでしょう。質問に答えてから問題を解決しますが、最初にそれを編集して、マーク付き要素を取り囲むプリズム・ハイライターを使うのではなく、 zzmarkdownが何を意味するのかを明確にしたり、それを削除したりすることができますか? – Jsilvermist