Når en spesifiserer 'ROOT' for et ord, så blir rot-ordet matet tilbake i stavekontrollen for korrekturlesning. Men det samme skjer ikke ut til å skje med synonymer. Det bør vel gjøres? Jeg oppdaget problemet da jeg forsøkte å oppdatere listen over synonymer som fores til OOo, og fant en skrivefeil. Denne oppføringen for nb har 'lønsomt' som nok skulle vært 'lønnsomt':
WORD: drivverdig STATUS: + CLASS: Tillægsord CONJUGATION: Eintal HYPHENATION: driv=ver~dig SYNONYM: brukbart, lønsomt CORRECTION: drivverdig COMPOSITE-WORD: driv=verdig EDITOR: Håvard Korsvoll korsvoll@skulelinux.no DATE: 20060110
Men jeg fant ikke noe egen oppføring for 'lønsomt'. Jeg hadde ventet å finne noe ala dette, med 'ROOT' byttet ut med 'SYNONYM':
WORD: embete STATUS: ? COMMENT: Generated from a "ROOT" field. EDITOR: Petter Reinholdtsen pere@hungry.com DATE: 20060114
Er det mine forventninger som er gale?
Petter Reinholdtsen skrev:
Når en spesifiserer 'ROOT' for et ord, så blir rot-ordet matet tilbake i stavekontrollen for korrekturlesning. Men det samme skjer ikke ut til å skje med synonymer. Det bør vel gjøres?
Enig.
WORD: drivverdig STATUS: + CLASS: Tillægsord CONJUGATION: Eintal HYPHENATION: driv=ver~dig SYNONYM: brukbart, lønsomt
Men denne brug af »SYNONYM«-feltet er ikke god. Der er en grund til at vi både har »SYNONYMS«- and »SYNONYM«-felter. Entalsformen er kun beregnet til et enkelt synonym per post, så det du vil få ud af ovennævnte post er:
WORD: brukbart, lønsomt STATUS: ? COMMENT: Generated from a "SYNONYM" field. EDITOR: Petter Reinholdtsen pere@hungry.com DATE: 20060114
Da tilsvarende brug af »SYNONYMS«- og »ANTONYMS«-felterne kræver at vi bliver enige om skilletegnene for alle de sprog der bruger systemet, har jeg ikke gjort noget ved dem. »SYNONYM«- og »ANTONYM«-felterne bliver behandlet ligesom »ROOT«-feltet i den nye udgave af speling.org-pakken (som jeg lige har installeret på Tyge).
Er det mine forventninger som er gale?
Ikke helt.
Jacob
[Jacob Sparre Andersen]
Men denne brug af »SYNONYM«-feltet er ikke god. Der er en grund til at vi både har »SYNONYMS«- and »SYNONYM«-felter. Entalsformen er kun beregnet til et enkelt synonym per post, så det du vil få ud af ovennævnte post er:
Javel. Hva er grunnen til at du har to felter der kun ett felt og en spesifikasjon av skilletegn mellom flere ord vil holde?
SYNONYMS er i følge URL:http://da.speling.org/dokumentation/filformat utgått og en skal bruke SYNONYM i stedet, og det synes jeg gir mening da det jo er svært enkelt å skrive spesifikasjon og programvare til å støtte flere ord i synonymfeltet.
Jeg vil mye heller ha _et_ feltnavn og en klar spesifikasjon enn to feltnavn som behandles ulikt men begge inneholder synonymer.
Da tilsvarende brug af »SYNONYMS«- og »ANTONYMS«-felterne kræver at vi bliver enige om skilletegnene for alle de sprog der bruger systemet, har jeg ikke gjort noget ved dem.
Hvorfor er det vanskelig? F.eks. , eller ; bør fungere utmerket, og avvik får så håndteres pr. språk. Jeg vet ikke om noen språk som har komma som del av ord, og jeg kjenner til ~60 språk som brukes av debians debconf og der har komma som feltseparator i oversettelser.
Petter Reinholdtsen skrev:
[Jacob Sparre Andersen]
Men denne brug af »SYNONYM«-feltet er ikke god. Der er en grund til at vi både har »SYNONYMS«- and »SYNONYM«-felter. Entalsformen er kun beregnet til et enkelt synonym per post, så det du vil få ud af ovennævnte post er:
Javel. Hva er grunnen til at du har to felter der kun ett felt og en spesifikasjon av skilletegn mellom flere ord vil holde?
1) At det er enklere at processere felter der kun indeholder et ord.
2) At vi ikke lige kunne beslutte os for et skilletegn vi ville synes om at pådutte alle sprog.
SYNONYMS er i følge URL:http://da.speling.org/dokumentation/filformat utgått og en skal bruke SYNONYM i stedet, og det synes jeg gir mening da det jo er svært enkelt å skrive spesifikasjon og programvare til å støtte flere ord i synonymfeltet.
Netop.
Jeg vil mye heller ha _et_ feltnavn og en klar spesifikasjon enn to feltnavn som behandles ulikt men begge inneholder synonymer.
Enig. Men nu bruger vi desværre et format der ikke har været helt statisk. (Endnu en grund til at jeg får taget mig sammen til at gøre en ny og lidt mere gennemtænkt udgave af formatet færdig.)
Da tilsvarende brug af »SYNONYMS«- og »ANTONYMS«-felterne kræver at vi bliver enige om skilletegnene for alle de sprog der bruger systemet, har jeg ikke gjort noget ved dem.
Hvorfor er det vanskelig? F.eks. , eller ; bør fungere utmerket, og avvik får så håndteres pr. språk. Jeg vet ikke om noen språk som har komma som del av ord, og jeg kjenner til ~60 språk som brukes av debians debconf og der har komma som feltseparator i oversettelser.
Du kender mere til flere sprog end jeg gør. Og vi bruger vist allerede officielt komma (,) i »CATEGORY«-feltet, så det er nok et logisk valg.
Men vi kan også bare blive enige om at udfase »ANTONYMS«- og »SYNONYMS«-felterne helt. Det kræver kun en mindre ændring af nogle af programmerne i speling.org-pakken, en rettelse af vores procmail-filtre og en enkelt konvertering af »ANTONYMS«- og »SYNONYMS«-felter i ordlistekildeteksterne.
Jacob
[Jacob Sparre Andersen]
Men vi kan også bare blive enige om at udfase »ANTONYMS«- og »SYNONYMS«-felterne helt. Det kræver kun en mindre ændring af nogle af programmerne i speling.org-pakken, en rettelse af vores procmail-filtre og en enkelt konvertering af »ANTONYMS«- og »SYNONYMS«-felter i ordlistekildeteksterne.
Jeg er enig. Skal vi sette igang? Den viktigste aktiviteten for å fase ut ANTONYMs og SYNONYMS er å oppdatere feltbeskrivelsen, slik at vi har en spesifikasjon å sammenligne implementasjonene med. :)
Hva med å skrive om procmail-filtrene til å sende mailen til et program som kan pakke ut MIME-formattert mail og håndtere ulike tegnsett i stedet for enkel linjebasert uthenting?
Både perl og python skulle fungere utmerket.
Jeg har forresten oppdatert speling-extract-synonyms litt, til å unngå noen duplikater og å begrense seg til ord som står i orddatabasen. Her er ny utgave. Hvor legger du din kopi? Jeg kunne ønske meg at din kopi er autorativ, men fant den ikke i tarballen fra speling.
#!/usr/bin/perl # # Author: Petter Reinholdtsen # Date: 2005-12-02 # License: GNU Public License # # speling-extract-synonyms extract synonyms usable for OOo from the # raw data files produced by www.speling.org software. # # Usage: # echo abcdefghijklmnopqrstuvwxyzæøåABCDEFGHIJKLMNOPQRSTUVWXYZÆØÅ- > thesaurus-ll.txt # speling-extract-synonyms < source >> thesaurus-ll.txt # thescoder thesaurus-ll.txt ll_CC
use warnings; use strict;
# The difference between approvals and rejections need to be higher # than this value. my $acceptlimit = 0;
my $debug = 0;
my %synonym; my %words;
my $word; while (<>) { chomp; $word = $1 if /^WORD: (.+)$/;
if (/^STATUS: +$/) { $words{$word}++; } elsif (/^STATUS: -$/) { $words{$word}--; } if (defined $word && /^SYNONYMS?: (.+)$/) { my @synonyms = split(/\s*,\s*/, $1); if (exists $synonym{$word}) { print "Adding @synonyms\n" if $debug; push @{$synonym{$word}}, @synonyms; } else { print "Inserting @synonyms\n" if $debug; @{$synonym{$word}} = @synonyms; } } }
for $word (sort keys %synonym) { my $lastsynonym = ""; my $symlist = ""; for my $synonym (sort @{$synonym{$word}}) { # Do not accept the word ifself as a synonym next if ($word eq $synonym); # Only accept words with more accepts than rejects $symlist .= "; $synonym" if ($synonym ne $lastsynonym && exists $words{$synonym} && $acceptlimit < $words{$synonym}); $lastsynonym = $synonym; } print "$word$symlist\n" if $symlist; }