ツールバーをカスタマイズ id172FB00L0V6
デフォルトでは、Web エディターには、任意のDITA エディターで必要な最も一般的な編集機能が付属しています。 テキストリスト \(番号付きまたは箇条書き\)、相互参照、コンテンツ参照、表、段落、文字の書式設定などのエレメントの挿入などの機能をエディターで利用できます。 これらの基本要素に加えて、Web エディターをカスタマイズして、オーサリング環境で使用される要素を挿入できます。
ui_configへの更新を、より柔軟でモジュール化されたUI設定に変換する必要があります。 このフレームワークにより、editor_toolbarやその他のターゲットウィジェットに必要に応じてシームレスに変更を適用できます。 詳しくは、UI構成の変換の概要を参照してください。Web エディターのツールバーをカスタマイズするには、次の2つの方法があります。
-
ツールバーに新しい機能を追加
-
ツールバーから既存の機能を削除
ツールバーでの機能の追加
Web エディターに機能を追加するには、主に2つの作業が必要です。ui_config.json ファイルに機能のアイコンを追加し、JavaScriptでバックグラウンド機能を追加します。
次のタブには、Experience Manager Guidesの設定に基づく手順が表示されます。Cloud Serviceまたはオンプレミス。
-
UI設定ファイルをダウンロードするには、管理者としてAdobe Experience Managerにログインします。
-
上部のAdobe Experience Manager リンクをクリックし、ツールを選択します。
-
ツールのリストから ガイド を選択し、フォルダープロファイルをクリックします。
-
「グローバルプロファイル」タイルをクリックします。
-
XML エディターの設定 タブを選択し、上部の編集 アイコンをクリックします
-
ダウンロード アイコンをクリックして、ui_config.json ファイルをローカルシステムにダウンロードします。 その後、ファイルに変更を加えて、同じものをアップロードできます。
-
ui_config.jsonファイルで、「ツールバー」セクションに新しい機能の定義を追加します。 ファイルを保存してアップロードします。通常、新しいツールバーボタングループを作成し、1つ以上のツールバーボタンを追加できます。 または、既存のツールバーグループ内に新しいツールバーボタンを追加することもできます。 新しいツールバーグループを作成するには、次の詳細が必要です。
type:
blockGroupをtype値として指定します。 この値は、1つ以上のツールバーグループを含むブロックグループを作成していることを示します。エクストラクラス: クラスの名前またはスペースで区切られたクラス。
項目: ツールバーのすべてのグループの定義を指定します。 各グループには、1つまたは複数のツールバーアイコンを含めることができます。 ツールバーグループ内のアイコンを定義するには、
type内でitems属性を再度定義し、その値をbuttonGroupに設定する必要があります。extraclassプロパティで1つ以上のクラス名を指定してください。labelプロパティで機能名を指定します。ui_config.jsonファイルの次のスニペットは、メインのツールバーブロックの定義を示し、その後にbuttonGroup定義を示しています。code language-none "' 「ツールバー」: { "type": "blockGroup", "extraclass": "ツールバー操作", "items": [ { "type": "buttonGroup", "extraclass": "left-controls", "label": "Left Controls", "items": [ "'itemsコレクション内で、1つ以上のツールバーアイコンの定義を指定する必要があります。ツールバーアイコンを追加するには、次のプロパティを定義する必要があります。
type:
buttonをtype値として指定します。 この値は、ツールバーボタンを追加していることを示します。アイコン: ツールバーで使用するCoral アイコンの名前を指定します。
バリアント:
quietをvariant値として指定します。title: アイコンのツールチップを指定します。
クリック: JavaScript ファイルで、フィーチャーに定義されているコマンド名を指定します。 コマンドに入力パラメーターが必要な場合は、コマンド名を次のように指定します。
code language-none "'Javascript "on-click": {"name": "AUTHOR_INSERT_ELEMENT", "args": "simpletable"} "'表示または非表示:
showプロパティを定義する場合は、アイコンが表示されるモードを指定します。 使用可能な値は、@isAuthorMode、@isSourceMode、@isPreviewMode、true\(すべてのモードで表示\)またはfalse\(すべてのモードで非表示\)です。showの代わりに、hideプロパティを定義することもできます。 指定されたモードでアイコンが表示されない唯一の違いは、showプロパティの値と同じです。次の例は、ユーザーがツールバーの「バージョンを表示」アイコンをクリックした場合のAEM Guidesのバージョン番号を示しています。
次のコードをJavaScript ファイルに追加します。
code language-javascript $(document).ready(setTimeout(function() { fmxml.commandHandler.subscribe({ key: 'user.alert', next: function() { alert("AEM Guides version x.x") } }) }, 1000))ui_config.json ファイルに次のように機能を追加します。
code language-javascript "type": "button", "icon": "alert","variant": "quiet","title": "About AEM Guides","show": "true","on-click": "user.alert" -
clientlib フォルダーを作成し、JavaScriptをこのフォルダーに追加します。
-
clientlib フォルダーのcategories プロパティを更新するには、apps.fmdita.xml_editor.page_overridesの値を割り当てます。
-
ui_config.json ファイルを保存し、Web エディターを再読み込みします。
-
AEMにログインし、CRXDE Lite モードを開きます。
-
次の場所にあるデフォルトの設定ファイルに移動します。
/libs/fmdita/clientlibs/clientlibs/xmleditor/ui_config.json -
デフォルト設定ファイルのコピーを次の場所に作成します。
/apps/fmdita/xmleditor/ui_config.json -
に移動し、
ui_config.jsonノードのappsファイルを開いて編集します。 -
ui_config.jsonファイルで、「ツールバー」セクションに新しい機能の定義を追加します。 通常、新しいツールバーボタングループを作成し、1つ以上のツールバーボタンを追加できます。 または、既存のツールバーグループ内に新しいツールバーボタンを追加することもできます。 新しいツールバーグループを作成するには、次の詳細が必要です。-
type:
blockGroupをtype値として指定します。 この値は、1つ以上のツールバーグループを含むブロックグループを作成していることを示します。 -
extraclass: クラスの名前またはスペースで区切られたクラス。
-
項目: ツールバーのすべてのグループの定義を指定します。 各グループには、1つまたは複数のツールバーアイコンを含めることができます。 ツールバーグループ内のアイコンを定義するには、
type内でitems属性を再度定義し、その値をbuttonGroupに設定する必要があります。extraclassプロパティで1つ以上のクラス名を指定してください。labelプロパティで機能名を指定します。ui_config.jsonファイルの次のスニペットは、メインのツールバーブロックの定義を示し、その後にbuttonGroup定義を示しています。code language-json "toolbar": { "type": "blockGroup", "extraclass": "toolbar operations", "items": [ { "type": "buttonGroup", "extraclass": "left-controls", "label": "Left Controls", "items": [itemsコレクション内で、1つ以上のツールバーアイコンの定義を指定する必要があります。
ツールバーアイコンを追加するには、次のプロパティを定義する必要があります。 -
type:
buttonをtype値として指定します。 この値は、ツールバーボタンを追加していることを示します。 -
アイコン: ツールバーで使用するCoral アイコンの名前を指定します。
-
バリアント:
quietをvariant値として指定します。 -
title: アイコンのツールヒントを指定します。
-
クリック時: JavaScript ファイルで機能に定義されているコマンド名を指定します。 コマンドに入力パラメーターが必要な場合は、コマンド名を次のように指定します。
code language-javascript "on-click": {"name": "AUTHOR_INSERT_ELEMENT", "args": "simpletable"} -
表示または非表示:
showプロパティを定義する場合は、アイコンが表示されるモードを指定します。 使用可能な値は、@isAuthorMode、@isSourceMode、@isPreviewMode、true\(すべてのモードで表示\)またはfalse\(すべてのモードで非表示\)です。
showの代わりに、hideプロパティを定義することもできます。 指定されたモードでアイコンが表示されない唯一の違いは、showプロパティの値と同じです。 -
-
clientlib フォルダーを作成し、JavaScriptをこのフォルダーに追加します。
-
clientlib フォルダーのcategories プロパティを更新するには、apps.fmdita.xml_editor.page_overridesの値を割り当てます。
-
ui_config.json ファイルを保存し、Web エディターを再読み込みします。
JavaScript コードサンプル
この節では、カスタム機能の追加を開始するのに役立つJavaScript コードの2つの例を示します。 次の例は、ユーザーがツールバーの「バージョンを表示」アイコンをクリックした場合のAEM Guidesのバージョン番号を示しています。
次のコードをJavaScript ファイルに追加します。
| code language-javascript |
|---|
|
ui_config.json ファイルに次のように機能を追加します。
| code language-json |
|---|
|
次の例は、ドキュメントのアクティブなファイルの状態を「レビュー中」に変更する方法を示しています。
| code language-javascript |
|---|
|
ui_config.json ファイルに次のように機能を追加します。
| code language-json |
|---|
|
ツールバーからの機能の削除
Web エディターで現在利用可能なすべての機能を提供したくない場合があります。その場合、Web エディターのツールバーから不要な機能を削除できます。
次のタブには、Experience Manager Guidesの設定に基づいてツールバーから不要な機能を削除する手順が表示されます。Cloud Serviceまたはオンプレミス。
-
UI設定ファイルをダウンロードするには、管理者としてAdobe Experience Managerにログインします。
-
上部のAdobe Experience Manager リンクをクリックし、ツールを選択します。
-
ツールのリストから ガイド を選択し、フォルダープロファイルをクリックします。
-
「グローバルプロファイル」タイルをクリックします。
-
XML エディターの設定 タブを選択し、上部の編集 アイコンをクリックします
-
ダウンロード アイコンをクリックして、ui_config.json ファイルをローカルシステムにダウンロードします。 その後、ファイルに変更を加えて、同じものをアップロードできます。
ui_config.jsonファイルには、次の3つのセクションがあります。-
ツールバー: このセクションには、番号付きリストの挿入/削除、\(ファイル\)閉じる、保存、コメントなど、エディターのツールバーで使用できるすべての機能の定義が含まれています。
-
ショートカット: このセクションでは、エディターの特定の機能に割り当てられたキーボードショートカットの定義について説明します。
-
テンプレート: このセクションには、文書内で使用できるDITA エレメントの定義済み構造が含まれています。 デフォルトでは、テンプレートセクションには、段落、単純な表、表、および本文の要素のテンプレート定義が含まれています。 目的のエレメントに有効なXML構造を追加することで、任意のエレメントのテンプレート定義を作成できます。 例えば、リスト内の新しい
p要素ごとにli要素を追加する場合、「テンプレート」セクションの最後に次のコードを追加して、これを実現できます。
code language-css "li": "<li><p></p></li>" -
-
ツールバーのセクションから、ユーザーに公開しない機能のエントリを削除します。
-
ui_config.json ファイルを保存し、Web エディターを再読み込みします。
-
AEMにログインし、CRXDE Lite モードを開きます。
-
次の場所にあるデフォルトの設定ファイルに移動します。
/libs/fmdita/clientlibs/clientlibs/xmleditor/ui_config.json -
デフォルト設定ファイルのコピーを次の場所に作成します。
/apps/fmdita/xmleditor/ui_config.json -
に移動し、
ui_config.jsonノードのappsファイルを開いて編集します。ui_config.jsonファイルには、次の3つのセクションがあります。
-
ツールバー: このセクションには、番号付きリストの挿入/削除、\(ファイル\)閉じる、保存、コメントなど、エディターのツールバーで使用できるすべての機能の定義が含まれています。
-
ショートカット: このセクションでは、エディターの特定の機能に割り当てられたキーボードショートカットの定義について説明します。
-
テンプレート: このセクションには、文書内で使用できるDITA エレメントの定義済み構造が含まれています。 デフォルトでは、テンプレートセクションには、段落、単純な表、表、および本文の要素のテンプレート定義が含まれています。 目的のエレメントに有効なXML構造を追加することで、任意のエレメントのテンプレート定義を作成できます。 例えば、リスト内の新しい
p要素ごとにli要素を追加する場合、「テンプレート」セクションの最後に次のコードを追加して、これを実現できます。
| code language-html |
|---|
|
-
ツールバーのセクションから、ユーザーに公開しない機能のエントリを削除します。
-
*ui\_config.json*ファイルを保存し、Web エディターを再読み込みします。