pan4ratte1k downloadsCreate complex word count presets that will be displayed in the status bar or in the right pane tab. Install tens of community presets, custom metrics, and settings from the extension store.
English | Русский
This plugin allows you to create complex word count presets that are displayed in the status bar or in the right pane tab. You can cycle presets by clicking on the status bar, the right pane header or using command palette. Thanks to community extensions — presets, metrics and advanced settings — the plugin flexibly adapts to writing, academic and other purposes.
Each separate preset can have its own list of metrics and methods of counting formatting elements, which makes working on multiple projects easier. You can quickly cycle between presets by clicking on the status bar, the right pane tab header of or from the command palette.
Essentials:
Additional options:
(url)[label] and [label](url)![[note]] or ![[file.pdf]][^1] references and inline ^[…]Special "academic" options:
[[wiki]] and [[wiki|label]][@doe2020]You can specify, how formatting elements will be counted:
| Advanced option | Off | On |
|---|---|---|
| Count links display text | (url)[label] → label and url will be counted |
only label will be counted |
| Ignore wikilinks | wikilinks text will be counted | wikilinks will be ignored |
| Count wikilinks display text | [[wiki|label]] → wiki and label will be counted |
only label will be counted |
| Ignore citekeys | citekeys text will be counted | citekeys will be ignored |
| Ignore comments | comments %% … %% and <!-- … --> text will be counted |
comments will be ignored |
| Ignore HTML tags | HTML tags like <b> … </b> etc. will be counted |
HTML tags will be ignored |
Community extensions are small add-ons, each of which adds one metric, one advanced (word-count) setting, or a whole ready-made preset.
The official catalogue currently includes:
Metrics
| Name | Description |
|---|---|
| Sentences | Counts the number of sentences in a note. |
| Emoji | Counts the number of emoji and other pictographic characters in a note. |
| Reference links | Counts resolved reference-style links — a [text][id] reference that has a matching [id]: URL definition elsewhere in the note. |
| HTTP(S) links | Counts every http(s) link in a note, wherever it appears — bare, inside a Markdown link, angle brackets or any other brackets. |
| Comments | Counts HTML and Obsidian comments in the note. |
| Unique tags | Counts the number of unique #tags in a note, ignoring repeats. |
| Average word length | Calculates the average number of characters per word in a note. |
| Average Markdown links per page | Calculates the average number of Markdown links per page. |
| Average words per sentence | Calculates the average number of words per sentence in a note. |
| Headings | Counts the number of Markdown headings (# … ######) in a note. |
| Tasks (all) | Counts all task checkboxes — checked and unchecked. |
| Completed tasks | Counts only completed task checkboxes (- [x] or - [X]). |
| Incomplete tasks | Counts only incomplete task checkboxes (- [ ]). |
| References | Counts the number of unique @citekeys in a note. |
| Average citations per page | Calculates the average number of citations per page. |
| Pandoc generated footnotes | Counts Markdown footnotes combined with @citekey groups that will generate footnotes after Pandoc export of the note. Use if you export with a footnote citation style. |
| Tables | Counts the number of complete Markdown tables (header + delimiter row) in a note. |
| Tags | Counts the number of #tags in a note. |
Advanced settings
| Name | Description |
|---|---|
| Ignore highlights | When counting words and characters, ignores ==highlighted== spans. |
| Ignore math | When counting words and characters, excludes LaTeX math — block $$…$$ and inline $…$. |
| Ignore tables | When counting words and characters, excludes Markdown table rows. |
| Ignore URLs | When counting words and characters, excludes bare http(s) links. |
| Ignore strikethrough | When counting words and characters, excludes ~~struck-through~~ text. |
| Ignore backslash commands | When counting words and characters, excludes lines consisting solely of a backslash command such as \pagebreak or \newpage. |
| Ignore Dataview fields | When counting words and characters, excludes inline Dataview fields — [key:: value] and (key:: value). |
| Ignore code | When counting words and characters, excludes block and inline code. |
| Count Telegram emoji as one symbol | When counting words and characters, counts a custom Telegram emoji in the format 😢 as one symbol. The extension provides support for the “Publish to Telegram” plugin emojis. |
Presets
| Name | Description |
|---|---|
| Telegram user post | Preset for posts made as a Telegram user: with limit warnings and all metrics set up to count characters the way Telegram does. |
| Telegram rich-text post | Preset for rich-text posts in Telegram: with limit warnings and all metrics set up to count characters the way Telegram does. |
| Scientific article | Preset with all basic metrics and goals, necessary for academic writing purposes. |
Want to build your own? See the extension contributor guide.
In Obsidian settings open the tab "Community plugins" and click "Browse" button.
In the search bar type Advanced Word Count, click on the result, then "Install" and "Enable" buttons.
Alternatively, you can install the plugin by following the link to the community website: https://community.obsidian.md/plugins/advanced-word-count
If you want to test beta-versions of the plugin or use previous versions, you can do that with BRAT plugin:
Install BRAT plugin from the official Obsidian plugin store.
In the BRAT settings, find the “Beta plugin list” section and click on the “Add beta plugin” button.
In the window that appears, paste the link to the Advanced Word Count plugin repository: https://github.com/pan4ratte/obsidian-advanced-word-count
Under “Select a version” choose the desired version and click the “Add plugin” button. The plugin will be automatically installed and will be ready to use.
My name is Mark Ingram (Ingrem), I am a Religious Studies scholar. Apart from my main area of study (Protestant Political Theology in Russia), I teach the subject "Information Technologies in Scientific Research", a unique course that I developed myself from scratch. This plugin helps me in my studies and I use it in my teaching, as well as other plugins that I develop and that you can find on my GitHub profile.
Hello to every student that came across this page!