「空」のプラットフォーム sora:share

【Gutenberg】SyntaxHighlighter EvolvedよりもEnlighterがおすすめ【WordPress】

Gutenbergエディターになってから、シンタックスハイライター系のプラグインはどうやらSyntaxHighlighter Evolvedが流行っているらしいですね。

調べた中で一番おしゃれで機能性があるのはCrayon Syntax Highlighterなんですけど、これは作者さんの更新が数年前で最後になっていてGutenbergに対応していません。

Evolvedは日本語化していて、いろんなブログでも紹介されてるけど、ぶっちゃけ使いづらいし見にくいです。

↓記事の編集画面。コードの中身は全く同じです。下のEvolvedは、スクロールバーがついて一覧性がないですよね。

Enlighterは日本語になってないけど、設定することなんてテーマぐらいだろうし読めなくても問題ありません。

もちろん文字の大きさなど細かく変えたければ英語を読む必要はありますが、日本語対応しているSyntaxHighlighter Evolvedはそもそも細かく設定する項目すらありません。

Syntax Highlighterのテーマについて

Syntax Highlighter系のプラグインを入れるということは、デザインをよくしたいということです。気にしなければ<pre>のベタ書きでいいですもんね。

いろんなデザインテーマがあるんですけど、これについてもEnlighterの方が種類も多くおしゃれです。

Enlighterのテーマの中でもpanicが僕的には好みです。カラフルだし、普段atomで使っているテーマに似てます。

種類については設定から、またGutenbergエディター内から変えられるのでいろいろ試してみてください。

見た目例

上:Enlighter
  テーマ panic

下:SyntaxHighlighter Evolved(アンインストールしたので画像です)
  テーマ デフォルト

コードの内容について

slackのファイルを一括ダウンロードするためのスクリプト
import requests
import json
import os.path

def fileDownload():
    print('fileDownloading...')
    # レガシートークン( 参考:https://api.slack.com/custom-integrations/legacy-tokens )
    LEGACYTOKEN = ""
    # UnixTimeで記述, 入れなければ全期間( 参考:https://tool.konisimple.net/date/unixtime )
    DATE_FROM = ""
    DATE_TO = ""

    url = "https://slack.com/api/files.list?token=" + LEGACYTOKEN + "&ts_from=" + DATE_FROM + "&ts_to=" + DATE_TO + "&pretty=1"

    result = requests.get(url)

    data = json.loads(result.text)

    # ファイルをダウンロードするためのヘッダー
    headers = {'Authorization': 'Bearer ' + LEGACYTOKEN}
    count = 0
    for file in data["files"]:
        file_name = file["name"]
        if not "url_private_download" in file:
            continue
        file_url = file["url_private_download"]
        # 同じファイル名の物があると上書きされてしまうため存在を確認する
        if os.path.exists(file_name):
            print("重複しました")
            count = count + 1
            insert_point = file_name.find(".")
            insert_string = "(" + str(count) + ")"
            file_name = '{0}{1}{2}'.format(file_name[:insert_point], insert_string, file_name[insert_point:])
        response = requests.get(file_url, headers=headers)
        with open(file_name, 'wb') as f:
            # ファイルを保存する
            f.write(response.content)

if __name__ == '__main__':
    fileDownload()

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です