マークダウン

このサンプルではマークダウン形式での編集、プレビューを設定することができます。

リッチテキストエディタ(GcRichTextEditor)コントロールは、マークダウン形式での編集やプレビューが可能です。 マークダウン Markdownプラグインを利用することで、軽量マークアップ言語マークダウンを使用してテキストを入力することができます。 この機能を有効にするには、pluginsプロパティにGcRichTextEditorPluginItem.Markdownの値を設定してください。 有効な機能 Markdownプラグイン利用時は一部機能に制限があります。利用できる主な機能は以下の通りです。 ツールバー項目 メニュー項目 GcRichTextEditorToolbarItem.AcceptsTab GcRichTextEditorMenuItem.AcceptsTab GcRichTextEditorToolbarItem.BlockQuote GcRichTextEditorMenuItem.BlockQuote GcRichTextEditorToolbarItem.Bold GcRichTextEditorMenuItem.Bold GcRichTextEditorToolbarItem.BulList GcRichTextEditorMenuItem.BulList GcRichTextEditorToolbarItem.CharMap GcRichTextEditorMenuItem.CharMap GcRichTextEditorToolbarItem.Copy GcRichTextEditorMenuItem.Copy GcRichTextEditorToolbarItem.Cut GcRichTextEditorMenuItem.Cut GcRichTextEditorToolbarItem.Emoticons GcRichTextEditorMenuItem.Emoticons GcRichTextEditorToolbarItem.FullScreen GcRichTextEditorMenuItem.FullScreen GcRichTextEditorToolbarItem.H1 GcRichTextEditorMenuItem.H1 GcRichTextEditorToolbarItem.H2 GcRichTextEditorMenuItem.H2 GcRichTextEditorToolbarItem.H3 GcRichTextEditorMenuItem.H3 GcRichTextEditorToolbarItem.H4 GcRichTextEditorMenuItem.H4 GcRichTextEditorToolbarItem.H5 GcRichTextEditorMenuItem.H5 GcRichTextEditorToolbarItem.H6 GcRichTextEditorMenuItem.H6 GcRichTextEditorToolbarItem.HorizontalRule GcRichTextEditorMenuItem.HorizontalRule GcRichTextEditorToolbarItem.Image GcRichTextEditorMenuItem.Image GcRichTextEditorToolbarItem.Italic GcRichTextEditorMenuItem.Italic GcRichTextEditorToolbarItem.Link GcRichTextEditorMenuItem.Link GcRichTextEditorToolbarItem.NewDocument GcRichTextEditorMenuItem.NewDocument GcRichTextEditorToolbarItem.NumList GcRichTextEditorMenuItem.NumList GcRichTextEditorToolbarItem.Paste GcRichTextEditorMenuItem.Paste GcRichTextEditorToolbarItem.Preview GcRichTextEditorMenuItem.Preview GcRichTextEditorToolbarItem.Print GcRichTextEditorMenuItem.Print GcRichTextEditorToolbarItem.Remove GcRichTextEditorMenuItem.Remove GcRichTextEditorToolbarItem.SelectAll GcRichTextEditorMenuItem.SelectAll GcRichTextEditorToolbarItem.Strikethrough GcRichTextEditorMenuItem.Strikethrough GcRichTextEditorToolbarItem.Table GcRichTextEditorMenuItem.Table GcRichTextEditorToolbarItem.WordCount GcRichTextEditorMenuItem.WordCount
import "@mescius/inputman.richtexteditor/CSS/gc.inputman.richtexteditor.css"; import { InputMan } from "@mescius/inputman.richtexteditor"; import "@mescius/inputman.richtexteditor/JS/plugins/all"; InputMan.appearanceStyle = InputMan.AppearanceStyle.Modern; const gcRichTextEditor = new InputMan.GcRichTextEditor( document.getElementById("gcRichTextEditor"), { plugins: [ InputMan.GcRichTextEditorPluginItem.Markdown, InputMan.GcRichTextEditorPluginItem.Preview, ], toolbar: [ InputMan.GcRichTextEditorToolbarItem.Preview, ], editorMode: InputMan.GcRichTextEditorMode.Markdown, previewMode: InputMan.PreviewMode.Inside, previewState: true, statusbar: true, height: 600 } );
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>リッチテキストエディタコントロール - マークダウン</title> <!-- SystemJS --> <script src="node_modules/systemjs/dist/system.src.js"></script> <script src="systemjs.config.js"></script> <script> window.onload = function () { System.import('./src/app'); } </script> </head> <body> <textarea id="gcRichTextEditor"> ## GcRichTextEditorのマークダウンプラグイン リッチテキストエディタにマークダウン機能を追加しました。このサンプルではマークダウンを使用してテキストを入力する方法を示します。 ### マークダウン機能の紹介 マークダウンは、テキストを簡潔に記述するための軽量マークアップ言語です。リッチテキストエディタでは、マークダウンを使用してテキストを入力することができます。 ここでは記述例を紹介します。 #### 見出し 見出しは、`#`を使って作成します。 #### 箇条書きリスト 箇条書きリストは、`-`を使って作成します。 - 番号付きリスト - 2つめの項目 #### リンク リンクは、以下の形式で作成します。 [リンクの例](https://demo.mescius.jp/inputmanjs/demos/richTextEditor/language/purejs) #### プレビュー `previewMode`プロパティを`PreviewMode.Inside`に設定することで、エディタの右側にプレビューを表示することができます。 #### ステータスバー ステータスバーには、現在の編集形式を表示しています。`MarkDown`と表示される場合はマークダウンが有効になっています。 </textarea> </body> </html>
System.config({ transpiler: 'plugin-babel', babelOptions: { es2015: true }, meta: { '*.css': { loader: 'css' } }, paths: { // paths serve as alias 'npm:': 'node_modules/' }, // map tells the System loader where to look for things map: { '@mescius/inputman': 'npm:@mescius/inputman/index.js', '@mescius/inputman/CSS': 'npm:@mescius/inputman/CSS', '@mescius/inputman.richtexteditor': 'npm:@mescius/inputman.richtexteditor/index.js', "@mescius/inputman.richtexteditor/CSS": "npm:@mescius/inputman.richtexteditor/CSS", '@mescius/inputman.richtexteditor/JS/plugins/advlist': 'npm:@mescius/inputman.richtexteditor/JS/plugins/advlist/plugin.js', '@mescius/inputman.richtexteditor/JS/plugins/all': 'npm:@mescius/inputman.richtexteditor/JS/plugins/all/plugin.js', '@mescius/inputman.richtexteditor/JS/plugins/autosave': 'npm:@mescius/inputman.richtexteditor/JS/plugins/autosave/plugin.js', '@mescius/inputman.richtexteditor/JS/plugins/charmap': 'npm:@mescius/inputman.richtexteditor/JS/plugins/charmap/plugin.js', '@mescius/inputman.richtexteditor/JS/plugins/directionality': 'npm:@mescius/inputman.richtexteditor/JS/plugins/directionality/plugin.js', '@mescius/inputman.richtexteditor/JS/plugins/emoticons': 'npm:@mescius/inputman.richtexteditor/JS/plugins/emoticons/plugin.js', '@mescius/inputman.richtexteditor/JS/plugins/fullscreen': 'npm:@mescius/inputman.richtexteditor/JS/plugins/fullscreen/plugin.js', '@mescius/inputman.richtexteditor/JS/plugins/htmlcode': 'npm:@mescius/inputman.richtexteditor/JS/plugins/htmlcode/plugin.js', '@mescius/inputman.richtexteditor/JS/plugins/image': 'npm:@mescius/inputman.richtexteditor/JS/plugins/image/plugin.js', '@mescius/inputman.richtexteditor/JS/plugins/link': 'npm:@mescius/inputman.richtexteditor/JS/plugins/link/plugin.js', '@mescius/inputman.richtexteditor/JS/plugins/lists': 'npm:@mescius/inputman.richtexteditor/JS/plugins/lists/plugin.js', '@mescius/inputman.richtexteditor/JS/plugins/media': 'npm:@mescius/inputman.richtexteditor/JS/plugins/media/plugin.js', '@mescius/inputman.richtexteditor/JS/plugins/pagebreak': 'npm:@mescius/inputman.richtexteditor/JS/plugins/pagebreak/plugin.js', '@mescius/inputman.richtexteditor/JS/plugins/preview': 'npm:@mescius/inputman.richtexteditor/JS/plugins/preview/plugin.js', '@mescius/inputman.richtexteditor/JS/plugins/save': 'npm:@mescius/inputman.richtexteditor/JS/plugins/save/plugin.js', '@mescius/inputman.richtexteditor/JS/plugins/searchreplace': 'npm:@mescius/inputman.richtexteditor/JS/plugins/searchreplace/plugin.js', '@mescius/inputman.richtexteditor/JS/plugins/table': 'npm:@mescius/inputman.richtexteditor/JS/plugins/table/plugin.js', '@mescius/inputman.richtexteditor/JS/plugins/template': 'npm:@mescius/inputman.richtexteditor/JS/plugins/template/plugin.js', '@mescius/inputman.richtexteditor/JS/plugins/wordcount': 'npm:@mescius/inputman.richtexteditor/JS/plugins/wordcount/plugin.js', '@mescius/inputman.comment': 'npm:@mescius/inputman.comment/index.js', '@mescius/inputman.comment/CSS': 'npm:@mescius/inputman.comment/CSS', '@mescius/wijmo': 'npm:@mescius/wijmo/index.js', '@mescius/wijmo.styles': 'npm:@mescius/wijmo.styles', '@mescius/wijmo.cultures': 'npm:@mescius/wijmo.cultures', '@mescius/wijmo.input': 'npm:@mescius/wijmo.input/index.js', '@mescius/wijmo.grid': 'npm:@mescius/wijmo.grid/index.js', '@mescius/wijmo.nav': 'npm:@mescius/wijmo.nav/index.js', '@mescius/spread-sheets': 'npm:@mescius/spread-sheets/index.js', '@mescius/spread-sheets-resources-ja': 'npm:@mescius/spread-sheets-resources-ja/index.js', '@mescius/spread-sheets/styles': 'npm:@mescius/spread-sheets/styles', 'css': 'npm:systemjs-plugin-css/css.js', 'plugin-babel': 'npm:systemjs-plugin-babel/plugin-babel.js', 'systemjs-babel-build': 'npm:systemjs-plugin-babel/systemjs-babel-browser.js' }, // packages tells the System loader how to load when no filename and/or no extension packages: { src: { defaultExtension: 'js' }, "node_modules": { defaultExtension: 'js' }, } });