Bug 2559 - gramchk wants space between punct and paranthesis
Summary: gramchk wants space between punct and paranthesis
Status: RESOLVED FIXED
Alias: None
Product: Grammar checkers
Classification: Unclassified
Component: Linguistic issues (show other bugs)
Version: unspecified
Hardware: All All
: P2 - As soon as possible major
Assignee: Linda Wiechetek
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-03-18 11:04 CET by Thomas Omma
Modified: 2020-11-16 10:07 CET (History)
5 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas Omma 2019-03-18 11:04:21 CET
Lagasbirrasis lea aŋkke buoremus doarjjaásahus mii gávdno (bearaš, ustibat jna.)


suggestion: jna. )
Comment 1 Sjur Nørstebø Moshagen 2019-08-20 10:10:56 CEST
Analysen før grammatikkontrollen ser slik ut:

"<(>"
	"(" PUNCT LEFT <W:0.0>
"<bearaš>"
	"bearaš" N Sem/Group_Hum Sg Nom <W:0.0> @<SUBJ
"<,>"
	"," CLB <W:0.0>
: 
"<ustibat>"
	"ustit" N Sem/Hum Pl Nom <W:0.0>
: 
"<jna.>"
	"jna" Adv ABBR Gram/IAbbr <W:0.0> <NoSpaceAfterPunctMark> @<ADVL
"<)>"
	")" PUNCT RIGHT <W:0.0>

Eg prøvde å skriva ein SUBSTITUTE-regel som fjernar <NoSpaceAfterPunctMark> når det kjem ein parentes etterpå:

SUBSTITUTE:RemopveNoSpaceAfterPunctMark (<NoSpaceAfterPunctMark>) (*) TARGET ABBR IF (1 PUNCT-RIGHT );

Men han funkar ikkje, og eg forstår ikkje kvifor.

Kevin - har du idear til kva det kan vera? Eller korleis vi kan få vekk denne falske alarmen?
Comment 2 Kevin Brubeck Unhammer 2019-08-21 12:01:16 CEST
Er det ikkje like greitt å bruka vanlege conditions på ADD-regelen? 

ADD:no-space-after-punct      (&no-space-after-punct-mark)       TARGET (<NoSpaceAfterPunctMark>)
     IF (T:nextWordCrossSent) (NOT 1 (")")) ;

Eg sjekka inn ein fiks i r182212
Comment 3 Linda Wiechetek 2019-09-02 10:16:14 CEST
Enig med Kevin. Er problemet løst no og kan buggen avsluttes?
Comment 4 Sjur Nørstebø Moshagen 2019-09-02 10:41:12 CEST
Det krevst meir arbeid. Her er eit tilfelle som enno flaggar blått:

(okta áidna?)
Comment 5 Sjur Nørstebø Moshagen 2019-09-02 10:44:19 CEST
Og her er eit til:

(Bohtosat 4. ja 5. siiddus.)
Comment 6 Kevin Brubeck Unhammer 2019-09-02 11:38:27 CEST
"." og "?" er DELIMITERs, så må hoppa inn i neste setning før me kan sjekka at ordet etter ikkje er "?"

retta regelen til

ADD:no-space-after-punct      (&no-space-after-punct-mark)       
  TARGET (<NoSpaceAfterPunctMark>) 
  IF (T:nextWordCrossSent LINK NOT 0 no-space-after-punct-OK-before) ;

i r182491
Comment 7 Linda Wiechetek 2019-09-02 12:14:31 CEST
Ka må æ gjøre (svn up kor og kompilere kor) for å få de siste forandringan?
Comment 8 Linda Wiechetek 2019-09-02 12:33:59 CEST
(In reply to Kevin Brubeck Unhammer from comment #6)
> "." og "?" er DELIMITERs, så må hoppa inn i neste setning før me kan sjekka
> at ordet etter ikkje er "?"
> 
> retta regelen til
> 
> ADD:no-space-after-punct      (&no-space-after-punct-mark)       
>   TARGET (<NoSpaceAfterPunctMark>) 
>   IF (T:nextWordCrossSent LINK NOT 0 no-space-after-punct-OK-before) ;
> 
> i r182491

Kevin, intill videre jobber vi ikkje med grammarchecker.cg3 men med grammarchecker-release.cg3
Comment 9 Linda Wiechetek 2019-09-02 12:41:38 CEST
(In reply to Kevin Brubeck Unhammer from comment #6)
> "." og "?" er DELIMITERs, så må hoppa inn i neste setning før me kan sjekka
> at ordet etter ikkje er "?"
> 
> retta regelen til
> 
> ADD:no-space-after-punct      (&no-space-after-punct-mark)       
>   TARGET (<NoSpaceAfterPunctMark>) 
>   IF (T:nextWordCrossSent LINK NOT 0 no-space-after-punct-OK-before) ;
> 
> i r182491

Æ får enda:


"<(>"
        "(" PUNCT LEFT <W:0.0>
"<okta>"
        "okta" Num Sg Nom <W:0.0> @>N MAP:22201:r197
: 
"<áidna>"
        "áidna" Pron Indef Attr <W:0.0>
        "áidna" Pron Indef Nom <W:0.0>
;       "áidna" A Sem/Dummytag Attr <W:0.0> REMOVE:14821:r1788
"<?>"
        "?" CLB <W:0.0> <NoSpaceAfterPunctMark>

"<)>"
        ")" PUNCT RIGHT <W:0.0>
:
Comment 10 Sjur Nørstebø Moshagen 2019-09-06 21:48:13 CEST
Regelen funkar, og det blir ikkje lenger blåstrek under parentesen. Men det som ikkje funkar er at manglande mellomrom _etter_ parentesen ikkje lenger blir flagga:

Vuoigatvuođa Lávdegotti (SVL)čilgehus

Klarar vi å få til det? Utan å få problem på den andre sida av parentesen?
Comment 11 Linda Wiechetek 2019-09-11 14:48:34 CEST
(In reply to Sjur Nørstebø Moshagen from comment #10)
> Regelen funkar, og det blir ikkje lenger blåstrek under parentesen. Men det
> som ikkje funkar er at manglande mellomrom _etter_ parentesen ikkje lenger
> blir flagga:
> 
> Vuoigatvuođa Lávdegotti (SVL)čilgehus
> 
> Klarar vi å få til det? Utan å få problem på den andre sida av parentesen?

<NoSpaceAfterPunctMark> har forsvunnet... Er det blanktaggeren som annoterer den?
Comment 12 Sjur Nørstebø Moshagen 2019-09-11 15:30:56 CEST
(In reply to Linda Wiechetek from comment #11)
> (In reply to Sjur Nørstebø Moshagen from comment #10)
> > Regelen funkar, og det blir ikkje lenger blåstrek under parentesen. Men det
> > som ikkje funkar er at manglande mellomrom _etter_ parentesen ikkje lenger
> > blir flagga:
> > 
> > Vuoigatvuođa Lávdegotti (SVL)čilgehus
> > 
> > Klarar vi å få til det? Utan å få problem på den andre sida av parentesen?
> 
> <NoSpaceAfterPunctMark> har forsvunnet... Er det blanktaggeren som annoterer
> den?

Har ikkje forsvunne for meg, har du oppdatert og kompilert alt? Her er det eg får:

"<jna.>"
	"jna" Adv ABBR Gram/IAbbr <W:0.0> <NoSpaceAfterPunctMark> @<ADVL
"<)>"
	")" PUNCT RIGHT <W:0.0>
Comment 13 Linda Wiechetek 2019-09-11 16:49:05 CEST
Æ snakka om:

Vuoigatvuođa Lávdegotti (SVL)čilgehus



"<Lávdegotti>"
        "lávdegoddi" N Sem/Org Sg Gen <W:0.0> <cohort-with-dynamic-compound> ADD:20
44 MAP:22311:r230 @>N #2->2
;       "lávdegoddi" N Sem/Org Sg Acc <W:0.0> <cohort-with-dynamic-compound> ADD:20
44 REMOVE:18676:r2534
;       "goddi" N Sem/Ani Sg Acc <W:10.0> <cohort-with-dynamic-compound> ADD:2044
;               "lávdi" N Sem/Plc Cmp/SgNom Cmp <W:10.0> REMOVE:2700:longest-match
;       "goddi" N Sem/Ani Sg Gen <W:10.0> <cohort-with-dynamic-compound> ADD:2044
;               "lávdi" N Sem/Plc Cmp/SgNom Cmp <W:10.0> REMOVE:2700:longest-match
: 
"<(>"
        "(" PUNCT LEFT <W:0.0> #3->3
"<SVL>"
        "SVL" N <NomGenSg> Prop Sem/Org ACR Dyn Sg Nom <W:0.0> SUBSTITUTE:3309 MAP:
22647:r325 @HNOUN #4->4
        "SVL" N <NomGenSg> Prop Sem/Org ACR Sg Nom <W:0.0> SUBSTITUTE:3309 MAP:2264
7:r325 @HNOUN #4->4
;       "SVL" N <NomGenSg> Prop Sem/Org ACR Dyn Sg Acc <W:0.0> SUBSTITUTE:3309 REMO
VE:18676:r2534
;       "SVL" N <NomGenSg> Prop Sem/Org ACR Dyn Sg Gen <W:0.0> SUBSTITUTE:3309 REMO
VE:16396:r2025
;       "SVL" N <NomGenSg> Prop Sem/Org ACR Sg Acc <W:0.0> SUBSTITUTE:3309 REMOVE:1
8676:r2534
;       "SVL" N <NomGenSg> Prop Sem/Org ACR Sg Gen <W:0.0> SUBSTITUTE:3309 REMOVE:1
6396:r2025
"<)>"
        ")" PUNCT RIGHT <W:0.0> #5->5
"<čilgehus>"
        "čilgehit" <mv> V TV Imprt Sg3 <W:0.0> MAP:15865:r406 @+FMAINV #6->6 SUBSTI
TUTE:8377:SubV=mv
        "čilgehus" N Sem/Prod-ling Sg Nom <W:0.0> MAP:22634:HNOUN<spred2 @<SPRED #6
->6
;       "čilget" Ex/V TV Der/h V <RE-Ill-Ani><TH-ahte> <RE-Ill-Ani><TH-Acc-*Ani> <T
H-Acc-Any><TH-Inf> <TH-Acc-Any><TH-PrfPrc> <TH-Acc-Any><TH-AktioEss> <TH-ahte><RE-I
ll-Any> <TH-birra-Any> <TH-FS-Qpron> <TH-ahte> <TH-Acc-*Ani> Imprt Sg3 <W:0.0> SUBS
TITUTE:2497 SUBSTITUTE:2505 SUBSTITUTE:2536 SUBSTITUTE:2652 SUBSTITUTE:2672 SUBSTIT
UTE:2905 SUBSTITUTE:2910 SUBSTITUTE:2932 SUBSTITUTE:3477 SUBSTITUTE:3500 REMOVE:362
3:r548
"<.>"
Comment 14 Sjur Nørstebø Moshagen 2019-09-11 17:24:58 CEST
(In reply to Linda Wiechetek from comment #13)
> Æ snakka om:
> 
> Vuoigatvuođa Lávdegotti (SVL)čilgehus

Ah!

Det mangla regex-ar i tools/grammarcheckers/analyser-gt-errorwhitespace-desc.regex. Det er fiksa i svn rev 182916, og resultatet er no:

$ echo 'Vuoigatvuođa Lávdegotti(SVL)čilgehus' | modes/smegramrelease.mode
"<Vuoigatvuođa>"
	"vuoigatvuohta" N <TH-Inf> <TH-Ill-Any> Sem/Rule Sg Acc <W:0.0> @OBJ>
: 
"<Lávdegotti>"
	"lávdegoddi" N Sem/Org Sg Gen <W:0.0> <cohort-with-dynamic-compound> @>N
"<(>"
	"(" PUNCT LEFT <W:0.0> <NoSpaceBeforeParenBeg>
"<SVL>"
	"SVL" N <NomGenSg> Prop Sem/Org ACR Dyn Sg Nom <W:0.0> @HNOUN
	"SVL" N <NomGenSg> Prop Sem/Org ACR Sg Nom <W:0.0> @HNOUN
"<)>"
	")" PUNCT RIGHT <W:0.0> <NoSpaceAfterParenEnd>
"<čilgehus>"
	"čilgehit" V TV Imprt Sg3 <W:0.0> @+FMAINV
	"čilgehus" N Sem/Prod-ling Sg Nom <W:0.0> @<SPRED
:\n

Legg merke til dei nye taggane.
Comment 15 Sjur Nørstebø Moshagen 2019-09-11 17:35:05 CEST
Ver merksam på at <NoSpaceAfterParenEnd> ikkje alltid er feil, det er ok med punktum, komma, og ein del anna etter parentesslutt. Det som nesten alltid er feil er at det kjem eit nytt ord rett etterpå, utan mellomrom.

Det einaste unnataket eg kan koma på der er ord av typen (små)springa, der parentesen inneheld ein modifikator av det neste ordet, slik at det samansette ordet ein får ved å ta vekk parentessymbola er ok og passar inn i setninga.

Om dette unnataket er så viktig at vi skal bry oss er eg meir usikker på - det kan bli veldig fiklete å få til å analysera setninga slik at vi både melder feil når det er feil, og ikkje varslar når det ikkje er feil.
Comment 16 Linda Wiechetek 2019-09-11 17:55:29 CEST
(In reply to Sjur Nørstebø Moshagen from comment #15)
> Ver merksam på at <NoSpaceAfterParenEnd> ikkje alltid er feil, det er ok med
> punktum, komma, og ein del anna etter parentesslutt. Det som nesten alltid
> er feil er at det kjem eit nytt ord rett etterpå, utan mellomrom.
> 
> Det einaste unnataket eg kan koma på der er ord av typen (små)springa, der
> parentesen inneheld ein modifikator av det neste ordet, slik at det
> samansette ordet ein får ved å ta vekk parentessymbola er ok og passar inn i
> setninga.
> 
> Om dette unnataket er så viktig at vi skal bry oss er eg meir usikker på -
> det kan bli veldig fiklete å få til å analysera setninga slik at vi både
> melder feil når det er feil, og ikkje varslar når det ikkje er feil.

Added the following rule:


ADD:no-space-after-punct (&no-space-after-parent-end) TARGET (<NoSpaceAfterParenEnd>)(NEGATE 1 CLB OR PUNCT) ;
	## Vuoigatvuođa Lávdegotti(SVL)čilgehus.
	#$ Vuoigatvuođa Lávdegotti(SVL).


We probably need something in errors.source.xml too, do we?
Comment 17 Linda Wiechetek 2020-11-16 10:07:26 CET
Siden eksemplan her funker, dvs. det blir ingen feil, avslutter æ buggen.