PaperFlow: LaTeX & Markdown Checklist🌐 EnglishPaperFlow is a VS Code extension designed for academic writing and research workflows, combining LaTeX autocompletion (commands, packages, and BibTeX citations) with an interactive, two-way synchronized Markdown checklist preview. ✨ Features
🚀 Usage
⚙️ Settings
Example: Custom LaTeX Commands (
|
| Command | Keybinding | Description |
|---|---|---|
PaperFlow: Open Interactive Preview |
- | Open the interactive checklist preview beside the active editor. |
PaperFlow: Toggle Task on Current Line |
Alt + X |
Toggle the task checkbox on the current cursor line in the editor. |
🇯🇵 日本語
PaperFlow は、論文執筆・研究ワークフロー向けに、LaTeX入力補完(コマンド・パッケージ・BibTeX引用) と MarkdownのTODOリスト(- [ ] / - [x])の双方向インタラクティブプレビュー を統合した VS Code 拡張機能です。
✨ 主な機能 (Features)
LaTeX コマンド・パッケージ・BibTeX 引用タグの入力候補(オートコンプリート)
- LaTeXファイル(
.tex)およびMarkdownファイルの数式内($...$/$$...$$)で、\を入力すると頻出LaTeXコマンドの入力候補が表示されます。 - スニペット形式(例:
\frac{num}{den}や\begin{aligned} ... \end{aligned})に対応しており、Tabキーで引数間をスムーズに移動できます。 - パッケージ補完(
\usepackage{...}/\RequirePackage{...}): ワークスペースのルートや開いている.texファイルと同じディレクトリにある.styファイル(\ProvidesPackageの説明文も自動取得)と、定番の標準パッケージ(amsmath,graphicx,hyperref,tikz等)を候補として表示します。 - BibTeX 引用補完(
\cite{...}等): ファイル内の\bibliography{...}や\addbibresource{...}で指定された.bibファイルを自動解析し、\cite{}/\citep{}/\citet{}/\parencite{}/\textcite{}/\autocite{}等の中で引用キー(および論文タイトル・著者名・発行年)を候補として表示します(\cite{key1, key2}のようなカンマ区切り複数指定にも対応)。 - カスタムコマンド: VS Code の
settings.jsonから独自のカスタムLaTeXコマンドをキーバリュー形式で自由に追加・上書きできます。
- LaTeXファイル(
GitHubスタイルのインタラクティブプレビュー
- GitHub Markdown風のデザインでTodoリストやテキストを美しくレンダリングします。
- ダークテーマ・ライトテーマの両方に自動適応します。
チェックボックスと元のMarkdownの双方向同期
- プレビュー上のチェックボックスをクリックすると、元のMarkdownファイル上の該当行の
[ ]と[x]が即座に書き換わります。 - エディタ側でMarkdownを直接編集した場合も、リアルタイムにプレビューへ反映されます。
- エディタのUndo / Redo(元に戻す / やり直す)履歴にも安全に記録されます。
- プレビュー上のチェックボックスをクリックすると、元のMarkdownファイル上の該当行の
チェック変更時の自動保存 (Auto Save)
- プレビュー上でチェックボックスを切り替えた際、またはショートカットでトグルした際にMarkdownファイルを自動保存します(設定でオフにすることも可能)。
画面チラつきのない高速ホットリロード (In-Place Hot Reload)
- エディタの編集内容をプレビュー全体のリロードなしにインプレースで更新します。スクロール位置が維持され、チラつきなくスムーズに作業できます。
階層型スティッキー見出し (Hierarchical Sticky Headings)
- 縦に長いMarkdownファイルでも、スクロール時に見出しがレベル(階層)ごとに分かれて上部に固定表示されます(例: 大見出し「レベル2」の下に中見出し「レベル3」がスタック固定され、次のレベル3へ移動すると新しいレベル3に押し出されます)。現在どのカテゴリのタスクを操作しているかが迷子になりません。
TODO進捗バーの表示
- ファイル内のタスク数と完了率(例:
3 of 5 tasks completed (60%))を上部に自動集計・プログレスバー表示します。
- ファイル内のタスク数と完了率(例:
クイックジャンプ
- プレビュー上のタスク行をダブルクリックすると、エディタの該当行へ即座にカーソルがジャンプします。
エディタショートカットキー
- エディタ上でタスク行にカーソルを置き、
Alt + Xを押すだけでチェック状態([ ]↔[x])をトグルできます。
- エディタ上でタスク行にカーソルを置き、
🚀 使い方 (Usage)
- Markdown チェックリストプレビュー:
.md(Markdown)ファイルを開きます。- エディタ右上の チェックリストアイコン(
PaperFlow: Open Interactive Preview)をクリックするか、コマンドパレット(F1またはCtrl+Shift+P/Cmd+Shift+P)からPaperFlow: Open Interactive Previewを実行します。 - プレビュー上のチェックボックスをクリックすると、元のMarkdownファイルが自動更新&自動保存されます。
- LaTeX 入力補完:
.texファイル、または.mdファイルの数式ブロック($...$/$$...$$)内で\や\usepackage{、\cite{を入力すると、文脈に応じた入力候補が表示されます。
⚙️ 設定 (Settings)
VS Code の設定画面(Cmd+, または Ctrl+,)から本拡張機能の動作をカスタマイズできます。
| 設定項目 | デフォルト値 | 説明 |
|---|---|---|
paperflow.autoSave |
true |
チェックボックスの状態を変更した際に、Markdownファイルを自動保存するかどうか |
paperflow.latex.enableCompletion |
true |
LaTeXファイルおよびMarkdownの数式ブロック内でLaTeXコマンドの入力補完を有効にするか |
paperflow.latex.includeBuiltinCommands |
true |
標準搭載の一般的なLaTeXコマンドを入力候補に含めるかどうか |
paperflow.latex.customCommands |
{} |
ユーザー定義のカスタムLaTeXコマンド({ "コマンド名": "スニペット" } 形式) |
カスタムLaTeXコマンドの設定例 (settings.json)
{
"paperflow.latex.customCommands": {
"myvec": "\\mathbf{${1:v}}",
"dudt": "\\frac{\\partial ${1:u}}{\\partial ${2:t}}"
}
}
⌨️ ショートカット & コマンド
| コマンド | キーバインド | 説明 |
|---|---|---|
PaperFlow: Open Interactive Preview |
- | インタラクティブなチェックリストプレビューを横に開く |
PaperFlow: Toggle Task on Current Line |
Alt + X |
エディタの現在行のタスク状態をトグルする |
🛠 Development & Debugging / 開発とデバッグ
- Press
F5to launch the Extension Development Host window. /F5キーを押して、拡張機能開発用ホスト(Extension Development Host)を起動します。 - Open a
.mdor.texfile (such assample.md) to test the preview and LaTeX autocompletion. / 開いたウィンドウでsample.mdなどの.mdファイルや.texファイルを開き、プレビューやLaTeX補完をお試しください。