| [ < ] | [ > ] | [ << ] | [ 上 ] | [ >> ] | [首页] | [目录] | [索引] | [ ? ] |
@translationof GSoC 2012
It is a global program run by Google that offers students stipends for working on open source software projects during summer vacations.
The LilyPond Team decided that this is an excellent opportunity to find new contributors and encourage students already participating in LilyPond development to become more involved. One of our contributors was accepted for 2012 edition of the program as part of the GNU project; we hope to participate in future editions as well.
Below is a list of projects that we suggested for GSoC 2012 students. Although the application period is over, we decided to keep this webpage online as an inspiration for anyone who is interested in developing LilyPond. Some members of the development team are willing to help people who would like to tackle these projects.
Of course, there are many more things to improve in LilyPond, including very small ones. A full list of all known issues can be found here.
Fix problems with synchronization of grace notes, together with all underlying architecture (see issue 34 in our tracker). Grace notes are confusing to LilyPond’s timing because they’re like going back in time. This causes weird effects, especially when one staff has a grace note and the other doesn’t.
难度:中等
Requirements: C++, MIDI
Recommended: familiarity with LilyPond internals
Mentor(s): Mike Solomon, Carl Sorensen
Adding comprehensive MusicXML export and improving import, together with tests checking that it works. Depending on time available, implement some or all of the following:
The goal will be considered achieved when a (previously chosen) score could be imported from MusicXML and exported back with no unintentional loss of data.
难度:中等
Requirements: MusicXML, Python, basic LilyPond knowledge
Mentor(s): Reinhold Kainhofer, Mike Solomon
Familiarity with other scorewriters (for cross-testing) would be a nice bonus.
The default shape of slur and tie curves is often unsatisfactory.
Ties on enharmonic notes { cis'~ des' } are not supported,
ties "broken" by clef or staff change aren’t supported well.
The project includes collecting and sorting examples of bad output,
deciding on the intended output and writing the actual code.
难度:hard
Requirements: C++, experience with writing heuristics
Recommended knowledge: LilyPond knowledge, aesthetic sense
Mentor(s): Mike Solomon
Adding on-staff-line, between-staff-line, shorter and narrower variants of some glyphs, for example accidentals, together with a generic infrastructure to support them. An example is ancient notation breve notehead coming in two variants, with smaller and bigger hole.
难度:easy
Requirements: MetaFont, C++, good eye for details
Recommended knowledge: basic LilyPond knowledge
Mentor(s): Werner Lemberg
Default positioning of regular, cross-staff, broken and kneed beams should be improved. Beaming should depend on context and neighbor notes (see section 2.2 here). If possible, reduce beaming computation time.
难度:中等
Requirements: C++, experience with writing heuristics
Recommended knowledge: aesthetic sense
Mentor(s): Mike Solomon, Carl Sorensen
Clean up compiler warnings, static code analysis, and valgrind warnings.
Automatic code analysis tools (warnings in g++ and clang)
and analysis tools like valgrind memory leak detection and callgrind
code profilers provide valuable information about possible flaws in C++
code. Cleaning these warnings would allow us to automatically reject
any patch which introduced extra warnings.
难度:中等
Requirements: C++
Mentor(s): Joe Neeman, Reinhold Kainhofer
| [ < ] | [ > ] | [ << ] | [ 上 ] | [ >> ] |
This document was generated by gub on 7 月 13, 2020 using texi2html 1.82.
其他语言:English, català, česky, deutsch, español, français, magyar, italiano, 日本語, nederlands, Português。
关于 自动语言选择