]> git.donarmstrong.com Git - lilypond.git/blob - Documentation/zh/web/community.itexi
Issue 3951: Fix broken LSR links in docs.
[lilypond.git] / Documentation / zh / web / community.itexi
1 @c -*- coding: utf-8; mode: texinfo; documentlanguage: zh -*-
2 @c This file is part of web.texi
3 @ignore
4     Translation of GIT committish: 5239637b8f00a0307b860dac05189f297c7c198a
5
6     When revising a translation, copy the HEAD committish of the
7     version that you are working on.  See TRANSLATION for details.
8 @end ignore
9
10 @c Translators: Ben Luo, Anthony Fok
11
12 @include included/authors.itexi
13 @include included/helpus.itexi
14
15 @node 社区
16 @unnumbered 社区
17 @translationof Community
18
19 @divClass{link-headings}
20
21 @divClass{column-center-top}
22 @subheading 与社区互动
23
24 @itemize
25
26 @item
27 @ref{Contact}: get help, discuss, and keep in touch!
28
29 @item
30 @ref{Tiny examples}: these are @emph{highly} recommended when
31 discussing LilyPond.
32
33 @item
34 @ref{Bug reports}: something went wrong.
35
36 @end itemize
37 @divEnd
38
39 @divClass{column-left-bottom}
40 @subheading 使 LilyPond 更好
41
42 @itemize
43
44 @item
45 @ref{Help us}: your assistance is requested.
46
47 @item
48 @ref{Sponsoring}: financial contributions.
49
50 @item
51 @ref{Development}: for contributors and testers.
52
53 @item
54 @ref{GSoC 2012}: our ideas for 2012 edition of Google Summer of Code.
55
56 @item
57 @ref{Authors}: the people who made LilyPond what it is today.
58
59 @end itemize
60 @divEnd
61
62 @divClass{column-right-bottom}
63 @subheading 其他
64
65 @itemize
66
67 @item
68 @ref{Publications}: what we wrote, and have had written about us.
69
70 @item
71 @ref{Old news}: an archive.
72
73 @item
74 @ref{Attic}: announcements and changelogs from past versions.
75
76 @end itemize
77 @divEnd
78
79 @divEnd
80
81 @divClass{hide}
82 @menu
83 * 联系::
84 * 小例子::
85 * 错误报告::
86 * 帮助我们::
87 * 赞助::
88 * 开发::
89 * GSoC 2012::
90 * 作者::
91 * 出版物::
92 * 旧闻::
93 * Attic::
94 @end menu
95 @divEnd
96
97
98 @node 联系
99 @unnumberedsec 联系
100 @translationof Contact
101
102
103 @divClass{column-left-bottom}
104 @subheading 用户讨论和帮助
105
106 @subsubheading 用户邮件列表: @code{lilypond-user@@gnu.org}
107
108 This mailing list is the main place for users to discuss and help
109 each other.
110
111 @quotation
112 @uref{http://lists.gnu.org/mailman/listinfo/lilypond-user,
113 lilypond-user subscribe and info}
114
115 @uref{http://lists.gnu.org/archive/html/lilypond-user/,
116 user archive1}
117 @uref{http://www.mail-archive.com/lilypond-user@@gnu.org/,
118 archive2}
119 @uref{http://dir.gmane.org/gmane.comp.gnu.lilypond.general,
120 archive3}
121
122 @uref{http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.general,
123 send to lilypond-user with gmane}
124 @end quotation
125
126 @warning{When asking questions, please use @ref{Tiny examples}!}
127
128 @subsubheading LilyPond 片断仓库
129
130 The LilyPond Snippet Repository (LilyPond 片断仓库) is a large collection of
131 user-submitted examples, which can freely be copied and used
132 in your own works.  See what other people have written,
133 and add your own!
134
135 @example
136 @uref{http://lsr.di.unimi.it}
137 @end example
138
139 Particularly instructive examples from LSR are included in our
140 official documentation, in @ref{Snippets}.
141
142
143 @subsubheading IRC
144
145 Some level of support is provided on our IRC channel,
146
147 @example
148 @uref{irc://irc.freenode.net/lilypond, #lilypond@@irc.freenode.net}
149 @end example
150
151 This channel has no public archive, so any question that may
152 be useful for others would better be posted to one of the mailing lists.
153
154 @html
155 <form action="http://webchat.freenode.net"
156       method="get"
157       name="f_lily_irc"
158   <label>irc name:
159     <input name="nick" type="text" size="15" value="">
160   </label>
161   <input name="channels" type="hidden" value="lilypond">
162   <input type="submit" value="Join #lilypond IRC Chat">
163 </form>
164
165 <script language="JavaScript" type="text/javascript">
166   var username = "web";
167   var lang = window.navigator.userLanguage ? window.navigator.userLanguage
168   : window.navigator.language;
169   username += '-' + lang.substr(0, 2);
170   username += '-' + navigator.appName.substr(0, 2);
171   username += navigator.appCodeName.replace (" ", "").substr(0, 2);
172   username += navigator.platform.replace (" ", "").replace("nux", "").replace("n32", "");
173   document.forms["f_lily_irc"].nick.value = username;
174 </script>
175 @end html
176
177 @subsubheading 其他语言
178
179 @quotation
180 @uref{http://lists.gnu.org/mailman/listinfo/lilypond-es,
181 Spanish mailing list}
182
183 @uref{http://www.lilypondforum.de/,
184 German forum}
185
186 @uref{http://groups.google.com/group/lilypond-brasil,
187 Portuguese group}
188
189 @uref{http://lists.gnu.org/mailman/listinfo/lilypond-user-fr,
190 French mailing list}
191
192 @uref{http://www.lilypondforum.nl/,
193 Dutch forum}
194 @end quotation
195
196 @divEnd
197
198
199 @divClass{column-right-top}
200 @subheading 了解最新动态
201
202 @subsubheading LilyPond 报告
203
204 The easiest way to keep touch is by reading our community
205 newsletter, the LilyPond Report:
206
207 @example
208 @uref{http://news.lilynet.net}
209 @end example
210
211 @subsubheading 发行版邮件列表: @code{info-lilypond@@gnu.org}
212 This mailing list is a low-volume, read-only list which receives
213 notifications of new releases.
214
215 @quotation
216 @uref{http://lists.gnu.org/mailman/listinfo/info-lilypond,
217 info-lilypond subscribe and info}
218
219 @uref{http://lists.gnu.org/archive/html/info-lilypond/,
220 info archive1}
221 @uref{http://www.mail-archive.com/info-lilypond@@gnu.org/,
222 archive2}
223 @uref{http://dir.gmane.org/gmane.comp.gnu.lilypond.announce,
224 archive3}
225
226 @c don't include gmane posting here.  -gp
227 @end quotation
228
229
230 @divEnd
231
232
233 @divClass{column-right-bottom}
234 @subheading 开发者讨论
235
236 @subsubheading 开发者邮件列表: @code{lilypond-devel@@gnu.org}
237
238 Most developer discussion takes place on this list.  Patches
239 should be sent here.
240
241 @quotation
242 @uref{http://lists.gnu.org/mailman/listinfo/lilypond-devel,
243 lilypond-devel subscribe and info}
244
245 @uref{http://lists.gnu.org/archive/html/lilypond-devel/,
246 devel archive1}
247 @uref{http://www.mail-archive.com/lilypond-devel@@gnu.org/,
248 archive2}
249 @uref{http://dir.gmane.org/gmane.comp.gnu.lilypond.devel,
250 archive3}
251
252 @uref{http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.devel,
253 send to lilypond-devel with gmane}
254 @end quotation
255
256
257 @subsubheading 错误邮件列表: @code{bug-lilypond@@gnu.org}
258
259 Bug-specific discussion takes place here.
260
261 @quotation
262 @uref{http://lists.gnu.org/mailman/listinfo/bug-lilypond,
263 bug-lilypond subscribe and info}
264
265 @uref{http://lists.gnu.org/archive/html/bug-lilypond/,
266 bug archive1}
267 @uref{http://www.mail-archive.com/bug-lilypond@@gnu.org/,
268 archive2}
269 @uref{http://dir.gmane.org/gmane.comp.gnu.lilypond.bugs,
270 archive3}
271
272 @c don't include gmane posting here.  -gp
273 @end quotation
274
275 @warning{Before sending a message to the bug list, please read our
276 guidelines for @ref{Bug reports}.}
277
278 @divEnd
279
280 @divClass{column-right-bottom}
281 @subheading Sensitive emails
282
283 Private matters should be sent to Graham Percival (project
284 manager), who will discuss it with those concerned.
285
286 @divEnd
287
288
289 @node 小例子
290 @unnumberedsec 小例子
291 @translationof Tiny examples
292
293 @divClass{column-center-top}
294 @subheading 什么是 @qq{小例子}?
295
296 一个小例子 (tiny example) is an example from which @strong{nothing} can be removed.
297 @divEnd
298
299 @divClass{column-left-bottom}
300 @subheading 为什么要创建小例子?
301
302 @divClass{keep-bullets}
303 @itemize
304
305 @item
306 The simpler the example is, the quicker potential helpers can
307 understand it and help you.
308
309 @item
310 A tiny example demonstrates that you have put effort towards
311 solving the problem yourself.  When people send huge portions of
312 input, it looks like they don't care if we help them or not.
313
314 @item
315 Creating a tiny example helps you to understand what is
316 happening.  Many false problem reports can be avoided by
317 attempting to create a tiny example; if you cannot replicate a
318 @qq{bug} in a tiny example, then the problem was probably an
319 insufficient understanding of LilyPond, not an actual bug!
320
321 @end itemize
322 @divEnd
323
324 @divEnd
325
326
327 @divClass{column-right-bottom}
328 @subheading 如何创建小例子?
329
330 @divClass{keep-bullets}
331 @itemize
332
333 @item
334 Include the @code{\version} number.
335
336 @item
337 Make it small!  Examples about spacing or page layout might
338 require many bars of music, but most issues can be reproduced
339 using less than a single measure.
340
341 @item
342 When trying to create an example, try commenting out @w{(@code{%}
343 or @code{%@{ @dots{} %@}})} sections of your file.  If you
344 can comment something while still demonstrating the main idea,
345 then remove the commented-material.
346
347 @item
348 Avoid using complicated notes, keys or time signatures, unless
349 the bug is about the behavior of those items.
350
351 @item
352 Do not use @code{\override} or @code{\set} commands unless the bug
353 is about those specific commands.
354
355 @item
356 Optionally, attach an image showing the desired graphical output.
357
358 @end itemize
359 @divEnd
360
361 @divEnd
362
363 @divClass{column-center-bottom}
364 @subheading How tiny should they be?
365
366 Is the code below a minimal example?
367
368 @example
369 \version "2.14.1"
370 \include "english.ly"
371
372 \score @{
373   \new Staff @{
374     \key d \major
375     \numericTimeSignature
376     \time 2/4
377     <cs' d'' b''>16 <cs' d'' b''>8.
378     %% Here: the tie on the D's looks funny
379     %% Too tall? Left-hand endpoint is not aligned with the B tie?
380     ~
381     <cs' d'' b''>8 [ <b d'' a''> ]
382   @}
383 @}
384 @end example
385
386 Well, it is not very big, but a truly minimal example is here:
387
388 @example
389 \version "2.14.1"
390 @{
391   % middle tie looks funny here:
392   <c' d'' b''>8. ~ <c' d'' b''>8
393 @}
394 @end example
395
396 Very few tiny examples exceed 10 lines of code -
397 quite often 4 lines are enough to demonstrate the problem!
398
399 @divEnd
400
401
402 @node 错误报告
403 @unnumberedsec 错误报告
404 @translationof Bug reports
405
406
407 @divClass{heading-center}
408 If you have input that results in a crash or wrong output,
409 then that is a bug.
410 @divEnd
411
412 @divClass{column-center-top}
413 @subheading 第 1 步:检查是否已知错误
414
415 We may already know about this bug.  Check here:
416
417 @example
418 @uref{http://code.google.com/p/lilypond/issues/list}
419 @end example
420
421 @warning{Please @strong{DO NOT} add bug reports directly to the
422 bug tracker.  Once an issue has been added to the tracker, feel
423 free to add more information to that report.}
424
425 @divEnd
426
427
428 @divClass{column-left-bottom}
429 @subheading 第 2 步:创建错误报告
430
431 If you have discovered a bug which is not listed,
432 please help us by creating a bug report.
433
434 @warning{We only accept reports in the form of
435 @ref{Tiny examples}.  We have very limited resources,
436 so any non-minimal example will be rejected.  Almost
437 every bug can be demonstrated in four notes or less!}
438
439 Here is an example of a good bug report:
440
441 @example
442 % Accidentals should be printed for only
443 % the first note in a tie, but this version
444 % prints flats on both notes.
445 \version "2.10.1"
446
447 \relative c'' @{
448  bes1 ~
449  bes1
450 @}
451 @end example
452
453 @divEnd
454
455 @divClass{column-right-bottom}
456 @subheading 第 3 步:发送错误报告
457
458 Once you have verified that the issue is not already known and
459 created a bug report, please send it to us!
460
461 @divClass{keep-bullets}
462 @itemize
463
464 @item
465 If you are subscribed to the @uref{mailto:bug-lilypond@@gnu.org,
466 bug-lilypond@@gnu.org} mailing list, send an email like normal.
467
468 @item
469 If you are not subscribed, you can still post a bug report with
470 the
471 @uref{http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs,
472 gmane lilypond.bugs web interface}.
473
474 However, there is a strict @qq{no top-posting} check on the gmane
475 interface, which is often incorrectly triggered by lilypond files.
476 To avoid this, please add:
477
478 @example
479 > I'm not top posting.
480 @end example
481
482 @noindent
483 (you @emph{must} include the @code{>} ) to the top of your bug
484 report.
485
486 @end itemize
487 @divEnd
488 @divEnd
489
490 @divClass{column-center-bottom}
491 @subheading 第 4 步:等待回应
492
493 Once your bug report has been sent to the list, our Bug Squad will
494 examine it; they may ask you for more information.  You will be notified
495 when the report will be added to the bug tracker. Please allow up to 4 days,
496 as we have a limited number of volunteers for this task.
497
498 Once a bug has been added to the tracker, you can comment it to add
499 more information about it.
500 You may also mark the bug so that you automatically receive emails when
501 any activity on the bug occurs.  This requires you have a google
502 account.
503 @divEnd
504
505 @divClass{column-center-bottom}
506 @subheading 可选的帮助:展示所期望的行为
507
508 Once an issue has been added to the tracker, it can be very
509 helpful if we can see the desired output.  Feel free to add input
510 code and/or images (possibly created with other tools) which
511 demonstrate what you think it should look like!
512
513 @divEnd
514
515
516 @node 帮助我们
517 @unnumberedsec 帮助我们
518 @translationof Help us
519
520 @divClass{column-center-top}
521 @helpusNeed
522
523 @divEnd
524
525 @divClass{column-left-top}
526 @divClass{keep-bullets}
527 @helpusSimple
528
529 @divEnd
530 @divEnd
531
532 @divClass{column-right-top}
533 @helpusAdvanced
534
535 @divEnd
536
537
538 @node 赞助
539 @unnumberedsec 赞助
540 @translationof Sponsoring
541
542 @divClass{keep-bullets}
543 @divClass{column-left-top}
544 @subheading Bounties
545
546 In the past,
547
548 @itemize
549 @item some users have paid for new features
550 @item some developers have added new features for hire
551 @end itemize
552
553 The LilyPond project does not organize such efforts; we neither
554 endorse nor discourage such agreements.  Any contracts between
555 private individuals is the business of those individuals, not
556 ours.
557
558 @divEnd
559
560 @divClass{column-right-top}
561 @subheading Guidelines
562
563 Any user wanting to offer money in exchange for work should bear
564 in mind the following points:
565
566 @itemize
567 @item
568 LilyPond developers may advertise their services on the lilypond
569 email lists from time to time.
570
571 @item
572 Any agreements between private individuals should include the
573 normal precautions when conducting business: who pays, how much do
574 they pay, with what method of payment, and upon what set of
575 conditions.  We suggest that any ambiguity or uncertainty in these
576 questions should be resolved before any work begins.
577
578 @end itemize
579
580 @divEnd
581
582 @divClass{column-center-bottom}
583 @subheading Interested developers
584
585 Here is a list of people who have expressed an interest in
586 bounties.  Note that the amount of work done by individuals varies
587 quite a bit throughout the years.  We do not guarantee that this
588 list is up-to-date, nor do we guarantee that the people listed
589 here have any ability.  The only criteria is "XYZ asked to be
590 listed on this page".
591
592 Looking at the git history is a good way to determine who the most
593 active and experienced developers are.  Statistics up to version
594 @versionDevel{}:
595
596 @multitable @columnfractions .3 .3 .3
597 @item @uref{http://lilypond.org/~graham/gitstats-all/, overall history}
598 @tab @uref{http://lilypond.org/~graham/gitstats-1year/, past year}
599 @tab @uref{http://lilypond.org/~graham/gitstats-3months/, past three months}
600 @end multitable
601
602 Interested developers:
603 @table @asis
604 @item @email{dak@@gnu.org, David Kastrup}
605 Donations are required to let me continue my current fulltime work on
606 LilyPond.  I focus on user and programmer interface design, coherence,
607 implementation, simplification, documentation, and debugging.
608
609 @c Format
610 @c @item @email{name@@adress.domain, Name}
611 @c area of interest (256 chars max)
612
613 @end table
614
615 @divEnd
616 @divEnd
617
618
619 @node 开发
620 @unnumberedsec 开发
621 @translationof Development
622
623 @divClass{heading-center}
624 @ifclear web_version
625   @heading Development for LilyPond @version
626 @end ifclear
627 @ifset web_version
628   @heading Development for LilyPond @versionDevel
629 @end ifset
630
631
632 @c we normally don't allow named references, but in this case
633 @c it's good to emphasize the "stable" part.  -gp
634 @warning{These are @emph{unstable development} versions.  If you
635 have the slightest doubt about how to use or install LilyPond, we
636 urge you to use the @ref{Download, stable Download}, and read the
637 @ref{Manuals, stable Manuals}.}
638
639 @divEnd
640
641 @divClass{column-center-top}
642 @subheading Release numbers 发行号
643
644 There are two sets of releases for LilyPond: stable releases, and
645 unstable development releases.  Stable versions have an
646 even-numbered @q{minor} version number (e.g., 2.8, 2.10, 2.12).
647 Development versions have an odd-numbered @q{minor} version number
648 (e.g., 2.7, 2.9, 2.11).
649
650 @divEnd
651
652
653 @divClass{column-left-top}
654 @subheading 下载
655
656 Instructions for git and compiling are in the Contributor's Guide.
657
658 @quotation
659 @uref{http://git.sv.gnu.org/gitweb/?p=lilypond.git, lilypond git repository}
660 @end quotation
661
662 Documentation writers and testers will generally want to download
663 the latest binary:
664
665 @quotation
666
667 @downloadDevelLinuxNormal
668
669 @downloadDevelLinuxBig
670
671 @downloadDevelLinuxPPC
672
673 @downloadDevelFreeBSDNormal
674
675 @downloadDevelFreeBSDBig
676
677 @downloadDevelDarwinNormal
678
679 @downloadDevelDarwinPPC
680
681 @downloadDevelWindows
682
683 @downloadDevelSource
684
685 @end quotation
686
687 @divEnd
688
689
690 @divClass{column-right-top}
691 @subheading 贡献者指南
692
693 LilyPond development is a fairly complicated matter.  In order to
694 help new contributors, and to keep the whole system (mostly)
695 stable, we have written a manual for development tasks.
696
697 @docLinksBare{Contributor's Guide, contributor,
698   @rcontribnamed{Top,Contributor's Guide},
699   @manualDevelContributorSplit,
700   @manualDevelContributorBig, 500 kB,
701   @manualDevelContributorPdf, 2.8 MB}
702
703 @divEnd
704
705
706 @divClass{column-center-top}
707 @subheading 回归测试
708
709 @divClass{keep-bullets}
710
711 @ifclear web_version
712
713 @itemize
714 @item
715 @uref{../../input/regression/collated-files.html, Regression tests}:
716 This release's regtests.
717 (@uref{../../input/regression/collated-files.pdf, pdf version})
718
719 @item
720 @uref{../../input/regression/musicxml/collated-files.html, MusicXML tests}:
721 This release's musicXML tests.
722 (@uref{../../input/regression/musicxml/collated-files.pdf, pdf version})
723
724 @item
725 @uref{../../input/regression/abc2ly/collated-files.html, abc2ly tests}:
726 This release's abc2ly tests.
727 (@uref{../../input/regression/abc2ly/collated-files.pdf, pdf version})
728
729 @item
730 @uref{../../input/regression/lilypond-book/collated-files.html, lilypond-book tests}:
731 This release's lilypond-book tests.
732 (@uref{../../input/regression/lilypond-book/collated-files.pdf, pdf version})
733 @end itemize
734
735 @end ifclear
736
737 @ifset web_version
738 @subsubheading 开发中版本
739
740 @itemize
741 @item @regtestDevel (@regtestDevelPdf{})
742
743 @item @regtestDevelXml (@regtestDevelXmlPdf{})
744
745 @item @regtestDevelAbc (@regtestDevelAbcPdf{})
746
747 @item @regtestDevelLilypondBook (@regtestDevelLilypondBookPdf{})
748 @end itemize
749
750 @subsubheading 稳定版
751
752 @itemize
753 @item @regtestStable (@regtestStablePdf{})
754
755 @item @regtestStableXml (@regtestStableXmlPdf{})
756
757 @item @regtestStableAbc (@regtestStableAbcPdf{})
758
759 @item @regtestStableLilypondBook (@regtestStableLilypondBookPdf{})
760 @end itemize
761 @end ifset
762
763
764 @subsubheading 所有版本
765
766 @itemize
767 @item @uref{http://lilypond.org/test, Comparisons between regression tests}
768
769 @item @uref{http://lilypond.org/download/binaries/test-output/,
770 Archive of all regression tests}
771
772 @end itemize
773
774 @divEnd
775 @divEnd
776
777
778
779 @divClass{column-center-bottom}
780 @subheading 手册
781
782 @ifclear web_version
783 @warning{These manuals are for LilyPond @version{}; the latest
784 manuals can be found at @url{http://lilypond.org}}
785 @end ifclear
786
787 @divClass{normal-table}
788 @multitable @columnfractions .3 .3 .3
789 @headitem Introduction
790 @item
791 @docLinkSplit{Learning,learning,@manualDevelLearningSplit}
792 @tab
793 @docLinkBig{Learning,learning,@manualDevelLearningBig}
794 @tab
795 @docLinkPdf{Learning,learning,@manualDevelLearningPdf}
796
797 @item
798 @docLinkSplit{Glossary,music-glossary,@manualDevelGlossarySplit}
799 @tab
800 @docLinkBig{Glossary,music-glossary,@manualDevelGlossaryBig}
801 @tab
802 @docLinkPdf{Glossary,music-glossary,@manualDevelGlossaryPdf}
803
804 @item
805 @docLinkSplit{Essay,essay,@manualDevelEssaySplit}
806 @tab
807 @docLinkBig{Essay,essay,@manualDevelEssayBig}
808 @tab
809 @docLinkPdf{Essay,essay,@manualDevelEssayPdf}
810
811 @headitem Regular
812
813 @item
814 @docLinkSplit{Notation,notation,@manualDevelNotationSplit}
815 @tab
816 @docLinkBig{Notation,notation,@manualDevelNotationBig}
817 @tab
818 @docLinkPdf{Notation,notation,@manualDevelNotationPdf}
819
820 @item
821 @docLinkSplit{Usage,usage,@manualDevelUsageSplit}
822 @tab
823 @docLinkBig{Usage,usage,@manualDevelUsageBig}
824 @tab
825 @docLinkPdf{Usage,usage,@manualDevelUsagePdf}
826
827 @item
828 @docLinkSplit{Snippets,snippets,@manualDevelSnippetsSplit}
829 @tab
830 @docLinkBig{Snippets,snippets,@manualDevelSnippetsBig}
831 @tab
832 @docLinkPdf{Snippets,snippets,@manualDevelSnippetsPdf}
833
834 @headitem Infrequent
835
836 @item
837 @docLinkSplit{Web,web,@manualDevelWebSplit-zh}
838 @tab
839 @docLinkBig{Web,web,@manualDevelWebBig-zh}
840 @tab
841 @docLinkPdf{Web,web,@manualDevelWebPdf-zh}
842
843 @item
844 @docLinkSplit{Changes,changes,@manualDevelChangesSplit}
845 @tab
846 @docLinkBig{Changes,changes,@manualDevelChangesBig}
847 @tab
848 @docLinkPdf{Changes,changes,@manualDevelChangesPdf}
849
850 @item
851 @docLinkSplit{Extending,extending,@manualDevelExtendingSplit}
852 @tab
853 @docLinkBig{Extending,extending,@manualDevelExtendingBig}
854 @tab
855 @docLinkPdf{Extending,extending,@manualDevelExtendingPdf}
856
857 @item
858 @docLinkSplit{Internals,internals,@manualDevelInternalsSplit}
859 @tab
860 @docLinkBig{Internals,internals,@manualDevelInternalsBig}
861 @tab
862 @docLinkPdf{Internals,internals,@manualDevelInternalsPdf}
863
864 @ifset web_version
865 @headitem Downloadable
866
867 @item
868 @doctarballDevel
869 @end ifset
870
871 @end multitable
872
873 @divEnd
874 @divEnd
875
876
877
878
879 @node GSoC 2012
880 @unnumberedsec GSoC 2012
881 @translationof GSoC 2012
882
883 @divClass{column-center-top}
884 @subheading What is Google Summer of Code?
885
886 It is a global program run by Google that offers students stipends
887 for working on open source software projects during summer vacations.
888
889 The LilyPond Team decided that this is an excellent opportunity to find
890 new contributors and encourage students already participating in LilyPond
891 development to become more involved.  One of our contributors was accepted
892 for 2012 edition of the program as part of the
893 @uref{http://www.gnu.org/, GNU project};
894 we hope to participate in future editions as well.
895
896 @divEnd
897
898 @divClass{column-center-bottom}
899 @subheading Our 2012 Ideas List
900
901 Below is a list of projects that we suggested for GSoC 2012 students.
902 Although the application period is over, we decided to keep this webpage
903 online as an inspiration for anyone who is interested in developing LilyPond.
904 Some members of the development team are willing to help people who would like
905 to tackle these projects.
906
907 Of course, there are many more things to improve in LilyPond, including
908 very small ones.  A full list of all known issues can be found
909 @uref{http://code.google.com/p/lilypond/issues/list, here}.
910
911 @subheading Grace notes
912
913 Fix problems with synchronization of grace notes,
914 together with all underlying architecture (see
915 @uref{http://code.google.com/p/lilypond/issues/detail?id=34,
916 issue 34 in our tracker}).  Grace notes are confusing to LilyPond's
917 timing because they're like going back in time.  This causes weird
918 effects, especially when one staff has a grace note and the other
919 doesn't.
920
921 @strong{难度:}中等
922
923 @strong{Requirements:} C++, MIDI
924
925 @strong{Recommended:} familiarity with LilyPond internals
926
927 @strong{Mentor(s):} Mike Solomon, Carl Sorensen
928
929 @subheading MusicXML
930
931 Adding comprehensive MusicXML export and improving import,
932 together with tests checking that it works. Depending on time available,
933 implement some or all of the following:
934
935 @divClass{keep-bullets}
936 @itemize
937
938 @item
939 Handle basic musical content export like the MIDI export (i.e. using
940 dedicated exporter classes, derived from the translator class)
941
942 @item
943 Build the XML tree of the basic musical content,
944 add a connection from music event to XML tag
945
946 @item
947 Let all LilyPond engravers do their job
948
949 @item
950 Add ability to link each output object
951 (basically each stencil / group of stencils) to the music cause
952 (and thus to the XML tag in the XML tree)
953
954 @item
955 Add a XML output backend, which can then add the layout information
956 for each output object to the XML tags
957
958 @end itemize
959 @divEnd
960
961 The goal will be considered achieved when a (previously chosen) score
962 could be imported from MusicXML and exported back with no unintentional
963 loss of data.
964
965 @strong{难度:}中等
966
967 @strong{Requirements:} MusicXML, Python, basic LilyPond knowledge
968
969 @strong{Mentor(s):} Reinhold Kainhofer, Mike Solomon
970
971 Familiarity with other scorewriters (for cross-testing) would be a nice
972 bonus.
973
974 @subheading Improve slurs and ties
975
976 The default shape of slur and tie curves is often unsatisfactory.
977 Ties on enharmonic notes @code{@{ cis'~ des' @}} are not supported,
978 ties "broken" by clef or staff change aren't supported well.
979 The project includes collecting and sorting examples of bad output,
980 deciding on the intended output and writing the actual code.
981
982 @strong{难度:}hard
983
984 @strong{Requirements:} C++, experience with writing heuristics
985
986 @strong{Recommended knowledge:} LilyPond knowledge, aesthetic sense
987
988 @strong{Mentor(s):} Mike Solomon
989
990 @subheading Adding special variant of font glyphs
991 Adding on-staff-line, between-staff-line, shorter and narrower variants
992 of some glyphs, for example accidentals, together with a generic
993 infrastructure to support them.  An example is ancient notation breve
994 notehead coming in two variants, with smaller and bigger hole.
995
996 @strong{难度:}easy
997
998 @strong{Requirements:} MetaFont, C++, good eye for details
999
1000 @strong{Recommended knowledge:} basic LilyPond knowledge
1001
1002 @strong{Mentor(s):} Werner Lemberg
1003
1004 @subheading Improve beaming
1005
1006 Default positioning of regular, cross-staff, broken and kneed beams
1007 should be improved.  Beaming should depend on context and neighbor notes
1008 (see @uref{http://icking-music-archive.org/lists/sottisier/sottieng.pdf,
1009 section 2.2 here}).  If possible, reduce beaming computation time.
1010
1011 @strong{难度:}中等
1012
1013 @strong{Requirements:} C++, experience with writing heuristics
1014
1015 @strong{Recommended knowledge:} aesthetic sense
1016
1017 @strong{Mentor(s):} Mike Solomon, Carl Sorensen
1018
1019 @subheading Clean up various compilation warnings
1020
1021 Clean up compiler warnings, static code analysis, and valgrind warnings.
1022 Automatic code analysis tools (warnings in @code{g++} and @code{clang})
1023 and analysis tools like valgrind memory leak detection and callgrind
1024 code profilers provide valuable information about possible flaws in C++
1025 code.  Cleaning these warnings would allow us to automatically reject
1026 any patch which introduced extra warnings.
1027
1028 @strong{难度:}中等
1029
1030 @strong{Requirements:} C++
1031
1032 @strong{Mentor(s):} Joe Neeman, Reinhold Kainhofer
1033
1034 @divEnd
1035
1036
1037
1038
1039 @node 作者
1040 @unnumberedsec 作者
1041 @translationof Authors
1042
1043 @divClass{column-left-top}
1044 @subheading 目前的开发小组
1045
1046 @divClass{keep-bullets}
1047 @developersCurrent
1048 @divEnd
1049 @divEnd
1050
1051 @divClass{column-right-top}
1052 @subheading 以前的开发小组
1053
1054 @divClass{keep-bullets}
1055 @developersPrevious
1056 @divEnd
1057 @divEnd
1058
1059
1060 @divClass{column-center-top}
1061 @subheading 目前的贡献者
1062
1063 @divClass{keep-bullets}
1064 @subsubheading 编程
1065
1066 @coreCurrent
1067
1068 @subsubheading 字体
1069
1070 @fontCurrent
1071
1072 @subsubheading 文档
1073
1074 @docCurrent
1075
1076 @subsubheading 错误组 (Bug squad)
1077
1078 @bugsquadCurrent
1079
1080 @subsubheading 支持
1081
1082 @supportCurrent
1083
1084 @subsubheading 翻译
1085
1086 @translationsCurrent
1087
1088 @divEnd
1089 @divEnd
1090
1091
1092 @divClass{column-center-bottom}
1093 @subheading 以往的贡献者
1094
1095 @divClass{keep-bullets}
1096 @subsubheading 编程
1097
1098 @corePrevious
1099
1100 @subsubheading 字体
1101
1102 @fontPrevious
1103
1104 @subsubheading 文档
1105
1106 @docPrevious
1107
1108 @c    uncomment when we have any previous members -gp
1109 @c @subsubheading Bug squad
1110
1111 @c @bugsquadCurrent
1112
1113 @subsubheading 支持
1114
1115 @supportPrevious
1116
1117 @subsubheading 翻译
1118
1119 @translationsPrevious
1120
1121 @divEnd
1122 @divEnd
1123
1124
1125
1126 @node 出版物
1127 @unnumberedsec 出版物
1128 @translationof Publications
1129
1130 @divClass{column-center-top}
1131 @subheading 我们写的有关 LilyPond 的文章
1132
1133 @divClass{keep-bullets}
1134
1135 @include we-wrote.itexi
1136
1137 @divEnd
1138 @divEnd
1139
1140 @divClass{column-center-bottom}
1141 @subheading 大家怎么用 LilyPond 的
1142
1143 @divClass{keep-bullets}
1144
1145 @include others-did.itexi
1146
1147 @divEnd
1148 @divEnd
1149
1150 @contactUsAbout{学术论文}
1151
1152
1153 @node 旧闻
1154 @unnumberedsec 旧闻
1155 @translationof Old news
1156
1157 @divClass{heading-center}
1158 @warning{Many old announcements and changelogs can be found in
1159 the @ref{Attic}}
1160 @divEnd
1161
1162 @include web/news-front.itexi
1163
1164 @include web/news.itexi
1165
1166
1167 @node Attic
1168 @unnumberedsec Attic
1169 @translationof Attic
1170
1171 @divClass{column-center-top}
1172 @subheading Announcements
1173
1174 Announcements and news by version:
1175 @uref{http://lilypond.org/doc/v2.14/Documentation/web/index#LilyPond-2_002e14_002e0-released_0021-June-6_002c-2011,v2.14},
1176 @miscLink{announce-v2.12,v2.12},
1177 @miscLink{announce-v2.10,v2.10},
1178 @miscLink{announce-v2.8,v2.8},
1179 @miscLink{announce-v2.6,v2.6},
1180 @miscLink{announce-v2.4,v2.4},
1181 @miscLink{announce-v2.2,v2.2},
1182 @miscLink{announce-v2.0,v2.0},
1183 @miscLink{ANNOUNCE-1.2,v1.2},
1184 @miscLink{ANNOUNCE-1.0,v1.0},
1185 @miscLink{ANNOUNCE-0.1,v0.1}
1186
1187 Descriptive list of changes by version:
1188 @uref{http://lilypond.org/doc/v2.14/Documentation/changes/index.html,v2.14},
1189 @uref{http://lilypond.org/doc/v2.12/Documentation/topdocs/NEWS,v2.12},
1190 @uref{http://lilypond.org/doc/v2.10/Documentation/topdocs/NEWS,v2.10},
1191 @uref{http://lilypond.org/doc/v2.8/Documentation/topdocs/NEWS,v2.8},
1192 @uref{http://lilypond.org/doc/v2.6/Documentation/topdocs/NEWS,v2.6},
1193 @uref{http://lilypond.org/doc/v2.4/Documentation/topdocs/out-www/NEWS,v2.4},
1194 @uref{http://lilypond.org/doc/v2.2/Documentation/topdocs/out-www/NEWS,v2.2},
1195 @uref{http://lilypond.org/doc/v2.0/Documentation/topdocs/out-www/NEWS,v2.0},
1196 @uref{http://lilypond.org/doc/v1.8/Documentation/topdocs/out-www/NEWS,v1.8},
1197 @uref{http://lilypond.org/doc/v1.6/Documentation/out-www/NEWS,v1.6},
1198 @miscLink{NEWS-1.4,v1.4},
1199 @miscLink{NEWS-1.2,v1.2}
1200
1201 @divEnd
1202
1203 @divClass{column-center-bottom}
1204 @subheading Changelogs
1205
1206 Developers' changelogs by version:
1207 @miscLink{ChangeLog-2.10,v2.10},
1208 @miscLink{ChangeLog-2.3,v2.3},
1209 @miscLink{ChangeLog-2.1,v2.1},
1210 @miscLink{ChangeLog-1.5,v1.5 (1)},
1211 @miscLink{CHANGES-1.5,v1.5 (2)},
1212 @miscLink{CHANGES-1.4,v1.4},
1213 @miscLink{CHANGES-1.3,v1.3},
1214 @miscLink{CHANGES-1.2,v1.2},
1215 @miscLink{CHANGES-1.1,v1.1},
1216 @miscLink{CHANGES-1.0,v1.0},
1217 @miscLink{CHANGES-0.1,v0.1},
1218 @miscLink{CHANGES-0.0,v0.0}
1219
1220 @divEnd