Estensione:Score

This page is a translated version of the page Extension:Score and the translation is 40% complete.
Outdated translations are marked like this.
Manuale sulle Estensioni MediaWiki
Score
Stato della release: stabile
Implementazione Etichetta
Descrizione Permette la resa di spartiti musicali con LilyPond.
Autore(i) Alexander Klauer, Étienne Beaulé
Versione 0.3.0 (2019-03-23)
MediaWiki 1.36+
PHP 5.3+
Licenza GNU General Public License 3.0 or later
Scaricare
README.md
  • $wgScorePath
  • $wgScoreAbc2Ly
  • $wgScoreFluidsynth
  • $wgScoreLame
  • $wgScoreEnvironment
  • $wgScoreLilyPond
  • $wgWikibaseMusicalNotationLineWidthInches
  • $wgScoreImageMagickConvert
  • $wgScoreLilyPondFakeVersion
  • $wgScoreFileBackend
  • $wgScoreDirectory
  • $wgScoreTrim
  • $wgScoreGhostscript
  • $wgMusicalNotationEnableWikibaseDataType
  • $wgScoreOfferSourceDownload
  • $wgScoreMaxLength
  • $wgScoreDebugOutput
  • $wgScoreUseSvg
  • $wgScoreDisableExec
  • $wgScoreSafeMode
  • $wgScoreSoundfont
score
Quarterly downloads 24 (Ranked 125th)
Public wikis using 918 (Ranked 265th)
Traduci l'estensione Score se è disponibile su translatewiki.net
Problemi Compiti aperti · Riportare un bug

L'estensione Score permette il rendering di spartiti musicali come immagini PNG utilizzando LilyPond e può anche trasformarli in file audio e MIDI.

Riconoscimenti

L'originale Extension:LilyPond è stato scritto da Johannes E. Schindelin.

Uso

Dopo l'installazione, puoi semplicemeten incorporare le notazioni LilyPond nel tuo wikitesto usando i tag ‎<score>...‎</score>. Per esempio:

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

rende:

 

È inoltre possibile specificare gli attributi dei tag di punteggio nella forma generale

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

Per esempio:

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

rende:

 

Sono disponibili i seguenti attributi:

Attributi Valori concessi Effetti
lang ABC, lilypond (default) Sets the score language. For example, to provide a score in ABC notation, you might use:
<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>
midi (rimosso) This used to control whether the rendered score image linked to a MIDI file.
override_midi Known file name, that is, if override_midi="name" is given, [[File:name]] does not yield a red link (deprecato) Instead you can add a [[File:superior midi filename.mid]] wikilink after the closing ‎</score> tag.
Uses the specified MIDI file instead of generating one with LilyPond. Use this attribute together with the midi attribute (see before) or the sound attribute (see later). This attribute is useful if you already have a MIDI file whose quality is superior to what would be generated by LilyPond.
override_audio Known file name, that is, if override_audio="name" is given, [[File:Name]] does not yield a red link (deprecato) Instead you can add a [[File:superior audio filename.oga]] wikilink after the closing ‎</score> tag.
Embeds the media specified by the file name in the HTML after the score image(s). This is an alternative to the sound attribute (see further). It can, for example, be useful if you have a suitable audio file of superior quality compared with the auto-generated audio file. Of course, you can still omit both attributes in this case and add the file manually to the page, if you prefer.
override_ogg (deprecato) Doubly-deprecated alias for override_audio.
raw 0 (default), 1 If set to 1, the score code is interpreted as a complete LilyPond file. Use this option if you want to create more complex scores. If the score language (lang attribute) is not set to lilypond, this attribute is ignored. By default (when raw=0), provided code is wrapped in a \score{...} block, along with default \layout{...} and \midi{...} blocks, if not already provided.
sound 0 (default), 1 If set to 1, an audio file will be generated for the score, provided you installed and configured Extension:TimedMediaHandler . An audio player will be embedded in the HTML after the score image(s).
vorbis 0 (default), 1 (deprecato) Alias for sound.

Il linguaggio Lilypond

I testi possono essere aggiunti in questo modo:

<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. }
</score>
 

Per gli utenti avanzati, il comando \set Staff.midiInstrument può essere usato per cambiare lo strumento MIDI per il suono.

Prerequisiti

The following packages are recommended:

  • LilyPond
  • Ghostscript
  • ImageMagick
  • FluidSynth
  • Firejail

Questa estensione utilizza LilyPond per rendere le immagini dei punteggi, quindi è necessaria un'installazione LilyPond funzionante. Se volete l'estensione per tagliare i file dei punteggi per voi, avrete bisogno anche di ImageMagick. If you install LilyPond from a package, Ghostscript will also be installed, since LilyPond depends on Ghostscript. ImageMagick should be installed to trim the images, otherwise they will contain an excessive amount of whitespace.

For security reasons, it is highly recommended to install firejail to further restrict what LilyPond and Ghostscript can do if untrusted users are allowed to edit your wiki.

L'estensione è anche in grado di creare file audio dai file MIDI generati da LilyPond. Se si vuole utilizzare questa funzionalità, è necessario avere installato Extension:TimedMediaHandler .

FluidSynth is the preferred method to convert MIDI files to audio files, however TiMidity++ is also supported.

Security concerns

 
Use Shellbox to secure LilyPond to protect your wiki!

Score uses LilyPond in safe mode, however there are known unfixed safe mode escape vulnerabilities leading to arbitrary execution.

If you don't absolutely trust everyone who has editing privileges on your wiki, it is strongly recommended to set up containment of lilypond using Shellbox . See Shellbox#Server setup for details on how to set up the contained server, and below for configuring MediaWiki to use it. Also, ensure you're using a recent version of LilyPond (2.22.0+) or a distribution package (e.g. from Debian) that has security fixes. Keep safe mode enabled, even with containment as an extra layer of defense. Certain functionality will not work in safe mode, the fix for that is to modify LilyPond to allow that functionality in safe mode.

Installazione

See the extension's README.md for detailed installation instructions.
  • Download and move the extracted Score folder to your extensions/ directory.
    Developers and code contributors should install the extension from Git instead, using:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Score
  • Aggiungi il seguente codice al tuo $LocalSettings (preferibilmente alla fine):
    wfLoadExtension( 'Score' );
    $wgScoreTrim = true;
    $wgImageMagickConvertCommand = '/usr/bin/convert';
    $wgShellboxUrl = '... address to Shellbox ...';
    $wgShellboxSecretKey = '... your secret key ...';
    
  • Create a subdirectory named lilypond in your $wgUploadDirectory (usually the directory named images in your MediaWiki directory). Make sure the directory is writable by your Web server.
  •   Done – Naviga in Special:Version nella tua wiki per verificare che l'estensione sia stata installata correttamente.

Configurazione

Attualmente, l'estensione ha i seguenti parametri di configurazione globale.

$wgScoreLilyPond

Imposta $wgScoreLilyPond sul percorso del tuo eseguibile LilyPond (tipicamente /usr/bin/bin/lilypond o /usr/local/bin/lilypond).

$wgScoreTrim

Il <codice>$wgScoreTrim</codice> è un booleano che ha come valore predefinito <codice>$wgUseImageMagick</codice>. Se true, le immagini PNG del punteggio risultante vengono tagliate con ImageMagick. Se non si desidera il trimming, o non si vuole installare ImageMagick, impostare $wgScoreTrim su false

$wgScoreAbc2Ly

Impostare $wgScoreAbc2Ly sul percorso eseguibile del convertitore da ABC a LilyPond (tipicamente /usr/bin/abc2ly o /usr/local/bin/abc2ly).

$wgScoreFluidsynth

Impostare $wgScoreFluidsynth sul percorso del proprio eseguibile Fluidsynth (tipicamente /usr/bin/fluidsynth o /usr/local/bin/fluidsynth).

$wgScoreSoundfont

Impostare $wgScoreSoundfont sul percorso del file soundfont (tipicamente /usr/share/sounds/sf2/FluidR3_GM.sf2 o /usr/share/sounds/sf2/FluidR3_GS.sf2).

$wgScoreLame

Impostare $wgScoreLame sul percorso del proprio eseguibile Lame (tipicamente /usr/bin/lame o /usr/local/bin/lame). Richiesto se il file audio generato deve essere un MP3.

Osservazioni

Questa estensione esegue vari binari su shell. Potresti dover aumentare di $wgMaxShellMemory se esci per errori di memoria.

Trovare i punteggi

Le pagine con i punteggi su di esse avranno il "punteggio" page property impostato. Usando Special:PagesWithProp, si possono trovare pagine che hanno un punteggio. ([$url Esempio di richiesta per la Wikipedia inglese]).

See also

  • Vexflow Renderizzatore musicale open source SVG/Canvas