./audio/solfege, Practice several musical ear training exercises

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 3.22.2nb1, Package name: solfege-3.22.2nb1, Maintainer: schmonz

GNU Solfege is a computer program written to help you practice ear
training. It can be useful when practicing the simple and mechanical
exercises. These are the exercises written so far:

* Recognise melodic and harmonic intervals
* Compare interval sizes
* Sing the intervals the computer asks for
* Identify chords
* Sing chords
* Scales
* Dictation
* Remembering rhythmic patterns

Required to run:
[sysutils/desktop-file-utils] [shells/bash] [x11/py-gtk2] [lang/python27]

Required to build:
[textproc/docbook-xsl] [textproc/gnome-doc-utils] [converters/txt2man] [pkgtools/x11-links] [devel/py-gobject-shared] [x11/xcb-proto] [x11/fixesproto4] [pkgtools/cwrappers] [x11/xorgproto]

Master sites: (Expand)

SHA1: d46e67d2f64c943fbdfa3858f077b49186a60a66
RMD160: 0832a8b75c913af0f7d7124b339e70a6cc82fb23
Filesize: 4010.969 KB

Version history: (Expand)

CVS history: (Expand)

   2019-11-02 22:09:18 by Roland Illig | Files touched by this commit (57)
Log message:
audio: align variable assignments and directives

pkglint -Wall -F --only aligned --only indent -r

No manual corrections.
   2019-09-02 15:20:22 by Adam Ciarcinski | Files touched by this commit (415)
Log message:
future Python 3.8
   2019-07-22 00:26:08 by Thomas Klausner | Files touched by this commit (1256)
Log message:
*: recursive bump for gdk-pixbuf2-2.38.1
   2019-07-11 06:51:14 by Amitai Schleier | Files touched by this commit (7)
Log message:
Modernize patch filenames.
   2019-07-11 06:45:53 by Amitai Schleier | Files touched by this commit (6) | Package updated
Log message:
Update to 3.22.2. From the changelog:

* Updated Esperanto, Portugese and Turkish translations to the users manual
* Updated Spannish and Turkish messages
* distribute solfege/tests/lesson-files/*
* help/C/scales/modes.html are never translated. So we must link to the
C-locale file in every translation.
* gettext tweaks to make the test suite work both when run as "test.py" and
"test.py test_lessonfile". There is still something wrong because we have
to disable the test to run debuild
* distribute solfege/tests/lib/* and solfege/test/include/*

* Adjust some of the short interval names used when selecting intervals to
  u->P1 4->P4, 5->P5, tt->TT, p11->P11, p12->P12, tt8->d12. \ 
Added long name
  intervals from Eleventh to Double Octave.
* Fix the bug where we could not select the Default profile
* Updated Esperanto, Spannish, Polish, Turkish, Vietnamese, Norwegian
  Brazilian Portugese and Vietnamese translations.

  * interval exercises: added larger intervals, up to double octave
  * elembuilder: make the answer buttons insensitive when the user is
not supposed to click on them.
  * added the header.statistics_matrices lesson file variable
  * mpd: try to avoid crashing noteheads when displaying two noteheads
at the same step, but with different accidentals.
  * the statistics page for each exercise now have a button that let
us delete the statistics for the exercise.
  * The --debug option will also show the module name as a tooltip for
the link button that starts the exercise.
  * Make the "Guess answer" button be sensitive only when the user
have entered an answer.
  * Statistics viewer: added a row to the percentages table showing
count and percentage correct for all questions asked in the session,
day, week and all-time.
  * The frontpage will show the filename if the app is started with
the ``--debug`` command line option.
  * idtone exercise: show statistics when the user configure the
module himself. And remember the config.
  * We can now place exercise modules written in Python in

New modules:
  * added the ``toneincontext`` exercise module
  * added ``solmisation`` exercise module. Thanks to Jan Baumgart and
Folkwang Universitaet der Kuenste

Build fixes:
  * version_info build fix
  * test.py: move some code so that running a subset of tests also
will create and remove tmp directory
  * make dist: include the files in exercises/regression-lesson-files/share/
  * build fix to avoid problem with too long list of files
  * add INSTALLDIR/exercises/standard/lesson-files to the include()
functions search path

Bug fixes
  * elembuilder: fix the backspace accel
  * fix bug #237
  * rhythmtapping and rhythmtapping2: rest handling bugfix
  * HarmonicProgressionLabel: set_alignment bugfix.
  * compareintervals: fix "Repeat first" and "Repeat last" \ 
  * SolfegeApp: don't sync the statistics database until the last
exercise is shut down.

Lesson file writing:
  * added import and rimport statement
  * remove all support for file formats that depent on lesson_id. Did
not remove the lesson_id variable from lesson files since this would
reset the statistics.
  * dataparser will parse to a parsetree that we interpret.
  * lesson file modules: tmp hack to let different lesson file modules
have different default values to variables.

* documentation: the intervals lesson file variable was documented wrongly.
* Linux -> GNU/Linux search-and-replace
* 140% line-height in the generated user manual
* the elembuilder module changed how it stored its statistics. So all
elembuilder statistics will be lost. We will save a backup of the
statistics database the first time 3.21.2 is run.
* gu.FlashBar: display extra strings (set by kwargs) in the same font
as the rest of the string.
* Put a deprecation notice in the chord modules gui.
* small fixes here and there...

* Updates to Persian, Czeck, Danish and Norwegian translation.
* Added Kroatian translation

* Fix rest handling in the rhythmtapping and rhythmtapping2 modules
* Bug fix to interval tests: select tones that are within the range of
the input widgets. (Closes bug #247)
* Translation updates
* Downloading of ALSA modules will download 1.0.24 instead of 1.0.22

* Add a gtk.ScrolledWindow to the dialog showing file locations to
make sure the dialog is smaller than the screen.
* minor build fixes
* mark a few more strings for translation and grammar fixes (by Ruslan Fedyarov)
* Alt-Left will go to the previous menu while navigating exercises.
* bug fix: make strings in lesson files that use format strings translatable.
* "Accordion (Belgian Do 2)" interval input widget.
* Show alsa sequencers that register as alsaseq.SEQ_PORT_TYPE_APPLICATION
* Updated translations: French, Spanish, Turkish, Russian, German
* interval_in_key_min: lesson_heading spelling fix
* make "90%" the the default value if test_requirement is missing.

* automate 0install binary tarball creating and script to update solfege.xml
* Bugfix to generate_lessonfiles.py: Believe it or not, but we defined
minor second as 16/12 and not 16/15.
* Search bar: decode the strings we get from the gtk.Entry into unicode.
* Always let the staff lines be as wide as the MusicDisplayer
* Add "Lock to key" feature. This is an experimental feature. Actual
GUI solution may improve later.
* polish folk songs: Fix singlequoted strings that where written as
multiline strings.
  It works, but it does not mean you should do it. Use triple-quoted
strings for multiline strings.
* simplify and rename to get a more precise name:
`mpdutils.int_to_notename` -> `int_to_octave_notename`,
`mpdutils.int_to_user_notename` -> `int_to_user_octave_notename` and
simplified `mpdutils.notename_to_int`
* String fixes:
  * Python should be capitalized
  * Fix bad english thanks to Ruslan Fedyarov
  * Mark one more string for translation
* the test target will check for bad spellings for "user manual":
"users manual" and "user's manual"
* Updated Russian, French, Dutch and Polish translations
* configwindow: handle soundcard.alsa_sequencer.get_connection_list()
returning an empty list. I think this fixes `bug #234
* set branch to 3.20 in configure.ac
* Removing things from the test: target of Makefile.in since
tools/make-release.py will do more
* docbook xml markup bug fixes to help/fr and help/pl
* autogen.sh: remove old gandiserver exception

Improvements and changes:

* New exercise modules: rhythmdictation and rhythmdictation2
* New middle layer code in the mpd module. The parser now generates
objects from the mpd.elems module. This API is also used by the rhythm
editor widget.
* Initial ALSA sequencer support. Added a tool (available on the Help
menu) that downloads and compiles ALSA drivers.
* identifybpm: play rhythms with the normal mpd API instead of
* singinterval: select violin or bass clef depending on the pitch of
the highest and lowest tone.
* the config window is built with a gtk.TreeView instead of a
gtk.Notebok, and interval input accels are now configurable
* added some missing interval exercise configurations and reorder the
sections making them uniform.
* Change FlashBar to handle labelobjects
* `0install </zeroinstall/solfege.xml>`_ package for Linux
* Timidity is the default midi player on linux.

Bug fixes:

* front page editor: escape titles and file names in saved files, so
that ', " and  \ are handled correctly.
* Fix rnc so that it works with the sharp symbol, and the unicode
version of both flat and sharp.
* Make sure the optimisation for very large front page files are used.
This is required for very large files, like the Bach choral package.
* solfege_c_midimodule: don't link libm unless we also link agains
librfftw and libffrw
* Don't rebuild generated music theory images if skipmanual=yes (bug #222)
* midifilesynth: filter out duplicate %s in the midi player args.
Duplicate %s would make the music play twice.
* Fix the Rhythm music object class so that it uses the percussion
instruments selected in the preferences window, as the user manual say
it should.
* RhythmDictation2Lessonfile: fix it so that it uses the percussion
instruments selected in the preferences window.
* don't crash on unicode BOM in lesson files.
* bug fixes to the instrument selection code in the preferences window.
* Use different API querying the screen resolution to avoid segfaul on
debian lenny.
* Make elembuilder handle questions where the answer is only one
element. Fixed by Andre Maute
* statistics: handle the deletion of the tests table correctly.
* win32: fix importing of old format front page files.
* Lots of other small fixes.

* fix bug #209 (http://bugs.solfege.org/209). Thanks to Ralf Hain for
reporting this.
* Add 3 missing "second to octave" exercises: compare intervals, both
melodic and harmonic, and sing-intervals. Small reorder so some
sections, so all interval exercises present the lessons in the same
* sing-intervals: the "Second to octave" exercise had a bug only
asking for ascending intervals up to octave, not tenth.
* mpd.parser: bugfix to relative mode. The following code would have
wrong octaves:

      \transpose d
      \relative c''{
       c d e e'
* Merge solfege.dev revno 1852: show_exercise_theory fix

3.18.7 October 29, 2010

* Updated Dutch and Italian translations
* idbyname: fix it so that tests work when expert mode is selected.
* Upgrade debugtree.txt to the latest file format.
* lessonfile.py: set exercise_dir in a portable way. Fixes bug on ms windows.
* ExerciseView: Don't use gtk.SizeGroup when we display many exercises
since there are performance issues with it.

3.18.6 October 24, 2010

* win32: strftime did not accept unicode strings causing a traceback
when the statistics was shown.
* validate_stored_statistics: don't try to delete from the 'tests'
table, since it should be removed by now. Fixes
* Show dialog explaining things if the database is locked.
* frontpage: Escape backslash and apostrophe used in titles.
* Make elembuilder handle questions where the answer is only one
element. Fixed by Andre Maute.

3.18.5 October 18, 2010

* Use different api to get the screen width and height. This to avoid
segfault on debian lenny.
* Make the install target skip compiling the .py files if nopycompile=YES
* Change to use htmldoc for generating the PDF version of the user
manual. We still have encoding troubles for some languages, but doing
it manually with openoffice is too much work.
* Workaround for the bug where 'None' is stored as the key in
singinterval exercises. http://bugs.solfege.org/205
* Updates to the russian translation of the user manual

3.18.4 October 12, 2010

* Should work with swig 2.0 now. http://bugs.solfege.org/202
* Fix bug in the preferences window code that let us select accels for
the idtone exercises.
* Updated Danish, Russian, Vietnamese and Chinese translations

3.18.2 & 3.18.3 October 5, 2010

* Fix import error in the prefernces window. (http://bugs.solfege.org/201)
* Updated Italian and Vietnamese translations

* Updated Esperanto, Polish and Italian translation.
* Don't import tuner.py when running solfege with the --debug option.
* Windows sound driver: Fix winmidi.reset so that it will reset the
correct dev num. Thanks to Krzysztof Foltman for telling me how to fix
this. This fix let us use external midi synths on MS Windows.
* Give the synth a little time to process program changes by calling
an extra note_off. The default is 100ms, but this is configurable from
the users solfegerc file.

Changes in 3.18.0 (compared to the 3.16 release). Included here since
3.18.0 was not that widely announced:
* Profile manager
* Preferences window: Add gui to delete statistics.
* Resize main window when selecting exercises to use the scrollbars less.
* The statistics page of exercises will show the 10 latest test results.
* Front page editor: option to search for strings in lesson file
titles when selecting lesson files.
* Export Exercises to Audio Files: add checkbutton that names the
generated audio files after the answer of the question.
* Add missing "Repeat Arpeggio" button to sing-the-fifth
* Updated Esperanto, Brazilian Portugese, Turkish and Persian translation.
* Spelling fixes by Ruslan Fedyarov and dougkerns
* Works with Swig 2.0
* Bug fix to the statistics table, and documented the statistics
tables in the user manual.
* Lots of minor bug fixes and improvements to the code.

* Fix front page editor bug: failed while moving sections
* cfg.parse_file_info_dict: strip each line to avoid newline problems on win32
* Revert back to Python 2.5.4 since we want to let CSound use our
included python interpreter, and the recommended CSound installer is
built for Python 2.5
* French and Polish translation updates.
* win32: moved some files around and set the PYTHONHOME environment variable.

* Interval.get_cname should return "Tritone" and not "Diminished \ 
* Remove some debugging code that accidentally was left in
get_percentage_correct(). This broke the "Identify Tone" exercise.

New features:
* Added 'atonal' transposition mode.
* More harmonic progressions from Ruslan Fedyarov.
* Added "Compare melodic intervals" exercise
* Statistics are now stored in a sqlite database instead of lots and
lots of small files.
* New main window where we select exercises without the menu bar. Gui
editor that let us edit this.
* Support LilyPond 2.12 in addition to 2.10
* Internally we now refer to lesson files by filename and not
lesson_id. So lesson_id should not be added to new lesson files. But
don't modify old files if you care about loosing your statistics.

* Require Python 2.5. Module reorg. Enable absolute import in all modules.
* User generated lesson files have moved from $HOME/lesson-files to
$HOME/.solfege/exercises/user/lesson-files. The user manual has doc
explaining this change.
* win32: don't show terminal window when running timidity and friends.

3.14.11 February 8, 2010
revno: 1065
* IntervalCheckBox had a bug that caused the Major Decim to be
missing. Reported by Andre Maute.
* Decim->Tenth replace. How could this ever get in???
* make default.config rcfile version 16 compatible. Thanks to
Krause.Chr for fixing this.

3.14.10 December 17, 2009
* Fix bug #149: make keyboard accels work for descending melodic intervals.
* Fix win32 upgrades from 3.11.1 and earlier
* right-click on piano/guitar/accordion widget got the direction wrong.
* rcfile: don't loose xxx_player_options

3.14.9 October 10, 2009
* bugfix: install and uninstall when swig is not installed
* don't loose the interval and csound statistics if upgrading from
older releases.

3.14.8 September 29, 2009
* Simplified Chinese translations for by Fan Rui and Ji ZhengYu
* Mark a few more strings and the music theory pages for translation.
* Add harmonics to the csound exercises. Contributed by Tarmo Johannes
* Some build fixes: handle missing swig and lilypond better
* Translation updates.
* Remove more debug print statements that I believe causes "bad
filedescriptor" errors

3.14.5 June 29, 2009

    * Unicode error during build fixed by using the codecs module to
load learning trees.
    * Updated fr, nl, pt_BR and tr messages.
    * Updated fr and pt_BR user manual translation.

3.14.4 June 9, 2009
    * Fix broken link to the related music theory. It was broken in
some exercises.
    * ConflictResolveDialog: set use_underline to False so that
filenames containing a underscore ('_') are displayed correctly.
    * Update src/runtime.py to check that we have at least Python 2.4
and PyGTK 2.12
    * Updated Danish, Polish, Brazilian Portugues and Russion translations.

3.14.3 April 27, 2009
The secret release. Forgot to announce it.
    * Don't print debug statements, since we get IOErrors because of
it when the stdout buffer is full on win32
    * bugfix: the small buttons representing parts of the dictation
where all playing the whole music.
    * Updated Russian and Finnish translation.

Changes since 3.14.1:
* Fix http://www.solfege.org/SITS-Incoming/NoDescription-HA
* It should now be possible to build without a X display.
* Updated translations
   2019-06-20 05:22:14 by Amitai Schleier | Files touched by this commit (1) | Package updated
Log message:
Update MASTER_SITES and HOMEPAGE (gnu.org).
   2019-05-23 21:23:24 by Roland Illig | Files touched by this commit (242)
Log message:
all: replace SUBST_SED with the simpler SUBST_VARS

pkglint -Wall -r --only "substitution command" -F

With manual review and indentation fixes since pkglint doesn't get that
part correct in every case.
   2019-04-26 15:14:25 by Maya Rashish | Files touched by this commit (473)
Log message:
Omit mentions of python 34 and 35, after those were removed.

- Includes some whitespace changes, to be handled in a separate commit.