Skip to content

Releases: Obsidian-TTRPG-Community/Made-Up-Words

0.21.1

Choose a tag to compare

@github-actions github-actions released this 15 Aug 05:40

Made Up Words v0.21.1 — Community review fixes

A maintenance release. Nothing about the plugin behaves differently; this
clears the four errors the Obsidian community-plugin automated review raised
against 0.21.0 so the listing can pass its checks.

What the review flagged

The committed lockfile was out of date, which failed both the dependency
check and the build verification. It has been regenerated. While fixing it,
@codemirror/state and @codemirror/view were pinned to the exact versions
Obsidian 1.13.0 declares as peer dependencies (6.5.0 and 6.38.6) — the
previous version ranges asked for releases above those pins, so a clean
npm install only succeeded by overriding peer dependencies. A clean install
is now warning-free.

Two lint rules were being suppressed inline. Version 0.4 of
eslint-plugin-obsidianmd no longer permits eslint-disable comments for
obsidianmd/* or @typescript-eslint/no-deprecated rules, and requires a
written justification on any directive comment that remains. All thirteen
directive comments are gone — none of them were annotated to keep them:

  • The caret-position fallback used for Obsidian builds older than 1.13.0 now
    reaches caretRangeFromPoint through a locally declared type, so the call no
    longer resolves to the deprecated Document member. The fallback behaviour is
    unchanged, and support back to minAppVersion 1.7.2 is unchanged.
  • The Remove language button now calls setDestructive() on Obsidian
    versions that have it and setWarning() on versions that do not, rather than
    always calling the deprecated setWarning().
  • The rest were for the sentence-case rule on strings it reads incorrectly: the
    e.g. … placeholders in the word, name and entry modals, and the + Word,
    + Name and ↑↓ Swap direction buttons, where the rule counts a leading
    glyph as the first word. The wording of those labels has not changed. The
    rule now runs at its own default severity, so it reports them as warnings
    instead of being silenced.

Also in this release

  • Releases now publish GitHub artifact attestations for main.js and
    styles.css, so anyone can cryptographically verify that the files attached
    to a release were built from this repository. This was a recommendation rather
    than an error, but it is worth having.
  • The release workflow installs with npm ci, so a stale lockfile fails the
    build in future instead of passing quietly.

Installing / updating

Download main.js, manifest.json, and styles.css from this release and copy
them into .obsidian/plugins/made-up-words/ in your vault, then reload the
plugin (or restart Obsidian). Settings and dictionaries are preserved.

0.21.0

Choose a tag to compare

@github-actions github-actions released this 04 Aug 02:04

Made Up Words v0.21.0 — Hover direction control

Hover is the feature people use most, and it had a bias problem: it would
sometimes read one of your made-up words as an English word and offer to
translate it into your conlang.

Fixed

Your conlang now wins over English. Hover used to check both directions and
merge whatever it found, so a word that was both one of your headwords and
some other entry's English definition produced a tooltip mixing "here's what
your word means" with "here's how to say this English word". Hover now resolves
the conlang side first — headword, then hardcoded declared form, then
rule-derived inflected form — and if any of those match, the English direction
is never consulted.

This is the order highlighting has always used. Hover simply never matched it,
which is why a word could highlight as conlang and then hover as English.

Also fixed: an entry whose definition repeated its own headword or alias (common
for loanwords, and for proper nouns entered with the same conlang form and
referent) could pull the English readings back in through the cross-language
lookup.

Added

Two hover direction toggles, under Settings → Hover tooltips:

  • Show your words' meanings — the conlang direction: headwords, phrases,
    declared forms, and inflected forms.
  • Show English to conlang translations — the English direction. Turn this
    off if your made-up words are still being read as English. It also switches
    off the cypher preview, because that transformation treats hovered text as
    English in exactly the same way; leaving it on would keep producing the output
    you just turned off.

Both default to on, so nothing changes for existing vaults unless you touch
them. Turning both off makes hover inert entirely.

These mirror the Highlight conlang words / Highlight translatable English
words
settings, so the two features are now configured the same way.

Installing / updating

Download main.js, manifest.json, and styles.css from this release and
copy them into .obsidian/plugins/made-up-words/ in your vault, then reload
the plugin (or restart Obsidian). Settings and dictionaries are preserved.


Resolves #12.

0.20.1

Choose a tag to compare

@github-actions github-actions released this 03 Aug 23:52

Made Up Words v0.20.1 — Lint and code-health pass

Housekeeping only. No new features, and nothing you're using changes shape.

This release clears the full set of Obsidian plugin-guideline lint rules —
52 errors down to zero — so future reviews and contributions start from a
clean slate.

Fixed

  • A stray console.log on plugin load is gone. Obsidian asks plugins not
    to log to the console during normal operation; this one had been shipping
    quietly since the ribbon icon was added.
  • Four UI strings capitalised consistently. The Phrase, Cypher only
    and No match badges in the gloss view (these render uppercase via CSS, so
    you won't see a difference), the language filter's All option in the
    dictionary browser, and the "Conlang form" placeholder.
  • Two hint messages reworded — they referred to controls by names that no
    longer matched the labels on screen.

Under the hood

  • The settings tab stops calling Obsidian's deprecated
    PluginSettingTab.display() on itself; internal redraws go through a
    private method instead. The official replacement needs Obsidian 1.13.0, and
    this plugin still supports 1.7.2, so the override stays.
  • Caret hit-testing prefers the standard caretPositionFromPoint, falling
    back to the older API only where it has to.
  • Frontmatter values are read as unknown and narrowed explicitly instead of
    flowing through as any.

Where a lint rule was simply wrong — lower-casing "English", or wanting
"+ word" on a button whose first character is a + — the rule is configured
or suppressed with a comment explaining why, rather than the text being made
worse to satisfy it.

Installing / updating

Download main.js, manifest.json, and styles.css from this release and
copy them into .obsidian/plugins/made-up-words/ in your vault, then reload
the plugin (or restart Obsidian). Settings and dictionaries are preserved.

0.19.0

Choose a tag to compare

@github-actions github-actions released this 17 Jul 01:34

Made Up Words v0.19.0 — Homograph (multi-sense) entries

A focused release resolving #11: words with several unrelated meanings
(homographs) can now be created and managed properly.

Added

  • Homograph (multi-sense) entry creation. If a made-up word means both
    "to walk" and "guitar", you can now store each sense as its own entry. Two
    files can't share a name, so each sense lives in its own file (e.g.
    kala (verb).md, kala (noun).md) that declares the shared spelling via the
    word: frontmatter override. All add-word paths — the add-a-word modal,
    create-from-selection, batch creation, and add-a-name — detect when a word
    already exists with a different meaning and create a new
    word (partOfSpeech).md sense file automatically, instead of silently
    opening the existing entry. Re-adding an existing meaning still just opens
    the existing entry. Hovering a homograph shows every sense in one tooltip.
    (#11)

Changed

  • README: the word: frontmatter override is now documented as the recipe
    for multi-sense entries, with a worked example. It was previously described
    as phrase-only, leaving no documented way to create two entries with the same
    spelling. (#11)

Installing / updating

Download main.js, manifest.json, and styles.css from this release and
copy them into .obsidian/plugins/made-up-words/ in your vault, then reload
the plugin (or restart Obsidian). Settings and dictionaries are preserved.

0.17.6

Choose a tag to compare

@github-actions github-actions released this 09 Jun 13:21

Made Up Words v0.17.6 — Lint cleanup fix

Corrects an eslint directive that the Obsidian review disallows. No user-facing
changes.

Changed

  • Removed an eslint-disable comment for caretRangeFromPoint (Obsidian's
    guidelines don't permit disabling that rule). The deprecated-but-broadly-
    supported caret API is kept as documented, now without the directive.

Install

Overwrite main.js, manifest.json, and styles.css in your
.obsidian/plugins/made-up-words/ folder with the assets attached to this
release, then reload the plugin. Your settings and dictionaries are preserved.
Requires Obsidian 1.7.2 or newer.

0.17.3

Choose a tag to compare

@github-actions github-actions released this 09 Jun 10:58

Made Up Words v0.17.3 — Settings heading compliance (cont.)

Clears the last remaining error from Obsidian's automated plugin review. No
user-facing feature changes.

Changed

  • Renamed the per-language section heading to "Individual languages" so it no
    longer uses a discouraged generic word in a settings heading.

Install

Overwrite main.js, manifest.json, and styles.css in your
.obsidian/plugins/made-up-words/ folder with the assets attached to this
release, then reload the plugin. Your settings and dictionaries are preserved.
Requires Obsidian 1.7.2 or newer.

0.17.0

Choose a tag to compare

@github-actions github-actions released this 08 Jun 14:41

Made Up Words v0.17.0 — Aliases & per-language word adding

Two community-requested features, both from issue #2.

Resolves #2.

Added

  • Entry aliases. A dictionary entry can declare alternate surface forms via
    an aliases frontmatter field, and hover tooltips + highlighting treat every
    alias exactly like the headword:

    ---
    definition: the second month
    aliases: Feb, Febr
    ---

    Hovering or highlighting Feb or Febr resolves to the February entry.
    Accepts a comma-separated string or a YAML list; multi-word aliases are
    matched like phrases; aliases are shown in the tooltip
    ("February (also: Feb, Febr)").

  • Add a word to any language(s), including several at once. Highlight a word
    (or put the cursor on one), then right-click → "Add to Made Up Words
    dictionary…"
    or run "Add selection to dictionary". The Save dialog now
    lists every language with a checkbox and an editable, cypher-seeded form per
    language — tick one or several and an entry is created in each language's own
    folder at once (shared part of speech + definition). No more manually sorting
    words out of one default folder.

Fixed

  • New entries reliably create their target folder (with a clear error notice if
    it fails), so adding a word to a brand-new subfolder works.
  • Hover tooltips now show a concept across every active language at once
    combining both directions (word as a headword and as a definition) plus
    cross-language equivalents that share a definition. Hovering one language's
    form for a concept also surfaces the other languages' forms in one tooltip.

Install

Overwrite main.js, manifest.json, and styles.css in your
.obsidian/plugins/made-up-words/ folder with the assets attached to this
release, then reload the plugin. Your settings and dictionaries are preserved.
Fresh installs: see the README.

0.16.0

Choose a tag to compare

@github-actions github-actions released this 08 Jun 13:14

Made Up Words v0.16.0 — Highlight known words

This release adds known-word highlighting, makes hover tooltips lighter on
the CPU, and gives the settings tab a thorough layout refresh.

Added

  • Known-word highlighting. Words and phrases the plugin recognises are now
    visually marked directly in your notes, in both the editor (Live Preview /
    Source) and Reading view. Two directions are supported:
    • Conlang words — anything that exists as a dictionary entry in an active
      language, including inflected forms and multi-word phrases.
    • Translatable English words — English terms the dictionary can translate
      (e.g. "cat" is marked when you have a word meaning cat).
  • Three highlight styles (Settings → Made Up Words → Highlighting): a subtle
    dotted underline + accent colour (default), italics, or a background highlight.
    Each direction can be toggled independently, with a master on/off switch.
  • Command: "Toggle known-word highlighting" — turn highlighting on/off from
    the command palette (handy on slower machines or for distraction-free reading).
  • Highlight appearance is fully themeable via the .conlang-known-word
    (.is-conlang / .is-english / .is-phrase) CSS classes, with colours
    exposed as custom properties.

Changed

  • Settings tab redesigned. Global options are grouped into clear sections
    (Languages, Hover tooltips, Highlighting, Translation). Each language is now a
    collapsible card — with its cypher sheets and inflection rules as nested
    collapsibles — so the page stays manageable with many languages. A top
    overview lists every language with quick Active checkboxes and a Primary star,
    and active cards show a live entry count.
  • Hover tooltips are throttled. Resolving the word under the cursor uses
    caretRangeFromPoint (a layout flush) that previously ran on every mouse
    move; it now runs at most once per 50 ms, and exits early when no active
    language has hover enabled. Noticeably less CPU while moving the mouse.

Fixed

  • Highlighting and the dictionary now refresh live when entries are added,
    edited, deleted, or renamed in any active language's folder (previously
    only the primary language's folder was watched, so changes elsewhere needed a
    manual reload or plugin restart).
  • The per-language "Reload dictionary" button (it checked a legacy field and
    rarely fired) and language removal (now keeps the active/primary selection
    valid).

Install

If you're already on a previous version, overwrite main.js, manifest.json,
and styles.css in your .obsidian/plugins/made-up-words/ folder with the
assets attached to this release, then reload the plugin. Your settings and
dictionary are preserved. Fresh installs: see the README.

0.15.1: address Obsidian plugin review warnings

Choose a tag to compare

@ObsidianTTRPGProject ObsidianTTRPGProject released this 29 May 03:50

0.15.1: address Obsidian plugin review warnings

  • Replace text-decoration shorthand with longhand properties for
    broader Obsidian-version compatibility (styles.css lines 292, 1285)
  • Remove !important on .conlang-modal-derive-row input by increasing
    selector specificity (styles.css)
  • Replace builtin-modules npm package with Node's native
    module.builtinModules (esbuild.config.mjs, package.json)
  • Upgrade esbuild from 0.17.3 to ^0.25.0 to clear dev-time CVE
    GHSA-67mh-4wv8-2f99
  • Commit package-lock.json for reproducible builds (.gitignore)

No user-facing changes. 109 tests still passing.

0.15.0 — Initial public release

Choose a tag to compare

@ObsidianTTRPGProject ObsidianTTRPGProject released this 29 May 00:16

First public release of Made Up Words — a dictionary for the words
you've made up, inside Obsidian.

Designed for worldbuilders, GMs, and conlangers. Stores invented
vocabulary as markdown notes, looks them up everywhere in your vault,
and shows all matching senses across multiple languages without trying
to fake translation it can't actually do.

Highlights

  • Dictionary as a folder of markdown notes (definition, POS, IPA,
    etymology, more)
  • Multiple invented languages active at once, with language tags on every
    hover and lookup result
  • Side panel: live selection translation, free-form lookup with gloss
    and transliterate modes, searchable dictionary browser
  • Hover tooltips (hold Shift by default) for every word in your vault
  • "Look up word" command for explicit multi-sense lookup
  • Cypher engine for inventing words/names in your language's sound style
  • Affix-based inflection rules (six presets ship)
  • First-class proper nouns with categories, multi-word phrases, and
    transparent compounds
  • Unicode-aware: accented characters, non-Latin scripts, hyphenated
    compounds all work

Pre-1.0

This release exists to widen the feedback funnel. Expect rough edges and
the occasional breaking change before 1.0. Bug reports and feature
feedback are very welcome — please open an issue.

Install

  1. Download main.js, manifest.json, and styles.css below.
  2. Put them in YourVault/.obsidian/plugins/made-up-words/.
  3. Settings → Community plugins → refresh → enable Made Up Words.

Full setup walkthrough in README.md.

What this plugin won't do

Honest list of intentional non-features: no auto-translation of full
sentences, no honorifics/register/evidentiality (these need context the
dictionary can't carry), no infix/ablaut morphology, no sound-change
cascades, no script rendering. The plugin tries to be honest about what
the dictionary actually knows.


Stats: 109 automated tests passing across cypher, inflection,
phrases, gloss, previews, and Unicode handling.