Ambient — Alpha オートメーション オブジェクト モデル

Alpha のスクリプトマクロで使用するオブジェクトのドキュメントです。

このドキュメントは暫定的なものであり、記述されている内容は将来変更される可能性があります。また Alpha の実装状況などにより、実装されていないオブジェクト、メンバも多数存在します。

このリファレンスはスクリプトユーザ向けです。型名などはネイティブユーザが使用するものとは異なります。例えば論理型 (boolean) や文字列 (string) はスクリプト環境の適切なデータ型を意味しますが、実際は OLE 型である VARIANT_BOOL や BSTR を使用します。

バージョン
Ambient 0.6.5α
ホームページ
<http://www.interq.or.jp/student/exeal/dss/res/alpha/>
<http://sourceforge.jp/projects/alpha/>

Contents

オブジェクト階層

Alpha のオブジェクトモデルは以下のとおりです (未実装のものも含まれています)。
Ambient Object Model for Alpha

IApplication インターフェイス (Application オブジェクト)

Application オブジェクトは Alpha 自体を表現し、Alpha オブジェクトモデルの最上位オブジェクトになります。Alpha の他のオブジェクト (ホスト以外) にアクセスするにはこのオブジェクトを経由する必要があります。

スクリプト中でこのオブジェクトを参照するには識別子 AmbientAlpha を使用します (後者は古い名前)

Application メンバ
プロパティ
Abbreviations : Abbreviations (R)短縮語句管理オブジェクト
Active : boolean (R/W)Alpha のアクティブな状態
ActiveDocument : Document (R)アクティブなドキュメント
Configurations : Configurations (R)種々の設定
CurrentDirectory : string (R/W)現在のディレクトリ
Documents : Documents (R)開いている全てのドキュメント
FullName : string (R)アプリケーションのフルパス
Height : long (R/W)ウィンドウの高さ
Left : long (R/W)ウィンドウ左上端の x 座標
Name : string (R, default)アプリケーション名 (デフォルト)
Top : long (R/W)ウィンドウ左上端の y 座標
Version : string (R)アプリケーションのバージョン
Visible : boolean (R/W)ウィンドウの表示状態
Width : long (R/W)ウィンドウの幅
WindowState : WindowState (R/W)ウィンドウの状態
メソッド
ClearOutput( activate : boolean ) : voidAlpha 出力ウィンドウの [一般] タブの内容を消去します。activateTrue を指定するとタブがアクティブになります (未実装)
GetCommandById( id : long ) : Commandid で指定した識別子を持つコマンドを返します。識別子が正しくない場合でもエラーにはなりません
Quit( errorCode : int = 0 ) : voidAlpha を終了します。errorCode でエラーコードを返すことができます
WriteToOutput(
 outputText : string,
 activate : boolean ) : void
Alpha 出力ウィンドウの [一般] タブに outputText を出力します。activateTrue を指定するとタブがアクティブになります (未実装)
WriteLineToOutput(
 outputText : string,
 activate : boolean ) : void
Alpha 出力ウィンドウの [一般] タブに outputText を出力し改行します。activateTrue を指定するとタブがアクティブになります (未実装)

IConfigurtions インターフェイス (Configurations オブジェクト)

アプリケーションの種々の設定にアクセスする手段を提供します。このオブジェクトはコレクションです。

IConfigurations メンバ
プロパティ
KeyboardSchemes(
 scopeName : string ) : KeyboardScheme (R)
scopeName で指定した名前のスコープのキー割り当てオブジェクト。現在有効なスコープ名は "basic" のみです
Property( name : string ) : string (R/W, default)名前付きプロパティにアクセスします。「設定プロパティの一覧」を参照してください。値の取得時に存在しない名前を指定すると空文字列が返ります
メソッド
AddDocumentType(
 name : string,
 fileSpec : string,
 commandText : string,
 private : boolean = false ) : void
文書タイプを登録します。name に文書タイプ名を、fileSpec に適用するファイルのパスにマッチするワイルドカードを含む文字列を指定します。commandText は文書タイプに関連付けられたコマンドです。[実行] コマンドを実行するとこのコマンドが実行されます。文字列中の "$F" は二重引用符で囲まれたファイルパスに展開されます。private に true を指定すると適用文書タイプリストからこの文書タイプが除外されるようになります。このメソッドは登録済み文書タイプと、追加しようとする文書タイプの適用拡張子の重複をチェックしません。同じ名前の文書タイプがあった場合は既存のものは削除されます。この文書タイプはあとで OnApplyDocumentType イベントハンドラで使用されます
Apply() : void設定をアプリケーションに送信します。文書タイプの登録と削除以外の全ての設定 (KeyboardScheme に対するものも含む) はこのメソッドを呼び出さない限り有効にはなりません
RemoveAllDocumentTypes() : void登録されている文書タイプを全て削除します

IKeyboardScheme インターフェイス (KeyboardScheme オブジェクト)

キー割り当てを管理し、永続記憶もサポートします。キー割り当てを保存するファイルのディレクトリはアプリケーションにより定義されており、キー割り当ての名前がファイル名になります。このオブジェクトに対する変更は、IConfigurations::Apply メソッドを呼び出さない限りアプリケーションに反映されません。

IKeyboardScheme メンバ
プロパティ
Name : string (R, default)キーボードスキームの名前
メソッド
Assign(
 keyCombination : string,
 commandId : long ) : void
指定したキーの組み合わせにコマンドを割り当てます。keyCombination で使う形式はアプリケーションメニューで示されるショートカットと同じです。修飾キーの後にメインのキー名を書きます。例えば "Ctrl+C" 、"Ctrl+Shift+S" などです。修飾キーの順序は決められていません。利用可能なメインのキー名については「キー割り当てで利用可能なキーの名前」を参照してください。形式が正しくない場合はエラーになります。commandId はコマンド識別子 (整数) を指定します。利用可能な識別子は「コマンド識別子」を参照してください
CopyAllMaps() : voidキー割り当ての一覧をクリップボードにコピーします (未実装)
Load( schemeName : string ) : void指定した名前のキー割り当てをファイルから読み込みます。読み込みに失敗した場合はエラーになります
Save( schemeName : string ) : voidキー割り当てをファイルに保存します。保存に失敗した場合はエラーになります

IAbbreviations インターフェイス (Abbreviations オブジェクト)

短縮語句の管理を行います。このオブジェクトはコレクションです

Abbreviations メンバ
メソッド
Expand( abbrev : string ) : string文字列 abbrev の展開後の文字列を返します。登録されていなければ空文字列を返します
Register(
 abbrev : string,
 expandedText : string ) : void
短縮語句 abbrev を登録します。expandedText で展開後の文字列を指定します。引数はいずれも空文字列であってはいけません。既に同じ短縮語句が登録されている場合は上書きになります。登録に失敗した場合はエラーになります
Revoke( abbrev : string ) : string短縮語句 abbrev を削除します
RevokeAll() : string登録されている全ての短縮語句を削除します

ICommand インターフェイス (Command オブジェクト)

1つのコマンドを表現します。

ICommand メンバ
プロパティ
Checked : boolean (R)コマンドがチェック状態にあるか
Description : string (R)コマンドの説明
Enabled : boolean (R)コマンドが実行可能か
KeyCombination : string (R)コマンドに割り当てられているキーの文字列表現
Name : string (R, default)コマンド名
メソッド
Execute() : voidコマンドを実行します

IDocuments インターフェイス (Documents コレクション)

開いている全てのドキュメントです。ドキュメント全体を統括します。このオブジェクトはコレクションです。

Documents メンバ
プロパティ
Count : long (R)開いているドキュメントの数
メソッド
AddNew() : void無題のドキュメントを新しく開きます
CloseAll() : void全てのドキュメントを閉じます
Item( index : long ) : Document (default)index 番目のドキュメントを返します (デフォルト)
Open(
 pathName : string,
 shareMode : FileShareMode,
 codePage : long = 0,
 addToMRU = true ) : void
ファイルを開きます。shareMode でファイルの共有モードを、codePage でコードページを指定します。コードページを省略するとシステム既定のコードページが使用されます。addToMRU を false にすると開いたファイルを [最近使ったファイル] に追加するのを抑止できます
SaveAll() : void全てのドキュメントを保存します

IDocument インターフェイス (Document オブジェクト)

開いているドキュメントです。

Document メンバ
プロパティ
Active : boolean (R/W)ドキュメントのアクティブ状態
BreakType : BreakType (R/W)ドキュメントで使用する既定の改行コード
CodePage : long (R/W)ドキュメントのコードページ
FileName : string (R)ドキュメントのファイル名
FilePath : string (R, default)ドキュメントのファイルパス (デフォルト)
Modified : boolean (R/W)ドキュメントが修正されたかどうか
ReadOnly : boolean (R/W)ドキュメントが読み取り専用かどうか
メソッド
ClearUndoBuffer() : voidアンドゥバッファを空にします
Close( confirm : boolean = true) : voidドキュメントを閉じます。confirmTrue を指定すると更新されたドキュメントに対して保存するかを問い合わせるダイアログが表示されます
Redo() : voidリドゥを行います
Save(
 fileName : string,
 breakType : BreakType = BreakType.AUTO,
 codePage : long = 0 ) : void
ドキュメントを名前を付けて保存します。breakType で改行コードを、codePage でコードページを指定します
Undo() : voidアンドゥを行います

IHTMLDocument インターフェイス (HTMLDocument オブジェクト)

仕様が決まっていません (MSXML のものとは異なります)。

ITextDocument インターフェイス (TextDocument オブジェクト)

テキストエディタで編集中のドキュメントです。IDocument のメンバを全て継承します。

TextDocument メンバ
プロパティ
EndPoint : TextPoint (R)ドキュメントの終端
Line( index : long ) : string (R)index 行目のテキスト。範囲が正しくない場合はエラー
LineCount : long (R)総行数
StartPoint : TextPoint (R)ドキュメントの先頭
TextProcessor : TextProcessor (R)テキストエディタ

ITextProcessor インターフェイス (TextProcessor オブジェクト)

ドキュメントの編集を行います。ウィンドウを分割している場合、全ての操作はアクティブなウィンドウに対して行われます。このオブジェクトにはデフォルトメンバはありません。

TextProcessor メンバ
プロパティ
ClipboardRing : ClipboardRing (R)クリップボードリング
Document : TextDocument (R)ドキュメント
Lexer : Lexer (R)字句解析設定オブジェクト
OvertypeMode : boolean (R/W)上書きモード
Preferences : EditorPreferences (R)エディタの表示上の設定オブジェクト
Selection : TextSelection (R)アクティブな選択範囲オブジェクト
TextSearcher : TextSearcher (R)検索オブジェクト
メソッド
BackSpace() : void1つ前の文字、または選択範囲の文字列を削除します
BeginEditCollection() : voidアンドゥグループの収集を開始します。以前のアンドゥグループの収集は終了します
CreateEditPoint( textPoint : TextPoint ) : EditPoint編集ポイントを作成します
Delete() : void1つ後の文字、または選択範囲の文字列を削除します
EndEditCollection() : voidアンドゥグループの収集を終了します
FindText( findWhat : string ) : boolean文字列を検索し、見付かった部分を選択状態にします。検索が失敗した場合は False を返します
Indent() : voidタブを挿入します。選択範囲が複数に渡る場合はタブインデントになります
NewLine() : voidドキュメントの既定改行コードで改行します
Paste() : voidクリップボードに保存されている文字列を挿入します
PasteFromClipboardRing() : voidクリップボードリングに保存されている文字列を挿入します
Unindent() : voidタブアンインデントを行います

Selection プロパティは常にアクティブな選択範囲を参照します。この動作は将来変更される可能性があります

ILexer インターフェイス (Lexer オブジェクト)

字句解析器です。ドキュメントをトークンに分けるための規則をしてするための手段を提供します。

ILexer メンバ
プロパティ
CaseSensitive : boolean = true (R/W)キーワードの大文字小文字を区別します。このプロパティの値を変更すると現在定義されているキーワードは全て削除されます
Freezed : boolean = false (R/W)True に設定すると次に False に設定するまで、規則を変更してもドキュメントの解析をやり直しません。複数の規則をまとめて設定するのに使用します
NumberFormat : NumberFormat = NumberFormat.DEFAULT (R/W)数値リテラルの形式
TokenEnabled( tokenName : string ) : boolean (R/W)tokenName で指定した名前を持つトークンを有効にするかどうかを指定します。トークンの名前は「トークンの種類と強調表示文字列」を参照してください
UnicodeAlphabetsEnabled : boolean = true (R/W)Unicode アルファベットを単語構成文字として使用するか
UnicodeWhiteSpacesEnabled : boolean = true (R/W)Unicode 空白類文字を空白類文字として使用するか
メソッド
AddKeywords( keywords : string ) : longキーワードを定義します。keywords には半角スペースで区切ったキーワードのリストを指定します。戻り値は登録したキーワードリストを後で識別するために使用します
AddMultilineAnnotation(
 startDelimiter : string,
 endDelimiter : string,
 ar : AnnotationRestriction = AnnotationRestriction.NONE ) : long
複数行注釈を定義します。ar は補足規則です。戻り値は登録した注釈を後で識別するために使用します
AddSinglelineAnnotation(
 startDelimiter : string,
 endDelimiter : string = "",
 ar : AnnotationRestriction = AnnotationRestriction.NONE ) : long
指定文字列か改行で終了する単一行注釈を定義します。endDelimiter を空文字列にすると行末で終了する注釈になります。ar は補足規則です。戻り値は登録した注釈を後で識別するために使用します
RemoveAll() : voidトークンの定義を全て削除します
RemoveIdentifiedToken( identifier : long ) : void定義したキーワード、注釈を削除します。identifier に定義時に得た値を指定します。引数が正しくない場合はエラーになります
SetAdditionalAlphabets( alphabets : string ) : void既定の単語構成文字以外に単語構成文字として認識させる文字を定義します。alphabets には定義したい文字の列を指定します (区切り文字は必要ありません)
SetBrackets( openers : string ) : void括弧として使用する文字を定義します。alphabets には定義したい開き括弧の列を指定します (区切り文字は必要ありません)。開き括弧として使用できない文字があるとエラーになります
SetOperators( operators : string ) : void演算子を定義します。operators には半角スペースで区切った演算子のリストを指定します

IEditorPreferences インターフェイス (EditorPreferences オブジェクト)

エディタの表示上の設定を保持します。文字間隔や余白などはピクセル単位で指定します

IEditorPreferences メンバ
プロパティ
CharSpan : short = 0 (R/W)エディタの文字間隔。負数は指定不可
CloseBoldChars : boolean = false (R/W)太字テキストの文字間隔を既定よりも詰めて表示
EndOfFileLabel : string = "[EOF]" (R/W)ファイルの終端マークのテキスト
IdeographicSpaceAlternativeChar : long = 0x25A1 (R/W)全角空白の代替表示に使用する文字のコードポイント。ただし U+FFFF 以下のみ
LeftMargin : short = 5 (R/W)エディタの左余白。負数は指定不可
LineNumberBorderStyle : LineNumberBorderStyle = LineNumberBorderStyle.NONE (R/W)行番号の枠線のスタイル
LineNumberBorderWidth : short = 1 (R/W)行番号の枠線の幅
LineSpan : short = 0 (R/W)エディタの行間隔。負数は指定不可
MatchBracketScanLines : long = 100 (R/W)対括弧を検索するときの限界行数
PerformBidirection : boolean = true (R/W) New!双方向テキストを考慮するか
ResetDirectionByTokens : boolean = true (R/W)テキストの方向をトークンごとにリセット (未実装。常に真)
RightToLeftReading : boolean = false (R/W)テキストを右から左に表示 (未実装)
SelectEndOfLine : boolean = false (R/W)行末も選択状態にする
ShowCurrentUnderline : boolean = false (R/W)現在行に下線を表示する
ShowEndOfFile : boolean = false (R/W)ファイルの終端マークを表示する
ShowEndOfLine : boolean = false (R/W)行末の矢印を表示する
ShowHandOnLink : boolean = false (R/W)リンクテキスト上でハンドカーソルを表示する
ShowHintOnLink : boolean = true (R/W)リンクテキスト上でポップアップを表示する
ShowLineNumber : boolean = false (R/W)行番号を表示する
ShowIndicatorMargin : boolean = false (R/W)インジケータマージンを表示する
ShowUnicodeDirectionFormatter : boolean = false (R/W)Unicode 方向制御文字を表示する (未実装)
ShowWhiteSpaceAlternative : boolean = false (R/W)空白類文字 (タブ含む) を代替表示する
StartCharNumber : long = 1 (R/W)文字番号の開始値。負数は指定不可
StartLineNumber : long = 1 (R/W)行番号の開始値。負数は指定不可
TabAlternativeChar : long = 0x005E (R/W)タブの代替表示に使用する文字のコードポイント。ただし U+FFFF 以下のみ
TokenDecoration( tokenTypeName : string ) : TokenDecoration (R)tokenTypeName で指定した名前のトークンの強調表示属性
TopMargin : short = 1 (R/W)エディタの上余白。負数は指定不可
WhiteSpaceAlternativeChar : long = 0x005F (R/W)空白類文字の代替表示に使用する文字のコードポイント。ただし U+FFFF 以下のみ
WrapMode : WrapMode = WrapMode.NOWRAP (R/W)折り返しの方法 (未実装)
WrapWidth : short (W)折り返し幅 (未実装)
メソッド
Reset() : void設定を既定の状態に戻します

ITokenDecoration インターフェイス (TokenDecoration オブジェクト)

各トークンの修飾情報を保持します。色情報は VBScript の RGB 関数で得られる数値と同じです。つまり (R << 16) + (G << 8) + B で計算されます。0xFFFFFFFF はシステムの既定値を使用することを意味します

ITokenDecoration メンバ
プロパティ
BackgroundColor : long (R/W)背景色
BoldFont : boolean (R/W)太字フォントか
BorderStyle : BorderType (R/W)下線/枠線
BorderColor : long (R/W)下線/枠線色。0xFFFFFFFF を指定すると文字色と同じ
Color : long (R/W)文字色
ItalicFont : boolean (R/W)イタリック体フォントか

ITextSelection インターフェイス (TextSelection オブジェクト)

選択範囲、キャレットの操作を行います。Ambient オブジェクトモデルにおける行位置、文字位置、ドキュメント先頭からの絶対オフセットは全て0から始まります。

TextSelection メンバ
プロパティ
ActiveEndGreater : boolean (R)アクティブポイントがアンカーポイントより後方にあれば真
ActivePoint : TextPoint (R)アクティブポイント
AnchorPoint : TextPoint (R)アンカーポイント
BottomPoint : TextPoint (R)選択終了点
Empty : boolean (R)選択が空であれば真
Text : string (R, default)選択中の文字列 (デフォルト)
TextRanges : TextRanges選択の各行を要素とする TextRange オブジェクト
TopPoint : TextPoint選択開始点
メソッド
Cancel() : void選択を解除します
CharNext(
 extend : boolean = false,
 cch : long = 1 ) : void
キャレットを cch 文字進めます。extendTrue を指定すると現在の選択は保持されます
CharPrev(
 extend : boolean = false,
 cch : long = 1 ) : void
キャレットを cch 文字戻します。extendTrue を指定すると現在の選択は保持されます
Convert( ct : ConvertType ) : void選択範囲のテキストを変換します (未実装)
Copy( alsoSendToClipboardRing = true ) : void選択範囲の文字列をクリップボードとクリップボードリングにコピーします
Cut( alsoSendToClipboardRing = true ) : void選択範囲の文字列を削除し、クリップボードとクリップボードリングにコピーします
LineDown(
 extend : boolean = false,
 lines : long = 1 ) : void
キャレットを lines 行下に移動します。extendTrue を指定すると現在の選択は保持されます
LineUp(
 extend : boolean = false,
 lines : long = 1 ) : void
キャレットを lines 行上に移動します。extendTrue を指定すると現在の選択は保持されます
MoveTo(
 line : long,
 char : long,
 extend : boolean = false ) : void
キャレットを linechar 文字目に移動します。extendTrue を指定すると現在の選択は保持されます
MoveToEndOfDocument( extend : boolean = false ) : voidキャレットをドキュメントの終端に移動します。extendTrue を指定すると現在の選択は保持されます
MoveToEndOfLine( extend : boolean = false ) : voidキャレットを行末に移動します。extendTrue を指定すると現在の選択は保持されます
MoveToNextBookmark( extend : boolean = false ) : voidキャレットを次のブックマークに移動します。extendTrue を指定すると現在の選択は保持されます
MoveToPreviousBookmark( extend : boolean = false ) : voidキャレットを前のブックマークに移動します。extendTrue を指定すると現在の選択は保持されます
MoveToStartOfDocument( extend : boolean = false ) : voidキャレットをドキュメントの先頭に移動します。extendTrue を指定すると現在の選択は保持されます
MoveToStartOfLine( extend : boolean = false ) : voidキャレットを行頭に移動します。extendTrue を指定すると現在の選択は保持されます
PageDown(
 extend : boolean = false,
 pages : long = 1 ) : void
キャレットを pages ページ下に移動します。extendTrue を指定すると現在の選択は保持されます
PageUp(
 extend : boolean = false,
 pages : long = 1 ) : void
キャレットを pages ページ上に移動します。extendTrue を指定すると現在の選択は保持されます
Paste() : void選択範囲をクリップボードの内容で置換します
PasteFromClipboardRing() : void選択範囲をクリップボードリングの内容で置換します
Replace( newText : string ) : void選択範囲を newText で置換します
SelectAll() : voidドキュメント全体を選択します
SelectLine( line : long ) : voidline 番目の行全体を選択します
SwapAnchor() : voidアクティブポイントとアンカーポイントを入れ替えます
Tabify() : void選択範囲の空白類文字をタブに変換します (未実装)
Untabify() : void選択範囲のタブを空白類文字に変換します (未実装)
WordEndNext(
 extend : boolean = false,
 words : long = 1 ) : void
キャレットを words 個次の単語の末尾に移動します。extendTrue を指定すると現在の選択は保持されます (未実装)
WordEndPrev(
 extend : boolean = false,
 words : long = 1 ) : void
キャレットを words 個前の単語の末尾に移動します。extendTrue を指定すると現在の選択は保持されます (未実装)
WordNext(
 extend : boolean = false,
 words : long = 1 ) : void
キャレットを words 個次の単語の先頭に移動します。extendTrue を指定すると現在の選択は保持されます
WordPrev(
 extend : boolean = false,
 words : long = 1 ) : void
キャレットを words 個前の単語の先頭に移動します。extendTrue を指定すると現在の選択は保持されます

ITextRanges インターフェイス (TextRanges コレクション)

TextRange のコレクションです。

TextRanges メンバ
プロパティ
Count : long (R)要素数
メソッド
Item( index : long ) : TextRange (default)index 番目のオブジェクトを返します (デフォルト)

ITextRange インターフェイス (TextRange オブジェクト)

2つの TextPoint からなるドキュメントの特定の範囲です。

TextRange メンバ
プロパティ
EndPoint : TextPoint (R)終了点
StartPoint : TextPoint (R)開始点

ITextPoint インターフェイス (TextPoint オブジェクト)

ドキュメント中の位置を表します。

TextPoint メンバ
プロパティ
AbsoluteCharOffset : long (R)ドキュメントの先頭からの文字数
AtEndOfDocument : boolean (R)ドキュメントの終端であれば真
AtEndOfLine : boolean (R)行末であれば真
AtStartOfDocument : boolean (R)ドキュメントの先頭であれば真
AtStartOfLine : boolean (R)行頭であれば真
Char : long (R)何文字目か
Column : long (R)何列目か
Line : long (R)行番号
LineLength : long (R)行の長さ
メソッド
CreateEditPoint() : EditPoint編集ポイントを作成します
EnsureCentered( cch : long ) : boolean現在位置から cch 文字の範囲がビューの中央になるようにスクロールします。範囲がエディタウィンドウに納まらない場合は False を返します
EnsureCentered( other : TextPoint ) : boolean現在位置から other までの範囲がビューの中央になるようにスクロールします。範囲がエディタウィンドウに納まらない場合は False を返します
EnsureVisible( cch : long ) : boolean現在位置から cch 文字の範囲が可視になるようにスクロールします。範囲がエディタウィンドウに納まらない場合は False を返します
EnsureVisible( other : TextPoint ) : boolean現在位置から other までの範囲が可視になるようにスクロールします。範囲がエディタウィンドウに納まらない場合は False を返します
EqualTo( textPoint : TextPoint ) : boolean点同士を比較します
GreaterThan( textPoint : TextPoint ) : boolean点同士を比較します
LessThan( textPoint : TextPoint ) : boolean点同士を比較します

IEditPoint インターフェイス (EditPoint オブジェクト)

編集可能な点を表します。ITextPoint のメンバを全て継承します。

IEditPoint メンバ
プロパティ
CharCountBehavior : CharCountBehavior
 = CharCountBehavior.CLUSTER (R/W)
文字数の数え方
メソッド
CharNext( cch : long = 1 ) : voidcch 文字次に移動します
CharPrev( cch : long = 1 ) : voidcch 文字前に移動します
Convert(
 ct : ConvertType
 textPoint : TextPoint ) : void
現在位置から textPoint までの範囲のテキストを変換します (未実装)
Convert(
 ct : ConvertType
 cch : long ) : void
現在位置から cch 文字の範囲のテキストを変換します (未実装)
Copy( cch : long ) : void現在位置から cch 文字の範囲をクリップボードにコピーします
Copy( other : TextPoint ) : void現在位置から other までの範囲をクリップボードにコピーします
Cut( cch : long ) : void現在位置から cch 文字の範囲を削除し、クリップボードにコピーします
Cut( other : TextPoint ) : void現在位置から other までの範囲を削除し、クリップボードにコピーします
Delete( cch : long ) : void現在位置から cch 文字の範囲を削除します
Delete( other : TextPoint ) : void現在位置から other までの範囲を削除します
DestructiveInsert( newText : string ) : void現在位置に newText で指定したテキストを挿入します。既存のテキストは上書きされます
GetText( cch : long ) : string現在位置から cch 文字の範囲の文字列を返します
GetText( other : TextPoint ) : string現在位置から other までの範囲の文字列を返します
Insert( newText : string ) : void現在位置に newText で指定したテキストを挿入します
Indent(
 level : short = 1,
 textPoint : TextPoint = null ) : void
この点を含む行から textPoint を含む行を level レベルだけタブインデントします。textPoint を省略するとこの点を含む行だけがインデントされます
LineDown( lines : long = 1) : voidlines 行下に移動します
LineUp( lines : long = 1) : voidlines 行上に移動します
MoveTo(
 line : long,
 char : long) : void
line 行、char 文字目に移動します
MoveToAbsoluteOffset(
 offset : long) : void
ドキュメント先頭からの絶対文字オフセットに移動します
MoveToEndOfDocument() : voidドキュメントの終端に移動します
MoveToEndOfLine() : void行末に移動します
MoveToNextBookmark() : void次のブックマーク行の行頭に移動します
MoveToPreviousBookmark() : void前のブックマーク行の行頭に移動します
MoveToStartOfDocument() : voidドキュメントの先頭に移動します
MoveToStartOfLine() : void行頭に移動します
NewLine() : void既定の改行文字を挿入します
Paste( textPoint : TextPoint ) : void現在位置から textPoint までの範囲をクリップボードの内容で置換します
Paste( cch : long = 0 ) : void現在位置から cch 文字範囲をクリップボードの内容で置換します
Replace(
 newText : string,
 textPoint : TextPoint ) : void
現在位置から textPoint までの範囲を newText で置換します
Replace(
 newText : string,
 cch : long = 0 ) : void
現在位置から cch 文字の範囲を newText で置換します
TransposeChars() : void New!前後の文字を入れ替えます
TransposeLines() : void New!前後の行を入れ替えます
TransposeParagraphs() : void New!前後の段落を入れ替えます (未実装)
TransposeWords() : void New!前後の単語を入れ替えます
Unindent(
 level : short = 1,
 textPoint : TextPoint = null ) : void
この点を含む行から textPoint を含む行を level レベルだけタブアンインデントします。textPoint を省略するとこの点を含む行だけがインデントされます
WordEndNext( words : long = 1 ) : voidwords 個次の単語の先頭に移動します
WordEndPrev( words : long = 1 ) : voidwords 個前の単語の先頭に移動します
WordNext( words : long = 1 ) : voidwords 個次の単語の先頭に移動します
WordPrev( words : long = 1 ) : voidwords 個前の単語の先頭に移動します

ITextSearcher インターフェイス (TextSearcher オブジェクト)

検索と置換の実行と条件設定の保持を行います。このオブジェクトは複数のエディタから参照できますが、1つしか存在しません。

TextSearcher メンバ
プロパティ
FindWhat : string (R/W)検索文字列
IgnoreCase : CaseFoldingType (R/W)
 = CaseFoldingType.MATCH_CASE
大文字と小文字を区別しない
IgnoreControls : boolean (R/W) = false制御文字と書式指定文字を無視
IgnoreDiacritics : boolean (R/W) = false分音符を無視
IgnoreDigitScript : boolean (R/W) = false数字の種類を区別しない
IgnoreKashida : boolean (R/W) = falseカシダを無視 (未実装)
IgnorePunctuations : boolean (R/W) = false区切り文字を無視
IgnoreSymbols : boolean (R/W) = false記号を無視 (未実装)
IgnoreVowels : boolean (R/W) = false母音字 (結合母音字含む) を無視
IgnoreWhitespaces : boolean (R/W) = false空白類文字を無視
IgnoreWidth : boolean (R/W) = false全角文字と半角文字を区別しない
MatchAlefHamza : boolean (R/W) = falseアレフハムザを区別しない
MatchFuzzyAYaFollowingIE : boolean (R/W) = false[日本語あいまい検索] イ段、エ段に続く 「ア」 と 「ヤ」 を区別しない
MatchFuzzyBV : boolean (R/W) = false[日本語あいまい検索]「バ」 と 「ヴァ」、「ハ」 と 「ファ」 を区別しない (未実装)
MatchFuzzyDash : boolean (R/W) = false[日本語あいまい検索] マイナス記号、長音、ダッシュを区別しない
MatchFuzzyDZ : boolean (R/W) = false[日本語あいまい検索]「ヂ」 と 「ジ」、「ヅ」 と 「ズ」 を区別しない
MatchFuzzyHF : boolean (R/W) = false[日本語あいまい検索]「ヒュ」 と 「フュ」、「ビュ」 と 「ヴュ」 を区別しない
MatchFuzzyKana : boolean (R/W) = false[日本語あいまい検索] 平仮名と片仮名を区別しない
MatchFuzzyKanji : boolean (R/W) = false[日本語あいまい検索] 標準漢字と異体字を区別しない
MatchFuzzyKiKuFollowedByS : boolean (R/W) = false[日本語あいまい検索] サ行の前の 「キ」 と 「ク」 を区別しない
MatchFuzzyLegacyKana : boolean (R/W) = false[日本語あいまい検索] 仮名の新字体と旧字体を区別しない
MatchFuzzyProlongedSoundMark : boolean (R/W) = false[日本語あいまい検索] 長音と母音の伸ばす音を区別しない
MatchFuzzySmallKana : boolean (R/W) = false[日本語あいまい検索] 拗音、促音を区別しない
MatchFuzzyTC : boolean (R/W) = false[日本語あいまい検索]「ツィ」 と 「ティ」 と 「チ」、「ディ」 と 「ジ」 を区別しない
MatchFuzzyZJ : boolean (R/W) = false[日本語あいまい検索]「セ」 と 「シェ」、「ゼ」 と 「ジェ」 を区別しない (未実装)
OnlyIdentifiers : boolean (R/W) = false識別子のみを検索 (未実装)
ReplaceWith : string (R/W) New!置換文字列
UseRegularExpression : boolean = false (R/W)正規表現を使う
WholeWord : boolean (R/W) = false単語単位で検索
メソッド
BookmarkAll() : long条件に一致する文字列をを含む全ての行にブックマークを設定し、ブックマークを設定した行数を返します
FindNext() : boolean前方で一致する文字列を選択状態にします。検索に失敗した場合は偽を返します
FindPrev() : boolean後方で一致する文字列を選択状態にします。検索に失敗した場合は偽を返します
ReplaceAll() : long New!条件に一致する全ての文字列を置換し、置換した個数を返します
ReplaceAndNext() : boolean現在の選択が条件に一致していれば置換を行い、前方で一致する文字列を選択状態にします。検索に失敗した場合は偽を返します
ReplaceAndPrev() : boolean現在の選択が条件に一致していれば置換を行い、後方で一致する文字列を選択状態にします。検索に失敗した場合は偽を返します

IClipboardRing インターフェイス (ClipboardRing オブジェクト)

クリップボードリングです。インデックスは最も新しいものが0になります。このオブジェクトは複数のエディタから参照できますが、1つしか存在しません。

ClipboardRing メンバ
プロパティ
Count : short (R)格納されているテキストの総数
Text( index : short ) : string (R, default)index 番目に格納されているテキスト (デフォルト)
メソッド
Add( text : string ) : voidテキストを追加します。最大格納数を超えた場合は一番古いものが削除されます
Delete( index : short ) : voidindex 番目の内容を削除します
DeleteAll() : void全てのテキストを削除します
LimitCount( limit : short ) : void最大格納数を設定します

IScriptHost インターフェイス (ScriptHost オブジェクト)

スクリプトホストです。このオブジェクトは Windows Script Host の WScript オブジェクトと同じメンバ持ちます Alpha では WScript で参照可能です。

ScriptHost メンバ
プロパティ
Arguments : Arguments (R)スクリプトの引数
BuildVersion : long (R)スクリプトホストのビルド番号
FullName : string (R)スクリプトホストのフルパス
Interactive : boolean (R/W)対話モード
Name : string (R, default)スクリプトホスト名 (デフォルト)
ScriptFullName : string (R)実行中のスクリプトのフルパス
ScriptName : string (R)実行中のスクリプトの名前
StdErr : object (R)標準エラー (未サポート)
StdIn : object (R)標準入力 (未サポート)
StdOut : object (R)標準出力 (未サポート)
Timeout : long (R/W)スクリプトのタイムアウト
Version : string (R)スクリプトホストのバージョン
メソッド
CreateObject(
 progId : string,
 prefix : string = "" ) : object
progId で指定した ProgID のオートメーションオブジェクトを作成します。prefix は無視されます
ConnectObject(
 obj : object,
 prefix : string ) : void
(未サポート)
DisconnectObject( obj : object ) : void(未サポート)
Echo(
 arg0 : string,
 arg1 : string, ... ) : void
arg0, arg1, ... をメッセージボックスで表示します。各引数の区切りには半角空白が使用されます
GetObject(
 pathName : string,
 progId : string = "",
 prefix : string = "" ) : object
pathName で指定した表示名に対応するオートメーションオブジェクトを作成またはアクティブにします。progId で作成されるオブジェクトの ProgID を指定することもできます。prefix は無視されます
Quit( ) : voidスクリプトの実行を終了します
Sleep( milliseconds : long ) : void現在のスレッドの実行を milliseconds ミリ秒中断します

IArguments インターフェイス (Arguments オブジェクト)

スクリプトの引数です。このオブジェクトはコレクションです。

Arguments メンバ
プロパティ
Item( index : long ) : string (R, default)index 番目の引数を返します
Length : long (R)引数の総数を返します
Named : NamedArguments (R)名前付き引数 (未サポート)
Unnamed : UnnamedArguments (R)名前無し引数 (未サポート)
メソッド
Count() : long引数の総数を返します
ShowUsage() : voidスクリプトの引数の意味をメッセージボックスで表示します (未サポート)

INamedArguments インターフェイス (NamedArguments オブジェクト)

名前付き引数です。このオブジェクトはコレクションです。

NamedArguments メンバ
プロパティ
Item( name : string ) : string (R, default)名前が name の引数を返します
Length : long (R)名前付き引数の総数を返します
メソッド
Count() : long名前付き引数の総数を返します
Exists( name : string ) : booleanname で指定した名前の引数が存在するかどうかを返します

IUnnamedArguments インターフェイス (UnnamedArguments オブジェクト)

名前無し引数です。このオブジェクトはコレクションです。

UnnamedArguments メンバ
プロパティ
Item( index : long ) : string (R, default)index 番目の引数を返します
Length : long (R)名前無し引数の総数を返します
メソッド
Count() : long名前無し引数の総数を返します

イベント

以下のイベントハンドラが適宜呼び出されます。イベントハンドラは events.* (拡張子は任意) に記述する必要があります。

イベント
イベントハンドラ
OnApplicationInitialized(
  args : Arguments ) : void
アプリケーションの初期化が終了したとき呼び出されます。args はプログラム起動時に渡された引数になります
OnApplicationTerminating() : voidアプリケーション終了時に呼び出されます。イベントハンドラから戻った後、確実にアプリケーションが終了するとは限りません
OnApplyDocumentType(
 typeName : string,
 editor : TextProcessor ) : void
ドキュメントに文書タイプが適用されるときに呼び出されます。typeName が適用される文書タイプ名、editor がドキュメントのテキストプロセッサ (テキストエディタ) になります。Alpha はこのイベントハンドラを呼び出す直前に ILexer::Freezed = trueILexer::RemoveAll() 、処理が返った直後に ILexer::Freezed = false で字句解析器のロックを行います

WindowState

ウィンドウの状態を表します。

WindowState
MAXIMIZED = 0x00最大化
MINIMIZED = 0x01最小化
NORMAL = 0x02通常

FileShareMode

ファイルの共有モードです。

FileShareMode
DENY_NONE = 0x00排他処理無し
DENY_WRITE = 0x01他プロセスの書き込みを拒否
DENY_READ = 0x02他プロセスの読み込みを拒否

BreakType

改行コードの種類です。

BreakType
AUTO = 0x00自動。現在の値
LF = 0x01改行 (U+000A)
CR = 0x02復改 (U+000D)
CRLF = 0x03復改+改行 (U+000D, U+000A)
NEL = 0x04新行 (U+0085)
LS = 0x05行区切り (U+2028)
PS = 0x06段落区切り (U+2029)

ConvertType

ITextSelection::ConvertIEditPoint::Convert に使用する変換フラグです。

ほとんど実装されていません。

ConvertType
UPPERCASE_ASCII大文字に変換 (ASCII)
UPPERCASE_SIMPLE大文字に変換 (単純)
UPPERCASE_FULL大文字に変換 (完全)
LOWERCASE_ASCII小文字に変換 (ASCII)
LOWERCASE_SIMPLE小文字に変換 (単純)
LOWERCASE_FULL小文字に変換 (完全)
CAPITALIZE_ASCII単語の先頭を大文字に変換 (ASCII)
CAPITALIZE_SIMPLE単語の先頭を大文字に変換 (単純)
CAPITALIZE_FULL単語の先頭を大文字に変換 (完全)
HIRAGANA平仮名に変換
KATAKANA片仮名に変換
SIMPLIFIED_CHINESE簡体字中国語に変換
TRADITIONAL_CHINESE繁体字中国語に変換
FULLWIDTH全角文字に変換
HALFWIDTH半角文字に変換
ARABIC_DIGIT数字を全てアラビア数字 (0-9) に変換
REMOVE_NON_SPACE場所をとらない文字 (分音符、非独立母音字) を削除します
REMOVE_ARABIC_KASHIDAカシダを削除します
COMPOSE複合文字に結合
DECOMPOSE複合文字を分解

CharCountBehavior

IEditPoint の操作における文字数の数え方を表します。

CharCountBehavior
UTF16 = 0x00UTF-16 単位
UTF32 = 0x01UTF-32 単位 (サロゲートペアを1文字とみなす)
CLUSTER = 0x02文字クラスタ単位 (サロゲートペア、複合文字を1文字とみなす)
DEFAULT = 0x03現在使用していません

CaseFoldingType

検索時に大文字小文字の区別の方法を表します。

CaseFoldingType
MATCH_CASE = 0x00大文字小文字を区別する
IGNORE_ASCII_ALPHABETS = 0x01ASCII のアルファベットのみ区別しない
UNICODE_SIMPLE = 0x02Unicode の単純同一視 (不完全実装)
UNICODE_FULL = 0x03Unicode の完全同一視 (未実装)

NumberFormat

ILexer が数値リテラルの解析に使う書式です。ほとんど実装されていません。

NumberFormat
DEFAULT = 0x00Alpha 0.7.5.1 までの規則
CPP = 0x01C++
PERL = 0x02Perl 5
RUBY = 0x03Ruby 1.8
VBSCRIPT = 0x04VBScript 5.6
JAVASCRIPT_1_5 = 0x05JavaScript 1.5 (ECMAScript 3)
JAVASCRIPT_2_0 = 0x06JavaScript 2.0 (ECMAScript 4)

AnnotationRestriction

ILexer::AddMultilineAnnotationILexer::AddSinglelineAnnotation で注釈を登録するときに使用する字句解析の補足規則です。例えば AAR_ONLYSTARTOFLINE を指定すると登録した注釈は行頭にある場合にしか強調表示されなくなります。

AnnotationRestriction
NONE = 0x00無し
ONLY_START_OF_LINE = 0x01行頭のみ
ONLY_HEAD_OF_LINE = 0x02空白類文字でない最初のトークン

LineNumberBorderStyle

IEditorPreferences::LineNumberBorderStyle で使用する行番号の区切り線のスタイルです。

LineNumberBorderStyle
NONE = 0x00無し
SOLID = 0x01実線
DASHED = 0x02破線
DOTTED = 0x03点線

WrapMode

IEditorPreferences::WrapMode で使用する折り返し方法の種類です。

WrapMode
NOWRAP = 0x00折り返さない
BY_SPECIFIED_WIDTH = 0x01指定幅 (IEditorPreferences::WrapWidth プロパティの値) で折り返す
BY_WINDOW_WIDTH = 0x02ウィンドウの右端で折り返す

BorderType

ITokenDecoration::BorderStyle プロパティで使用する下線/枠線の種類です。

BorderType
NONE = 0x00無し
UNDERLINE_SOLID = 0x01実線の下線
UNDERLINE_BOLD = 0x02太線の下線
UNDERLINE_DASHED = 0x03破線の下線
UNDERLINE_BOLD_DASHED = 0x04太い破線の下線
UNDERLINE_DOTTED = 0x05点線の下線
UNDERLINE_BOLD_DOTTED = 0x06太い点線の下線
UNDERLINE_WAVED = 0x07波線の下線
BORDER_SOLID = 0x08実線の枠線
BORDER_DASHED = 0x09破線の枠線
BORDER_DOTTED = 0x0A点線の枠線

トークンの種類と強調表示文字列

ILexer::TokenEnabled で使用可能なトークンの名前は以下の通りです。

トークンの種類
名前説明
whiteSpace空白類文字列
tab水平タブ
keywordキーワード
annotation注釈
operator演算子
identifier識別子
numeral数字
number数値
singleQuotation一重引用符文字列
doubleQuotation二重引用符文字列
otherQuotationその他の Unicode 引用符文字列
asciiControlASCII 制御文字
unicodeControlUnicode 制御文字
unspecified未分類の文字

IEditorPreferences::TokenDecoration では上記のトークン名に加えて以下の強調表示名が使用できます。

強調表示文字列の種類
名前説明
normal通常のテキスト
selection選択領域
inactiveSelectionウィンドウが非アクティブ時の選択領域
indicatorMarginインジケータマージン
lineNumber行番号
emphaticLineNumber強調行番号
matchBrackets括弧の一致
endOfLine改行
endOfFileファイルの終端
linkURL とメールアドレス
matchText検索一致テキスト

これらの種類は将来拡張される可能性があります。

設定プロパティの一覧

IConfigurations::Property プロパティは名前付き値のコレクションになっており、アプリケーションの種々の設定項目に対応しています。このプロパティを変更することにより設定を変更できます。この設定項目の一覧は以下の通りです

現在公開されている設定項目はありません。

設定プロパティ
名前 (*1)意味バージョン (*2)
分類=ファイル

キー割り当てで利用可能なキーの名前

IKeyboardScheme::Assign で使用するキー組み合わせを意味する文字列の構文則は以下の通りです

KeyStroke ::=
KeyCombination
KeyCombination <SP> KeyCombination
KeyCombination ::=
Modifiers MainKey
Modifiers ::=
Modifier Modifiers
Modifier ::=
Ctrl+ | Shift+ | Alt+ | C- | S- | M-

メインのキー名の部分には以下を使用します。これらの名前は大文字小文字を区別しません

メインキーの名前
キー名前
F1 ... F24"F1" ... "F24"
Tab"Tab"
Escape"Esc" か "Escape"
BackSpace"Bs" か "BackSpace"
Insert"Ins" か "Insert"
Delete"Del" か "Delete"
Home"Home"
End"End
"Left"
"Up"
"Right"
"Down"
PageDown"PgDn" か "PageDown"
PageUp"PgUp" か "PageUp"
Space"Sp" か "Space"
0 ... 9"0" ... "9"
A ... Z"A" ... "Z"
- ^ \ @ [ ; : ] , . / _"-" "^" "\" "@" "[" ";" ":" "]" "," "." "/" "_"

コマンド識別子

IKeyboardScheme::Assign などで使用するコマンド識別子は以下の通りです (括弧付きのキー組み合わせはアプリケーションでの設定ではなく、組み込みエディタの設定をそのまま利用していることを表します)

コマンド識別子
コマンド名識別子導入バージョン (Alpha)既定のキー割り当て
分類 : ファイル
新規10000.7.5.2Ctrl+N
書式を指定して新規10010.7.5.2
開く10020.7.5.2Ctrl+O
閉じる10030.7.5.2Ctrl+F4
すべて閉じる10040.7.5.2
上書き保存10050.7.5.2Ctrl+S
名前を付けて保存10060.7.5.2Ctrl+Shift+S
すべて保存10070.7.5.2
開き直す10080.7.5.2
コードページを指定して開き直す10090.7.5.2
Alpha の終了10100.7.5.2Alt+F4
プロパティ10110.7.5.2
名前の変更10120.7.5.2
移動10130.7.5.2
コピー10140.7.5.2
削除10150.7.5.2
送信10160.7.5.2
他を閉じる10170.7.5.5
分類 : 編集
削除20000.7.5.2Del
前の1文字を削除20010.7.5.2(BackSpace)
次の単語まで削除20020.7.5.2(Ctrl+Del)
前の単語まで削除20030.7.5.2(Ctrl+BackSpace)
現在行を削除20040.7.5.2Ctrl+Shift+L (or Shift+Del)
上に1行挿入20050.7.5.2(Ctrl+Enter)
改行20060.7.5.2(Enter)
元に戻す20070.7.5.2Ctrl+Z or Alt+BackSpace
やり直し20080.7.5.2Ctrl+Y or Ctrl+Shift+Z or Shift+Alt+BackSpace
切り取り20090.7.5.2Ctrl+X or Shift+Del
コピー20100.7.5.2Ctrl+C or Ctrl+Insert
貼り付け20110.7.5.2Ctrl+V or Shift+Insert
タブを挿入20120.7.5.2(Tab)
タブを削除20130.7.5.2(Shift+Tab)
空白をタブに変換2014-
タブを空白に変換2015-
文字をコードポイントに変換20160.7.5.2Shift+Alt+X
コードポイントを文字に変換20170.7.5.2Alt+X
次の入力を低アクセント付きにする20180.7.5.2Ctrl+Shift+@
次の入力を鋭アクセント付きにする20190.7.5.2Ctrl+Shift+7
次の入力を曲折アクセント付きにする20200.7.5.2Ctrl+^
次の入力を鼻音化する20210.7.5.2Ctrl+Shift+^
次の入力をウムラウト化する20220.7.5.2Ctrl+:
次の入力をセディーユ化する20230.7.5.2Ctrl+,
再変換20240.7.5.2
挿入/上書きモードの変換20250.7.5.2(Insert)
入力候補2026-Ctrl+Space
文書の先頭に移動20270.7.5.2(Ctrl+Home)
文書の終端に移動20280.7.5.2(Ctrl+End)
行頭に移動20290.7.5.2(Home)
行末に移動20300.7.5.2(End)
次の文字に移動20310.7.5.2(→)
前の文字に移動20320.7.5.2(←)
次の単語の終端に移動20330.7.5.2
前の単語の終端に移動20340.7.5.2
次の単語の先頭に移動20350.7.5.2(Ctrl+→)
前の単語の先頭に移動20360.7.5.2(Ctrl+←)
1行下に移動20370.7.5.2(↓)
1行上に移動20380.7.5.2(↑)
1ページ下に移動20390.7.5.2(PageDown)
1ページ上に移動20400.7.5.2(PageUp)
文書の先頭まで選択を拡張20410.7.5.2(Ctrl+Shift+Home)
文書の終端まで選択を拡張20420.7.5.2(Ctrl+Shift+End)
行頭まで選択を拡張20430.7.5.2(Shift+Home)
行末まで選択を拡張20440.7.5.2(Shift+End)
次の文字まで選択を拡張20450.7.5.2(Shift+→)
前の文字まで選択を拡張20460.7.5.2(Shift+←)
次の単語の終端まで選択を拡張20470.7.5.2
前の単語の終端まで選択を拡張20480.7.5.2
次の単語の先頭まで選択を拡張20490.7.5.2(Ctrl+Shift+→)
前の単語の先頭まで選択を拡張20500.7.5.2(Ctrl+Shift+←)
1行下まで選択を拡張20510.7.5.2(Shift+↓)
1行上まで選択を拡張20520.7.5.2(Shift+↑)
1ページ下まで選択を拡張20530.7.5.2(Shift+PageDown)
1ページ上まで選択を拡張20540.7.5.2(Shift+PageUp)
すべて選択20550.7.5.2Ctrl+A
現在の単語を選択20560.7.5.2Ctrl+W
選択を解除20570.7.5.2(Esc)
先頭行へスクロール20580.7.5.2
最終行へスクロール20590.7.5.2
1行下へスクロール20600.7.5.2(Ctrl+↓)
1行上へスクロール20610.7.5.2(Ctrl+↑)
1ページ下へスクロール20620.7.5.2(Ctrl+PageDown)
1ページ上へスクロール20630.7.5.2(Ctrl+PageUp)
1列右へスクロール20640.7.5.2
1列左へスクロール20650.7.5.2
キャレットが中央になるまでスクロール20660.7.5.2
キャレットが可視になるまでスクロール20670.7.5.2
次の入力を上付き文字にする20680.7.5.2Ctrl+Shift+-
次の入力を下付き文字にする20690.7.5.2Ctrl+-
次の文字まで矩形選択を拡張20700.7.5.2Shift+Alt+→
前の文字まで矩形選択を拡張20710.7.5.2Shift+Alt+←
1行下まで矩形選択を拡張20720.7.5.2Shift+Alt+↓
1行上まで矩形選択を拡張20730.7.5.2Shift+Alt+↑
行末まで矩形選択を拡張20740.7.5.2Shift+Alt+End
行頭まで矩形選択を拡張20750.7.5.2Shift+Alt+Home
次の単語の先頭まで矩形選択を拡張20760.7.5.2Ctrl+Shift+Alt+→
前の単語の先頭まで矩形選択を拡張20770.7.5.2Ctrl+Shift+Alt+←
次の単語の終端まで矩形選択を拡張20780.7.5.2
前の単語の終端まで矩形選択を拡張20790.7.5.2
クリップボードリングから貼り付け20800.7.5.2Ctrl+Shift+V or Ctrl+Shift+Insert
1行上の同じ位置の文字を挿入20810.7.5.2Ctrl+U
1行下の同じ位置の文字を挿入20820.7.5.2Ctrl+Shift+U
前後の行を入れ替え20830.7.5.5
前後の文字を入れ替え20840.7.5.5Ctrl+T
前後の単語を入れ替え20850.7.5.5Ctrl+Shift+T
短縮語句の管理20860.7.5.5
分類 : 検索
検索と置換30000.7.5.2Ctrl+F
次を検索30010.7.5.2F3
前を検索30020.7.5.2Shift+F3
置換30030.7.5.2
置換して次に30040.7.5.2
すべて置換30050.7.5.2
すべてブックマーク30060.7.5.2
検索マークの解除30070.7.5.5
行に移動30080.7.5.2Ctrl+G
ブックマークの設定/解除30090.7.5.2Ctrl+F2
次のブックマーク30100.7.5.2F2
前のブックマーク30110.7.5.2Shift+F2
ブックマークのクリア30120.7.5.2Ctrl+Shift+F2
ブックマークの管理30130.7.5.2Alt+F2
対括弧に移動30140.7.5.2Ctrl+[
対括弧まで選択を拡張30150.7.5.2Ctrl+Shift+[
インクリメンタル検索30160.7.5.3Ctrl+I
逆方向インクリメンタル検索30170.7.5.5Ctrl+Shift+I
分類 : 表示
ツールバー40000.7.5.2
ステータスバー40010.7.5.2
折り返さない4002-
指定幅で折り返す4003-
ウィンドウ幅で折り返す4004-
再描画40050.7.5.2Alt+F5
分割40060.7.5.2
次のタブ 次のバッファ40070.7.5.2Ctrl+Tab
前のタブ 前のバッファ40080.7.5.2Ctrl+Shift+Tab
タブバー バッファバー40090.7.5.2
常に最前面に表示40100.7.5.5
分類 : マクロ
キーマクロの記録50000.7.5.2Ctrl+Shift+R
キーマクロの実行50010.7.5.2Ctrl+Shift+P
キーマクロの記録終了50020.7.5.2
キーマクロの記録中止50030.7.5.2
キーマクロの記録一時停止/再開50040.7.5.2
キーマクロに名前を付けて保存50050.7.5.2
マクロの一覧5006-
各スクリプトマクロ11300-114990.7.5.3
分類 : ツール
共通設定6000-
文書タイプ別設定6001-
フォント60020.7.5.2
実行60030.7.5.2F5
コマンドの実行60040.7.5.2Shift+F5
分類 : ヘルプ
バージョン情報70000.7.5.2

コードページの一覧

ドキュメントの保存などに使用できる Windows コードページは以下の通りです (システムにインストールされていないものは無効です)。コードページ名は Alpha で使用しているものです。

Alpha (及び Ascension) では現在 Windows コードページに基づいて文字コードを管理していますが、現実には Windows コードページに無い文字コードが多数存在するため、将来は他の識別子を使用する可能性があります。

コードページの値
コードページ名値 (10進数)
自動判別 [ファミリ : -]
自動判別 (システムの言語)70000 (*7)
自動判別 (ユーザの言語)70001 (*7)
Unicode [ファミリ : 1200]
Unicode (自動判別)70010 (*3)
Unicode (UTF-16)1200 (*1)
Unicode (UTF-16 big endian)1201 (*1)
Unicode (UTF-32)12000 (*1)
Unicode (UTF-32 big endian)12001 (*1)
Unicode (UTF-5)70011 (*3)
Unicode (UTF-7)65000 (*1)
Unicode (UTF-8)65001 (*1)
西ヨーロッパ言語 [ファミリ : 1252]
IRV インターナショナル アルファベット No.5 (IA5)20105
US-ASCII20127
アイスランド語 (20871 + ユーロ, IBM EBCDIC)1149
アイスランド語 (IBM EBCDIC)20871
アイスランド語 (Macintosh)10079
アイスランド語 (ibm-861)861
イタリア (20280 + ユーロ, IBM EBCDIC)1144
イタリア (IBM EBCDIC)20280
インターナショナル500
インターナショナル (500 + ユーロ, IBM EBCDIC)1148
カナダ/フランス語 (windows-863)863
スウェーデン語 (IA5)20107
デンマーク/ノルウェー (20277 + ユーロ, IBM EBCDIC)1142
デンマーク/ノルウェー (IBM EBCDIC)20277
ドイツ (20273 + ユーロ, IBM EBCDIC)1141
ドイツ (IBM EBCDIC)20273
ドイツ語 (IA5)20106
ノルウェー語 (IA5)20108
フィンランド/スウェーデン (20278 + ユーロ, IBM EBCDIC)1143
フィンランド/スウェーデン (IBM EBCDIC)20278
フランス (20297 + ユーロ, IBM EBCDIC)1147
フランス (IBM EBCDIC)20297
ポルトガル語 (windows-860)860
ヨーロッパ 329001
ラテン アメリカ言語/スペイン (20284 + ユーロ, IBM EBCDIC)1145
ラテン アメリカ言語/スペイン (IBM EBCDIC)20284
ラテン-1/Open System (1047 + ユーロ, IBM EBCDIC)20924
ラテン-1/Open System (IBM EBCDIC)1047
ローマン (Macintosh)10000
英国 (20285 + ユーロ, IBM EBCDIC)1146
英国 (IBM EBCDIC)20285
西ヨーロッパ (ibm-850)850
西ヨーロッパ (ISO-8859-1)28591 (*1)
西ヨーロッパ (ISO-8859-15)28605 (*1)
西ヨーロッパ (windows-1251)1252
多言語ラテン I + ヨーロッパ言語 (windows-858)858
米国 (ibm-437)437
米国/カナダ (37 + ユーロ, IBM EBCDIC)1140
米国/カナダ (IBM EBCDIC)37
中央ヨーロッパ言語 [ファミリ : 1250]
マルチリンガル/ROECE (ラテン-2, IBM EBCDIC)870
中央ヨーロッパ (ibm-852)852
中央ヨーロッパ (ISO-8859-2)28592 (*1)
中央ヨーロッパ (ISO-8859-16)28606 (*1)
中央ヨーロッパ (Macintosh)10029
中央ヨーロッパ (windows-1250)1250
バルト言語 - 東ヨーロッパ [ファミリ : 1257]
バルト言語 (ibm-775)775
バルト言語 (ISO-8859-4)28594 (*1)
バルト言語 (ISO-8859-13)28603 (*1)
バルト言語 (windows-1257)1257
北欧言語 [ファミリ : -]
北欧 (ISO-8859-10)28600 (*1)
北欧 (windows-865)865
ケルト言語 [ファミリ : 1200]
ケルト語 (ISO-8859-14)28604 (*1)
南ヨーロッパ言語 [ファミリ : 1254]
トルコ語 (IBM EBCDIC)1026
トルコ語 (IBM EBCDIC)20905
トルコ語 (ibm-857)857
トルコ語 (Macintosh)10081
トルコ語 (windows-1254)1254
南ヨーロッパ (ISO-8859-3)28593
トルコ語 (ISO-8859-9)28599
ベトナム語 [ファミリ : 1258]
ベトナム語 (自動判別)70030 (*3,6)
ベトナム語 (windows-1258)1258
ベトナム語 (TCVN)70031 (*3,6)
ベトナム語 (VISCII)70032 (*3,6)
ベトナム語 (VPN)70033 (*3,6)
キリル言語 [ファミリ : 1251]
ウクライナ語 (KOI8-U)21866
ウクライナ語 (Macintosh)10017
キリル言語 (ibm-855)855
キリル言語 (ISO-8859-5)28595
キリル言語 (Macintosh)10007
キリル言語 (windows-1251)1251
キリル文字 (セルビア語、ブルガリア語, IBM EBCDIC)21025
キリル文字 (ロシア語, IBM EBCDIC)20880
ロシア語 (ibm-866)866
ロシア語 (KOI8)20866
ギリシャ語 [ファミリ : 1253]
ギリシャ語 (437G, ibm-737)737
ギリシャ語 (IBM EBCDIC)20423
ギリシャ語 (ISO-8859-7)28597
ギリシャ語 (windows-1253)1253
ギリシャ語 I (Macintosh)10006
現代ギリシャ語 (IBM EBCDIC)875
現代ギリシャ語 (ibm-869)869
アルメニア語 [ファミリ : -]
アルメニア語 (自動判別)70020 (*3,6)
アルメニア語 (ARMSCII-7)70021 (*3,6)
アルメニア語 (ARMSCII-8)70022 (*3,6)
アルメニア語 (ARMSCII-8A)70023 (*3,6)
アラビア語 - 中東 [ファミリ : 1256]
アラビア語 (ASMO)708
アラビア語 (ASMO 449+, BCON V4)709
アラビア語 (IBM EBCDIC)20420
アラビア語 (ISO-8859-6)28596
アラビア語 (Macintosh)10004
アラビア語 (windows-864)864
アラビア語 (windows-1256)1256
アラビア語 (Transparent Arabic)710
アラビア語 (Transparent ASMO)720
ヘブライ語 - 中東 [ファミリ : 1255]
ヘブライ語 (IBM EBCDIC)20424
ヘブライ語 (ibm-862)862
ヘブライ語 (Macintosh)10005
ヘブライ語 (windows-1255)1255
ヘブライ語 (ISO-8859-8, 視覚順)28598 (*1)
ヘブライ語 (ISO 8859-8, 論理順)38598
タイ語 [ファミリ : 874]
タイ語 (IBM EBCDIC)20838
タイ語 (ISO-8859-11)28601 (*1)
タイ語 (Macintosh)10021
タイ語 (windows-874)874
簡体字中国語 - 東アジア [ファミリ : 936]
簡体字中国語50936
簡体字中国語 (EUC)51936
簡体字中国語 (GB18030)54936 (*2)
簡体字中国語 (GB2312)20936
簡体字中国語 (GB2312, Macintosh)10008
簡体字中国語 (GBK, windows-936)936
簡体字中国語 (HZ-GB2312)52936
簡体字中国語 (ISO-2022-CN)50227
簡体字中国語 + 簡体字中国語拡張50935
繁体字中国語 - 東アジア [ファミリ : 950]
台湾 (CNS)20000
台湾 (TCA)20001
台湾 (Eten)20002
台湾 (IBM5550)20003
台湾 (TeleText)20004
台湾 (Wang)20005
繁体字中国語 (Big5, windows-950)950
繁体字中国語 (Big5, Macintosh)10002
繁体字中国語 (EUC)51950
繁体字中国語 (ISO-2022-CN)50229
繁体字中国語 + 米国/カナダ50937
日本語 - 東アジア [ファミリ : 932]
日本語 (自動判別)50932 (*1)
日本語 (EUC)70044 (*3,5)
日本語 (EUC, windows-51932)51932 (*4)
日本語 (EUC-JIS-2004)70047 (*3,5)
日本語 (ISO-2022-JP, JIS X 0201-1989, windows-50222)50222
日本語 (ISO-2022-JP, JIS X 0208-1990 & 0212-1990, windows-20932)20932
日本語 (ISO-2022-JP, 半角カタカナ, windows-50221)50221 (*4)
日本語 (ISO-2022-JP, 半角カタカナなし, windows-50220)50220
日本語 (ISO-2022-JP-1)70042 (*3,5)
日本語 (ISO-2022-JP-2)70043 (*3,5)
日本語 (ISO-2022-JP-2004)70045 (*3,5)
日本語 (Macintosh)10001
日本語 (Shift_JIS-2004)70046 (*3,5)
日本語 (シフト JIS)70041 (*3,5)
日本語 (シフト JIS, windows-932)932 (*4)
日本語 (カタカナ拡張)50930
日本語 (カタカナ拡張, IBM EBCDIC)20290
日本語 + 米国/カナダ50931
日本語 + 日本語ラテン拡張50939
韓国語 - 東アジア [ファミリ : 949]
韓国語 (自動判別)50949 (*1,6)
韓国語 (EUC)51949
韓国語 (ISO-2022-KR)50225
韓国語 (Johab)1361
韓国語 (Macintosh)10003
韓国語 (windows-949)949
韓国語 + 韓国語拡張50933
韓国語拡張 (IBM EBCDIC)20833
デバナガリ文字 - インド言語 [ファミリ : 57002]
デバナガリ文字 (ISCII)57002
ベンガル語 - インド言語 [ファミリ : 57003]
ベンガル語 (ISCII)57003
タミール語 - インド言語 [ファミリ : 57004]
タミール語 (ISCII)57004
テルグ語 - インド言語 [ファミリ : 57005]
テルグ語 (ISCII)57005
アッサム語 - インド言語 [ファミリ : 57006]
アッサム語 (ISCII)57006
オリヤー語 - インド言語 [ファミリ : 57007]
オリヤー語 (ISCII)57007
カナラ語 - インド言語 [ファミリ : 57008]
カナラ語 (ISCII)57008
マラヤラム語 - インド言語 [ファミリ : 57009]
マラヤラム語 (ISCII)57009
グジャラート語 - インド言語 [ファミリ : 57010]
グジャラート語 (ISCII)57010
パンジャブ語 - インド言語 [ファミリ : 57011]
パンジャブ語 (ISCII, グルムキー文字)57011
未分類、不明 [ファミリ : -]
Ext Alpha Lowercase21027
Non-Spacing Accent (ISO 6937)20269
T.6120261
クロアチア語 (Macintosh)10082
バイナリ70050 (*3)
ルーマニア語 (Macintosh)10010

使用例

任意の範囲を選択状態にして置換する

// JScript
var sel = Ambient.ActiveDocument.TextProcessor.Selection;

sel.MoveTo(iLine, iChar); // (iLine, iChar) にキャレットを移動して
sel.CharNext(true, cch);  // そこから cch 文字選択

var selectedText = sel.Text; // 選択範囲のテキストを取得
selectedText = selectedText.toLocaleUpperCase();
sel.Replace(selectedText);   // 置換

キャレットを動かさずに任意の位置のテキストを取得する

' VBScript
Dim pt, txt

' ドキュメントの先頭座標を使って擬似キャレットを作成
Set pt = ActiveDocument.StartPoint.CreateEditPoint()
Call pt.MoveTo(iLine, iChar) ' 擬似キャレットを (iLine, iChar) に移動して
txt = pt.GetText(cch)        ' cch 文字のテキストを取得

Set pt = Nothing             ' 必要ありません

バッファを新しく開く → 今日の日付を書き込む → 保存してバッファを閉じる

# PerlScript
my $date = localtime(time());
$Ambient->Documents->AddNew();      # バッファを開く
my $doc = $Ambient->ActiveDocument; # 新しく開いたバッファがアクティブになっています
$doc->TextProcessor->Selection->Replace($date);
$doc->Save('sample.txt', $BreakType->LF, 65001); # LF 、UTF-8 で名前をつけて保存
$doc->Close();                                   # バッファを閉じる

1度のアンドゥ (リドゥ) で元に戻せる (やり直せる) 操作の例

アンドゥグループは複数の操作をまとめたもので、1度のアンドゥでまとめて元に戻すことが出来ます。例えば複数の箇所にテキストを挿入するスクリプトジェネレータなどに使用します。

Ambient オブジェクトモデルの幾つかのメソッドは内部でアンドゥグループを作成します。このためスクリプト側で収集中のアンドゥグループが、メソッド呼び出しにより終了してしまう可能性があります。TextSelection のほとんどの編集メソッドは自身でアンドゥグループを作成します。EditPointReplace 以外のメソッドはアンドゥグループを作成しません。ただしこれらのセマンティクスは将来変更される可能性があります。

# RubyScript
editor = @Ambient.ActiveDocument.TextProcessor
pt = editor.CreateEditPoint(@Ambient.ActiveDocument.StartPoint)
editor.BeginEditCollection() # -- アンドゥグループの開始
pt.Insert('xyz')
pt.Copy(-2)
pt.Paste()
pt.CharPrev()
pt.Cut(-1)
pt.MoveToEndOfLine()
pt.Paste()
editor.EndEditCollection()   # -- アンドゥグループの終了

変更履歴

Ambient 0.6.5 (Alpha 0.7.5.7 fix2)
Ambient 0.6.4 (Alpha 0.7.5.7)
Copyright © 2003-2004 exeal <exeal@student.interq.or.jp>
Last modified at 2004-5-10 “Shut up'n play yer guitar.”