Extension:Score/vi

Tiện ích mở rộng Score cho phép kết xuất các khuông nhạc dưới dạng hình ảnh PNG bằng cách sử dụng LilyPond và cũng có thể chuyển đổi chúng thành các tập tin âm thanh và MIDI.

Nhìn nhận

 * ban đầu được viết bởi Johannes E. Schindelin.
 * Tiện ích mở rộng này dựa trên code review của bởi Tim Starling.
 * ban đầu được viết bởi River Tarnell.

Cách sử dụng
Sau khi cài đặt và thiết lập, bạn có thể nhúng một ký hiệu LilyPond đơn giản thành mã wiki của bạn bên trong thẻ . Ví dụ:

yields:

Bạn cũng có thể chỉ định các thuộc tính cho thẻ khuông nhạc ở dạng chung

.

Ví dụ:

yields:

Các thuộc tính sau có sẵn



Ngôn ngữ LilyPond
Lời bài hát có thể được thêm vào như sau:

Đối với người dùng nâng cao, lệnh có thể được sử dụng để thay đổi nhạc cụ MIDI cho âm thanh.

Điều kiện
Các gói sau đây được khuyến nghị:


 * LilyPond
 * Ghostscript
 * ImageMagick
 * FluidSynth
 * Firejail

Tiện ích mở rộng này sử dụng LilyPond để hiển thị hình ảnh khuông nhạc, vì vậy bạn cần cài đặt LilyPond đang hoạt động (Special:Version hiển thị phiên bản LilyPond). Nếu bạn cài đặt LilyPond từ một gói, Ghostscript cũng sẽ được cài đặt, vì LilyPond phụ thuộc vào Ghostscript. ImageMagick nên được cài đặt để cắt hình ảnh, nếu không các trang sẽ chứa quá nhiều khoảng trắng.

Vì lý do bảo mật, chúng tôi khuyên bạn nên cài đặt firejail để hạn chế những gì LilyPond và Ghostscript có thể thực hiện nếu người dùng không tin cậy được phép sửa đổi wiki của bạn.

Tiện ích mở rộng cũng có khả năng tạo tệp âm thanh từ tệp MIDI do LilyPond tạo. Nếu bạn muốn sử dụng chức năng này, bạn cần cài đặt.

FluidSynth là phương pháp ưa thích để chuyển đổi tệp MIDI thành tệp âm thanh, tuy nhiên TiMidity++ cũng được hỗ trợ.



Quan ngại về bảo mật
Khuông nhạc sử dụng LilyPond ở chế độ an toàn, tuy nhiên, có những lỗ hổng thoát khỏi chế độ an toàn chưa được sửa chữa nhưng đã biết dẫn đến việc thực thi tùy ý.

Nếu bạn không hoàn toàn tin tưởng tất cả những người có đặc quyền sửa đổi trên wiki của mình, bạn nên thiết lập ngăn chặn lilypond bằng cách sử dụng. Xem Shellbox#Server setup để biết chi tiết về cách thiết lập máy chủ được chứa và bên dưới để định cấu hình MediaWiki để sử dụng nó. Ngoài ra, hãy đảm bảo rằng bạn đang sử dụng phiên bản mới nhất của LilyPond (2.22.0 trở lên) hoặc gói phân phối (ví dụ: từ Debian) có các bản sửa lỗi bảo mật. Luôn bật chế độ an toàn, ngay cả khi ngăn chặn như một lớp phòng thủ bổ sung. Một số chức năng sẽ không hoạt động ở chế độ an toàn, cách khắc phục là sửa đổi LilyPond để cho phép chức năng đó ở chế độ an toàn.

Cài đặt

 * See the extension's  for detailed installation instructions.

Cấu hình
Dưới đây là một số tham số cấu hình chung của tiện ích mở rộng.

$wgScoreLilyPond
Đặt  thành đường dẫn của tệp thực thi LilyPond của bạn (thường là   hoặc  ).

$wgScoreTrim
là một giá trị boolean mặc định của. Nếu kết quả là, kết quả Hình ảnh PNG của khuông nhạc được cắt bằng ImageMagick. Nếu bạn khuông muốn cắt ảnh hoặc không muốn cài đặt ImageMagick, hãy đặt giá trị  thành.

$wgScoreAbc2Ly
Đặt  sang đường dẫn từ ABC sang trình chuyển đổi LilyPond có thể thực thi của bạn (thường là   hoặc  ).

$wgScoreFluidsynth
Đặt  thành đường dẫn của tệp thực thi Fluidsynth của bạn (thường là   hoặc  ).

$wgScoreSoundfont
Đặt  thành đường dẫn của tệp soundfont của bạn (thường là   hoặc  ).

$wgScoreLame
Đặt  thành đường dẫn của tệp thực thi Lame của bạn (thường là   hoặc  ). Điều này là bắt buộc nếu tệp âm thanh được tạo phải có định dạng MP3.

Nhận xét
Tiện ích mở rộng này chạy các tệp nhị phân khác nhau trong Shellbox để cung cấp một số bảo mật. Bạn có thể phải tăng nếu gặp lỗi "hết bộ nhớ".



Tìm bản nhạc
Các trang có khuông nhạc sẽ được đặt thuộc tính trang "khuông nhạc". Sử dụng Special:PagesWithProp, bạn có thể tìm các trang có khuông nhạc. ([$url Truy vấn ví dụ cho Wikipedia tiếng Anh].)



Xem thêm

 * Trợ giúp:Khuông nhạc trên Wikipedia tiếng Việt và Trợ giúp:Bản nhạc trên Wikisource có thêm ví dụ về cú pháp LilyPond
 * Vexflow Trình kết xuất âm nhạc sang SVG/Canvas mã nguồn mở
 * Ký hiệu LilyPond
 * Ký hiệu ABC
 * kho lưu trữ vexflow trên github