1

gEdit 用のカスタム SPICE (エレクトロニクス) 構文の強調表示がありますが、機能していますが、変数の強調表示を変更したいと思います (方法がわかりません)。私が今持っているのはこれです:

<context id="variables" style-ref="string">
  <match extended="true">
    (\s[^\s&gt;&lt;&amp;(){};,=/+\-*\^]+|
    (?![({])\s*[^\s&gt;&lt;&amp;(){};,=/+\-*\^]+)
    \s*(\=)(?!(\s*\=))
  </match>
</context>

パラメータ (変数) は次のように定義されます。

.param Value=3.14

上記のコードでは、「Value=」が強調表示されていますが、「=」の色を省略したいと思います。(?!\=)の後に最後の行を試しました's*が、いくつかの組み合わせを試しましたが...何もありません。

より詳細な方法で:

  • パラメータは、必須の最初の.paramまたはによって定義されます.params(これは解決されます)
  • スペースやこれらのような文字を含めることはできません -- [^\s><&(){};,=/+-*\^] -- 名前の中に (解決済み)
  • 前の文字と「混ざり合わない」ように、前に少なくとも1つのスペースが必要です(解決済み)
  • 上記の条件には "(" および "{" 例外があります (解決済み)
  • それらと「=」の間にスペースを入れることができます(解決済み)

私は PCRE についてほとんど知識がないことを覚えておいてください。これはおそらく幼稚に見えますが、機能している限り気にしません。私が今持っているものは、あまりにも多くの試行錯誤の結果です。

4

1 に答える 1

0

その間、irc.gimp.org の #gedit の jessevdk の助けを借りて解決しました。この線

\s*(\=)(?!(\s*\=))

に変更する必要があります

(?=(\s*\=(?!(\s*\=))))

これで、 https://bugzilla.gnome.org/show_bug.cgi?id=692822でファイルを更新して、受け入れられるまでもう少し待つことができます...

于 2014-04-22T19:25:15.980 に答える