Python3用強調表示定義ファイルNo.40676
すがや さん 23/07/02 12:43
 
Python3用の強調表示定義ファイルはありますでしょうか?
2005年ごろに作成されたものは見つかるのですが、最新のPythonに対応して物はない
ものでしょうか?

あと、Matlab用の強調表示定義ファイルも探しております。もしご存じでしたら、教
えていただけると幸いです。

よろしくお願いいたします。

[ ]
RE:40676 Python3用強調表示定義ファイルNo.40678
秀丸担当 さん 23/07/03 10:06
 
Pythonについて詳しくないのでどの程度の違いかわからないのですが、ライブラリに
ある2013年のIKKIさん作の強調表示定義ファイルで試してみたところ、2.7対応との
ことですが、そこそこ強調されているように見えました。
https://hide.maruo.co.jp/lib/hilight/ikki_python27_130917.html
1つ気になったのは、正規表現で\i\c*という定義があって、予約語などにあてはま
らない場合でも、最終的にはほぼ全ての単語が強調されているようです。
強調されすぎなのを抑えるとしたら、[その他]→[ファイルタイプ別の設定]→[デザ
イン]→[強調表示]で、\i\c*を外して、幾つかのめぼしいものを明示的に追加してい
くといいと思います。

matlibについては、ライブラリにアップロードされている方は見つかりませんでした。
とりあえずコメントと文字列をするとしたら、[その他]→[ファイルタイプ別の設定]
→[デザイン]→[複数行コメント]で、ユーザー定義にして、以下のように追加してお
くといいです。
開始文字列「%{」、終了文字列「%}」で「コメント」
開始文字列「%」、オプション>>で「単一行(行末まで)」で「コメント」
開始文字列「'」、終了文字列「'」で「文字列」
開始文字列「"」、終了文字列「"」で「文字列」


ちなみに最近ではJavaScript対応に伴って、LSPサーバーに接続できればいい感じに
できたりします。
LSPの機能は幾つかあるのですが、セマンティックの強調表示の機能がサーバー側に
備わっていると、文法に沿った強調になります。(秀丸エディタ側はLSPクライアン
トのマクロが必要)
MicrosoftのPylanceというLSPサーバーがセマンティックの強調表示に対応している
らしいので、もしそれが使えればできるということになるのですが、スタンドアロン
で動作させる方法が不明です。
例えばvscodeを介さずnode.jsだけで動くとか、clangd.exe単体で動くとか、そうい
った感じです。
もしどなたかスタンドアロンで動作できる方法をご存知でしたら教えてもらえると助
かります。

[ ]
RE:40678 Python3用強調表示定義ファイルNo.40730
秀丸担当 さん 23/07/18 10:56
 
強調表示定義ファイルではなくてマクロですが、Prism.jsを使った強調として以下の
ものを作ってみました。
http://hide.maruo.co.jp/lib/hilight/prism_hidemaru.html

サンプルとして、ダウンロードサイトから生成したmatlibとpythonも同梱しています
が、以下のページから好みのものを選んでprism.jsを生成できるようです。
https://prismjs.com/download.html

強調表示定義のように編集しながらすぐ反映とかはしていないです。
小さなのソースなら、自動起動マクロでもいけるかもですが、大きなソースだと時間
がかかるので、自分のタイミングで実行のほうがいいです。
大きめだと、LSPサーバーのように外部で処理して逐次反映のようにできたらいいの
だと思いますが、そこまではしていないです。

WebView2が使えるWindows10か、Windows11が必要です。
Windows10でなかったとしたらすみません。

[ ]