svlang
Beskrivning
svlang är ett kommandoradsverktyg för svensk språkgranskning i översättningsflöden. Det erbjuder ordkontroll, frekvensuppslag, skrivregler och heuristisk kontroll av hur naturlig en mening verkar. Verktyget ger snabb återkoppling, men ersätter inte språkgranskning i sitt sammanhang.
Funktioner
checkkontrollerar ord mot de medföljande svenska lexikonen och, när det finns, Hunspells svenska ordlista. PO-, JSON- och Fluent-kataloger granskas med måltexten utan nycklar, källtext eller platshållare.freqvisar förekomst i den uppskattade frekvenslistan.skrivreglerhittar vanliga formella skrivregelavvikelser.naturalger heuristiska signaler om formuleringar som kan behöva ses över.
Installation
Fedora/RHEL
sudo dnf config-manager addrepo --from-repofile=https://yeager.github.io/rpm-repo/yeager.repo
sudo dnf makecache
sudo dnf install svlang
Aktuell version
Version 0.2.23 innehåller
versionsanteckningar och den annoterade Git-taggen. Installera via pip eller
från källkod enligt anvisningarna nedan. APT- och RPM-kataloger kan ligga efter
den senaste GitHub-versionen.
pip
pip install svlang
Bygg från källkod
git clone https://github.com/yeager/svlang
cd svlang
pip install -e .
Användning
Kontrollera svensk text:
svlang check --file text.txt
Kontrollera svenska skrivregler:
svlang skrivregler --file file.txt
# Visa hela stilpolicyn och manuella granskningspunkter
svlang skrivregler --style-guide
Kontrollera språklig naturlighet (heuristik, inte en fullständig grammatikkontroll):
svlang natural --text "Det här är en svensk mening."
Visa hjälp och alla alternativ:
svlang --help
man svlang
Frekvens och stavningskontroll
check kontrollerar båda de medföljande svenska lexikonen innan ett ord som
saknas i frekvenslistan markeras. Om hunspell och dess sv_SE-ordlista är
installerade kontrolleras även böjda former där. Utan dem fungerar de
medföljande lexikonen fortfarande, men den morfologiska täckningen är mindre.
Frekvenslistan är en uppskattning byggd av vanliga ord och en ordlista, inte
uppmätta korpusfrekvenser. freq visar bara förekomst i den listan;
found: false betyder inte att ordet är felstavat. Frekvensförslag är råd och
gör inte ensamma att check avslutas med status 1.
Gemensam språkgranskning
Använd svlang tillsammans med l10n-lint,
hunspell-sv,
swedish-foss-terminology och
swedish-tm. Kör först katalog- och
platshållarkontroller, sedan stavning och skrivregler. Kontrollera därefter
varje varning mot källtext, gränssnittskontext och projektets terminologi.
skrivregler kontrollerar mekaniskt sådant som kan avgöras utan sammanhang:
komma omedelbart före och enligt projektets policy, mellanslag före svensk
skiljeteckning, svenska citattecken, utelämningstecknet …, mellanrum före
procenttecken, tusentalsgruppering, tankstreck i talintervall och tankstreck
i löpande svensk text. Använd normalt kolon, komma eller parentes i stället
för tankstreck. Behåll det bara när originalets syntax eller layout måste
bevaras och kontrollera då alltid källsträngen.
Stilpolicyn beskriver kontrollerna och de
regler som alltid måste granskas manuellt, exempelvis tilltal, betydelse,
register och tvetydiga termer. En text före | i en Crowdin-nyckel är
kontextmetadata och får inte läcka in i den synliga svenska översättningen.
Terminologikällor
För IT-terminologi använder svlangs projektriktlinjer Computer Swedens IT-ord som första referenskälla. För annan terminologi och allmän svenska används SAOL, SO och SAOB, TEPA, IATE, Rikstermbanken och ISOF:s vägledning om fackspråk och terminologi. De används som referenskällor. svlang samlar inte in eller återdistribuerar deras innehåll.
Utveckling
python -m pip install -e '.[dev]'
python -m pytest
Tester simulerar tillgänglig och otillgänglig Hunspell. Systemordlistor krävs inte för att köra sviten.
Översättning
Översättningar hanteras på Transifex: https://app.transifex.com/danielnylander/svlang/
Språk som stöds: svenska, danska, tyska, spanska, finska, franska, italienska, norskt bokmål, nederländska, polska och portugisiska (Brasilien)
Bidrag välkomnas!
Changelog
-
0.2.9: Tolkar den dokumenterade CLI-metavariabeln
?utan falsk interpunktionsvarning. -
0.2.8: Markerar tankstreck i löpande svensk text och dokumenterar när originalets struktur måste bevaras.
-
0.2.7: Lägger till den dokumenterade svenska stilpolicyn och typografikontroller.
-
0.2.6: Markerar felaktiga mellanslag vid skiljetecken och tre ASCII-punkter.
-
0.2.5: Markerar kommatecken omedelbart före
ochi svenska översättningar. -
0.2.2: Accepterar både
ivägochi vägi skrivregelkontroller enligt Svensk ordbok. -
0.2.1: Dokumenterar Computer Swedens IT-ord som första terminologikälla för IT-termer.
-
0.2.0: Stabil version med utökat stöd för svenska.
-
0.1.x: Första utveckling och grundläggande NLP-funktioner.
Licens
MIT
Upphovsperson
Daniel Nylander (daniel@danielnylander.se)
English reference
svlang is a command-line helper for Swedish localization review. Use check for
word-list and Hunspell-backed spelling signals, freq for frequency lookups,
skrivregler for mechanical style checks, and natural for heuristic wording
signals. PO, JSON, and Fluent catalogs are analyzed using target text only,
excluding keys, source text, and placeholders. Run svlang skrivregler --style-guide for the complete policy.
Use it with l10n-lint, hunspell-sv, swedish-foss-terminology and swedish-tm.
Automatic checks cover punctuation spacing, Swedish quotation marks,
percentages, digit grouping and numeric ranges. A single ellipsis character is
an optional typographic alternative to three dots. Commas before och and
dashes are assessed in context. Meaning, tone, register and context-specific
terminology remain manual review tasks. A Crowdin
prefix before | is metadata and must not appear in the visible Swedish translation.
Metadata
Release files for svlang 0.2.23
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| svlang-0.2.23.tar.gz | 1.0 MB | With provenance | Details for svlang-0.2.23.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| svlang-0.2.23-py3-none-any.whl | Python 3 | none | any | Details for svlang-0.2.23-py3-none-any.whl |
Total release size: 2.0 MB
Release files / svlang-0.2.23.tar.gz
| Download URL | svlang-0.2.23.tar.gz |
|---|---|
| Size | 1.0 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3dd5c83ad9a3b1d79629ad655d5dcd564d7e43f00df0aebdb3513d52430e51e9
|
|
BLAKE2b-256 checksum How to use checksums |
d1ed6d773bb952cda541b8c3f0708621302f77234fd64436f0fe1290d21280c4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.
Transparency logRelease files / svlang-0.2.23-py3-none-any.whl
| Download URL | svlang-0.2.23-py3-none-any.whl |
|---|---|
| Size | 1.0 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5fc719b88892bf46d54e1b00e06d52ec0b9195b6363565c13f0cf6f11d5d236b
|
|
BLAKE2b-256 checksum How to use checksums |
55411d69d4898a306d14bb12e2bae50bf51705cf9d754917c8309f4bf60c8d8d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.
Transparency logSecurity for svlang 0.2.23
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
Both files in this release have been uploaded with provenance metadata.
Attestation for svlang-0.2.23.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.