# PasteMD

PasteMD

Release Downloads License AtomGitStars Python 3.12+ Platform

English | 简体中文 | 日本語

Featured|HelloGitHub RICHQAQ%2FPasteMD | Trendshift

## ❤️ スポンサー
Atlas Cloud Atlas Cloud は、開発者が単一の AI API で動画生成、画像生成、LLM API にアクセスできるフルモーダル AI 推論プラットフォームです。複数ベンダーとの連携を管理する代わりに、一度接続するだけで、あらゆるモダリティに対応した 300 以上の厳選モデルを統合的に利用できます。
Atlas Cloud の新しい Coding Plan プロモーションで、より予算にやさしい API アクセスを確認できます:https://www.atlascloud.ai/console/coding-plan
APIMart 本プロジェクトをご支援いただいた APIMart に感謝します!APIMart は、AI 画像・動画生成に特化した低価格 API プラットフォームです。GPT-Image-2 は 1 枚 $0.006 からで、1 ドルで 160 枚以上の画像を生成できます。画像と動画の両方を 1 つの非同期 API で利用可能です。タスクを送信して ID を取得し、ポーリングまたはコールバックで結果を取得します。数万枚規模の画像もタイムアウトなしで一括処理でき、コードを変更せずにモデルを切り替えられます。従量課金制で月額料金は不要です。こちらの登録リンクから登録して、すぐにご利用いただけます。
> 論文やレポートを書いていると、ChatGPT / DeepSeek などの AI サイトからコピーした数式が Word で文字化けしませんか?Markdown の表を Excel に貼り付けると崩れませんか?**PasteMD はその問題を解決するためのツールです。** > > I am good 常駐トレイの小さなツール: **クリップボードの Markdown** を読み取り、**Pandoc** で DOCX に変換し、**Word/WPS** のカーソル位置に自動挿入します。 **✨ 機能**:Markdown 表をスマートに認識し、**Excel** にワンクリック貼り付け! **✨ 機能**:HTML リッチテキストをスマートに認識し、Web 上の AI 返信を **Word/WPS** にワンクリック貼り付け! **✨ 新機能**:アプリ拡張(HTML+Markdown/HTML/Markdown/LaTeX/ファイル貼り付け)。アプリ/ウィンドウタイトルでマッチ可能(例:語雀/QQ)。 **✨ 新機能**:変換強化:変換タイプごとの Pandoc Filters 設定、LaTeX 構文と単独の `$...$` 数式ブロックの自動修正。 --- ## 機能紹介 ### デモ #### Markdown → Word/WPS

デモ動画

#### Web の AI 返信 → Word/WPS

HTMLデモ

#### Markdown 表 → Excel

Excelデモ

#### 設定画面

設定デモ

* グローバルホットキー(既定 `Ctrl+Shift+B`)で Markdown → DOCX を一発変換。 * **✨ Markdown 表を自動認識**し、Excel に貼り付け。 * **✨ アプリ拡張**:アプリごとに HTML+Markdown/HTML/Markdown/LaTeX/ファイル貼り付けを設定し、ウィンドウタイトルでマッチ可能。 * **✨ 変換強化**:変換タイプ別に Pandoc Filters を追加し、一部 LaTeX 構文と単独 `$...$` 数式ブロックを自動修正。 * 前面アプリが Word/WPS かを自動判定。 * 必要に応じて Word/Excel を自動起動。 * トレイメニューから、ファイル保持やログ/設定の閲覧が可能。 * システム通知に対応。 * ブラックウィンドウなし、ノンブロッキングで安定稼働。 --- ## 📊 AI サイト互換性テスト 主要 AI チャットサイトでのコピー&貼り付け互換性テスト結果: | AI サイト | Markdown のコピー
(数式なし) | Markdown のコピー
(数式あり) | Web 内容のコピー
(数式なし) | Web 内容のコピー
(数式あり) | |---------|:----------------------------:|:----------------------------:|:---------------------------:|:---------------------------:| | **Kimi** | ✅ 完全対応 | ✅ 完全対応 | ✅ 完全対応 | ⚠️ 数式が表示不可 | | **DeepSeek** | ✅ 完全対応 | ✅ 完全対応 | ✅ 完全対応 | ✅ 完全対応 | | **通义千问** | ✅ 完全対応 | ✅ 完全対応 | ✅ 完全対応 | ⚠️ 数式が表示不可 | | **豆包\*** | ✅ 完全対応 | ✅ 完全対応 | ✅ 完全対応 | ✅ 完全対応 | | **智谱清言
/ChatGLM** | ✅ 完全対応 | ✅ 完全対応 | ✅ 完全対応 | ✅ 完全対応 | | **ChatGPT** | ✅ 完全対応 | ⚠️ 数式がコード表示 | ✅ 完全対応 | ✅ 完全対応 | | **Gemini** | ✅ 完全対応 | ✅ 完全対応 | ✅ 完全対応 | ✅ 完全対応 | | **Grok** | ✅ 完全対応 | ✅ 完全対応 | ✅ 完全対応 | ✅ 完全対応 | | **Claude** | ✅ 完全対応 | ✅ 完全対応 | ✅ 完全対応 | ✅ 完全対応 | **凡例:** - ✅ **完全対応**:書式/スタイル/数式が正しく表示 - ⚠️ **数式がコード表示**:数式が LaTeX コードとして表示されるため、Word/WPS の数式エディタで修正が必要 - ⚠️ **数式が表示不可**:数式が失われるため、Word/WPS の数式エディタで再入力が必要 - **豆包**:Web 内容(数式あり)をコピーする前に、ブラウザで「クリップボードの読み取り許可」を有効化してください(URL 左側のアイコンから設定可能) **テスト方法:** 1. **Markdown のコピー**:AI 返信内の「コピー」ボタンを押す(Markdown 形式。サイトによっては HTML も含む) 2. **Web 内容のコピー**:AI 返信内容を直接選択してコピー(HTML リッチテキスト) --- ## 🚀 使い方 1. 実行ファイルをダウンロード([Releases ページ](https://github.com/RICHQAQ/PasteMD/releases/)): * ~~**PasteMD_vx.x.x.exe**:**ポータブル版**。事前に **Pandoc** をインストールし、コマンドラインで実行できる必要があります。 未インストールの場合は [Pandoc 公式サイト](https://pandoc.org/installing.html) から導入してください。~~(提供終了。必要なら自前でビルド) * **PasteMD_pandoc-Setup.exe**:**統合インストーラ**。Pandoc 同梱で追加設定不要。 2. Word/WPS/Excel を開き、挿入したい位置にカーソルを置く。 3. **Markdown** または **Web 内容** をクリップボードにコピーし、**Ctrl+Shift+B** を押す。 4. 変換結果が自動で挿入されます: - **Markdown 表** → Excel に自動貼り付け(Excel が開いている場合) - **通常 Markdown/Web 内容** → DOCX に変換して Word/WPS に挿入 5. 右下に成功/失敗の通知が表示されます。 --- ## ⚙️ 設定 初回実行時にユーザーデータディレクトリへ `config.json` が生成されます(Windows:`%APPDATA%\\PasteMD\\config.json`、MacOS:`~/Library/Application Support/PasteMD/config.json`)。手動で編集可能です: ```json { "hotkey": "++b", "pandoc_path": "pandoc", "reference_docx": null, "save_dir": "%USERPROFILE%\\Documents\\pastemd", "keep_file": false, "notify": true, "startup_notify": true, "enable_excel": true, "excel_keep_format": true, "paste_delay_s": 0.3, "no_app_action": "open", "md_disable_first_para_indent": true, "html_disable_first_para_indent": true, "html_formatting": { "strikethrough_to_del": true }, "move_cursor_to_end": true, "Keep_original_formula": false, "enable_latex_replacements": true, "fix_single_dollar_block": true, "language": "zh-CN", "pandoc_request_headers": [ "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" ], "pandoc_filters": [], "pandoc_filters_by_conversion": { "md_to_docx": [], "html_to_docx": [], "html_to_md": [], "md_to_html": [], "md_to_rtf": [], "md_to_latex": [] }, "extensible_workflows": { "html": { "enabled": true, "apps": [], "keep_formula_latex": true }, "md": { "enabled": true, "apps": [], "html_formatting": { "css_font_to_semantic": true, "bold_first_row_to_header": true } }, "latex": { "enabled": true, "apps": [] }, "file": { "enabled": true, "apps": [] } } } ``` 項目説明: * `hotkey`:グローバルホットキー。例 `++v`。 * `pandoc_path`:Pandoc 実行ファイルのパス。 * `reference_docx`:Pandoc 参照テンプレート(任意)。 * `save_dir`:生成ファイルを保持する場合の保存先。 * `keep_file`:生成した DOCX を保持するか。 * `notify`:システム通知を表示するか。 * `startup_notify`:起動時に通知を表示するか。 * **`enable_excel`**:Markdown 表の自動認識と Excel 貼り付けを有効化(既定 true)。 * **`excel_keep_format`**:Excel 貼り付け時に Markdown 書式(太字/斜体/コードなど)を保持(既定 true)。 * `paste_delay_s`:貼り付け前の遅延秒数(Windows ではクリップボード更新に時間がかかる場合があります)。 * **`no_app_action`**:対象アプリ(Word/Excel など)が検出されない場合の既定動作(既定 `"open"`)。選択肢:`open`=自動で開く、`save`=保存のみ、`clipboard`=クリップボードへコピー、`none`=何もしない。 * **`md_disable_first_para_indent`**:Markdown 変換時、先頭段落の特殊書式を無効化し正文スタイルに統一(既定 true)。 * **`html_formatting`**:HTML リッチテキスト変換時の整形オプション。 * **`strikethrough_to_del`**:取り消し線 ~~ を `` に変換して正しく表示(既定 true)。 * **`html_disable_first_para_indent`**:HTML 変換時、先頭段落の特殊書式を無効化(既定 true)。 * **`move_cursor_to_end`**:挿入後にカーソルを末尾へ移動(既定 true)。 * **`Keep_original_formula`**:元の数式(LaTeX コード)を保持。 * `enable_latex_replacements`:互換性のない LaTeX 構文を自動修正(例:`{\\kern 10pt}` を `\\qquad` へ置換)。 * `fix_single_dollar_block`:単独行の `$ ... $` 数式ブロックを自動認識し `$$ ... $$` に修正。 * `language`:表示言語。`zh-CN` は簡体字中国語、`en-US` は英語、`ja-JP` は日本語。 * `pandoc_request_headers`:Pandoc がリモート資源をダウンロードする際のリクエストヘッダー(1 行 1 ヘッダー)。 * **`pandoc_filters`**:カスタム Pandoc Filter のリスト。`.lua` スクリプトや実行ファイルを指定し、順番に実行されます。高度な変換に使用。既定は空。例:`["%APPDATA%\\npm\\mermaid-filter.cmd"]` で Mermaid 図をサポート。 * `pandoc_filters_by_conversion`:変換タイプ別の Filters 設定(例:`md_to_docx`、`html_to_md` など)。 * `extensible_workflows`:アプリ拡張設定(アプリ/ウィンドウタイトルでマッチして貼り付け方式を切替)。詳細は下記。 変更後はトレイメニューの **「設定/ホットキーを再読み込み」** で即反映されます。 --- ## 🔧 高度な機能:Pandoc Filters のカスタマイズ ### Pandoc Filter とは? Pandoc Filter は、変換処理中に内容をカスタマイズするためのプラグインです。PasteMD は複数の Filter を順に適用できます。 ### 例:Mermaid 図のサポート Markdown で Mermaid 図を使いたい場合は、[mermaid-filter](https://github.com/raghur/mermaid-filter) が便利です。 **1. mermaid-filter をインストール** ```bash npm install --global mermaid-filter ``` *前提: [Node.js](https://nodejs.org/) が必要です*
⚠️ トラブルシューティング:Chrome のダウンロード失敗 mermaid-filter のインストール時に Chromium をダウンロードします。失敗する場合は手動でダウンロードしてください: **手順 1:必要な Chromium バージョンの確認** 次のファイルを開きます:`%APPDATA%\npm\node_modules\mermaid-filter\node_modules\puppeteer-core\lib\cjs\puppeteer\revisions.d.ts` 以下のような記述を探します: ```typescript chromium: "1108766"; ``` あるいはエラー出力の例: ```bash npm error Error: Download failed: server returned code 502. URL: https://npmmirror.com/mirrors/chromium-browser-snapshots/Win_x64/1108766/chrome-win.zip ``` `Win_x64/1108766` のような番号がバージョンです。 この番号(例:`1108766`)をメモしてください。 **手順 2:Chromium をダウンロード** 上記バージョンに合わせてダウンロード: ``` https://storage.googleapis.com/chromium-browser-snapshots/Win_x64/1108766/chrome-win.zip ``` (URL 内の `1108766` を置き換えてください) **手順 3:指定ディレクトリへ解凍** ダウンロードした `chrome-win.zip` を以下へ解凍: ``` %USERPROFILE%\.cache\puppeteer\chrome\win64-1108766\chrome-win ``` (ディレクトリ内の `1108766` も置き換え) 解凍後、次の場所に `chrome.exe` があることを確認: `%USERPROFILE%\.cache\puppeteer\chrome\win64-1108766\chrome-win\chrome.exe`
**2. PasteMD に設定** 方法 1:設定画面から - PasteMD 設定 → 変換タブ → Pandoc Filters - 「追加...」をクリック - Filter を選択:`%APPDATA%\npm\mermaid-filter.cmd` - 保存 方法 2:設定ファイルの編集 ```json { "pandoc_filters": [ "%APPDATA%\\npm\\mermaid-filter.cmd" ] } ``` **3. 動作確認** 以下の Markdown をコピーして PasteMD で変換: ~~~markdown ```mermaid graph LR A[開始] --> B[処理] B --> C[終了] ``` ~~~ Mermaid 図が画像として Word に挿入されます。 ### その他の Filter 参考 - [Pandoc Filters 公式一覧](https://github.com/jgm/pandoc/wiki/Pandoc-Filters) - [Lua Filters ドキュメント](https://pandoc.org/lua-filters.html) --- ## 🧩 アプリ拡張(カスタム貼り付けワークフロー) 設定 → **アプリ拡張** でアプリごとの貼り付け方式を設定し、ウィンドウタイトル(正規表現)でマッチ可能です: * **HTML** / **Markdown** / **LaTeX** / **ファイル**:対象アプリに最適な貼り付け方式を選択 - HTML/Markdown は語雀などのリッチテキストノートに適合 - LaTeX は Overleaf などの学術サイトに適合 - ファイルは QQ/WeChat など添付として貼り付けるアプリに適合 > ヒント:同一アプリには 1 つのワークフローのみ推奨(競合回避)。ウィンドウ名を分けたい場合は「ウィンドウ名マッチ」を使ってください。 設定例(抜粋): > Windows では `id` は通常 exe パス、macOS では bundle id(設定画面で追加すると自動入力されるので推奨)。 ```json { "extensible_workflows": { "html": { "enabled": true, "apps": [ { "name": "语雀", "id": "/path/语雀.exe", "window_patterns": [] } ], "keep_formula_latex": true }, "latex": { "enabled": true, "apps": [ { "name": "chrome", "id": "/path/chrome.exe", "window_patterns": [ ".*overleaf.*" ] } ] }, "file": { "enabled": true, "apps": [ { "name": "QQ", "id": "/path/qq.exe", "window_patterns": [] } ] } } } ``` --- ## トレイメニュー * 快捷表示:現在のグローバルホットキー(読み取り専用)。 * ホットキーを有効化:グローバルホットキーのオン/オフ。 * ポップアップ通知:システム通知のオン/オフ。 * 無アプリ時の動作:Word/WPS/Excel が検出されない場合の既定動作(自動で開く/保存のみ/クリップボードへコピー/なし)。 * 挿入後にカーソルを末尾へ移動:挿入後のカーソル移動のオン/オフ。 * HTML 整形:**取り消し線 ~~ を `` に変換** など、HTML 自動整形。 * ホットキー設定:UI で新しいホットキーを録音して保存(即時反映)。 * 生成ファイルを保持:オンにすると `save_dir` へ DOCX を保存。 * 保存先フォルダを開く、ログを見る、設定を編集、設定/ホットキーを再読み込み。 * バージョン:現在のバージョン表示、更新確認、更新時はダウンロードページを開く。 * 終了:アプリを終了。 --- ## 📦 ソースから実行 / パッケージ化 Python 3.12(64bit)推奨。 ```bash pip install -r requirements.txt python main.py ``` PyInstaller の場合: ```bash pyinstaller --clean -F -w -n PasteMD ^ --icon assets\icons\logo.ico ^ --add-data "assets\icons;assets\icons" ^ --add-data "pastemd\i18n\locales\*.json;pastemd\i18n\locales" ^ --add-data "pastemd\lua;pastemd\lua" ^ --hidden-import plyer.platforms.win.notification ^ main.py ``` 生成された実行ファイルは `dist/PasteMD.exe` に出力されます。 --- ## ⭐ Star Star してくれたみなさん、いつもありがとうございます!もっと多くの方に届くように頑張ります。4096 stars 目標です。 likeyou [![Star History Chart](https://star-history.dera.page/svg?repos=RICHQAQ/PasteMD&type=date&legend=top-left)](https://star-history.dera.page/#RICHQAQ/PasteMD&type=date&legend=top-left) ## 🍵 サポート/投げ銭 ご意見やアイデアがあれば issue でぜひ教えてください!🤯🤯🤯 **PasteMD ユーザー交流グループ**にも参加歓迎:
PasteMD交流群二维码
PasteMD QQ 交流群に参加
このツールが役に立てば嬉しいです。作者にコーヒーを一杯ごちそうしてもらえると、さらに開発の励みになります。ありがとうございます! flower | 支付宝 | 微信 | | --- | --- | | ![支付宝打赏](../../docs/pay/Alipay.jpg) | ![微信打赏](../../docs/pay/Weixinpay.png) | --- ## License This project is licensed under the [GNU Affero General Public License v3.0](../../LICENSE). Third-party licenses are listed in [THIRD_PARTY_NOTICES.md](../../THIRD_PARTY_NOTICES.md).