NoktoKalkulo
Markdown形式の小説原稿向け文字数カウント拡張機能です。
記号やMarkdown記法を除外し、本文の文字のみをカウントします。
執筆量を正確に把握することを目的としています。
機能
- Markdownファイルを自動で文字数カウント
- ステータスバーに現在の文字数を表示
- ディレクトリ単位での合計文字数計算(サブディレクトリ含む)
- 目標文字数に対する進捗表示
- 会話文(「」『』)と叙述文の分離カウント
- 詳細情報を出力パネルに表示
- 多言語UI対応(日本語、中国語簡体字、中国語繁体字、韓国語、英語)
- CJK(中日韓)文字の詳細カウント対応
カウント規則
以下の文字をカウント対象とします:
- 日本語文字:ひらがな、カタカナ、漢字
- 中国語文字:簡体字、繁体字
- 韓国語文字:ハングル
- その他:アルファベット(全角・半角)、数字(全角・半角)
以下はカウント対象外です:
- 句読点
- 記号
- 空白
- Markdown構文(見出し、リスト記号など)
- コードブロック
- HTMLコメント
全角・半角はともに1文字として扱います。
表示仕様
ステータスバー
目標文字数を設定している場合:
1,234字 | 69%
目標文字数を設定していない場合:
1,234字
ステータスバーをクリックすると出力パネルに詳細情報を表示します。
出力パネル
詳細情報表示
ステータスバーをクリックするか、コマンドパレットから「Show Text Composition」を実行すると、
出力パネルに以下の情報が表示されます:
NoktoKalkulo
=== 現在のファイル ===
総文字数: 2,261字
会話文: 193字 (9%)
叙述文: 2,068字 (91%)
----------------------------------------
=== ディレクトリ合計 ===
総文字数: 5,108字 / 6,000字
進捗: 85%
残り: 892字
会話文: 475字 (9%)
叙述文: 4,633字 (91%)
- 会話文:かぎ括弧「」および『』で囲まれた部分の文字数
- 叙述文:会話文以外の本文文字数
- 進捗・残り:目標文字数を設定している場合のみ表示
統計情報表示
コマンドパレットから「Show Character Statistics」を実行すると、
出力パネルに以下の情報が表示されます:
NoktoKalkulo
=== 現在のファイル ===
総文字数: 2,261字
会話文: 193字 (9%)
叙述文: 2,068字 (91%)
--- 文字種内訳 ---
ひらがな: 1,486 (66%)
カタカナ: 165 (7%)
漢字: 610 (27%)
ハングル: 0 (0%)
アルファベット全角: 0 (0%)
アルファベット半角: 0 (0%)
数字全角: 0 (0%)
数字半角: 0 (0%)
Example
Status Bar

Output Panel

設定
VS Code 設定(settings.json)
{
"nokto.wordCount.targetWords": 8000,
"nokto.wordCount.showInStatusBar": true
}
| 設定項目 |
型 |
デフォルト |
説明 |
| nokto.characterCount.targetCharacters |
number |
0 |
目標文字数(0の場合は進捗非表示) |
| nokto.characterCount.showInStatusBar |
boolean |
true |
ステータスバー表示の有効/無効 |
注意: 旧設定 nokto.wordCount.* は非推奨ですが、後方互換性のために引き続き動作します。
作品ごとの設定
原稿ディレクトリに .nokto.json を配置することで、
その作品専用の目標文字数を設定できます。
例:
{
"targetCharacters": 12000
}
設定ファイルが存在する場合はそちらが優先されます。
注意: 旧設定 targetWords は非推奨ですが、後方互換性のために引き続き動作します。
コマンド
- NoktoKalkulo: Count Manuscript Characters
- NoktoKalkulo: Show Text Composition
- NoktoKalkulo: Show Character Statistics
- NoktoKalkulo: Set Target Characters - 目標文字数を設定
ライセンス
MIT License
English
NoktoKalkulo is a character count extension for fiction written in Markdown.
It counts only textual characters in the manuscript body,
excluding symbols and Markdown syntax, in order to measure actual writing volume.
Features
- Automatic character counting for Markdown files
- Current file count displayed in the status bar
- Directory-wide total character count (including subdirectories)
- Progress display against a target character count
- Separate counting of dialogue ("「」" and "『』") and narrative text
- Detailed breakdown shown in the Output panel
Counting Rules
The following characters are counted:
- Hiragana
- Katakana
- Kanji
- Alphabet characters (full-width and half-width)
- Numbers (full-width and half-width)
The following are excluded:
- Punctuation
- Symbols
- Whitespace
- Markdown syntax (headings, list markers, etc.)
- Code blocks
- HTML comments
Full-width and half-width characters are both counted as one character.
Configuration
Global settings (VS Code settings.json):
{
"nokto.characterCount.targetCharacters": 8000,
"nokto.characterCount.showInStatusBar": true
}
Per-project configuration via .nokto.json:
{
"targetCharacters": 12000
}
Commands
- NoktoKalkulo: Count Manuscript Characters
- NoktoKalkulo: Show Text Composition
- NoktoKalkulo: Show Character Statistics
- NoktoKalkulo: Set Target Characters