2022-04-24 15:27:09 +02:00
# Musique interpreter
2022-04-24 16:13:02 +02:00
2022-05-08 18:20:44 +02:00
Interpreter języka Musique. Możliwy do wykorzystywania jako:
- biblioteka interpretera języka dołączana do innego projektu (podobnie jak Lua);
- REPL działający w systemie GNU/Linux + ALSA wykonujący język Musique.
2022-09-18 19:26:48 +02:00
## Wymagane pakiety systemowe
Do poprawnego skompilowania i uruchomienia interpretera języka Musique należy posiadać zainstalowane następujące pakiety (lub ich odpowiedniki) – dla systemu GNU/Linux Ubuntu Desktop 22.04 są to:
- `build-essential` – pakiet zawierający podstawowe narzędzia do pracy z kodem źródłowym, takie jak m.in. kompilator;
- `libasound2-dev` – pakiet zawierający biblioteki programistyczne pakietu `libasound2` .
Można je zainstalować korzystając z polecenia:
```
$ sudo apt update
$ sudo apt install -y build-essential libasound2-dev
```
2022-05-23 17:27:06 +02:00
## Budowanie interpretera
2022-10-08 15:05:05 +02:00
Wygeneruj konfigurację dla twojej platformy przy pomocy [`premake` ](https://premake.github.io/ )
2022-05-23 17:27:06 +02:00
2022-10-08 15:05:05 +02:00
- Linux: `premake5 gmake`
- Windows: `premake5 <twoja-wersja-visual-studio>` , np `premake5 vs2022`
2022-09-18 19:20:45 +02:00
2022-10-08 15:05:05 +02:00
Żeby zainstalować interpreter języka Musique w systemie, należy dodatkowo wykonać polecenie `scripts/install`
2022-09-18 19:20:45 +02:00
*Uwaga*: powyższe polecenie instalacyjne musi zostać wykonane jako uprzywilejowany użytkownik (np. wykorzystując polecenie `sudo` ).
2022-05-08 18:20:44 +02:00
### Dokumentacja
2022-10-08 15:05:05 +02:00
Dokumentację kodu źródłowego możesz wygenerować korzystając z polecenia `doxygen` . Dokumentacja języka (jak i kodu źródłowego po wygnerowaniu) dostępna jest w katalogu `doc/` .
2022-05-08 18:20:44 +02:00
### Testowanie
2022-10-08 15:05:05 +02:00
- `scripts/test.py` - Nagrywa testy zachowań przykładów
2022-05-22 15:53:39 +02:00
## Kolorowanie składni
### Vim / Neovim
Skopiuj plik [etc/editor/musique.vim ](etc/editor/musique.vim ) do folderu `syntax` wewnątrz twojej konfiguracji Vima (Neovima). Np:
```console
2022-09-18 16:34:43 +02:00
$ cp editor/musique.vim ~/.config/nvim/syntax/
2022-05-22 15:53:39 +02:00
```
Następnie musisz dodać ustawienie typu pliku na podstawie rozszerzenia wewnątrz twojej konfiguracji:
```vim
au BufRead,BufNewFile *.mq set filetype=musique
```
2022-05-24 14:13:38 +02:00
### Visual Studio Code
Skopiuj katalog [etc/editor/musique-vscode ](etc/editor/musique-vscode ) do folderu `<user home>/.vscode/extensions` i uruchom ponownie program VSCode.
2022-09-18 16:52:44 +02:00
# Thanks to
- Creator of [tl::expected ](https://github.com/TartanLlama/expected ) - [Sy Brand ](https://sybrand.ink/ )
- Creator of [bestline ](https://github.com/jart/bestline ) - [Justine Tunney ](https://justinetunney.com/ )
2022-10-08 13:09:11 +02:00
- Creator of [rtmidi ](https://github.com/thestk/rtmidi/ ) - [Gary P. Scavone ](http://www.music.mcgill.ca/~gary/ )
and all contributors that created libraries above.