MacDownApp / MacDownApp/macdown

New theme and style format

Open
#229 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Rich Text Format
Stars
9.8k
Forks
1.2k
PR merge metrics
No merged PRs in 30d

Description

The current theme and style format is not very extendable. May need a better (bundled) format. This would be a good time to correct some it-was-a-good-idea-at-the-time mistakes.

Todo:
- [x] Make the theme/style detector able to detect both entries from bundle and user space (the former shadows the latter, so that we can roll out updates for them without being shadowed by the user’s version).
- [x] Disable auto resource-copying to `Application Support`.
- [x] Metadata and structure for new bundle formats.
- [x] Convert all existing resources in the bundle to new formats, but keep old formats readable.
- [x] Convert Prism resources to the new format.
- [ ] Convert MathJax resources to the new format. Is this even possible? (optional)
- [ ] Provide a way to easily copy bundle resources to user space for editing. (optional)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files, tests, or entry points are named. Start by locating the theme/style detector and the bundle resource metadata and structure, then review how Prism and MathJax resources are represented. The remaining scope is unresolved: MathJax conversion and copying bundle resources to user space are marked optional.

Written by the indexing model from the issue text.

Assessment

Tech stack
macos, markdown
Domain
desktop
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.