DocsGuidelines - musescore/MuseScore GitHub Wiki
Documentation guidelines
Documentation is very important in development, because it helps developers coordinate efforts, gain knowledge, and be effective.
Treat documentation with the same responsibility as code.
Documents
Which to use and how to use them.
If you want to know where to start, or how to build, or how to translate and much more, then look at the Developers' handbook.
This is the place for code documentation - code style, architecture, patterns, etc.
When writing code documentation, it is preferred that the writer create new directories for new sections and new files for separate topics so that the documentation structure is clear and one aspect is described in each file.
Each directory (section) must contain a README.md file, which is the root of this section.
Text
For writing documentation we use standard markdown syntax (see Markdown Cheatsheet)
You can write markdown text in any text editor, in addition, you can use useful tools, for example: VS Code + markdownlint + Github Markdown Preview
Diagrams
For creating diagrams we use draw.io
To add a diagram, you need to export the diagram in two formats:
- XML (not compresed) - used to store the original diagram so that we can edit it in the future. The diagram should be in uncompressed xml format in order to be able to resolve conflicts.
- PNG - used to view the diagram in the documentation.
The name of both files should be the same and contain the suffix .drawio. For example:
some_name.drawio.xml
some_name.drawio.png
Markdown Cheatsheet
This file provides a quick tour to start writing markdown.
For further details, please reference here
Headers
# H1
## H2
### H3
or
Alt-H1
======
or
Alt-H2
------
Emphasis
You can emphatize a portion of text in different ways.
You can use *italics* enclosing one or _more words_ within * or _.
You can also make it **bold** with double * or _.
You can combine them enclosing more _ or * into ** or __, for example
**_This is both bold and italic_**.
Lists
1. I'm the first item of an ordered list
2. And I'm the second one
* I'm an unordered list, you can define that using * (asterisk), + (plus) or - (minus)
* (Watch out, the second item must be attached to first one if you use * to define the list)
Links
[I'm a link to google](https://www.google.com)
[I'm a relative reference to a repository file](../blob/master/LICENSE)
Images

or
![alt text][logo]
[logo]: https://github.com/adam-p/markdown-here/raw/master/src/common/images/icon48.png "Logo Title Text 2"
Code and syntax highlighting
Inline `code` has `back-ticks around` it.
You can also define blocks of code using three backticks
Footnotes
Here is a simple footnote[^1].
[^1]: My reference.
Tables
| Tables | Are | Cool |
| ------------- |:-------------:| -----:|
| col 3 is | right-aligned | $1600 |
| col 2 is | centered | $12 |
| zebra stripes | are neat | $1 |
Blockquote
> Blockquotes are very handy in email to emulate reply text.
> This line is part of the same quote.