Automattic / Automattic/harper
Feature Request: Custom User Rules
- Dominant language
- Rust
- Stars
- 15.4k
- Forks
- 627
- Avg merge
- 1d 15h
- Merged PRs (30d)
- 106
Description
**Proposal:**
I love Harper Obsidian plugin. But Harper misses many mistakes that my notes may contain.
It would be great for Harper to provide a directory for user-supplied rules. This would allow users to quickly enrich their experience based on their needs.
**Example implementation:**
- Add an "Open User Rules Folder" button with a list of rules to "turn on"/"use" (just like Obsidian's Options/Appearance/CSS snippets).
- Add instruction on how to structure the rule-files.
- Add support for parsing and using user-supplied rules
Rule-files could be YAML-based.
**YAML Example:**
Suppose, I want to add the following rule:
`ip`/`ip address` should be `IP`/`IP address`, comment: `IP (internet protocol) address is written in upper-case`.
In YAML, this could be:
```
rule-ip-address:
- match:
- "ip"
- replace:
- "IP"
- comment:
- "IP (internet protocol) address is written in upper-case"
```
**Considerations:**
Rules might need to support regular expressions.
Syntax-related rules would likely need custom variables, so their support can be added at a later stage.
Contributor guide
Research direction
No files, tests, or entry points are named. First map the Obsidian plugin's settings UI and the rule-parsing and grammar-checking paths, then clarify the rule-file schema, folder behavior, activation flow, and regex scope. Done means documented user rules are discovered, enabled, parsed, and applied with focused tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust, yaml
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100