MacDownApp / MacDownApp/macdown
Support for macOS'es system wide on the fly text replacements
Nobody has claimed this yet.
- Dominant language
- Rich Text Format
- Stars
- 9.8k
- Forks
- 1.2k
- PR merge metrics
- No merged PRs in 30d
Description
## Problem
- System Preferences > Keyboard > Text
- The text replacements configured here work in almost all Mac apps (if Cocoa based)
- But not in MacDown as of 0.7.3, see video:
https://user-images.githubusercontent.com/737143/143026080-ca33223d-f6b7-4639-b71d-7df7fc691504.mp4
## UX Design Rationale
- MacOS'es on the fly text replacement should in theory not be in conflict with MarkDown's real time parsing and rendering.
- Because while you type macOS by default passes on the input unmanipulated and shows the preview in the bubble above, only when entering a SPACE the transformation happens.
- And you as a user can avoid this by pressing ESC as long as the preview bubble is still there.
- I see no usability conflict.
## Considerations
- But I do not know the inner workings of MacDown and maybe such a seemingly small thing is more tricky than I imagine.
- If it is overally ok, but some edge cases conflicts are possible, let me tell you:
- I'd be ok with a preference option "Use macOS text replacements" which by default is off and can be enabled for those who want it and are willing to accept possible side effects.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No file, test, or entry point is named. First inspect MacDown’s Cocoa text-input handling and determine whether macOS text replacements can work without conflicting with live Markdown rendering. Done means replacements work in MacDown, with any preference behavior and edge cases addressed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- macos, objective-c
- Domain
- desktop
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100