Jump to content

Rozšíření:Score

From mediawiki.org
This page is a translated version of the page Extension:Score and the translation is 100% complete.
Příručka k rozšířením MediaWiki
Score
Stav rozšíření: stabilní
Implementace Značka
Popis Umožňuje vykreslování hudebních partitur pomocí LilyPond
Autoři Alexander Klauer, Étienne Beaulé
Nejnovější verze 0.3.0 (2019-03-23)
MediaWiki 1.36+
PHP 5.3+
  • $wgScoreDirectory
  • $wgScoreSoundfont
  • $wgScoreFluidsynth
  • $wgScoreLame
  • $wgScoreEnvironment
  • $wgScoreLilyPond
  • $wgWikibaseMusicalNotationLineWidthInches
  • $wgScoreImageMagickConvert
  • $wgScoreLilyPondFakeVersion
  • $wgScoreFileBackend
  • $wgScoreTrim
  • $wgScoreGhostscript
  • $wgScoreMaxLength
  • $wgMusicalNotationEnableWikibaseDataType
  • $wgScoreOfferSourceDownload
  • $wgScoreDebugOutput
  • $wgScoreUseSvg
  • $wgScorePath
  • $wgScoreAbc2Ly
  • $wgScoreDisableExec
score
Licence GNU General Public License 3.0 nebo novější
Stáhnout
README.md
Přeložte rozšíření Score, používá-li lokalizaci z translatewiki.net
Problémy Otevřené úkoly · Nahlásit chybu

Rozšíření Score umožňuje vykreslování hudebních partitur jako obrázků SVG nebo PNG pomocí LilyPond a také je dokáže transformovat do zvukových a MIDI souborů.

Instalace

Podrobné pokyny k instalaci rozšíření naleznete v README.md.
  • Stáhněte soubor/y a vložte je do adresáře pojmenovaného Score ve vaší složce extensions/.
    Vývojáři a přispěvatelé kódu by si místo toho měli nainstalovat rozšíření from Git pomocí:
    cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Score
    
  • Na konec vašeho souboru LocalSettings.php přidejte následující kód:
    wfLoadExtension( 'Score' );
    $wgScoreTrim = true;
    $wgImageMagickConvertCommand = '/usr/bin/convert';
    $wgShellboxUrl = '... address to Shellbox ...';
    $wgShellboxSecretKey = '... your secret key ...';
    
  • Vytvořte podadresář s názvem lilypond ve vašem adresáři $wgUploadDirectory (obvykle je to adresář s názvem images ve vašem adresáři MediaWiki). Ujistěte se, že je adresář zapisovatelný pro váš webový server.
  • Yes Dokončeno – Přejděte na stránku Special:Version vaší wiki a zkontrolujte, zda bylo rozšíření úspěšně nainstalováno.

Předpoklady

Doporučují se následující balíčky:

  • LilyPond
  • Ghostscript
  • ImageMagick
  • FluidSynth
  • Firejail

Toto rozšíření používá k vykreslování obrázků notového zápisu LilyPond, takže potřebujete funkční instalaci LilyPondu (položka 1 zobrazuje verzi LilyPondu). Pokud instalujete LilyPond z balíčku, nainstaluje se také Ghostscript, protože LilyPond je na Ghostscriptu závislý. Pro ořezávání obrázků by měl být nainstalován ImageMagick, jinak budou obsahovat nadměrné množství mezer.

Z bezpečnostních důvodů se důrazně doporučuje nainstalovat firejail, abyste dále omezili možnosti LilyPondu a Ghostscriptu, pokud je nedůvěryhodným uživatelům povoleno upravovat vaši wiki.

Rozšíření je také schopno vytvářet zvukové soubory z MIDI souborů generovaných LilyPondem. Pokud chcete tuto funkci využívat, musíte mít nainstalovaný Extension:TimedMediaHandler .

FluidSynth je preferovaná metoda pro převod MIDI souborů na audio soubory, nicméně TiMidity++ je také podporován.

Bezpečnostní obavy

Použijte Shellbox k zabezpečení LilyPondu a ochraně vaší wiki!

Soubory LilyPond mohou na serveru spouštět libovolný kód. Pokud absolutně nedůvěřujete všem, kteří mají na vaší wiki oprávnění k úpravám, důrazně doporučujeme nastavit omezení přístupu k LilyPondu pomocí přepínače Shellbox . Podrobnosti o nastavení obsaženého serveru naleznete v Shellbox#Nastavení serveru a níže naleznete informace o konfiguraci MediaWiki pro jeho použití. Také se ujistěte, že používáte nejnovější verzi LilyPondu (2.22.0+) nebo distribuční balíček (např. z Debianu), který obsahuje bezpečnostní opravy.

Poznámky

Toto rozšíření spouští různé binární soubory v Shellbox, aby zajistilo určité zabezpečení. Pokud se zobrazí chyba "out of memory" (nedostatek paměti), budete možná muset zvýšit hodnotu $wgMaxShellMemory .

Nastavení

Zde jsou některé globální konfigurační parametry rozšíření.

$wgScoreLilyPond

Nastavte $wgScoreLilyPond na cestu k vašemu spustitelnému souboru LilyPond (obvykle /usr/bin/lilypond nebo /usr/local/bin/lilypond).

$wgScoreUseSvg

Nastavte hodnotu $wgScoreUseSvg na true pro vykreslení skóre ve formátu SVG v prohlížeči. Vyžaduje LilyPond verze 2.24 nebo vyšší, zkompilovaný s podporou Cairo (standardně zahrnutý od verze 2.26).

$wgScoreTrim

Hodnota $wgScoreTrim je booleovská hodnota, která má výchozí hodnotu $wgUseImageMagick. Pokud je true, výsledné obrázky PNG s hodnocením jsou oříznuty pomocí ImageMagick. Pokud nechcete ořezávání nebo nechcete instalovat ImageMagick, nastavte proměnnou $wgScoreTrim na false.

$wgScoreAbc2Ly

Nastavte $wgScoreAbc2Ly na cestu k vašemu spustitelnému souboru převodníku ABC do LilyPond (obvykle /usr/bin/abc2ly nebo /usr/local/bin/abc2ly).

$wgScoreFluidsynth

Nastavte $wgScoreFluidsynth na cestu k vašemu spustitelnému souboru Fluidsynth (obvykle /usr/bin/fluidsynth nebo /usr/local/bin/fluidsynth).

$wgScoreSoundfont

Nastavte $wgScoreSoundfont na cestu k vašemu souboru soundfont (obvykle /usr/share/sounds/sf2/FluidR3_GM.sf2 nebo /usr/share/sounds/sf2/FluidR3_GS.sf2).

$wgScoreLame

Nastavte $wgScoreLame na cestu k vašemu spustitelnému souboru Lame (obvykle /usr/bin/lame nebo /usr/local/bin/lame). Povinné, pokud má být generovaný zvukový soubor MP3.

Použití

Po setup můžete do svého wikitextu vložit jednoduché poznámky LilyPond uvnitř tagu ‎<score>...‎</score>. Například:

<score lang="lilypond">\relative c' { f d f a d f e d cis a cis e a g f e }</score>

zobrazí:

\relative c' { f d f a d f e d cis a cis e a g f e }

Atributy pro tagy skóre můžete také zadat v obecném tvaru.

<score attribute1="value1" attribute2="value2"></score>.

Například:

<score sound="1" lang="lilypond">\relative c' { \set Staff.midiInstrument = "tenor sax" f d f a d f e d cis a cis e a g f e }</score>

zobrazí:



\relative c' { \set Staff.midiInstrument = "tenor sax" f d f a d f e d cis a cis e a g f e }

Attributes

K dispozici jsou následující atributy:

Atribut Povolené hodnoty Účinek
lang ABC, lilypond (default) Nastavuje jazyk notového zápisu. Například pro zadání notového zápisu v ABC notace můžete použít:
<score lang="ABC">
X:1
M:C
L:1/4
K:C
C, D, E, F,|G, A, B, C|D E F G|A B c d|
e f g a|b c' d' e'|f' g' a' b'|]
</score>
line_width_inches Kladné nenulové číslo, může mít desetinná místa Nastavuje šířku čar v renderovaném zápisu nastavením direktivy line-width (šířka řádků) v nastavení papíru LilyPond.
midi (odstraněno) Toto se používalo k řízení, zda je vykreslený obraz notového zápisu propojen s MIDI souborem.
override_midi Známý název souboru, tj. pokud je zadán override_midi="name", [[File:name]] nevrátí červený odkaz (zastaralé) Místo toho můžete za uzavírací tag ‎</score> přidat wikiodkaz s koncovkou [[File:superior midi filename.mid]].
Používá zadaný MIDI soubor místo jeho generování pomocí LilyPondu. Tento atribut použijte společně s atributem midi (viz dříve) nebo atributem sound (viz dále). Tento atribut je užitečný, pokud již máte MIDI soubor, jehož kvalita je lepší než ta, kterou by vygeneroval LilyPond.
override_audio Známý název souboru, tj. pokud je zadán override_audio="name", [[File:Name]] nevrátí červený odkaz (zastaralé) Místo toho můžete za uzavírací tag ‎</score> přidat wikiodkaz s koncovkou [[File:superior audio filename.oga]].
Vloží médium určené názvem souboru do HTML za obrázky notového zápisu. Toto je alternativa k atributu zvuk (viz dále). Může to být například užitečné, pokud máte vhodný zvukový soubor s vyšší kvalitou než automaticky generovaný zvukový soubor. Samozřejmě v tomto případě můžete oba atributy stále vynechat a soubor na stránku přidat ručně, pokud chcete.
override_ogg (zastaralé) Dvojitě zastaralý alias pro override_audio.
raw 0 (default), 1 Pokud je nastaveno na 1, je kód skóre interpretován jako kompletní soubor LilyPond. Tuto možnost použijte, pokud chcete vytvořit složitější notové zápisy. Pokud jazyk skóre (atribut lang) není nastaven na LilyPond, tento atribut se ignoruje. Ve výchozím nastavení (při hodnotě raw=0) je poskytnutý kód zabalen do bloku \score{...}, spolu s výchozími bloky \layout{...} a \midi{...}, pokud již nejsou poskytnuty.
sound 0 (default), 1 Pokud je nastaveno na 1, bude pro notový zápis vygenerován zvukový soubor, za předpokladu, že jste nainstalovali a nakonfigurovali Extension:TimedMediaHandler . Přehrávač zvuku bude vložen do HTML za obrázek (obrázky) notového zápisu.
vorbis 0 (default), 1 (zastaralé) Alias pro sound.

Jazyk LilyPond

Texty písní lze přidat takto:

<score lang="lilypond" sound="1">
\relative c'' { \time 4/4 \key c \major 
c4 g8 g a4 g r b^> c^> r \bar "|." } 
\addlyrics { Shave and a hair -- cut: two bits. }
</score>
\relative c'' { \time 4/4 \key c \major 
  c4 g8 g a4 g r b^> c^> r \bar "|." } 
  \addlyrics { Shave and a hair -- cut: two bits. }

Pro pokročilé uživatele lze použít příkaz \set Staff.midiInstrument ke změně MIDI nástroje pro zvuk.

Tracking category

Stránky obsahující tagy ‎<score> jsou v kategorii sledování s názvem zprávy score-use-category. Navštivte Special:TrackingCategories a vyhledejte lokalizovaný název této kategorie na vaší wiki a zobrazte v ní uvedené stránky, například w:Category:Pages using the Score extension na anglické Wikipedii.

Poděkování

Související odkazy

Další příklady syntaxe LilyPondu najdete na Help:Score na anglické Wikipedii a Help:Sheet music na Wikisource.