Musique language interpreter
Go to file
Robert Bendun e008a45cf7 overalocate strings to ensure correctness; diagnostic for assigment to undefined variable 2023-01-12 20:51:15 +01:00
doc negative numbers; fixed duration builtin 2023-01-10 06:41:08 +01:00
editor VSCode extension 2022-10-21 13:14:12 +02:00
examples Fixed for elise 2022-11-28 12:58:14 +01:00
lib cleanup things that should never got here 2023-01-08 08:11:02 +01:00
musique overalocate strings to ensure correctness; diagnostic for assigment to undefined variable 2023-01-12 20:51:15 +01:00
regression-tests negative numbers; fixed duration builtin 2023-01-10 06:41:08 +01:00
scripts negative numbers; fixed duration builtin 2023-01-10 06:41:08 +01:00
.gitignore Basic polish tutorial 2022-11-12 01:25:16 +01:00
CHANGELOG.md negative numbers; fixed duration builtin 2023-01-10 06:41:08 +01:00
Dockerfile Release build system partially moved to Docker 2022-10-31 22:28:18 +01:00
Doxyfile Created better hierarchy of source files 2022-09-23 18:55:25 +02:00
LICENSE License 2022-05-24 12:11:50 +00:00
Makefile Builtin function documentation generates from implementation 2022-12-01 00:52:53 +01:00
README.md VSCode extension 2022-10-21 13:14:12 +02:00
build_instructions.md First iteration of build instructions 2022-10-20 14:37:50 +02:00
config.mk Build system supports both MacOS and Linux now 2022-10-14 15:56:36 +02:00
instruments.mq Sending proper Program Change MIDI message 2022-11-28 02:13:40 +01:00

README.md

Musique interpreter

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.

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

Budowanie interpretera

  • Aby wybudować wersję Linux+ALSA: make
  • Aby wybudować wersję Windows: make os=windows

Żeby zainstalować interpreter języka Musique w systemie, należy dodatkowo wykonać polecenie:

# make install

Uwaga: powyższe polecenie instalacyjne musi zostać wykonane jako uprzywilejowany użytkownik (np. wykorzystując polecenie sudo).

Dostępne komendy

  • make - Buduje interpreter bin/musique (tryb release)
  • make debug - Buduje interpreter bin/debug/musique (tryb debug)
  • make clean - Usuwa reprodukowalne elementy projektu (automatycznie stworzone pliki binarne czy raporty)

Dokumentacja

  • make doc - Tworzy doc/build/html/ zawierający dokumentację projektu

Testowanie

  • make test - Uruchom wszystkie dostępne testy automatyczne

Kolorowanie składni

Vim / Neovim

Skopiuj plik etc/editor/musique.vim do folderu syntax wewnątrz twojej konfiguracji Vima (Neovima). Np:

$ cp editor/musique.vim ~/.config/nvim/syntax/

Następnie musisz dodać ustawienie typu pliku na podstawie rozszerzenia wewnątrz twojej konfiguracji:

au BufRead,BufNewFile *.mq set filetype=musique

Visual Studio Code

Skopiuj katalog editor/vscode-musique do folderu <user home>/.vscode/extensions i uruchom ponownie program VSCode.

Thanks to

and all contributors that created libraries above.