# Markdown バー プラグイン

テキストエディター Mery のツールバーに Markdown バーを追加し、ボタンひとつで Markdown を入力したり、リストの編集や目次の作成を行ったりできるプラグインです。

## 機能

- ボタンひとつで Markdown 記法を入力
- キーボード ショートカットで Markdown 記法をすばやく入力
- 目次の作成と更新
- キーボード操作によるリスト編集を補助
- Markdown テーブルの整形
- テキストを貼り付けてリンクを簡単に作成

## はじめに

**動作環境**
- Windows 11、10、8.1、8、7、Vista、XP をサポートしています。
- Mery v2.8.3 以降をインストールしている必要があります。

**アーカイブに含まれるファイル**
- Plugins/MarkdownBar.dll: プラグイン本体
- ThirdPartyNotices.txt: サードパーティ製コンポーネントのライセンス
- eula.html: ソフトウェア使用許諾書
- CHANGELOG.txt: 変更ログ
- README.txt: 本ドキュメント

## インストール

1. アーカイブを展開し、`MarkdownBar.dll` を `Mery.exe` のインストール先の `Plugins` フォルダーにコピーしてください。
2. Mery を起動すると、[ツール] メニューの [プラグイン] にインストールしたプラグインの項目が追加されます。

## アップデート

- アーカイブを展開し、`Plugins` フォルダーの内容を Mery の `Plugins` フォルダーに上書きしてください。

## アンインストール

- Mery の `Plugins` フォルダーからアンインストールしたいプラグイン (*.dll) を削除してください。
- 設定ファイルは以下のフォルダーに保存されているため、手動で削除してください。

```
C:\Users\<UserName>\AppData\Roaming\Mery\Plugins\MarkdownBar
```

## 使い方

1. [表示] メニューから [ツール バー] の [Markdown バー] を選択すると、Markdown バーが表示されます。
2. Markdown バーのボタンをクリックすると、カーソル位置、または選択範囲に対して Markdown の記法が適用または解除されます。

## 便利な機能

Markdown バーには、ボタンひとつで Markdown の記法を入力する機能だけでなく、編集を効率化する便利な機能が多数搭載されています。

### キーボード ショートカット

- [編集モード] が [Markdown] のとき、キーボード ショートカットが有効になります。
- たとえば、太字は `Ctrl` + `B`、斜体は `Ctrl` + `I`、タスク リストのチェック切り替えは `Alt` + `C` など、キーボード操作だけで素早く Markdown を入力できます。
- [オプション] ダイアログの [キーボード] ページでは、キーボード ショートカットの有効/無効やキー割り当てを変更できます。

**キーボード ショートカットの一覧**
- `Ctrl` + `B` : 太字
- `Ctrl` + `I` : 斜体
- `Alt` + `S` : 取り消し線
- `Shift` + `Ctrl` + `[` : 見出しレベルを下げる
- `Shift` + `Ctrl` + `]` : 見出しレベルを上げる
- `Alt` + `C` : タスク リストのチェック切り替え
- `Shift` + `Alt` + `F` : テーブルを整形
- `Ctrl` + `V` : リンクを貼り付け

### リストの編集

- [編集モード] が [Markdown] のとき、リスト編集を補助する機能が有効になります。
- リストを編集中に `Enter` キーを押すと、次の行にリストの構文が自動的に追加されます。
- `Enter` キーを押した直後に `Tab` キーまたは `Backspace` キーを押すと、リストのインデントを増減できます。
- `Shift` + `Enter` キーを押すと、リストの構文を追加せずに通常の改行になります。
- [オプション] ダイアログの [編集] ページでは、リスト編集機能の有効/無効やインデント幅などを変更できます。

### 目次

- [見出し] ボタン右側の [▼] をクリックして表示されるメニューから [目次の挿入] を選択すると、見出し (#) をもとに目次を自動作成し、カーソル位置に挿入します。
- 挿入した目次は、[目次の更新] を実行することで最新の状態に更新できます。
- [オプション] の [保存時に目次を自動的に更新する] を有効にすると、ファイル保存時に目次を自動更新できます。
- [セクション番号の追加] または [セクション番号の削除] で、各見出しにセクション番号を追加/削除できます。

**目次の詳細**
- [オプション] の [アウトライン レベル] で、目次に含める見出しの階層を設定できます。
- 見出しの直後、または見出しの 1 つ前の行に `<!-- omit from toc -->` を追加すると、その見出しを目次から除外できます。
- [目次の更新] 実行時に目次ではないリストが誤って更新される場合は、リストの 1 つ前の行に `<!-- no toc -->` を追加すると、そのリストを更新対象から除外できます。

### 貼り付けによるリンクの作成

- URL をコピーした状態でテキストを選択し、[リンクの挿入] ボタン右側の [▼] をクリックして表示されるメニューから [リンクの貼り付け] を選択すると、選択したテキストをリンクに変換できます。

### テーブルの整形

- [テーブルの挿入] ボタン右側の [▼] をクリックして表示されるメニューから [テーブルの整形] を選択すると、テーブル構文を整形できます。
- [選択範囲の整形] を選択すると、カーソル位置、または選択範囲のテーブル構文を整形します。

## オプション

[ツール] メニューの [プラグイン] から [プラグインの設定] を選択し、[プラグインの設定] ダイアログで [Markdown バー] を選択して [プロパティ] をクリックすると、[オプション] ダイアログが表示されます。

また、Markdown バー右端の [▼] をクリックして表示されるメニューから [オプション] を選択することでも、[オプション] ダイアログを表示できます。

### 全般

**選択された編集モードで自動的に表示する**
- 選択した編集モードに切り替えたときに、Markdown バーを自動的に表示します。

### 編集

**斜体の構文**
- 斜体に使用する Markdown の構文を選択します。

**リストの編集を有効にする**
- キーボードによるリスト編集機能を有効にします。

**インデントの幅を自動的に調整する**
- サブ項目のインデント幅を自動的に最適な幅に調整します。

```
- 親項目
  -  サブ項目

1. 親項目
   1. サブ項目

10. 親項目
    1. サブ項目
```

**段落番号を自動的に更新する**
- リスト編集時に段落番号を自動的に更新します。

**段落番号を連番にする**
- 段落番号を連番にします。無効にすると、段落番号は `1.` に固定されます。

### 目次

**アウトライン レベル**
- 目次に含める見出しの階層を、開始レベルと終了レベルでそれぞれ 1 から 6 までの範囲で設定します。

**箇条書きの構文**
- 箇条書きに使用する Markdown の構文を選択します。
- この設定は、Markdown バーの [箇条書き] ボタンにも反映されます。

**段落番号を使用する**
- 目次を箇条書きではなく、段落番号 (番号付きリスト) で作成します。

**ハイパーリンクを使用しない**
- 目次をハイパーリンクなしで、テキストのみで作成します。

**保存時に目次を自動的に更新する**
- エディターで [上書き保存] を実行したときに、目次を自動的に更新します。

### キーボード

**キーボード ショートカットを有効にする**
- キーボード ショートカットによる操作を有効にします。
- Mery 本体に設定されているキーボード ショートカットより優先されます。
- 2 ストローク キーのショートカットを設定した場合、1 ストローク目が同じ Mery 本体の 2 ストローク キーのショートカットは実行できません。

## よくある質問

**Markdown バーが表示されません。**
- [表示] メニューの [ツール バー] から [Markdown バー] を選択してください。
- [オプション] ダイアログの [全般] ページで、[選択された編集モードで自動的に表示する] を有効にすると、指定した編集モードに切り替えたときに自動的に表示されます。

**キーボード ショートカットが動作しません。**
- キーボード ショートカットは、編集モードが Markdown のときのみ有効です。
- [オプション] ダイアログの [キーボード] ページで、[キーボード ショートカットを有効にする] が有効になっていることを確認してください。

**Mery 本体に設定したキーボード ショートカットが動作しなくなりました。**
- Markdown バーのキーボード ショートカットは、Mery 本体よりも優先して処理されます。
- Markdown バーで 2 ストローク キーのショートカットを設定した場合は、1 ストローク目が同じ Mery 本体の 2 ストローク キーのショートカットは実行できません。

**目次に含めたくない見出しがあります。**
- 見出しの直後、または見出しの 1 行前に、次のコメントを追加してください。

```html
<!-- omit from toc -->
```

**目次ではないリストが更新されてしまいます。**
- 更新されたくないリストの 1 行前に、次のコメントを追加してください。

```html
<!-- no toc -->
```

**保存時に目次を自動更新できますか？**
- [オプション] ダイアログの [目次] ページで、[保存時に目次を自動的に更新する] を有効にしてください。

**Markdown 以外の編集モードでも使用できますか？**
- Markdown バー自体は表示できますが、リスト編集やキーボード ショートカットなどの一部の機能は、Markdown 編集モードでのみ有効です。

Markdown 以外の編集モードでも使用したい場合は、次の手順で設定してください。

```
C:\Users\<ユーザー名>\AppData\Roaming\Mery\Plugins\MarkdownBar\MarkdownBar.ini
```

このファイルの `[Editing]` セクションに、たとえば次のように `ModeList=Markdown,Text` を追加します。

```ini
[Editing]
ModeList=Markdown,Text
```

これにより、編集モードが Markdown または Text のときに、リスト編集やキーボード ショートカットが有効になります。

**Markdown をプレビューしたいのですが。**
- Markdown バー プラグインには、Markdown をプレビューする機能はありません。
- [Markdown プレビュー プラグイン](https://mery.booth.pm/)には、次の機能があります。
	- GitHub スタイルのテーマを採用
	- ソースコードのシンタックス ハイライト
	- 数式の表示 (KaTeX)
	- ダイアグラムやチャートの表示 (Mermaid)
	- 分かち書き (BudouX)
	- PDF 形式で保存
	- HTML 形式で保存
	- Word、OpenOffice、EPUB 形式などのインポート/エクスポート
	- エディターとプレビューを同期してスクロール
	- 拡張 Markdown 記法に対応
	- markdown-it プラグインに対応

## 利用規約

- デジタル コンテンツの性質上、返品、返金、キャンセルはできません。誤ってご購入された場合でも、返金はいたしかねますのでご了承ください。
- 本商品および本商品を含むアーカイブの無断転載、複製、再配布を禁止します。
- 本商品の改変、リバース エンジニアリング、逆コンパイルなどの解析行為を禁止します。
- 詳細については、本商品に同梱の `eula.html` ファイルをご確認ください。

## 免責事項

- 本商品のご利用によって生じた損害やトラブルについて、当方は責任を負いません。
- 不具合の修正には努めますが、バージョンアップや不具合修正について、当方は義務を負いません。
- Mery のバージョンアップにともない、プラグインの仕様は予告なく変更される場合があります。
- 本規約は予告なく変更される場合があります。

本商品および BOOTH の BOOST 機能によるご支援は、現状の提供内容に対するものです。サポートや機能改善を保証するものではありませんので、あらかじめご了承ください。

## サポート

最新版は [Haijin Boys Online](https://www.haijin-boys.com/) および [BOOTH](https://mery.booth.pm/) で公開しています。ご質問や不具合のご報告については、情報共有のために[フォーラム](https://www.haijin-boys.com/discussions)をご利用ください。

ご購入いただいた商品に関するお問い合わせは BOOTH のメッセージ機能もご利用いただけます。なお、メールや X でのサポートは行っておりません。

無料版に関する個別のお問い合わせは受け付けておりません。不具合をご報告いただける場合はフォーラムをご利用ください。なお、返信や修正をお約束するものではありません。

## 謝辞

ご購入いただき、ありがとうございます。いただいたご支援は、開発費、開発環境の整備・更新費、素材やコンポーネント、参考書籍の購入費、ならびにブログや Wiki の運営・維持費として、大切に活用させていただきます。

今後も、より良いソフトウェアを提供できるよう努めてまいりますので、引き続きテキストエディター Mery を応援していただければ幸いです。

## ライセンス

**サードパーティ製コンポーネント**
- [Markdown Support for Visual Studio Code](https://github.com/yzhang-gh/vscode-markdown)
- [Fluent UI System Icons](https://github.com/microsoft/fluentui-system-icons)

著作権およびライセンスについては、本ソフトウェアに同梱されている `ThirdPartyNotices.txt` ファイルに詳細が記載されています。
