0

マクロまたはスクリプトを使用して、Microsoft OneNote 2013 で選択した (独自の) プログラミング言語の構文を強調表示したいと考えています。「 OneTastic 」と呼ばれるカスタム マクロを作成できる、MS OneNote '13 用の無料のマクロ クリエーターを見つけました。各リストを提供するために、異なる色に関連付けられた定義済みの単語のリストを含む 2 つの配列が与えられるマクロを作成しました (例: リスト 1 の単語 = 青、リスト 2 の単語 = オレンジなど)。

API: https://www.omeraty.com/onetastic/docs/

問題:検索ロジックは、単語 "doma in " ( doma IN )内の "IN" など、より大きな単語内の単語を検索しています。私のコードは以下の通りです:

<?xml version="1.0" encoding="utf-16"?>
<Macro name="CCL TEST 3" category="Color" description="" version="10">
  <ModifyVar name="KEYWORDS1" op="set">
    <Function name="String_Split">
      <Param name="string" value="drop create program go %i declare call set end END execute else elseif protect constant curqual of subroutine to noconstant record free range in is protect define macro endmacro" />
      <Param name="delimiter" value=" " />
    </Function>
  </ModifyVar>
  <ModifyVar name="counter" op="set" value="0" />
  <WhileVar name="counter" op="lt">
    <Function name="Array_Length">
      <Param name="array" var="KEYWORDS1" />
    </Function>
    <IsRootOp />
    <ModifyVar name="keyword" op="set" var="KEYWORDS1">
      <RightIndex var="counter" />
    </ModifyVar>
    <For each="Text">
      <That hasProp="value" op="eq" var="keyword" />
      <ModifyProp name="fontColor" op="set" value="blue" />
    </For>
    <ModifyVar name="counter" op="add" value="1" />
  </WhileVar>
  <ModifyVar name="KEYWORDS2" op="set">
    <Function name="String_Split">
      <Param name="string" value="datetimefind datetimediff cnvtdatetime cnvtalias format build concat findfile error alterlist alter initrec cnvtdate esmError echo max min avg sum count uar_get_code_meaning mod substring size trim hour day isnumeric expand locateval cnvtstring fillstring btestfindstring logical uar_get_code_display uar_get_meaning_by_codeset UAR_GET_CODE_BY sqltype cnvtreal echorecord cnvtupper cnvtlower cnvtdatetimeutc abs datetimediff year julian btest decode evaluate findstring asis replace validate nullterm parser value uar_timer_create uar_CreatePropList uar_SetPropString uar_CloseHandle uar_Timer_Destroy uar_Timer_Stop build2 patstring piece cnvtalphanum timestampdiff" />
      <Param name="delimiter" value=" " />
    </Function>
  </ModifyVar>
  <ModifyVar name="counter2" op="set" value="0" />
  <WhileVar name="counter2" op="lt">
    <Function name="Array_Length">
      <Param name="array" var="KEYWORDS2" />
    </Function>
    <IsRootOp />
    <ModifyVar name="keyword" op="set" var="KEYWORDS2">
      <RightIndex var="counter2" />
    </ModifyVar>
    <For each="Text">
      <That hasProp="value" op="eq" var="keyword" />
      <ModifyProp name="fontColor" op="set" value="orange" />
    </For>
    <ModifyVar name="counter2" op="add" value="1" />
  </WhileVar>
</Macro>

OneTastic シンタックス ハイライター スクリプト

4

2 に答える 2