Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add more tunings #26

Open
sugizo opened this issue Sep 20, 2020 · 3 comments
Open

add more tunings #26

sugizo opened this issue Sep 20, 2020 · 3 comments

Comments

@sugizo
Copy link

sugizo commented Sep 20, 2020

nice to have more tunings
ref
https://en.wikipedia.org/wiki/List_of_guitar_tunings

thanks

@sugizo
Copy link
Author

sugizo commented Sep 21, 2020

test added

  • guitars : 8 strings, 9 strings, 10 strings and 12 strings
  • bass : 4 strings, 5 strings, 6 strings

also revise some name : regular tuning into standard tuning, dropped into drop
and also the tuning display sequence is not right, but already raise an issue about that
will add more after error reported below fixed (same error reported, but it's on different tuning about fret mark and fret added on left side)

.src/api.ts

export const getTuningsFor6StringsGuitar = () => [
  {
    label: 'Standard',
    display: 'EBGDAE',
    strings: ['E4', 'B3', 'G3', 'D3', 'A2', 'E2'],
    tuningIdx: 0,
    name: 0,
  },
  {
    label: 'Drop D',
    display: 'EBGDAD',
    strings: ['E4', 'B3', 'G3', 'D3', 'A2', 'D2'],
    tuningIdx: 1,
    name: 1,
  },
  {
    label: 'Double drop D',
    display: 'DADGBD',
    strings: ['D4', 'B3', 'G3', 'D3', 'A2', 'D2'],
    tuningIdx: 2,
    name: 2,
  },
  {
    label: 'Drop C',
    display: 'DAFCGC',
    strings: ['D4', 'A3', 'F3', 'C3', 'G2', 'C2'],
    tuningIdx: 3,
    name: 3,
  },
  {
    label: 'Open G',
    display: 'DBGDGD',
    strings: ['D4', 'B3', 'G3', 'D3', 'G2', 'D2'],
    tuningIdx: 4,
    name: 4,
  },
  {
    label: 'Major Third',
    display: 'ECG#ECG#',
    strings: ['E4', 'C4', 'Ab3', 'E3', 'C3', 'Ab2'],
    tuningIdx: 5,
    name: 5,
  },
  {
    label: 'All Fourths',
    display: 'FCGDAE',
    strings: ['F4', 'C4', 'G3', 'D3', 'A2', 'E2'],
    tuningIdx: 6,
    name: 6,
  },
];

export const getTuningsFor7StringsGuitar = () => [
  {
    label: 'Standard',
    display: 'EBGDAEB',
    strings: ['E4', 'B3', 'G3', 'D3', 'A2', 'E2', 'B1'],
    tuningIdx: 0,
    name: 0,
  },
];

export const getTuningsFor8StringsGuitar = () => [
  {
    label: 'Standard',
    display: 'EBGDAEBF#',
    strings: ['E4', 'B3', 'G3', 'D3', 'A2', 'E2', 'B1', 'Gb1'],
    tuningIdx: 0,
    name: 0,
  },
];

export const getTuningsFor9StringsGuitar = () => [
  {
    label: 'Standard',
    display: 'EBGDAEBF#C#',
    strings: ['E4', 'B3', 'G3', 'D3', 'A2', 'E2', 'B1', 'Gb1', 'Db1'],
    tuningIdx: 0,
    name: 0,
  },
];

export const getTuningsFor10StringsGuitar = () => [
  {
    label: 'Standard',
    display: 'EBGDAEBF#C#G#',
    strings: ['E4', 'B3', 'G3', 'D3', 'A2', 'E2', 'B1', 'Gb1', 'Db1', 'Ab0'],
    tuningIdx: 0,
    name: 0,
  },
];

export const getTuningsFor12StringsGuitar = () => [
  {
    label: 'Standard',
    display: 'EEBBGGDDAAEE',
    strings: ['E4', 'E4', 'B3', 'B3', 'G3', 'G4', 'D3', 'D4', 'A2', 'A3', 'E2', 'E3'],
    tuningIdx: 0,
    name: 0,
  },
];

export const getTuningsFor4StringsBass = () => [
  {
    label: 'Standard',
    display: 'GDAE',
    strings: ['G2', 'D2', 'A1', 'E1'],
    tuningIdx: 0,
    name: 0,
  },
];

export const getTuningsFor5StringsBass = () => [
  {
    label: 'Standard',
    display: 'CGDAE',
    strings: ['C3', 'G2', 'D2', 'A1', 'E1'],
    tuningIdx: 0,
    name: 0,
  },
];

export const getTuningsFor6StringsBass = () => [
  {
    label: 'Standard',
    display: 'CGDAEB',
    strings: ['C3', 'G2', 'D2', 'A1', 'E1', 'B0'],
    tuningIdx: 0,
    name: 0,
  },
];

export const getStringInstruments = () => [
  {
    label: 'Ukulele',
    numberOfStrings: 4,
    frets: 15,
    getTunings: getTuningsForUkulele,
    instrumentIdx: 0,
    name: 0,
  },
  {
    label: '6 Strings Guitar',
    numberOfStrings: 6,
    frets: 24,
    getTunings: getTuningsFor6StringsGuitar,
    instrumentIdx: 1,
    name: 1,
  },
  {
    label: '7 Strings Guitar',
    numberOfStrings: 7,
    frets: 24,
    getTunings: getTuningsFor7StringsGuitar,
    instrumentIdx: 2,
    name: 2,
  },
  {
    label: '8 Strings Guitar',
    numberOfStrings: 8,
    frets: 24,
    getTunings: getTuningsFor8StringsGuitar,
    instrumentIdx: 3,
    name: 3,
  },
  {
    label: '9 Strings Guitar',
    numberOfStrings: 9,
    frets: 24,
    getTunings: getTuningsFor9StringsGuitar,
    instrumentIdx: 4,
    name: 4,
  },
  {
    label: '10 Strings Guitar',
    numberOfStrings: 10,
    frets: 24,
    getTunings: getTuningsFor10StringsGuitar,
    instrumentIdx: 5,
    name: 5,
  },
  {
    label: '12 Strings Guitar',
    numberOfStrings: 12,
    frets: 24,
    getTunings: getTuningsFor12StringsGuitar,
    instrumentIdx: 6,
    name: 6,
  },
  {
    label: '4 Strings Bass',
    numberOfStrings: 4,
    frets: 24,
    getTunings: getTuningsFor4StringsBass,
    instrumentIdx: 7,
    name: 7,
  },
  {
    label: '5 Strings Bass',
    numberOfStrings: 5,
    frets: 24,
    getTunings: getTuningsFor5StringsBass,
    instrumentIdx: 8,
    name: 8,
  },
  {
    label: '6 Strings Bass',
    numberOfStrings: 6,
    frets: 24,
    getTunings: getTuningsFor6StringsBass,
    instrumentIdx: 9,
    name: 9,
  },
];

no error occured but the result is not expected

8 strings
9 strings
10 strings
12 strings

4 strings bass
5 strings bass
6 strings bass

thanks

@Dezzles
Copy link
Contributor

Dezzles commented Oct 6, 2020

I'm planning on adding some more instruments and tuning this week, will look at including this in the PR

@walmik
Copy link
Collaborator

walmik commented Oct 7, 2020

Thank you @Dezzles :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants