Yabu.log

ITなどの雑記

サクラエディタのMarkdownハイライトが微妙。っていうかない。

Qiitaに以下のような文章を投稿したので

qiita.com

テキストのハイライトも欲しい(加筆予定)

sakura editorのmarkdownシンタックスハイライトについて調べてみました。

どうやら公式のものがなく、有志様が作ったものを使いまわしている様子。

有志様が作った色見本をatomと限りなく一致させたい

http://sakura.qp.land.to/?Customize%2F%C5%EA%B9%C6%2F77

RxKey[000]=RK1,/^#{1}\s*([^#]*)\s.*/k
# サンプル1

RxKey[001]=RK2,/^#{2}\s*([^#]*)\s.*/k
## サンプル2

RxKey[002]=RK3,/^#{3,6}?\s*([^#]*)\s.*/k
### サンプル3

RxKey[003]=RK3,/^[-=]{3,}/k

--- サンプル4
=== サンプル4

RxKey[004]=RK6,/\*{3}[^*]+?\*{3}|\_{3}[^_]+?\_{3}/k

 *** サンプル 5 ***
 ___ サンプル 5 ___


RxKey[005]=RK5,/\*{2}[^*]+?\*{2}|\_{2}[^_]+?\_{2}/k

 **サンプル6**
 __サンプル6__

RxKey[006]=RK4,/\*{1}[^*]+?\*{1}|\_{1}[^_]+?\_{1}/k
 
 *サンプル7
 _サンプル7_

RxKey[007]=RK7,/(?<=^\t|^ {4}).*/k //タブ文字か4文字の空白で始まる行

サンプル8
    サンプル8


RxKey[008]=RK7,/`.+?`/k
`サンプル9`


RxKey[009]=RK8,/^\s*> .*/k  //引用符の後のスペースはいらないような・・・

> サンプル10

RxKey[010]=RK9,/^\s*(\d+\. |- |\+ )/k

1. サンプル11
 - サンプル11
 + サンプル11

RxKey[011]=RK9,/^\s*\* (?!.+?\*{1})/k //これはサンプル11にまぜてもいいのでは?

 * サンプル12 

ちなみにatomで試してみたところこんな感じでした

f:id:yuyubu:20171222002152p:plain

  • 所感
    • atomだと複数行にまたがるコード範囲も正しくハイライトされる。
      • 正規表現が行をまたがって指定できないsakuraだと無理
    • アスタリスク囲は1個のものと3個のもので同じ色だがいいのか?
      • 個人的には1個=色A、2個=色B、3個=色B+太字 がいいと思う。
    • atomだと===と先頭にタブがくるやつはハイライトされないようです
    • アンダースコア(_)に挟まれた範囲がハイライトされるのが邪魔。
      • テーブル名とかアンダースコア使いまくってるからめんどくさい。
    • オリジナルのハイライトの正規表現とカラーチャートを作ろうと思う。
    • キータのMarkdownみたいに```のコード範囲に言語の拡張子を書くと、コード範囲の中がその言語のシンタックスハイライトがされると素敵。
      • そんなパッケージ誰か作ってくれないかしら。

(12月24日)追記

   - そんなパッケージ誰か作ってくれないかしら。

デフォルトで対応してしてました

f:id:yuyubu:20171224020058p:plain

Qiitaみたいな感じで

```js

コードブロックの指定にPG名を書けばいいようです