MuDocumentation s.org

Mu Documentation

Release 1.2.1 Nicholas H.Tollervey

May 05, 2023

CONTENTS

1 Quickstart

3

2 What?

5

3 Why?

7

4 How?

9

5 Who?

11

6 Contents:

13

6.1 Contributing to Mu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

6.2 Code of Conduct . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

6.3 Developer Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

6.4 Suggested First Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

6.5 User Experience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

6.6 Mu's Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

6.7 Modes in Mu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

6.8 Internationalisation of Mu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

6.9 Python Runner/Debugger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

6.10 Mu's Test Suite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

6.11 Packaging Mu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

6.12 Developing Mu's Website . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

6.13 Mu API Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

6.14 Design Decisions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

6.15 Release Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

6.16 Roadmap (Mappa MUndi) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

6.17 Mu's Developers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

6.18 Release History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

6.19 GNU General Public License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

6.20 Copyright Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

Python Module Index

121

Index

123

i

ii

Mu Documentation, Release 1.2.1

Note: This documentation is NOT for users of Mu. Rather, it is for software developers who want to improve Mu. Read our Developer Setup documentation for the technical details needed to get started. For tutorials, how-to guides and user related discussion, please see the project's website for users of Mu at: https: //codewith.mu/ If you're interested in the fun, educational, inspiring and sometimes hilarious ways in which people use Mu, check out:

CONTENTS

1

Mu Documentation, Release 1.2.1

2

CONTENTS

CHAPTER

ONE

QUICKSTART

Mu works with Python 3.5 to 3.8 (both inclusive). You need to have one of these Python versions installed in order to work on developing Mu (here is a comprehensive guide for how to do this). We also assume you know how to use Python virtual environments. Clone the repository: git clone Create a virtualenv in Python 3.8: python3.8 -m venv .venv Activate the environment, on macOS and Linux the command is: source .venv/bin/activate For Windows, the command is: . .\.venv\Scripts\activate.ps1 Once your virtual environment is activated, upgrade pip: python -m pip install --upgrade pip Install Mu and its development dependencies: pip install -e ".[dev]" Start Mu: mu-editor Run the test suite: make check Read on to learn more about Mu, its aims and how you can contribute.

3

Mu Documentation, Release 1.2.1

4

Chapter 1. Quickstart

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download