Sunday 17 April 2016

Counting syllables in Cornish text

I have mentioned here before and at my website a little about Natural Language Processing tools I have created in Python.

One of these seeks to divide a Cornish text into syllables. The actual code is at my Bitbucket account.
I have recently adapted the sylabellen_ranna.py script to have a mode where it counts the number of syllables in each line, using a '--line' switch at the command line, rather than detail each syllable of each word as the script normally does.

Here it is, applied to the "Creation of the World (Gwreans an Bys)", a Cornish text dating from 1611.

The KDL Kernewek Kemmyn version available at www.howlsedhes.co.uk/kerneweg was used, which I stripped down, removing things like line numbers and comments. My stripped down version is here: http://taklowkernewek.neocities.org/cw_strip.txt.

Here are the first couple of stanzas:

 Ego sum Alpha et Omega.
 Heb dalleth na diwedhva
 pur wir my yw,
 omma a-ji dhe'n kloudys,
 war fas an dowr yn sertan,
 tri ferson yn unn dywses
 ow kesreynya bys vykken
 yn meur enor ha vertu.
 My ha'w Mab ha'n Spyrys Sans,
 tri yth on yn unn substans,
 komprehendys yn unn Dyw.


 My yw henwys Dyw an Tas,
 ollgalloesek dres pub tra.
 Skon y fydh gwrys der ow ras
 nev, plas rial dhe'm trigva,
 ha'w thron-sedha ow bodh yw
 may fo henna.
 Ha'n nor ynwedh a-woeles
 skon orth kompas a vydh gwrys.
 Honna a vydh ow skavell droes
 rag ow plesour pup-prys,
 ha dhe'm enor maga ta.
 Nev omma yw gwrys genev,
 orth ow dywses yn sertan.
 Hag ynni y fydh gorrys
 neb a'm gordh gans joy ha kan.
 Naw ordyr eledh gloryus
 i a vydh, rial ha splann,
 kannasow dhymm dannvenys
 rag ow servya bys vykken.
 My a vynn may fons nevra.


The result for the text above is:
Linenn 1
Ego:2  sum:1  Alpha:1  et:1  Omega:3 
Niver a sylabellenow yn linenn = 8

Linenn 2
Heb:1  dalleth:2  na:1  diwedhva:3 
Niver a sylabellenow yn linenn = 7

Linenn 3
pur:1  wir:1  my:1  yw:1 
Niver a sylabellenow yn linenn = 4

Linenn 4
omma:2  a-ji:2  dhen:1  kloudys:2 
Niver a sylabellenow yn linenn = 7

Linenn 5
war:1  fas:1  an:1  dowr:1  yn:1  sertan:2 
Niver a sylabellenow yn linenn = 7

Linenn 6
tri:1  ferson:2  yn:1  unn:1  dywses:2 
Niver a sylabellenow yn linenn = 7

Linenn 7
ow:1  kesreynya:3  bys:1  vykken:2 
Niver a sylabellenow yn linenn = 7

Linenn 8
yn:1  meur:1  enor:2  ha:1  vertu:2 
Niver a sylabellenow yn linenn = 7

Linenn 9
My:1  haw:1  Mab:1  han:1  Spyrys:2  Sans:1 
Niver a sylabellenow yn linenn = 7

Linenn 10
tri:1  yth:1  on:1  yn:1  unn:1  substans:2 
Niver a sylabellenow yn linenn = 7

Linenn 11
komprehendys:4  yn:1  unn:1  Dyw:1 
Niver a sylabellenow yn linenn = 7

Linenn 12

Niver a sylabellenow yn linenn = 0

Linenn 13

Niver a sylabellenow yn linenn = 0

Linenn 14
My:1  yw:1  henwys:2  Dyw:1  an:1  Tas:1 
Niver a sylabellenow yn linenn = 7

Linenn 15
ollgalloesek:4  dres:1  pub:1  tra:1 
Niver a sylabellenow yn linenn = 7

Linenn 16
Skon:1  y:1  fydh:1  gwrys:1  der:1  ow:1  ras:1 
Niver a sylabellenow yn linenn = 7

Linenn 17
nev:1  plas:1  rial:2  dhe:1  m:0  trigva:2 
Niver a sylabellenow yn linenn = 7

Linenn 18
haw:1  thron-sedha:3  ow:1  bodh:1  yw:1 
Niver a sylabellenow yn linenn = 7

Linenn 19
may:1  fo:1  henna:2 
Niver a sylabellenow yn linenn = 4

Linenn 20
Han:1  nor:1  ynwedh:2  a-woeles:3 
Niver a sylabellenow yn linenn = 7

Linenn 21
skon:1  orth:1  kompas:2  a:1  vydh:1  gwrys:1 
Niver a sylabellenow yn linenn = 7

Linenn 22
Honna:2  a:1  vydh:1  ow:1  skavell:2  droes:1 
Niver a sylabellenow yn linenn = 8

Linenn 23
rag:1  ow:1  plesour:2  pup-prys:2 
Niver a sylabellenow yn linenn = 6

Linenn 24
ha:1  dhe:1  m:0  enor:2  maga:2  ta:1 
Niver a sylabellenow yn linenn = 7

Linenn 25
Nev:1  omma:2  yw:1  gwrys:1  genev:2 
Niver a sylabellenow yn linenn = 7

Linenn 26
orth:1  ow:1  dywses:2  yn:1  sertan:2 
Niver a sylabellenow yn linenn = 7

Linenn 27
Hag:1  ynni:2  y:1  fydh:1  gorrys:2 
Niver a sylabellenow yn linenn = 7

Linenn 28
neb:1  a:1  m:0  gordh:1  gans:1  joy:1  ha:1  kan:1 
Niver a sylabellenow yn linenn = 7

Linenn 29
Naw:1  ordyr:2  eledh:2  gloryus:2 
Niver a sylabellenow yn linenn = 7

Linenn 30
i:1  a:1  vydh:1  rial:2  ha:1  splann:1 
Niver a sylabellenow yn linenn = 7

Linenn 31
kannasow:3  dhymm:1  dannvenys:3 
Niver a sylabellenow yn linenn = 7

Linenn 32
rag:1  ow:1  servya:2  bys:1  vykken:2 
Niver a sylabellenow yn linenn = 7

Linenn 33
My:1  a:1  vynn:1  may:1  fons:1  nevra:2 
Niver a sylabellenow yn linenn = 7



The results for the full text can be found at http://taklowkernewek.neocities.org/GwreansAnBys_syllablecountbyline.txt.

No comments:

Post a Comment