The `idbyname` module
Anterior | Capítulo 4. Extending GNU Solfege | Próxima

## The `idbyname` module

This is a very generic exercise. In its most basic form, the program will play some sound, and you have to select among several buttons that in some way represents the music.

Here is a minimal lesson file:

    header {
      module = idbyname
      version = "3.1.4"
      title = "Menuitem title"
    }
    question {
     name = "Major"
     music = chord("c' e' g'")
    }
    question {
     name = "Minor"
     music = chord("c' es' g'")
    }

Optional idbyname header variables

`filldir = vertic`

  Tell the direction the buttons are filled. Default value is `horiz`.

  Modules: `idbyname`.

`fillnum`

  Tell how many buttons there are in each row or column. The default value is 1.

  Modules: `idbyname`.

`labelformat``= progression`

  The default value is `normal`. Set to `progression` for lesson files where the name of the questions is a harmonic progression, written in a undocumented, but not difficult format. Check some existing lesson file to see how it works.

  ### Atenção

  Using this variable is deprecated. Do not use it for new lesson files.

  Modules: `idbyname`

`have_repeat_slowly_button` `= yes`

  Set to `yes` if you want the exercise to have a "Repeat slowly" button.

  Modules: `idbyname`.

See also at_question_start and music_displayer_stafflines.

### Question block

Required question variables

- name. Can be a string or a label created by the label functions.

- music

Optional question variables

`vmusic`

  See vmusic.

`cuemusic`

  Will be displayed in the music displayer when the user clicks New. Ignored if `at_question_start = play, show` or `at_question_start = show`, because then the content of `music` or `vmusic` is displayed when the user clicks New. (Added in Solfege 2.5.1)

Anterior | Acima | Próxima
The `harmonicinterval` module | Principal | The `identifybpm` module