https://www.mediawiki.org/wiki/Special:Code/MediaWiki/114985
Revision: 114985
Author: tstarling
Date: 2012-04-20 03:43:52 +0000 (Fri, 20 Apr 2012)
Log Message:
-----------
* Break long lines at 100
* Renamed ScopedProfiling to Score_ScopedProfiling to avoid conflicts
* Rewrote ##f/##t comment
* Fixed inappropriate use of protocol-relative URLs in messages
Modified Paths:
--------------
trunk/extensions/Score/Score.body.php
trunk/extensions/Score/Score.i18n.php
Modified: trunk/extensions/Score/Score.body.php
===================================================================
--- trunk/extensions/Score/Score.body.php 2012-04-20 03:05:05 UTC (rev
114984)
+++ trunk/extensions/Score/Score.body.php 2012-04-20 03:43:52 UTC (rev
114985)
@@ -32,7 +32,7 @@
* It produces matching wfProfileIn/Out calls for scopes.
* This class would be superfluous if PHP had a try-finally construct.
*/
-class ScopedProfiling {
+class Score_ScopedProfiling {
/**
* Profiling ID such as a method name.
*/
@@ -142,7 +142,7 @@
private static function getLilypondVersion() {
global $wgScoreLilyPond;
- $prof = new ScopedProfiling( __METHOD__ );
+ $prof = new Score_ScopedProfiling( __METHOD__ );
if ( !is_executable( $wgScoreLilyPond ) ) {
throw new ScoreException( wfMessage(
'score-notexecutable', $wgScoreLilyPond ) );
@@ -193,7 +193,7 @@
public static function render( $code, array $args, Parser $parser,
PPFrame $frame ) {
global $wgTmpDirectory, $wgUploadDirectory, $wgUploadPath;
- $prof = new ScopedProfiling( __METHOD__ );
+ $prof = new Score_ScopedProfiling( __METHOD__ );
try {
$options = array(); // options to self::generateHTML()
@@ -209,14 +209,16 @@
$options['lang'] = 'lilypond';
}
if ( !in_array( $options['lang'], self::$supportedLangs
) ) {
- throw new ScoreException( wfMessage(
'score-invalidlang', htmlspecialchars( $options['lang'] ) ) );
+ throw new ScoreException( wfMessage(
'score-invalidlang',
+ htmlspecialchars( $options['lang'] ) )
);
}
/* Override MIDI file? */
if ( array_key_exists( 'override_midi', $args ) ) {
$file = wfFindFile( $args['override_midi'] );
if ( $file === false ) {
- throw new ScoreException( wfMessage(
'score-midioverridenotfound', htmlspecialchars( $args['override_midi'] ) ) );
+ throw new ScoreException( wfMessage(
'score-midioverridenotfound',
+ htmlspecialchars(
$args['override_midi'] ) ) );
}
$options['override_midi'] = true;
$options['midi_file'] = $file;
@@ -255,10 +257,12 @@
if ( array_key_exists( 'override_ogg', $args ) ) {
$t = Title::newFromText( $args['override_ogg'],
NS_FILE );
if ( is_null( $t ) ) {
- throw new ScoreException( wfMessage(
'score-invalidoggoverride', htmlspecialchars( $args['override_ogg'] ) ) );
+ throw new ScoreException( wfMessage(
'score-invalidoggoverride',
+ htmlspecialchars(
$args['override_ogg'] ) ) );
}
if ( !$t->isKnown() ) {
- throw new ScoreException( wfMessage(
'score-oggoverridenotfound', htmlspecialchars( $args['override_ogg'] ) ) );
+ throw new ScoreException( wfMessage(
'score-oggoverridenotfound',
+ htmlspecialchars(
$args['override_ogg'] ) ) );
}
$options['override_ogg'] = true;
$options['ogg_name'] = $args['override_ogg'];
@@ -272,7 +276,9 @@
} else {
$options['generate_vorbis'] = false;
}
- if ( $options['generate_vorbis'] && !( class_exists(
'OggHandler' ) && class_exists( 'OggAudioDisplay' ) ) ) {
+ if ( $options['generate_vorbis']
+ && !( class_exists( 'OggHandler' ) &&
class_exists( 'OggAudioDisplay' ) ) )
+ {
throw new ScoreException( wfMessage(
'score-noogghandler' ) );
}
if ( $options['generate_vorbis'] && (
$options['override_ogg'] !== false ) ) {
@@ -284,7 +290,8 @@
}
/* Generate MIDI? */
- $options['generate_midi'] = ( $options['override_midi']
=== false ) && ( $options['link_midi'] || $options['generate_vorbis'] );
+ $options['generate_midi'] = ( $options['override_midi']
=== false )
+ && ( $options['link_midi'] ||
$options['generate_vorbis'] );
if ( $options['generate_midi'] && !array_key_exists(
'midi_path', $options ) ) {
$options['midi_path'] =
"{$options['image_path_prefix']}.midi";
}
@@ -311,40 +318,40 @@
* @param $code string Score code.
* @param $options array of rendering options.
* The options keys are:
- * * factory_directory: string Path to directory in which files
+ * - factory_directory: string Path to directory in which files
* may be generated without stepping on someone else's
* toes. The directory may not exist yet. Required.
- * * generate_midi: bool Whether to create a MIDI file, either
+ * - generate_midi: bool Whether to create a MIDI file, either
* to subsequently generate a vorbis file, or to provide
* a link to the MIDI file. Required.
- * * generate_vorbis: bool Whether to create an Ogg/Vorbis file in
+ * - generate_vorbis: bool Whether to create an Ogg/Vorbis file in
* an OggHandler. If set to true, the override_ogg option
* must be set to false. Required.
- * * image_path_prefix: string Prefix to the local image path.
+ * - image_path_prefix: string Prefix to the local image path.
* Required.
- * * image_url_prefix: string Prefix to the image URL. Required.
- * * lang: string Score language. Required.
- * * link_midi: bool Whether to link to a MIDI file. Required.
- * * midi_file: MIDI file object.
- * * midi_path: string Local MIDI path. Required if the link_midi,
+ * - image_url_prefix: string Prefix to the image URL. Required.
+ * - lang: string Score language. Required.
+ * - link_midi: bool Whether to link to a MIDI file. Required.
+ * - midi_file: MIDI file object.
+ * - midi_path: string Local MIDI path. Required if the link_midi,
* override_midi, or the generate_vorbis option is set to
* true, ignored otherwise.
- * * midi_url: string MIDI URL. Required if the link_midi option
+ * - midi_url: string MIDI URL. Required if the link_midi option
* is set to true, ignored otherwise.
- * * ogg_name: string Name of the OGG file. Required if the
+ * - ogg_name: string Name of the OGG file. Required if the
* override_ogg option is set to true, ignored otherwise.
- * * ogg_path: string Local Ogg/Vorbis path. Required if the
+ * - ogg_path: string Local Ogg/Vorbis path. Required if the
* generate_vorbis option is set to true, ignored
* otherwise.
- * * ogg_url: string Ogg/Vorbis URL. Required if the
+ * - ogg_url: string Ogg/Vorbis URL. Required if the
* generate_vorbis option is set to true, ignored
* otherwise.
- * * override_midi: bool Whether to use a user-provided MIDI file.
+ * - override_midi: bool Whether to use a user-provided MIDI file.
* Required.
- * * override_ogg: bool Whether to generate a wikilink to a
+ * - override_ogg: bool Whether to generate a wikilink to a
* user-provided OGG file. If set to true, the vorbis
* option must be set to false. Required.
- * * raw: bool Whether to assume raw LilyPond code. Ignored if the
+ * - raw: bool Whether to assume raw LilyPond code. Ignored if the
* language is not lilypond, required otherwise.
*
* @return string HTML.
@@ -354,14 +361,18 @@
private static function generateHTML( &$parser, $code, $options ) {
global $wgOut;
- $prof = new ScopedProfiling( __METHOD__ );
+ $prof = new Score_ScopedProfiling( __METHOD__ );
try {
/* Generate PNG and MIDI files if necessary */
$imagePath = "{$options['image_path_prefix']}.png";
$multi1Path = "{$options['image_path_prefix']}-1.png";
if ( ( !file_exists( $imagePath ) && !file_exists(
$multi1Path ) )
- || ( array_key_exists( 'midi_path',
$options ) && !file_exists( $options['midi_path'] ) ) ) {
+ || (
+ array_key_exists( 'midi_path', $options
)
+ && !file_exists( $options['midi_path']
)
+ ) )
+ {
self::generatePngAndMidi( $code, $options );
}
@@ -383,7 +394,8 @@
for ( $i = 1; file_exists( sprintf(
$multiPathFormat, $i ) ); ++$i ) {
$link .= Html::rawElement( 'img', array(
'src' => sprintf(
$multiUrlFormat, $i ),
- 'alt' => wfMessage(
'score-page' )->inContentLanguage()->numParams( $i )->plain()
+ 'alt' => wfMessage(
'score-page' )
+
->inContentLanguage()->numParams( $i )->plain()
) );
}
} else {
@@ -406,14 +418,16 @@
);
$link .= $oad->toHtml( array( 'alt' =>
$code ) );
} catch ( Exception $e ) {
- throw new ScoreException( wfMessage(
'score-novorbislink', htmlspecialchars( $e->getMessage() ) ), 0, $e );
+ throw new ScoreException( wfMessage(
'score-novorbislink',
+ htmlspecialchars(
$e->getMessage() ) ), 0, $e );
}
}
if ( $options['override_ogg'] !== false ) {
try {
$link .= $parser->recursiveTagParse(
"[[File:{$options['ogg_name']}]]" );
} catch ( Exception $e ) {
- throw new ScoreException( wfMessage(
'score-novorbislink', htmlspecialchars( $e->getMessage() ) ), 0, $e );
+ throw new ScoreException( wfMessage(
'score-novorbislink',
+ htmlspecialchars(
$e->getMessage() ) ), 0, $e );
}
}
} catch ( Exception $e ) {
@@ -440,7 +454,7 @@
private static function generatePngAndMidi( $code, $options ) {
global $wgScoreLilyPond, $wgScoreTrim;
- $prof = new ScopedProfiling( __METHOD__ );
+ $prof = new Score_ScopedProfiling( __METHOD__ );
/* Various filenames */
$image = "{$options['image_path_prefix']}.png";
@@ -555,8 +569,7 @@
self::getLilypondVersion();
}
- /* Raw code. Note: the "strange" ##f, ##t, etc., are actually
part of the lilypond code!
- * The raw code is based on the raw code from the original
LilyPond extension */
+ /* Raw code. In Scheme, ##f is false and ##t is true. */
$raw = "\\header {\n"
. "\ttagline = ##f\n"
. "}\n"
@@ -586,7 +599,7 @@
private static function generateOgg( $options ) {
global $wgScoreTimidity;
- $prof = new ScopedProfiling( __METHOD__ );
+ $prof = new Score_ScopedProfiling( __METHOD__ );
/* Working environment */
self::createDirectory( $options['factory_directory'], 0700 );
@@ -625,7 +638,7 @@
* @throws ScoreException if an error occurs.
*/
private static function generateLilypond( $code, $options ) {
- $prof = new ScopedProfiling( __METHOD__ );
+ $prof = new Score_ScopedProfiling( __METHOD__ );
/* Delete old file if necessary */
self::cleanupFile( $options['lilypond_path'] );
@@ -636,9 +649,11 @@
self::generateLilypondFromAbc( $code, $options );
break;
case 'lilypond':
- throw new MWException( 'lang="lilypond" in ' .
__METHOD__ . ". This should not happen.\n" );
+ throw new MWException( 'lang="lilypond" in ' .
__METHOD__ . ". " .
+ "This should not happen.\n" );
default:
- throw new MWException( 'Unknown score language in ' .
__METHOD__ . ". This should not happen.\n" );
+ throw new MWException( 'Unknown score language in ' .
__METHOD__ . ". " .
+ "This should not happen.\n" );
}
}
@@ -655,7 +670,7 @@
private static function generateLilypondFromAbc( $code, $options ) {
global $wgScoreAbc2Ly;
- $prof = new ScopedProfiling( __METHOD__ );
+ $prof = new Score_ScopedProfiling( __METHOD__ );
/* File names */
$factoryDirectory = $options['factory_directory'];
@@ -712,7 +727,7 @@
private static function trimImage( $source, $dest ) {
global $wgImageMagickConvertCommand;
- $prof = new ScopedProfiling( __METHOD__ );
+ $prof = new Score_ScopedProfiling( __METHOD__ );
$cmd = wfEscapeShellArg( $wgImageMagickConvertCommand )
. ' -trim '
Modified: trunk/extensions/Score/Score.i18n.php
===================================================================
--- trunk/extensions/Score/Score.i18n.php 2012-04-20 03:05:05 UTC (rev
114984)
+++ trunk/extensions/Score/Score.i18n.php 2012-04-20 03:43:52 UTC (rev
114985)
@@ -42,7 +42,7 @@
'score-noabcinput' => 'ABC source file $1 could not be created.',
'score-noimages' => 'No score images were generated. Please check your
score code.',
'score-noinput' => 'Failed to create LilyPond input file $1.',
- 'score-noogghandler' => 'Ogg/Vorbis conversion requires an installed
and configured OggHandler extension, see
[//www.mediawiki.org/wiki/Extension:OggHandler Extension:OggHandler].',
+ 'score-noogghandler' => 'Ogg/Vorbis conversion requires an installed
and configured OggHandler extension, see
[https://www.mediawiki.org/wiki/Extension:OggHandler Extension:OggHandler].',
'score-nomidi' => 'No MIDI file generated despite being requested. If
you are working in raw LilyPond mode, make sure to provide a proper \midi
block.',
'score-nooutput' => 'Failed to create output directory $1.',
'score-notexecutable' => 'Could not execute LilyPond: $1 is not an
executable file. Make sure <code>$wgScoreLilyPond</code> is set correctly.',
@@ -129,7 +129,7 @@
'score-noabcinput' => 'Kunne ikke oprette ABC-kildefilen $1.',
'score-noimages' => 'Ingen partiturbilleder blev dannet. Kontroller
venligst om din kode er korrekt.',
'score-noinput' => 'Kunne ikke oprette inddatafil til LilyPond, $1.',
- 'score-noogghandler' => 'Omdannelse til Ogg/Vorbis kræver at udvidelsen
OggHandler er installeret og sat op, se
[//www.mediawiki.org/wiki/Extension:OggHandler Extension:OggHandler].',
+ 'score-noogghandler' => 'Omdannelse til Ogg/Vorbis kræver at udvidelsen
OggHandler er installeret og sat op, se
[https://www.mediawiki.org/wiki/Extension:OggHandler Extension:OggHandler].',
'score-nomidi' => 'Ingen MIDI blev dannet på trods af anmodning. Hvis
du arbejder i rå LilyPond-tilstand, sørg for at angive en passende
\\midi-blok.',
'score-nooutput' => 'Kunne ikke oprette folderen $1 til uddata.',
'score-notexecutable' => 'Kunne ikke køre LilyPond: $1 er ikke en
eksekverbar fil. Kontroller at <code>$wgScoreLilyPond</code> er sat korrekt.',
@@ -169,7 +169,7 @@
'score-noabcinput' => 'Die ABC-Quelldatei $1 konnte nicht erstellt
werden.',
'score-noimages' => 'Es wurden keine Bilder zur Partitur generiert.
Bitte prüfe den Code zur Partitur.',
'score-noinput' => 'Die Eingabedatei $1 für LilyPond konnte nicht
erstellt werden.',
- 'score-noogghandler' => 'Um eine Ogg-Vorbnis-Konvertierung durchführen
zu können, muss eine Erweiterung zur Nutzung von Ogg installiert sein. Siehe
hierzu die [//www.mediawiki.org/wiki/Extension:OggHandler Erweiterung
OggHandler].',
+ 'score-noogghandler' => 'Um eine Ogg-Vorbnis-Konvertierung durchführen
zu können, muss eine Erweiterung zur Nutzung von Ogg installiert sein. Siehe
hierzu die [https://www.mediawiki.org/wiki/Extension:OggHandler Erweiterung
OggHandler].',
'score-nomidi' => 'Ungeachtet einer entsprechenden Anforderung wurde
keine MIDI-Datei generiert. Sofern der reine LilyPond-Modus genutzt wird, muss
ein richtiger „\\midi“-Block angegeben werden.',
'score-nooutput' => 'Das Ausgabeverzeichnis $1 konnte nicht erstellt
werden.',
'score-notexecutable' => 'LilyPond konnte nicht ausgeführt werden: $1
ist eine nicht ausführbare Datei. Es muss sichergestellt sein, dass
<code>$wgScoreLilyPond</code> in der Konfigurationsdatei richtig eingestellt
wurde.',
@@ -216,7 +216,7 @@
'score-noabcinput' => 'No se pudo crear el archivo fuente ABC "$1".',
'score-noimages' => 'No se generó ninguna imagen de partitura.
Compruebe su código de partitura.',
'score-noinput' => 'Error al crear el archivo de entrada "$1" de
LilyPond.',
- 'score-noogghandler' => 'La conversión Ogg/Vorbis necesita una
extensión OggHandler instalada y configurada, ver
[//www.mediawiki.org/wiki/Extension:OggHandler Extensión:OggHandler].',
+ 'score-noogghandler' => 'La conversión Ogg/Vorbis necesita una
extensión OggHandler instalada y configurada, ver
[https://www.mediawiki.org/wiki/Extension:OggHandler Extensión:OggHandler].',
'score-nomidi' => 'No se generó el archivo MIDI a pesar de que fue
solicitado. Si está a trabajando en modo LilyPond en bruto, asegúrese de
proporcionar un bloque \\midi adecuado.',
'score-nooutput' => 'Error al crear el directorio de salida "$1".',
'score-notexecutable' => 'No se pudo ejecutar LilyPond: "$1" no es un
archivo ejecutable. Asegúrese de que <code>$wgScoreLilyPond</code> está
definido correctamente.',
@@ -259,7 +259,7 @@
'score-noabcinput' => "Le fichier source ABC $1 n'a pas pu être créé.",
'score-noimages' => "Aucune image de résultat n'a été générée. Veuillez
vérifier votre code de résultat.",
'score-noinput' => 'Erreur lors de la création du fichier d’entrée $1
LilyPond',
- 'score-noogghandler' => 'La conversion Ogg/Vorbis nécessite une
extension OggHandler installée et configurée, voir
[//www.mediawiki.org/wiki/Extension:OggHandler Extension:OggHandler].',
+ 'score-noogghandler' => 'La conversion Ogg/Vorbis nécessite une
extension OggHandler installée et configurée, voir
[https://www.mediawiki.org/wiki/Extension:OggHandler Extension:OggHandler].',
'score-nomidi' => 'Pas de fichier MIDI généré malgré la demande. Si
vous travaillez en mode brut de LilyPond, assurez-vous de fournir un bloc
\\midi correct.',
'score-nooutput' => 'Erreur lors de la création du répertoire de sortie
$1.',
'score-notexecutable' => 'Impossible d’exécuter LilyPond: $1 n\'est pas
un fichier exécutable. Vérifiez que <code>$wgScoreLilyPond</code> est
correctement configuré.',
@@ -299,7 +299,7 @@
'score-noabcinput' => 'Non se puido crear o ficheiro de fonte ABC
"$1".',
'score-noimages' => 'Non se xerou ningunha imaxe de partitura. Comprobe
o código.',
'score-noinput' => 'Erro ao crear o ficheiro de entrada "$1" do
LilyPond.',
- 'score-noogghandler' => 'Para a conversión Ogg/Vorbis cómpre unha
extensión OggHandler instalada e configurada; olle
[//www.mediawiki.org/wiki/Extension:OggHandler Extension:OggHandler].',
+ 'score-noogghandler' => 'Para a conversión Ogg/Vorbis cómpre unha
extensión OggHandler instalada e configurada; olle
[https://www.mediawiki.org/wiki/Extension:OggHandler Extension:OggHandler].',
'score-nomidi' => 'Non se xerou ficheiro MIDI ningún malia a
solicitude. Se está a traballar no modo LilyPond en bruto asegúrese de
proporcionar un bloque \\midi axeitado.',
'score-nooutput' => 'Erro ao crear o directorio de saída "$1".',
'score-notexecutable' => 'Non se puido executar o LilyPond: "$1" non é
un ficheiro executable. Asegúrese de que <code>$wgScoreLilyPond</code> está
definido correctamente.',
@@ -346,7 +346,7 @@
'score-noabcinput' => 'Le file de fonte ABC $1 non poteva esser
create.',
'score-noimages' => 'Nulle imagine de partitura ha essite generate. Per
favor verifica tu codice de partitura.',
'score-noinput' => 'Le creation del file de entrata LilyPond $1 ha
fallite.',
- 'score-noogghandler' => 'Le conversion in Ogg/Vorbis require un
extension OggHandler installate e configurate, vide
[//www.mediawiki.org/wiki/Extension:OggHandler Extension:OggHandler].',
+ 'score-noogghandler' => 'Le conversion in Ogg/Vorbis require un
extension OggHandler installate e configurate, vide
[https://www.mediawiki.org/wiki/Extension:OggHandler Extension:OggHandler].',
'score-nomidi' => 'Nulle file MIDI ha essite generate, malgrado que
illo esseva requestate. Si tu travalia in modo LilyPond brute, assecura te de
fornir un bloco \\midi correcte.',
'score-nooutput' => 'Le creation del directorio de output $1 ha
fallite.',
'score-notexecutable' => 'Impossibile executar LilyPond: $1 non es un
file executabile. Assecura te que <code>$wgScoreLilyPond</code> es definite
correctemente.',
@@ -397,7 +397,7 @@
'score-noabcinput' => 'Не можев да ја создадам изворната ABC податотека
$1.',
'score-noimages' => 'Не создадов партитурни слики. Проверете го кодот.',
'score-noinput' => 'Не можев да ја создадам влезната податотека $1 за
LilyPond.',
- 'score-noogghandler' => 'Претворањето во Ogg/Vorbis бара инсталиран и
наместен додаток OggHandler. Погл.
[//www.mediawiki.org/wiki/Extension:OggHandler?uselang=mk
Extension:OggHandler].',
+ 'score-noogghandler' => 'Претворањето во Ogg/Vorbis бара инсталиран и
наместен додаток OggHandler. Погл.
[https://www.mediawiki.org/wiki/Extension:OggHandler?uselang=mk
Extension:OggHandler].',
'score-nomidi' => 'Не е создадена MIDI податотека и покрај барањето.
Ако работите во сиров режим на LilyPond, не заборавајте да ставите соодветен
\\midi блок.',
'score-nooutput' => 'Не можев да го создадам излезниот директориум $1',
'score-notexecutable' => 'Не можев да го пуштам LilyPond. $1 не е
извршна податотека. Проверете дали <code>$wgScoreLilyPond</code> е правилно
наместен.',
@@ -439,7 +439,7 @@
'score-noabcinput' => 'Het ABC-bronbestand $1 kon niet aangemaakt
worden',
'score-noimages' => 'Er zijn geen afbeeldingen met bladmuziek
aangemaakt. Controleer uw notatie.',
'score-noinput' => 'Het was niet mogelijk het invoerbestand $1 voor
LilyPond aan te maken',
- 'score-noogghandler' => 'Voor het omzetten naar Ogg/Vorbis moet de
uitbreiding OggHandler geïnstalleerd en ingesteld zijn. Zie
[//www.mediawiki.org/wiki/Extension:OggHandler Extension:OggHandler].',
+ 'score-noogghandler' => 'Voor het omzetten naar Ogg/Vorbis moet de
uitbreiding OggHandler geïnstalleerd en ingesteld zijn. Zie
[https://www.mediawiki.org/wiki/Extension:OggHandler Extension:OggHandler].',
'score-nomidi' => 'Ondank een verzoek, is er geen MIDI-bestand
aangemaakt. Als u in de modus LilyPond ruw werkt, zorg dan dat u een correcte
opmaak van het onderdeel "\\midi" hebt.',
'score-nooutput' => 'Het was niet mogelijk de uitvoermap $1 aan te
maken',
'score-notexecutable' => 'Het was niet mogelijk om LilyPond uit te
voeren: $1 is geen uitvoerbaar bestand. Zorg dat de instelling
<code>$wgScoreLilyPond</code> correct is.',
@@ -479,7 +479,7 @@
'score-noabcinput' => 'Không thể tạo ra tập tin mã nguồn ABC $1.',
'score-noimages' => 'Các hình tài liệu âm nhạc không được tạo ra. Xin
vui lòng kiểm tra lại mã nguồn.',
'score-noinput' => 'Thất bại trong việc tạo ra tập tin đầu vào LilyPond
$1.',
- 'score-noogghandler' => 'Tính năng chuyển đổi Ogg/Vorbis cần cài đặt và
thiết lập phần mở rộng OggHandler; xem
[//www.mediawiki.org/wiki/Extension:OggHandler/vi?uselang=vi
Extension:OggHandler].',
+ 'score-noogghandler' => 'Tính năng chuyển đổi Ogg/Vorbis cần cài đặt và
thiết lập phần mở rộng OggHandler; xem
[https://www.mediawiki.org/wiki/Extension:OggHandler/vi?uselang=vi
Extension:OggHandler].',
'score-nomidi' => 'Tập tin MIDI đã yêu cầu không được tạo ra. Nếu bạn
đang làm việc trong chế độ LilyPond nguyên văn, hãy chắc chắn cung cấp một khối
\\midi hợp lệ.',
'score-nooutput' => 'Thất bại trong việc tạo ra thư mục đầu ra $1.',
'score-notexecutable' => 'Không thể thực thi LilyPond: $1 không phải là
một tập tin thực thi. Hãy chắc chắn rằng <code>$wgScoreLilyPond</code> có giá
trị chính xác.',
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs