123

Uwaga! Ta wi­try­na wy­ko­rzy­stu­je pli­ki cook­ies w ce­lu umoż­li­wie­nia dzia­ła­nia nie­któ­rych fun­kcji ser­wi­su (np. zmia­ny ko­lo­ru tła, wy­glą­du in­ter­fej­su, itp.) oraz w ce­lu zli­cza­nia li­czby odwie­dzin. Wię­cej in­for­ma­cji znaj­dziesz w Po­li­ty­ce pry­wat­no­ści. Ak­tual­nie Two­ja przeg­lą­dar­ka ma wy­łą­czo­ną ob­słu­gę pli­ków co­o­kies dla tej wi­try­ny. Ten ko­mu­ni­kat bę­dzie wy­świet­la­ny, do­pó­ki nie za­ak­cep­tu­jesz pli­ków cook­ies dla tej wi­try­ny w swo­jej przeg­lą­dar­ce. Ro­zu­miem, ak­cep­tu­ję pli­ki cook­ies!
:
/
o
[
]
Z
U

O dzie­le­niu wy­ra­zów na sy­la­by słów kil­ka

W Kom­bi (a w za­sa­dzie Kombi­Korze) znaj­dzie­my wbu­do­wa­ny sło­wnik or­to­gra­ficz­ny, któ­re­go je­dną z fun­kcjo­nal­no­ści jest moż­li­wość dzie­le­nia wy­ra­zów na sy­la­by. Czę­stym za­rzu­tem, któ­ry jest kie­ro­wa­ny w stro­nę te­go sło­wni­ka przez po­cząt­ku­ją­cych użyt­ko­wni­ków pa­kie­tu jest za­rzut do­ty­czą­cy właś­nie złe­go dzie­le­nia wy­ra­zów.

I tu ja­ko ko­ron­ne ar­gu­men­ty pa­da­ją przy­kła­do­we sło­wa „źle” po­dzie­lo­ne przez pro­gram, np.:
  • ode-jście
  • po­de-jrzli­wy
  • do-jrze­wać
  • itp.

Jak to jest? Czy te po­dzia­ły są rze­czy­wi­ście złe?

Sięg­nij­my do teo­rii – https://sjp.pwn.pl. W pun­kcie 54.1 mo­że­my prze­czy­tać, że w ję­zy­ku pol­skim obo­wią­zu­ją dwa kry­te­ria dzie­le­nia wy­ra­zów, tj.:
  1. Kry­te­rium fo­ne­tycz­ne ba­zu­ją­ce na po­dzia­le na sy­la­by.
  2. Kry­te­rium mor­fo­lo­gicz­ne, po­le­ga­ją­ce na za­sa­dzie dzie­le­nia wy­ra­zów w miej­scu po­łą­cze­nia przed­rost­ka i rdze­nia lub w miej­scu złą­cze­nia wy­ra­zów w wy­ra­zach łą­czo­nych.

W pun­kcie 54.4 z ko­lei mo­że­my prze­czy­tać, że kry­te­rium mor­fo­lo­gicz­ne jest nad­rzę­dnym wzglę­dem fo­ne­tycz­ne­go. Ty­le teo­ria.

Wróć­my wo­bec te­go do na­szych przy­kła­dów. Weź­my na po­czą­tek wy­raz iść. Jak wie­my w ję­zy­ku pol­skim ma­my je­de­na­ście wzor­ców od­mian cza­so­wni­ków i dwu­na­stą gru­pę – cza­so­wni­ki nie­re­gu­lar­ne. Tak się skła­da, że więk­szość po­pu­lar­nych cza­so­wni­ków – to właś­nie cza­so­wni­ki nie­re­gu­lar­ne (np.: być, jeść, mieć i właś­nie iść).

Ta nie­re­gu­lar­ność od­mia­ny po­le­ga m.in. na tym, że rdzeń wy­ra­zu zmie­nia się w róż­nych cza­sach. Np. w cza­sie przy­szłym po­wie­my wy­jdę, a w cza­sie prze­szłym wy­szed­łem.

Co jest przed­rost­kiem, a co rdze­niem w wy­ra­zie wy­szed­łem? Chy­ba nikt nie bę­dzie miał wąt­pli­wo­ści, że przed­rost­kiem jest wy, a rdze­niem szed­łem. Czy­li w cza­sie prze­szłym bę­dzie­my dzie­lić ten wy­raz tak:
  • wy-szed­łem
  • wy-szedł
  • wy-szła
I ana­lo­gicz­nie
  • do-szed­łem
  • do-szedł
  • do-szła
  • itd.

Do tej po­ry chy­ba wszys­cy czy­tel­ni­cy się zgo­dzą, że te po­dzia­ły są pra­wid­ło­we. Po­staw­my wo­bec te­go ko­lej­ne py­ta­nie – ja­ki jest bez­o­ko­licz­nik od wy­ra­zu wy­szedł? Bez­o­ko­licz­ni­kiem jest wyjść. Czy ten wy­raz mo­że­my po­dzie­lić na sy­la­by? Oczy­wi­ście nie – bo jest je­dno­sy­la­bo­wy (za­wie­ra je­dną samo­głos­kę). Ale – od bez­o­ko­licz­ni­ka wyjść – two­rzy­my tzw. rze­czo­wnik od­sło­wny wy­jście – i ten już mo­że być dzie­lo­ny.

Py­ta­nie jak? No cóż – tu nie­któ­rzy czy­tel­ni­cy mo­gą się zdzi­wić. Przed­rost­kiem na­dal jest wy (dla­cze­go mia­ło­by być ina­czej, sko­ro wy­jście po­cho­dzi od wyjść). Czy­li pra­wid­ło­we po­dzia­ły, to:
  • wy-jście
  • wy-jścia
  • itd.

Wiem, wiem – do­sta­łem cał­kiem spo­ro li­stów z uwa­ga­mi, że te po­dzia­ły są złe, że nikt tak nie dzie­li, że każ­dy ko­rek­tor to po­pra­wi na wyj-ście, itd. No cóż – za­cy­tu­ję wo­bec te­go frag­ment pun­ktu 54.4 z przy­to­czo­ne­go wy­żej od­noś­ni­ka:

UWAGA: Je­śli prze­jrzy­stość po­dzia­łu na przed­ro­stek i rdzeń w dzi­siej­szej świa­do­mo­ści ję­zy­ko­wej jest już za­tar­ta, moż­na gru­pę spół­gło­sek po­dzie­lić w za­sa­dzie do­wol­nie (por. 54.3.), np. o-dźwier­ny lub odź-wier­ny, o-bfi­ty lub ob-fi­ty, o-błok lub ob-łok, o-twór lub ot-wór.
Do­pu­ścić więc też mo­że­my dziś po­dział: obej-mo­wać, obej-rzeć, doj-rza­ły, uj-ście obok po­dzia­łu opar­te­go na za­sa­dzie mor­fo­lo­gicz­nej: obe-jmo­wać, obe-jrzeć, do-jrza­ły, u-jście.

Pod­su­mo­wu­jąc: po­dział wy-jście jest po­dzia­łem pra­wid­ło­wym opar­tym o kry­te­rium mor­fo­lo­gicz­ne (tak jak u-jście, ze-jście, ode-jście, po­de-jście, itd.). Po­dział wyj-ście jest po­dzia­łem do­pu­szczo­nym ze wzglę­du na za­cie­ra­ją­cą się świa­do­mość ję­zy­ko­wą.

Gdy­by­ście by­li kon­struk­to­ra­mi no­wej rze­czy i mie­li­by­ście do wy­bo­ru dwie dro­gi: wy­brać roz­wia­za­nie do­pu­szczal­ne, czy wy­brać roz­wia­za­nie pra­wid­ło­we – co by­ście wy­bra­li?

Tak też wy­bra­łem i ja :-). Wy­bra­łem roz­wią­za­nie pra­wid­ło­we i Kom­bi (Kombi­Kor) w stan­dar­do­wej kon­fi­gu­ra­cji dzie­li wy­ra­zy z uwzglę­dnie­niem nad­rzę­dno­ści kry­te­rium mor­fo­lo­gicz­ne­go.

Je­dnak że­by nie po­zo­sta­wać głu­chym na wnios­ki ra­cjo­na­li­za­tor­skie i po­zwo­lić na błę­dne dzie­le­nie – jest fur­tka :-).

Tak, je­śli ktoś ko­nie­cznie chce, to mo­że zre­zyg­no­wać z kry­te­rium mor­fo­lo­gicz­ne­go jak to opi­sa­no w no­cie tech­nicz­nej nr 14.

A oto peł­ny al­go­rytm dzie­le­nia wy­ra­zów w Kombi­Korze.

Ana­li­za­tor tek­stu wy­dzie­la ko­lej­ny wy­raz z tek­stu. Na­stęp­nie pro­gram spraw­dza, czy wy­raz ten za­wie­ra przy­naj­mniej ta­ką li­czbę li­ter jak za­dek­la­ro­wa­no w po­lu Mi­ni­mal­na li­czba li­ter wy­ra­zu dzie­lo­ne­go w ok­nie op­cji dzie­le­nia.

Da­lej spraw­dza­na jest op­cja Dziel wy­ra­zy pi­sa­ne ka­pi­ta­li­ka­mi (do­stęp­na w tym sa­mym ok­nie). Je­śli jest ona wy­łą­czo­na (co ozna­cza, że nie na­le­ży dzie­lić ta­kich wy­ra­zów) – pro­gram spraw­dza, czy wy­raz nie skła­da się z sa­mych wiel­kich li­ter. Je­śli tak jest to pro­gram prze­cho­dzi do na­stęp­ne­go wy­ra­zu. Op­cję tę sto­su­je­my np. wte­dy, gdy w tek­ście uży­wa­my ty­tu­łów pi­sa­nych ka­pi­ta­li­ka­mi i nie chce­my, aby ty­tu­ły te by­ły dzie­lo­ne.

KombiKor
Okno Opcji dzielenia w KombiKorze.

Ko­lej­ną spraw­dza­ną op­cją jest Nie dziel ostat­nie­go wy­ra­zu w aka­pi­cie. Je­śli jest ona ak­ty­wna, a po ana­li­zo­wa­nym wy­ra­zie nie ma już in­nych wy­ra­zów przed na­stęp­nym aka­pi­tem, to pro­gram nie dzie­li te­go wy­ra­zu.

Na­stęp­nie pro­gram spraw­dza, czy wy­raz znaj­du­je się w ba­zie słów, a je­że­li tak, to czy sło­wnik, w któ­rym wy­raz zo­stał zna­le­zio­ny ma włą­czo­ną op­cje Użyj do dzie­le­nia. Je­śli tak jest – pro­gram bu­du­je tab­li­cę po­dzia­łów dla wy­ra­zu.

Przy bu­do­wa­niu tej tab­li­cy naj­pierw uwzglę­dnia­ne są po­dzia­ły wska­za­ne przez użyt­ko­wni­ka (je­śli użyt­ko­wnik za­ka­zał dzie­le­nia wy­ra­zu, to pro­gram w tym miej­scu prze­cho­dzi do na­stęp­ne­go wy­ra­zu). W dru­giej ko­lej­no­ści (je­śli nie by­ło po­dzia­łów użyt­ko­wni­ka) pro­gram po­rów­nu­je po­czą­tek wy­ra­zu z li­stą przed­rost­ków do dzie­le­nia (li­stę tę moż­na edy­to­wać w ok­nie kon­fi­gu­ro­wa­nia mo­du­łu sło­wni­ko­we­go. Jeś­li po­czą­tek wy­ra­zu zo­sta­nie do­pa­so­wa­ny do je­dne­go z przed­rost­ków, pro­gram to za­pa­mię­tu­je i prze­cho­dzi do trze­cie­go eta­pu dzie­le­nia, czy­li do szu­ka­nia sy­lab.

Tu­taj pro­gram po­szu­ku­je samo­gło­sek (po­czy­na­jąc od na­stęp­nej li­te­ry po ewen­tual­nym po­dzia­le po przed­rost­ku) i wsta­wia po­dział mię­dzy dwie są­sie­dnie samo­głos­ki lub je­śli są prze­dzie­lo­ne je­dną spół­głos­ką – to po pier­wszej samo­głos­ce, lub je­śli wię­cej niż je­dną spół­głos­ką – to po pier­wszej spół­głos­ce (chyba, że roz­dzie­la­na pa­ra spół­gło­sek na­le­ży do zbio­ru nie roz­dzie­la­nych dwu­zna­ków, np. sz, cz, rz, itd. Li­stę tę mo­że­my zmie­niać w ok­nie kon­fi­gu­ro­wa­nia mo­du­łu sło­wni­ko­we­go). Etap al­go­ryt­micz­ne­go dzie­le­nia wy­ra­zów zna­le­zio­nych w sło­wni­ku jest po­mi­ja­ny, je­śli sło­wnik ma wy­łą­czo­ną op­cję Dziel al­go­ryt­micz­nie.

Jak już wspo­mnia­łem jest to na ra­zie tab­li­ca po­dzia­łów dla wy­ra­zu. Te­raz da­ne z tab­li­cy po­rów­ny­wa­ne są z op­cja­mi Mi­ni­mal­na li­czba li­ter przed pier­wszym po­dzia­łem oraz Mi­ni­mal­na li­czba li­ter po ostat­nim po­dzia­le. Obie war­to­ści mo­że­my zmie­niać w ok­nie op­cji dzie­le­nia. W tekst wsta­wia­ne są tyl­ko te war­to­ści z utwo­rzo­nej wcześ­niej tab­li­cy, któ­re speł­nia­ją wy­mie­nio­ne wcześ­niej wa­run­ki.

Je­śli wy­raz nie zo­stał zna­le­zio­ny w sło­wni­ku – spraw­dza­ny jest stan op­cji Dziel tyl­ko wy­ra­zy zna­le­zio­ne w sło­wni­ku. Je­śli op­cja jest wy­łą­czo­na, to pro­gram rea­li­zu­je wcześ­niej omó­wio­ny al­go­rytm po­czy­na­jąc od eta­pu po­szu­ki­wa­nia przed­rost­ków.

Po po­dzie­le­niu ca­łe­go tek­stu spraw­dza­ny jest stan op­cji Wstaw po­dzia­ły bez zna­ku. Po­dział bez zna­ku jest spe­cjal­nym po­dzia­łem, któ­ry sto­su­je­my np. w ta­kich cią­gach zna­ków, jak np.: C:\Kom­bi\Do­ku­men­ty\Mo­je\Test.kmd. W cią­gu tym do­zwo­lo­ne jest prze­nie­sie­nie po każ­dym zna­ku \, ale nie chce­my, aby po tym zna­ku po­ja­wił się znak prze­nie­sie­nia. Z dru­giej stro­ny, aby umoż­li­wić prze­nie­sie­nie mog­li­byś­my po tych zna­kach wsta­wić spa­cje, ale w przy­pad­ku nie­wy­ko­rzy­sta­nia ta­kie­go prze­nie­sie­nia wy­glą­da­ło­by to brzyd­ko. Po­dzia­ły bez zna­ku roz­wią­zu­ją ten prob­lem. W miej­scu wy­stą­pie­nia ta­kie­go po­dzia­łu wy­raz mo­że być prze­nie­sio­ny, ale znak po­dzia­łu nie jest przy tym po­ka­zy­wa­ny. Przy wsta­wia­niu tych po­dzia­łów pro­gram wy­ko­rzy­stu­je li­stę Po­dzia­ły bez zna­ku po zna­kach, któ­rą edy­tu­je­my w ok­nie kon­fi­gu­ro­wa­nia mo­du­łu sło­wni­ko­we­go.

Ostat­nim eta­pem dzie­le­nia tek­stu jest zna­le­zie­nie miejsc wy­stę­po­wa­nia łą­czni­ków (np. w po­łą­cze­niach ty­pu ma­te­ma­tycz­no-fi­zycz­ny) i wsta­wie­niu zna­ku po­dzia­łu przed każ­dy łą­cznik. Za­pe­wnia to gra­ficz­nie pra­wid­ło­wą po­stać po­dzie­le­nia ta­kie­go po­łą­cze­nia, któ­ra po­le­ga na wy­stę­po­wa­niu dwóch po­zio­mych kre­se­czek (dy­wi­zów), tj. na koń­cu wier­sza dzie­lo­ne­go i na po­cząt­ku na­stęp­ne­go. Wsta­wie­nie zna­ków po­dzia­łu przed łą­czni­ki uza­leż­nio­ne jest od włą­cze­nia op­cji Wstaw po­dzia­ły przed łą­czni­ki w ok­nie op­cji dzie­le­nia.

Dzie­le­nie od­by­wa się zaw­sze od miej­sca, w któ­rym znaj­du­je się kur­sor do koń­ca tek­stu, chy­ba że w tek­ście za­zna­czo­ny jest frag­ment – wte­dy dzie­lo­ny jest tyl­ko za­zna­czo­ny frag­ment tek­stu.

Omó­wio­ny wy­żej al­go­rytm dzie­le­nia rea­li­zo­wa­ny jest przez sam mo­duł dzie­lą­cy. Na eta­pie skła­du (już w pro­gra­mie Kom­bi) spraw­dza­ne są je­szcze in­ne wa­run­ki do­pu­szcza­ją­ce (lub nie) po­dzie­le­nie wy­ra­zu, np. moż­na za­bro­nić po­dzia­łu na gra­ni­cy ra­mek bądź też za­dać mak­sy­mal­ną li­czbę ko­lej­no dzie­lo­nych wier­szy.

Omó­wio­ny wy­żej mo­duł sło­wni­ko­wy mo­że ró­wnież po­dzie­lić na sy­la­by tekst przy­go­to­wy­wa­ny na stro­nę in­ter­ne­to­wą (co za­pe­wne za­u­wa­ży­łeś czy­ta­jąc ten tekst) :-) i wca­le nie mu­sisz do te­go ku­po­wać peł­ne­go pa­kie­tu Kom­bi. Tekst po­dzie­lisz na sy­la­by w Kombi­Korze, któ­re­go mo­żesz na­być ja­ko nie­za­leż­ny pro­gram.

Stefan Nawrocki, Koszalin, maj 2018

^


Komentarze: skomentuj tę stronę

Serwisy 3n

Logo Kombi
Logo Wirtualnej Galerii
Logo Internetowego Banku Fotografii
Logo Projektora K3D
W