Prosesu treigladau gyda meddalwedd: Gwahaniaeth rhwng fersiynau
Oddi ar Hedyn
Dim crynodeb golygu |
|||
| Llinell 23: | Llinell 23: | ||
! Trwynol | ! Trwynol | ||
! Llais | ! Llais | ||
! H-bom | |||
|- | |- | ||
| p | | p | ||
| Llinell 68: | Llinell 69: | ||
| | | | ||
| | | | ||
|- | |||
| aeiouwy | |||
| | |||
| | |||
| | |||
| rhoi h arno! | |||
|} | |} | ||
== Y cod == | == Y cod == | ||
Fersiwn yn ôl 19:49, 5 Hydref 2012
Esboniad
Mae angen cod agored i adnabod treigladau. Bydd gymaint o bosibiliadau!
Dw i eisiau datblygu ategyn WordPress i ychwanegu treigladau cywir i chwilio. Ar hyn o bryd mae angen chwilio am 'Caer', 'Gaer', 'Nghaer' ar wahan. Gyda'r ategyn byddai modd chwilio am un ohnonyn nhw yn unig a derbyn canlyniadau gyda phob fersiwn.
Felly... os ydyn ni'n gallu sgwennu ffug-cod gyda'n gilydd byddai modd sgwennu'r ategyn a rhyddhau'r cod dan GPL.
Er mwyn cael prosiect haws:
- Efallai gwnawn ni ddechrau gyda'r fersiwn 'geiriadur' o'r gair yn unig - yn yr enghraifft mae pobl yn debygol i chwilio am 'Caer' yn hytrach nag unrhyw fersiwn arall.
- Anghofia gwrywaidd a benywaidd ar hyn o bryd (byddai angen rhestr o eiriau fel arall)
O'n i'n meddwl bod system gyda http://kevindonnelly.org.uk/ ond dw i'n methu ffeindio fe. Hefyd bydda'r broses datblygu yn hwyl! --Carlmorris (sgwrs) 20:20, 5 Hydref 2012 (BST)
Y treigladau
Llythyren Meddal Trwynol Llais H-bom p b mh ph t d nh th c g ngh ch b f m d dd n g /hwyl fawr g/ ng m f ll l rh r aeiouwy rhoi h arno!
Y cod
// cynhyrchu llinyn gyda phob fersiwn o'r gair
// e.e. mewnbwn Caer yn cael allbwn 'Caer NEU Gaer NEU Nghaer NEU Chaer'
llinyn cynhyrchu_treigladau(llinyn $gair)
{
llinyn $chwiliad = $gair;
os ydy'r llythyren gyntaf o'r $gair ar y tabl? {
// ydy felly mae'r gair yn gallu treiglo
cer trwy pob llythyren ar y tabl {
$chwiliad += 'NEU';
$chwiliad += cyfnewid_llythyren_gyntaf($gair); // parchu maint y llythyren (C yn newid i G, c yn newid i g)
}
$chwiliad = '(' + $chwiliad + ')';
}
fel arall {
// nac ydy felly dyw'r gair ddim yn dreiglo
// e.e. aderyn, Aberystwyth,
// byddai $chwiliad == $gair
}
dychwelyd $chwiliad;
}
llinyn chwilio(llinyn mewnbwn_chwiliad)
{
cer trwy pob $gair ym $mewnbwn_chwiliad
{
cyfnewid cynhyrchu_treigladau($gair) am $gair
}
}
