| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167 | 
//====================================================
//  Basque  - based on Base2
//====================================================
phoneme a
  vowel starttype #a endtype #a
  length 200
  FMT(vowel/a_4)
endphoneme
phoneme a2  // delete if the next vowel is 'a'. Used for numbers.
  vowel starttype #a endtype #a
  length 200
  IF nextPh(#a) THEN
    ChangePhoneme(NULL)   // merge consecutive 'a'
  ENDIF
  FMT(vowel/a_4)
endphoneme
phoneme e
  vowel starttype #e endtype #e
  length 200
  FMT(vowel/e_mid2)
endphoneme
phoneme i
  vowel starttype #i endtype #i
  length 190
  IfNextVowelAppend(;)
  FMT(vowel/i)
endphoneme
phoneme o
  vowel starttype #o endtype #o
  length 200
  FMT(vowel/oo)
endphoneme
phoneme u
  vowel starttype #u endtype #u
  length 200
  FMT(vowel/u_bck2)
endphoneme
phoneme Y
  vowel  starttype #@  endtype #@
  length 200
  FMT(vowel/y#)
endphoneme
phoneme s
  CALL es/s
  ipa s̺
endphoneme
phoneme z
  vls alv frc sibilant
  ipa s̻
  lengthmod 3
  Vowelin  f1=0  f2=1700 -300 300  f3=-100 80
  Vowelout f1=0  f2=1700 -300 250  f3=-100 80  rms=20  
  IF nextPh(isPause) THEN
    WAV(ufric/z_eu, 60)
  ENDIF
  WAV(ufric/z_eu, 90)
endphoneme
phoneme ts
  vls alv afr sibilant
  ipa ts̺
  lengthmod 2
  Vowelin f1=0  f2=1700 -300 300  f3=-100 80
  Vowelout f1=0 f2=1700 -300 250  f3=-100 80  rms=20
  IF nextPh(isPause2) THEN
    WAV(ufric/ts_eu, 60)
  ENDIF
  WAV(ufric/ts_eu, 90)
endphoneme
phoneme tz
  vls alv afr sibilant
  ipa ts̻
  lengthmod 2
  Vowelin f1=0  f2=1700 -300 300  f3=-100 80
  Vowelout f1=0 f2=1700 -300 250  f3=-100 80  rms=20
  IF nextPh(isPause2) THEN
    WAV(ufric/tz_eu, 90)
  ENDIF
  WAV(ufric/tz_eu, 60)
endphoneme
phoneme t
  vls dnt stop
  lengthmod 2  
  CALL base2/t
endphoneme
phoneme r
  vcd alv flp rhotic
  brkafter
  ipa ɾ
  lengthmod 3
  IF nextPhW(isVowel) THEN
    ChangePhoneme(**)
  ENDIF
  CALL base/*
endphoneme
phoneme b
  import_phoneme es/b
endphoneme
phoneme d
  import_phoneme es/d
endphoneme
phoneme g
  import_phoneme es/g
endphoneme
phoneme n
  vcd alv nasal
  lengthmod 4
  IF prevPhW(#i) AND nextPhW(isVowel) THEN
    ChangePhoneme(n^)
  ENDIF
  
  CALL base/n
endphoneme
phoneme n2  // doesn't palatalise, used for exceptions
  vcd alv nasal
  lengthmod 4
  CALL base/n
endphoneme
phoneme l
  liquid
  IF prevPhW(#i) AND nextPhW(isVowel) THEN
    ChangePhoneme(l^)
  ENDIF
  CALL base/l
endphoneme
phoneme l2 // same as n2
  liquid
  CALL base/l
endphoneme
 |