English help on website



configのJSON/オブジェクト指定について(Ver9.24対応版)
目次config− JSON/オブジェクト指定について

ファイルタイプ別の設定に関する設定: config  config "x"  config {...}  configcolor  configcolor {...}
ファイルタイプ別の設定に関する取得: キーワード  getconfig  getconfig {...}  getconfigcolor  getconfigcolor {...}


configでJSONまたはJavaScriptのオブジェクト指定で設定できます。
この記述方法は、最終的に全てのファイルタイプ別の設定を記述できることを目指していますが、段階的にしていて、全てはできません。
正式版であっても現時点でできるところまでを公開しています。
config """
  {
    "Font": "Consolas",
    "FontPoint": 10,
    "FontDecimal": 5,
  }
  """;
js{
  config({
      Font: "Consolas",
      FontPoint: 10,
      FontDecimal: 5,
    });
}
参照:getconfigのJSON/オブジェクト指定


参考:TypeScript的な定義
interface ファイルタイプ別の設定{
    Font?: 文字列;                                      //[フォント]→[フォント]    フォント名
    FontPoint?: 数値;                                   //[フォント]→[サイズ](ポイント)    1 to 1000
    FontDecimal?: 数値;                                 //[フォント]→[サイズ](ポイント、小数点以下)    0 to 9
    FontWeight?: 数値;                                  //[フォント]→[太さ]    0 to 1000
    BoldFace?: フラグ;                                  //[フォント]→[太字(重ね書き)]
    FontForceProportional?: フラグ;                     //[フォント]→[プロポーショナルフォント扱い]
    FontSameAllEncoding?: フラグ;                       //[フォント]→[多言語]→[すべての言語で同じフォントを使用する]
    FallbackFont?: フラグ;                              //[フォント]→[追加のフォント]
    FallbackFonts?: 配列<{                              //[フォント]→[追加のフォント]→[...]   []で任意の要素数    0 to 4
        Font?: 文字列;                                      //[フォント]    フォント名
        Adjust?: フラグ;                                    //[サイズ/位置を調整]
        AdjustSize10pt?: 数値;                              //[サイズ]  -1000 to 1000
        AdjustX10pt?: 数値;                                 //[X位置]   -1000 to 1000
        AdjustY10pt?: 数値;                                 //[Y位置]   -1000 to 1000
        Range?: フラグ;                                     //[文字コード範囲を指定]
        RangeType?: "nascii" | "include" | "exclude";       //[ASCII以外全て] [指定の文字コード範囲のみ] [指定の文字コード範囲を除く]
        Ranges?: 配列<{                                     //[文字コード範囲]  []で任意の要素数
            Begin: 数値;                                        //範囲の開始Unicode 1 to 1114111
            End?: 数値;                                         //範囲の終了Unicode 1 to 1114111
            }>;
        }>;
    
    Orikaeshi?: 数値;                                   //[体裁]→[折り返し文字数]  10 to 8000
    AutoAdjustOrikaeshi?: "fix"| "window"| "max";       //[体裁]→[折り返し]    xAutoAdjustOrikaeshiの 0 | 1 | 2
    Kinsoku?: "none"| "useenv"| "useconfig";            //[体裁]→[禁則処理]    xKinsokuの 0 | 1 | 2
    KinsokuInfo?: 禁則処理の詳細;                       //[体裁]→[禁則処理]→[禁則処理の詳細...]
    
    CorrectLineNo?: フラグ;                             //[体裁]→[詳細]→[行番号の計算方法]
    LineSpace?: 数値;                                   //[体裁]→[詳細]→[行間]    0 to 12
    LineSpacePercent?: 数値;                            //[体裁]→[詳細]→[行間]    詳細指定 0 to 300
    CharSpace?: 数値;                                   //[体裁]→[詳細]→[文字間]  0 to 11
    Tategaki?: 数値;                                    //[体裁]→[詳細]→[縦書き]
    Dangumi?: 数値;                                     //[体裁]→[詳細]→[段組]
    FreeCursor?: フラグ;                                //[体裁]→[詳細]→[フリーカーソルモード]
    SaveLastPos?: フラグ;                               //[体裁]→[詳細]→[カーソル位置の自動復元]
    
    Tab?: 数値;                                         //[体裁]→[タブ] タブの文字数 タブキーで空白入力
    TabMode?: "normal" | "free" | "TSV" | "CSV";        //[体裁]→[タブ] 自由配置 TSVモード CSVモード
    TabStop?: 文字列;                                   //[体裁]→[タブ]→[タブストップ]
    ConvertReturnInCell?: "none" | "specialLF" | "halfArrow";   //[体裁]→[タブ]→[セル内改行の変換]
    
    Indent?: 数値;                                      //[体裁]→[インデント]→[自動インデント]
    BlockQuote?: フラグ;                                //[体裁]→[インデント]→[行頭のタブ文字で段落全体をインデントする]
    BquoteItemized?: フラグ;                            //[体裁]→[インデント]→[箇条書きへのインテリジェントな対応]
    BquoteInclude?: 文字列;                             //[体裁]→[インデント]→[インデント対象に追加する文字]
    BlockquoteFix?: 数値;                               //[体裁]→[インデント]→[指定桁数をインデントする]
    BlockquoteFixRelative?: フラグ;                     //[体裁]→[インデント]→[指定桁数をインデントする] 相対位置
    
    CurLineEnable?: フラグ;                             //[デザイン]→[カーソル行] ON/OFF
    CurLineActive?: フラグ;                             //[デザイン]→[カーソル行] アクティブ時のみ
    CurLineLineNoOnly?: フラグ;                         //[デザイン]→[カーソル行] 行番号部分のみ
    CurLineSelectMo?: フラグ;                           //[デザイン]→[カーソル行] 選択時も表示
    UnderLine?: 数値;                                   //[デザイン]→[カーソル行] 文字色モード 下線モード 背景色モード 
    UnderLineDot?: フラグ;                              //[デザイン]→[カーソル行] 点線
    UnderLineWidth?: 数値;                              //[デザイン]→[カーソル行] 線幅 0 to 8
    ImeColorCurLine?: 数値;                             //[デザイン]→[カーソル行(IME ON時)] と [IME変換中の色]
    ImeColorCaret?: フラグ;                             //[デザイン]→[キャレット(IME ON時)]
    VertLine?: 数値;                                    //[デザイン]→[カーソル位置の縦線] 0:なし 1:点線 2:実線
    SelectColorInvert?: 数値;                           //[デザイン]→[範囲選択] 0:通常 1:反転色 2:半透明背景
    ShowCR?: フラグ;                                    //[デザイン]→[改行文字]
    ShowEOF?: フラグ;                                   //[デザイン]→[EOF(ファイルの末尾)]
    ShowTab?: フラグ;                                   //[デザイン]→[タブ文字]
    ShowBoxHalf?: フラグ;                               //[デザイン]→[半角空白]
    ShowBoxFull?: フラグ;                               //[デザイン]→[全角空白]
    Ruler?: フラグ;                                     //[デザイン]→[ルーラー]
    TabRuler?: フラグ;                                  //[デザイン]→[ルーラー]→[8単位] [10単位]
    ShowLineNo?: フラグ;                                //[デザイン]→[行番号]
    ShowPageNo?: 数値;                                  //[デザイン]→[行番号]→[ページ番号表示]
    ActiveKakko?: フラグ;                               //[デザイン]→[行番号]→[対応する括弧の強調表示]
    ActiveTagPair?: フラグ;                             //[デザイン]→[行番号]→[対応するタグの強調表示]
    GuideLine?: 数値;                                   //[デザイン]→[ガイドライン(縦)] [ガイドライン(横)]
    GuideLineInterval?: 数値;                           //[デザイン]→[ガイドライン(縦)]の間隔 [ガイドライン(横)]の間隔
    OrikaeshiLine?: 数値;                               //[デザイン]→[折り返し桁数の縦線] 0:なし 1:点線 2:実線
    ShowFormLine?: フラグ;                              //[デザイン]→[行番号]→[整形ライン] ON/OFF
    FormLine?: 数値;                                    //[デザイン]→[行番号]→[整形ライン] 桁数
    Stripe?: 数値;                                      //[デザイン]→[背景ストライプ表示]
    LastColor?: フラグ;                                 //[デザイン]→[最後に編集した所]
    
    ColorNum?: フラグ;                                  //[デザイン]→[数値]
    ColorEmail?: フラグ;                                //[デザイン]→[メールアドレス]
    ColorUrl?: フラグ;                                  //[デザイン]→[ホームページURL]
    ColorFN?: フラグ;                                   //[デザイン]→[ファイル名と思わしき場所]
    
    ColorSet?: {                                                //[デザイン]
        normal?:            文字色と背景色とスタイル;           //普通の文字
        curline?:           文字色;                             //カーソル行
        curlineime?:        文字色;                             //カーソル行(IME ON時)
        caretime?:          文字色;                             //キャレット(IME ON時)
        imeinput?:          文字色と背景色透明可;               //IME変換中の色
        curlinevert?:       文字色;                             //カーソル位置の縦線
        selection?:         文字色と背景色とスタイル透明可;     //範囲選択
        cr?:                文字色;                             //改行文字、EOF(ファイルの末尾)
        tab?:               文字色;                             //タブ文字
        space?:             文字色;                             //全角空白、半角空白
        ruler?:             文字色と背景色;                     //ルーラー
        foldable?:          文字色と背景色透明可;               //折りたたみ用の余白
        folded?:            文字色と背景色透明可;               //折りたたまれた行の表示
        lineno?:            文字色と背景色とスタイル透明可;     //行番号
        linenoupdated?:     文字色と背景色とスタイル透明可;     //編集した行の行番号
        linenomark?:        文字色と背景色とスタイル透明可;     //マークした行の行番号
        kakkopair?:         文字色と背景色とスタイル透明可;     //対応する括弧の強調表示
        tagpair?:           文字色と背景色とスタイル透明可;     //対応するタグの強調表示
        curword?:           文字色と背景色とスタイル透明可;     //カーソル位置の単語
        guidelinevert?:     文字色;                             //ガイドライン(縦)
        indent1?:           文字色透明可;                       //深さの色1
        indent2?:           文字色透明可;                       //深さの色2
        indent3?:           文字色透明可;                       //深さの色3
        indent4?:           文字色透明可;                       //深さの色4
        indent5?:           文字色透明可;                       //深さの色5
        indent6?:           文字色透明可;                       //深さの色6
        indent7?:           文字色透明可;                       //深さの色7
        indent8?:           文字色透明可;                       //深さの色8
        guidelinehorz?:     文字色;                             //ガイドライン(横)
        orikaeshiline?:     文字色;                             //折り返し桁数の縦線
        formline?:          文字色;                             //整形ライン
        outlinepane?:       文字色と背景色;                     //アウトライン解析の枠
        tree1?:             文字色と背景色;                     //レベルの色1
        tree2?:             文字色と背景色;                     //レベルの色2
        tree3?:             文字色と背景色;                     //レベルの色3
        tree4?:             文字色と背景色;                     //レベルの色4
        tree5?:             文字色と背景色;                     //レベルの色5
        tree6?:             文字色と背景色;                     //レベルの色6
        tree7?:             文字色と背景色;                     //レベルの色7
        tree8?:             文字色と背景色;                     //レベルの色8
        outlinepanesel?:    文字色と背景色;                     //アウトライン解析の枠選択
        outlinebar?:        文字色と背景色;                     //見出しバー
        stripe?:            文字色;                             //背景ストライプ表示
        lastedit?:          文字色;                             //最後の編集した所
        tabmode?:           文字色と背景色;                     //タブモードでのタブの色
        inactivetab?:       文字色と背景色;                     //非アクティブなタブの色
                                                                //----------------------
        script?:            文字色と背景色とスタイル透明可;     //スクリプト部分
        hilight1?:          文字色と背景色とスタイル透明可;     //強調表示1
        hilight2?:          文字色と背景色とスタイル透明可;     //強調表示2
        hilight3?:          文字色と背景色とスタイル透明可;     //強調表示3
        hilight4?:          文字色と背景色とスタイル透明可;     //強調表示4
        hilight5?:          文字色と背景色とスタイル透明可;     //強調表示5
        hilight6?:          文字色と背景色とスタイル透明可;     //強調表示6
        hilight7?:          文字色と背景色とスタイル透明可;     //強調表示7
        hilight8?:          文字色と背景色とスタイル透明可;     //強調表示8
        num?:               文字色と背景色とスタイル透明可;     //数値
        string?:            文字色と背景色とスタイル透明可;     //文字定数
        htmltag?:           文字色と背景色とスタイル透明可;     //HTMLタグ全体
        htmlelem?:          文字色と背景色とスタイル透明可;     //HTMLタグのエレメント
        htmlattr?:          文字色と背景色とスタイル透明可;     //HTMLタグのアトリビュート
        hilightline1?:      文字色と背景色とスタイル透明可;     //行の強調表示1
        hilightline2?:      文字色と背景色とスタイル透明可;     //行の強調表示2
        hilightline3?:      文字色と背景色とスタイル透明可;     //行の強調表示3
        hilightline4?:      文字色と背景色とスタイル透明可;     //行の強調表示4
        comment?:           文字色と背景色とスタイル透明可;     //コメント
        ifdef?:             文字色と背景色とスタイル透明可;     //#ifdef等での無効部分
        email?:             文字色と背景色とスタイル透明可;     //メールアドレス
        url?:               文字色と背景色とスタイル透明可;     //ホームページURL
        filename?:          文字色と背景色とスタイル透明可;     //ファイル名と思わしき場所
        especially1?:       文字色と背景色とスタイル透明可;     //特に強調表示1
        especially2?:       文字色と背景色とスタイル透明可;     //特に強調表示2
        especially3?:       文字色と背景色とスタイル透明可;     //特に強調表示3
        especially4?:       文字色と背景色とスタイル透明可;     //特に強調表示4
        hilightfound?:      文字色と背景色とスタイル透明可;     //検索文字列の強調
        };
    }

interface 禁則処理の詳細 {                                      //禁則処理の詳細
    Burasage?: 0 | 1 | 2;                                       //
    CRBurasage?: フラグ;                                        //
    Wordwrap?: フラグ;                                          //
    BurasageWidth?: 数値;                                       //0 to 4
    NoDiv?: フラグ;                                             //
    TopChars?: 文字列;                                          //
    BottomChars?: 文字列;                                       //
    BurasageChars?: 文字列;                                     //
    }

type 文字列 = string;
type 数値 = number;
type フラグ = 0 | 1 | false | true;
type 配列<t> =Array<t>;
type RGBHEX = `#${string}`; //"#RRGGBB" | "#RGB"
type SYSCOLOR = "syswindow" | "syswindowtext" | "syshighlight" | "syshighlighttext" | "default";
type STYLES = "normal" | "bold" | "underline" | "underline bold" | "italic" | "italic bold" | "underline italic" | "underline italic bold" | "outline" | "superbold" | "shadow";
interface 文字色 { text?: RGBHEX | SYSCOLOR; }
interface 文字色透明可 { text?: RGBHEX | SYSCOLOR | "transparent"; }
interface 文字色と背景色 { text?: RGBHEX | SYSCOLOR; back?: RGBHEX | SYSCOLOR; }
interface 文字色と背景色透明可 { text?: RGBHEX | SYSCOLOR | "transparent"; back?: RGBHEX | SYSCOLOR | "transparent"; }
interface 文字色と背景色とスタイル { text?: RGBHEX | SYSCOLOR; back?: RGBHEX | SYSCOLOR; style?: STYLES; }
interface 文字色と背景色とスタイル透明可 { text?: RGBHEX | SYSCOLOR | "transparent"; back?: RGBHEX | SYSCOLOR | "transparent"; style?: STYLES | "transparent"; }