Nintendo MessageStudio ヘルプ

# タグのソーステキストについて

## ソーステキストとは

ソーステキストとは、タグを含んだ、平の(プレーンな状態の)文字列のことを指します。 通常、表示モードを「編集」として操作を行っているときには、 分かりやすい形に表示を直して表示を行っています。 そのため、普段、ユーザーがソーステキストについてはあまり考えなくてもよいようになっています。

ソーステキストは、Message Studioが扱う文字列情報そのものになります。 そのため、これについての知識があると、トラブルが発生したときや 外部アプリケーションとの連携を行うときに役立つことがあります。

ソーステキストの状態でテキストを表示、編集するためには、 編集ウィンドウの表示モードを「ソース」に切り替えます。

「ソース」表示モードでは、以下に解説するソーステキストの文法に従って 文字が色づけされたテキストエディタが表示されます。 ここで、直接テキストを編集することが可能です。 ただし、ここでの編集はテキストを破壊してしまう可能性がありますので、正しい理解のうえに行ってください。 もし間違った変更を行ってしまうと、ほかに影響が出てしまうことがあります。

# ソーステキストの文法

ソーステキストは、以下の文法に従って記述されます。

まず、タグ自体は、角括弧で囲まれます。 そして、その中に、タググループ名、コロン、タグ名の順番で記述されます。 たとえば、Replaceという名前のタググループに所属する、 Nameというタグを文章中に埋め込むと以下のようになります。

    Hello, [Replace:Name].

角括弧自体を入力するためには、直前にバックスラッシュを入力してエスケープします。 また、バックスラッシュ文字を表すには、バックスラッシュ文字を重ねます。

    Square bracket \[

    Square bracket \]

    Backslash \\

改行は、そのまま入力することが出来ます。 以下に3行からなるテキストを入力する例を示します。

    This is first line.
    This is second line.
    This is third line.

パラメータを含むタグを挿入する場合、角括弧の間にパラメータ名、等号、値の順に入力します。 たとえば、Secというタグパラメータとして1を代入するタグは以下のように記述します。

    Hello, [Game:Wait Sec="1"] Message Studio.

範囲をもったタグを入力する場合、範囲の開始位置へ通常と同じように角括弧のタグを入力します。 範囲の終了位置へは、角括弧の内部にスラッシュを挿入されたタグを入力します。

    [System:Color name="Red"]This is red string.[/System:Color]

範囲をもったタグは複数階層にネストすることが出来ますが、 開始と終了は必ず対になっている必要があります。

## システムタグと編集ウィンドウについて

システムタグ(Message Studio自体によって定義されるタグ)とユーザー定義タグは、 ソーステキストの上では差異なく表示されることになります。 しかし、システムタグを利用した場合、編集ウィンドウではユーザーが分かりやすい(編集しやすい)形式に 整形しなおして表示されます。

たとえば、System:Colorというタグを入力すれば編集ウィンドウのテキストに色が付きますし、 System:Sizeというタグを利用すれば編集用のフォントのサイズが変更されます。

見栄えの変更について、特に注意すべきなのはSystem:PageBreakというタグです。 これは改ページを表すためのタグになります。 このタグが編集ウィンドウから入力された場合、編集ウィンドウではタグの位置で行が変わったように表示されます。 しかし、実際のソーステキストでは改行コードは入らずに一行に続いたような形式となります。 このメッセージを変換してリソースファイルにした場合でも、改行タグの情報のあとに改行コードは出力されません。

- はじめに
- Message Studioの基礎
  - ゲーム製作のフロー
  - プロジェクトファイルについて
  - プロジェクトエクスプローラの操作
  - ウインドウ操作
  - 言語設定
  - カラーの設定
  - 属性の設定
- メッセージ編集
  - 基本操作
  - テキストの種類
  - クリップボードを利用した操作
  - 言語セルステータス
  - 表示のカスタマイズ
  - メッセージ一覧画面のTips
- タグ
  - 概要
  - タグを用いた編集
  - タグのソース文字列
  - タグ比較について
- 検索機能
  - 概要
  - 簡易検索
  - 詳細検索
  - 正規表現
- スペルチェック
  - スペルチェックについて
  - スペルチェックの利用方法
- ロールとパーミッション
  - 概要
  - ロールの追加とパーミッションの設定
  - ロールの選択
- メッセージの統計情報
  - 統計情報について
  - 統計情報の利用方法
- スタイル機能と幅計算
  - スタイルと幅計算について
  - テキスト幅の全体チェック
  - レンダリング方式について
  - スタイルの設定方法
- フォント
  - フォント機能の概要
  - フォントに関するワークフローについて
  - フォントの設定
- チーム管理機能
  - 概要
  - ファイル管理のされ方
  - チーム管理機能を利用する
  - 基本操作
  - コミットログを表示する
  - 差分(diff)を表示する
  - 競合とマージ
  - プロキシサーバの設定
  - サーバーの設定
- メタ情報の設定
  - メタ情報の設定について
  - 設定可能なメタ情報一覧
- リソースファイル関連
  - リソースについての概要
  - リソースファイルを出力する
  - 出力設定を行う
  - ビルドイベントについて
  - 共通のバイナリフォーマット
  - メッセージバイナリフォーマット
  - フローチャートバイナリフォーマット
  - プロジェクトバイナリフォーマット
    - プロジェクトバイナリフォーマット
    - カラー情報
    - コンテンツ情報
    - 属性情報
    - タグ情報
    - スタイル情報
  - タグについて
- マクロ文字列展開機能
  - マクロ文字列とは
  - 利用可能なマクロ一覧
- コマンドライン関連
  - コマンドライン制御について
  - /convertスイッチについて
- プラグインについて
  - プラグインの概要
  - プラグインの種類について
- プラグインの作成方法
  - 単純なプラグイン作成チュートリアル
  - 開発環境を利用しない作成方法
  - サンプルについて
- Message Studioのアセンブリ設定
  - Caspol：アセンブリセキュリティ設定
  - Ngen：ネイティブイメージ生成
- XML仕様
  - 概要
  - プロジェクトファイル（.msproj）のXML仕様
  - メッセージファイル（.mstxt）のXML仕様
- libmsについて
  - 概要
  - コンパイルの仕方
- 共通の関数
  - LMS_SetMemFuncs
- メッセージに関する関数
  - LMS_InitMessage
  - LMS_CloseMessage
  - LMS_SearchMessageBlockByName
  - LMS_GetMessageBlockInfoByName
  - LMS_GetTextNum
  - LMS_GetTextIndexByLabel
  - LMS_GetText
  - LMS_GetTextSize
  - LMS_GetTextByLabel
  - LMS_GetLabelByTextIndex
  - LMS_GetTextStyle
  - LMS_GetTextStyleByLabel
  - LMS_GetAttributeSize
  - LMS_GetAttribute
  - LMS_GetAttributeText
- フローチャートに関する関数
  - LMS_InitFlowchart
  - LMS_CloseFlowchart
  - LMS_GetNodeNum
  - LMS_GetEntryNodeIndex
  - LMS_GetNodeDataPtr
  - LMS_GetFlowNodeIndex
  - LMS_GetCaseIndexesFromBranchNode
  - LMS_GetFlowParamText
- プロジェクトに関する関数
  - LMS_InitProject
  - LMS_CloseProject
  - LMS_SearchProjectBlockByName
  - カラー情報に関する関数
    - LMS_GetColorIndexByName
    - LMS_GetColor
    - LMS_GetColorByName
    - LMS_GetColorNum
  - コンテンツ情報に関する関数
    - LMS_GetContentsNum
    - LMS_GetContentPath
  - 属性情報に関する関数
    - LMS_GetAttrInfoIndexByName
    - LMS_GetAttrType
    - LMS_GetAttrTypeByName
    - LMS_GetAttrOffset
    - LMS_GetAttrOffsetByName
    - LMS_GetAttrListItemName
    - LMS_GetAttrListItemNameByName
    - LMS_GetAttrNum
    - LMS_GetAttrListItemNum
  - タグ情報に関する関数
    - LMS_GetTagGroupName
    - LMS_GetTagName
    - LMS_GetTagParamName
    - LMS_GetTagParamType
    - LMS_GetTagListItemName
    - LMS_GetTagGroupNum
    - LMS_GetTagNum
    - LMS_GetTagParamNum
    - LMS_GetTagListItemNum
  - スタイル情報に関する関数
    - LMS_GetStyleIndexByName
    - LMS_GetRegionWidth
    - LMS_GetRegionWidthByName
    - LMS_GetLineNum
    - LMS_GetLineNumByName
    - LMS_GetFontIndex
    - LMS_GetFontIndexByName
    - LMS_GetStyleNum
- 扱うファイルの拡張子一覧
- よくある質問