2020-10-23

Share on:

ちょっと感覚が開いてるけど

ネタはる程度溜めてはきていた。でもいつ書くんだ?

タコを買って茹でてあったのでおいしく頂きましたっつー感じやった。

で今日何やってたかというと

ずっとlaravel。laravel8でいかにイモっぽいコードを書けるかの検証やった。あと2日で成果物を上げにゃならん。

、ど同時に時代はもうjavascriptだなって感じだね。いつまでもbootstrapとかsassとかやってる場合じゃねえわ。来年からはこれですわ。今年の案件にはもう習熟が間に合わねえからできんけど。

SimpleMDEの検証

とりあえずCDNからひっぱりこんで動いた。機能としては申し分なかったのですが、デフォでspellcheckが効くらしく、日本語はもちろん対応してないので真っピンクになる。これはまずい。

1    const mde = new SimpleMDE({
2      element: document.getElementById("mde"),
3      spellChecker: false,
4    });

などとする。

でまあ、これを機会にオプションを眺めていたんですが、気になる所としては

  • autosave: default: false
  • placeholder: 設定できるようだけどtextareaのplaceholderも効くらしいからいらんか
  • promptURLs: URLをプロンプトで出したりする default:false
  • singleLineBreaks: 改行をそのまま反映する default:false
  • codeSyntaxHighlighting: highlight.jsを用いたシンタックスハイライト。これは欲しいかな?
  • spellChecker: 例のもの default: true

https://github.com/sparksuite/simplemde-markdown-editor

ここに全ての設定が書いてあります

で、あとはtoolbarの設定方法、ショートカットの設定、とかですね。

ただ、editorの方でシンタックスハイライティングしてもレンダリングした後はまたいろいろあるだろうからちゃんと整えようと思うと面倒なのかもしれないね。

phpていうかlaravel側で食わせる場合

markdownはこれでまあヨシとして、php側でのレンダリングである。これはgraham-campbell/markdownというのを使う

https://github.com/GrahamCampbell/Laravel-Markdown

ほぼほぼカスタムは必要ないのですが引用すると

1<blockquote>
2<p>aa</p>
3</blockquote>

などなり、bootstrap4と相性がよくねっす(blockquote class="blockquote"となってほしいとか)

ただ、これはcommonmarkってやつでレンダリングしてるらしい。これに手を入れるのは結構面倒くさいからclassを与えるにはjqueryで与えるか、そうでなければカスタムcssを書くしかねーんじゃないかなーと思いました。