kde-l10n/fi/messages/kde-extraapps/kdevformatters.po

536 lines
20 KiB
Text
Raw Normal View History

# Copyright © 2011, 2012 This_file_is_part_of_KDE
# This file is distributed under the same license as the kdevelop package.
# Lasse Liehu <lasse.liehu@gmail.com>, 2011, 2012, 2013, 2014.
#
# KDE Finnish translation sprint participants:
# Author: Lliehu
msgid ""
msgstr ""
"Project-Id-Version: kdevformatters\n"
"Report-Msgid-Bugs-To: http://bugs.kde.org\n"
"POT-Creation-Date: 2014-07-23 05:45+0000\n"
"PO-Revision-Date: 2014-11-08 01:01+0200\n"
"Last-Translator: Lasse Liehu <lasse.liehu@gmail.com>\n"
"Language-Team: Finnish <lokalisointi@lists.coss.fi>\n"
"Language: fi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-POT-Import-Date: 2012-12-01 22:20:30+0000\n"
"X-Generator: Lokalize 1.5\n"
msgctxt "NAME OF TRANSLATORS"
msgid "Your names"
msgstr "Lasse Liehu"
msgctxt "EMAIL OF TRANSLATORS"
msgid "Your emails"
msgstr "lasse.liehu@gmail.com"
#: astyle/astyle_plugin.cpp:37
msgid "Astyle Formatter"
msgstr "Astyle-muotoilija"
#: astyle/astyle_plugin.cpp:37
msgid "A formatting tool using astyle"
msgstr "astyle-ohjelmaa käyttävä muotoilutyökalu"
#: astyle/astyle_plugin.cpp:65
msgid ""
"<b>Artistic Style</b> is a source code indenter, formatter, and beautifier "
"for the C, C++, C# and Java programming languages.<br />Home Page: <a href="
"\"http://astyle.sourceforge.net/\">http://astyle.sourceforge.net</a>"
msgstr ""
"<b>Artistic Style</b> on lähdekoodin sisentäjä, muotoilija ja kaunistaja C-, "
"C++-, C#- ja Java-ohjelmointikielille.<br />Kotisivu: <a href=\"http://"
"astyle.sourceforge.net/\">http://astyle.sourceforge.net</a>"
#. i18n: ectx: attribute (title), widget (QWidget, tabIndentqtion)
#: astyle/astyle_preferences.ui:21
msgid "Indentation"
msgstr "Sisennys"
#. i18n: ectx: property (text), item, widget (KComboBox, cbIndentType)
#: astyle/astyle_preferences.ui:36
msgctxt "Indentation type"
msgid "Tabs"
msgstr "Sarkaimin"
#. i18n: ectx: property (text), item, widget (KComboBox, cbIndentType)
#: astyle/astyle_preferences.ui:41
msgctxt "Indentation type"
msgid "Force tabs"
msgstr "Pakotetuin sarkaimin"
#. i18n: ectx: property (text), item, widget (KComboBox, cbIndentType)
#: astyle/astyle_preferences.ui:46
msgctxt "Indentation type"
msgid "Spaces"
msgstr "Välilyönnein"
#. i18n: ectx: property (toolTip), widget (QSpinBox, inpNuberSpaces)
#: astyle/astyle_preferences.ui:74
msgid ""
"Number of spaces that will be converted to a tab.\n"
"The number of spaces per tab is controled by the editor."
msgstr ""
"Monenko välilehden ryhmä muunnetaan sarkaimeksi.\n"
"Muokkain hallitsee sitä, monenako välilyöntinä yksi sarkain näytetään."
#. i18n: ectx: property (toolTip), widget (QCheckBox, chkConvertTabs)
#: astyle/astyle_preferences.ui:92
msgid "Convert tabs to spaces."
msgstr "Muunna sarkaimet välilyönneiksi"
#. i18n: ectx: property (text), widget (QCheckBox, chkConvertTabs)
#: astyle/astyle_preferences.ui:95
msgid "Con&vert tabs into spaces"
msgstr "Muunna sarkaimet &välilyönneiksi"
#. i18n: ectx: property (toolTip), widget (QCheckBox, chkFillEmptyLines)
#: astyle/astyle_preferences.ui:102
msgid "Fill empty lines with the white space of their previous lines."
msgstr "Täytä tyhjät rivit edellisten rivien tyhjämerkeillä"
#. i18n: ectx: property (text), widget (QCheckBox, chkFillEmptyLines)
#: astyle/astyle_preferences.ui:105
msgid "Fill empt&y lines"
msgstr "Täytä t&yhjät rivit"
#. i18n: ectx: property (text), widget (QLabel, lblIndentObjects)
#: astyle/astyle_preferences.ui:127
msgid "Indent"
msgstr "Sisennä"
#. i18n: ectx: property (text), item, widget (KListWidget, listIdentObjects)
#. i18n: ectx: property (title), widget (QGroupBox, gpBlocks)
#: astyle/astyle_preferences.ui:144 astyle/astyle_preferences.ui:352
msgid "Blocks"
msgstr "Lohkot"
#. i18n: ectx: property (text), item, widget (KListWidget, listIdentObjects)
#. i18n: ectx: property (title), widget (QGroupBox, gpBrackets)
#: astyle/astyle_preferences.ui:149 astyle/astyle_preferences.ui:269
msgid "Brackets"
msgstr "Aaltosulkeet"
#. i18n: ectx: property (text), item, widget (KListWidget, listIdentObjects)
#: astyle/astyle_preferences.ui:154
msgid "Cases"
msgstr "Case-lohkot"
#. i18n: ectx: property (text), item, widget (KListWidget, listIdentObjects)
#: astyle/astyle_preferences.ui:159
msgid "Class"
msgstr "Luokka"
#. i18n: ectx: property (text), item, widget (KListWidget, listIdentObjects)
#: astyle/astyle_preferences.ui:164
msgid "Labels"
msgstr "Nimiöt"
#. i18n: ectx: property (text), item, widget (KListWidget, listIdentObjects)
#: astyle/astyle_preferences.ui:169
msgid "Namespaces"
msgstr "Nimiavaruudet"
#. i18n: ectx: property (text), item, widget (KListWidget, listIdentObjects)
#: astyle/astyle_preferences.ui:174
msgid "Preprocessor directives"
msgstr "Esikäsittelijän direktiivit"
#. i18n: ectx: property (text), item, widget (KListWidget, listIdentObjects)
#: astyle/astyle_preferences.ui:179
msgid "Switches"
msgstr "Switch-rakenteet"
#. i18n: ectx: property (toolTip), widget (QSpinBox, inpMaxStatement)
#. i18n: ectx: property (toolTip), widget (QLabel, TextLabel2_2)
#: astyle/astyle_preferences.ui:192 astyle/astyle_preferences.ui:234
msgid ""
"Indent a maximal # spaces in a continuous statement,\n"
"relative to the previous line."
msgstr ""
"Sisennä jatkuvaa lausetta enintään # välilyöntiä\n"
"suhteessa edellisen rivin sisennystasoon."
# Mikä on ”conditional header”
#. i18n: ectx: property (toolTip), widget (QLabel, TextLabel3_2)
#. i18n: ectx: property (toolTip), widget (QSpinBox, inpMinConditional)
#: astyle/astyle_preferences.ui:203 astyle/astyle_preferences.ui:217
msgid ""
"Indent a minimal # spaces in a continuous conditional\n"
"belonging to a conditional header."
msgstr ""
"Sisennä ehto-otsikkoon kuuluvaa jatkuvaa ehtoa\n"
"vähintään # välilyöntiä."
#. i18n: ectx: property (text), widget (QLabel, TextLabel3_2)
#: astyle/astyle_preferences.ui:206
msgid "Minimum in conditional:"
msgstr "Ehdoissa vähintään:"
#. i18n: ectx: property (specialValueText), widget (QSpinBox, inpMinConditional)
#: astyle/astyle_preferences.ui:220
msgid "Twice current"
msgstr "2 × nykyinen"
#. i18n: ectx: property (text), widget (QLabel, TextLabel2_2)
#: astyle/astyle_preferences.ui:237
msgid "Maximum in statement:"
msgstr "Lauseessa enintään:"
#. i18n: ectx: attribute (title), widget (QWidget, tabOther)
#. i18n: ectx: property (title), widget (QGroupBox, gpOther)
#: astyle/astyle_preferences.ui:263 astyle/astyle_preferences.ui:521
msgid "Other"
msgstr "Muuta"
#. i18n: ectx: property (text), widget (QLabel, lblBrackets)
#. i18n: ectx: property (text), item, widget (QComboBox, cbPointerAlign)
#: astyle/astyle_preferences.ui:283 astyle/astyle_preferences.ui:550
msgid "Type"
msgstr "Tyyppi"
#. i18n: ectx: property (toolTip), widget (QCheckBox, chkBracketsCloseHeaders)
#: astyle/astyle_preferences.ui:297
msgid ""
"Break brackets before closing headers (e.g. 'else', 'catch', ...)\n"
"from their immediately preceding closing brackets."
msgstr ""
"Lisää rivinvaihto juuri ennen päättäviä otsikoita (esim. ”else”,\n"
"”catch” jne.) olevien päättävien aaltosulkeiden perään."
#. i18n: ectx: property (text), widget (QCheckBox, chkBracketsCloseHeaders)
#: astyle/astyle_preferences.ui:300
msgid "Brea&k closing headers"
msgstr "Rivinvaihto ennen päättäviä otsikoita"
#. i18n: ectx: property (text), item, widget (KComboBox, cbBrackets)
#. i18n: ectx: property (text), item, widget (KComboBox, cbParenthesisPadding)
#. i18n: ectx: property (text), item, widget (QComboBox, cbPointerAlign)
#: astyle/astyle_preferences.ui:314 astyle/astyle_preferences.ui:426
#: astyle/astyle_preferences.ui:535
msgid "No change"
msgstr "Ei muutosta"
#. i18n: ectx: property (text), item, widget (KComboBox, cbBrackets)
#: astyle/astyle_preferences.ui:319
msgid "Attach"
msgstr "Liittäminen"
#. i18n: ectx: property (text), item, widget (KComboBox, cbBrackets)
#: astyle/astyle_preferences.ui:324
msgid "Break"
msgstr "Omalla rivillä"
#. i18n: ectx: property (text), item, widget (KComboBox, cbBrackets)
#: astyle/astyle_preferences.ui:329
msgid "Linux"
msgstr "Linux"
#. i18n: ectx: property (text), item, widget (KComboBox, cbBrackets)
#: astyle/astyle_preferences.ui:334
msgid "Stroustrup"
msgstr "Stroustrup"
#. i18n: ectx: property (text), item, widget (KComboBox, cbBrackets)
#: astyle/astyle_preferences.ui:339
msgid "Run-In"
msgstr "Lisäys"
#. i18n: ectx: property (toolTip), widget (QCheckBox, chkBlockBreak)
#: astyle/astyle_preferences.ui:367
msgid ""
"Insert empty lines around unrelated blocks, labels, classes,...\n"
"Known problems:\n"
"\n"
"1. If a statement is NOT part of a block, \n"
"the following statements are all double spaced. \n"
"Statements enclosed in a block are formatted \n"
"correctly.\n"
"\n"
"2. Comments are broken from the block.\n"
msgstr ""
"Lisää tyhjiä rivejä toisiinsa liittymättömien lohkojen, nimiöiden, luokkien, "
"… ympärille\n"
"Tunnetut ongelmat:\n"
"\n"
"1. Jos lause EI kuulu lohkoon, sitä seuraavat \n"
"lauseet sisennettään kaksinkertaisesti. \n"
"Lauseet lohkon sisällä muotoillaan oikein.\n"
"\n"
"2. Kommentit erotetaan lohkosta rivinvaihdolla.\n"
#. i18n: ectx: property (text), widget (QCheckBox, chkBlockBreak)
#: astyle/astyle_preferences.ui:370
msgctxt "Means break unrelated blocks by a newline"
msgid "&Break blocks"
msgstr "&Erota lohkot"
#. i18n: ectx: property (toolTip), widget (QCheckBox, chkBlockBreakAll)
#: astyle/astyle_preferences.ui:388
msgid ""
"Like --break-blocks, except also insert empty lines \n"
"around closing headers (e.g. 'else', 'catch', ...).\n"
"\n"
"Known problems:\n"
"\n"
"1. If a statement is NOT part of a block, \n"
"the following statements are all double spaced. \n"
"Statements enclosed in a block are formatted \n"
"correctly.\n"
"\n"
"2. Comments are broken from the block.\n"
msgstr ""
"Kuten --break-blocks paitsi että lisää tyhjiä rivejä myös päättävien "
"otsikoiden (esim. ”else”, ”catch”, …) ympärille.\n"
"\n"
"Tunnetut ongelmat:\n"
"\n"
"1. Jos lause EI kuulu lohkoon, sitä seuraavat \n"
"lauseet sisennettään kaksinkertaisesti. \n"
"Lauseet lohkon sisällä muotoillaan oikein.\n"
"\n"
"2. Kommentit erotetaan lohkosta rivinvaihdolla.\n"
#. i18n: ectx: property (text), widget (QCheckBox, chkBlockBreakAll)
#: astyle/astyle_preferences.ui:391
msgctxt "Means break all blocks with a newline"
msgid "Break all bl&ocks"
msgstr "E&rota kaikki lohkot"
#. i18n: ectx: property (toolTip), widget (QCheckBox, chkBlockIfElse)
#: astyle/astyle_preferences.ui:398
msgid "Break 'else if()' statements into two different lines."
msgstr "Jaa ”else if()” -lauseet kahdelle eri riville"
#. i18n: ectx: property (text), widget (QCheckBox, chkBlockIfElse)
#: astyle/astyle_preferences.ui:401
msgctxt "Means break else if() into separate lines"
msgid "Break i&f-else"
msgstr "Jaa i&f-else"
#. i18n: ectx: property (title), widget (QGroupBox, gpPadding)
#: astyle/astyle_preferences.ui:411
msgid "Padding"
msgstr "Täyte"
#. i18n: ectx: property (text), item, widget (KComboBox, cbParenthesisPadding)
#: astyle/astyle_preferences.ui:431
msgid "Unpad"
msgstr "Poista täyte"
#. i18n: ectx: property (text), item, widget (KComboBox, cbParenthesisPadding)
#: astyle/astyle_preferences.ui:436
msgid "Inside only"
msgstr "Vain sisäpuolella"
#. i18n: ectx: property (text), item, widget (KComboBox, cbParenthesisPadding)
#: astyle/astyle_preferences.ui:441
msgid "Outside only"
msgstr "Vain ulkopuolella"
#. i18n: ectx: property (text), item, widget (KComboBox, cbParenthesisPadding)
#: astyle/astyle_preferences.ui:446
msgid "Inside and outside"
msgstr "Sisä- ja ulkopuolella"
#. i18n: ectx: property (toolTip), widget (QCheckBox, chkPadOperators)
#: astyle/astyle_preferences.ui:456
msgid ""
"Insert space padding around operators.\n"
"Once padded, operators stay padded.\n"
"There is no unpad operator option."
msgstr ""
"Lisää välilyöntitäytettä operaattorien ympärille.\n"
"Kun täyte on lisätty, se pysyy operaattoreissa.\n"
"Operaattoreille ei ole täytteen poistovalintaa."
#. i18n: ectx: property (text), widget (QCheckBox, chkPadOperators)
#: astyle/astyle_preferences.ui:459
msgid "&Add spaces around operators"
msgstr "&Lisää välilyöntejä operaattorien ympärille"
#. i18n: ectx: property (text), widget (QLabel, lblParenthesis)
#: astyle/astyle_preferences.ui:466
msgid "Pad parenthesis"
msgstr "Sulkeiden täyte"
#. i18n: ectx: property (toolTip), widget (QCheckBox, chkPadParenthesisHeader)
#: astyle/astyle_preferences.ui:476
msgid ""
"Insert space padding after parenthesis headers (e.g. 'if', 'for', "
"'while', ...)"
msgstr ""
"Lisää välilyöntitäyte suljeotsikoiden perään (esim. ”if”, ”for”, ”while”, …)"
#. i18n: ectx: property (text), widget (QCheckBox, chkPadParenthesisHeader)
#: astyle/astyle_preferences.ui:479
msgid "Add spaces after parenthesis &headers"
msgstr "Lisää &välilyöntejä suljeotsikoiden perään"
#. i18n: ectx: property (title), widget (QGroupBox, gpOneLiners)
#: astyle/astyle_preferences.ui:491
msgid "One liners"
msgstr "Yksiriviset ilmaisut"
#. i18n: ectx: property (toolTip), widget (QCheckBox, chkKeepStatements)
#: astyle/astyle_preferences.ui:498
msgid ""
"Do not break lines containing multiple statements into\n"
"multiple single-statement lines."
msgstr ""
"Älä rivitä useista lauseista koostuvia rivejä useisiin\n"
"yksilauseisiin riveihin."
#. i18n: ectx: property (text), widget (QCheckBox, chkKeepStatements)
#: astyle/astyle_preferences.ui:501
msgid "&Keep one-line statements"
msgstr "&Säilytä yksiriviset lauseet"
#. i18n: ectx: property (toolTip), widget (QCheckBox, chkKeepBlocks)
#: astyle/astyle_preferences.ui:508
msgid "Do not break blocks residing completely on one line."
msgstr "Älä rivitä kokonaan yhdellä rivillä olevia lohkoja"
#. i18n: ectx: property (text), widget (QCheckBox, chkKeepBlocks)
#: astyle/astyle_preferences.ui:511
msgid "Keep o&ne-line blocks"
msgstr "Säilytä &yksiriviset lohkot"
#. i18n: ectx: property (text), widget (QLabel, lblPointerAlign)
#: astyle/astyle_preferences.ui:527
msgid "Pointer Alignment"
msgstr "Osoittimen tasaus"
#. i18n: ectx: property (text), item, widget (QComboBox, cbPointerAlign)
#: astyle/astyle_preferences.ui:540
msgid "Name"
msgstr "Nimi"
#. i18n: ectx: property (text), item, widget (QComboBox, cbPointerAlign)
#: astyle/astyle_preferences.ui:545
msgid "Middle"
msgstr "Keskellä"
#: customscript/customscript_plugin.cpp:50
msgid "Custom Script Formatter"
msgstr "Oma skriptimuotoilija"
#: customscript/customscript_plugin.cpp:50
msgid "A formatter using custom scripts"
msgstr "Omia skriptejä käyttävä muotoilija"
#: customscript/customscript_plugin.cpp:99
msgid ""
"<b>Indent and Format Source Code.</b><br />This plugin allows using powerful "
"external formatting tools that can be invoked through the command-line.<br /"
">For example, the <b>uncrustify</b>, <b>astyle</b> or <b>indent</b> "
"formatters can be used.<br />The advantage of command-line formatters is "
"that formatting configurations can be easily shared by all team members, "
"independent of their preferred IDE."
msgstr ""
"<b>Sisennä ja muotoile lähdekoodi.</b><br />Tämä liitännäinen voi käyttää "
"voimakkaita ulkoisia muotoilutyökaluja, joita voi kutsua komentoriviltä.<br /"
">Esimerkiksi <b>uncrustify</b>, <b>astyle</b> ja <b>indent</b> ovat "
"käytettävissä.<br />Komentorivimuotoilijoiden etu on, että ryhmän jäsenet "
"voivat jakaa muotoiluasetukset helposti, vaikka suosisivatkin eri IDE:jä."
#: customscript/customscript_plugin.cpp:242
msgid "Gnu Indent: GNU"
msgstr "Gnu Indent: GNU"
#: customscript/customscript_plugin.cpp:245
msgid "Gnu Indent: Kernighan & Ritchie"
msgstr "Gnu Indent: Kernighan & Ritchie"
#: customscript/customscript_plugin.cpp:248
msgid "Gnu Indent: Original Berkeley indent style"
msgstr "Gnu Indent: Alkuperäinen Berkeley-sisennystyyli"
#: customscript/customscript_plugin.cpp:254
msgid ""
"Description:<br /><b>kdev_format_source</b> is a script bundled with "
"KDevelop which allows using fine-grained formatting rules by placing meta-"
"files called <b>format_sources</b> into the file-system.<br /><br />Each "
"line of the <b>format_sources</b> files defines a list of wildcards followed "
"by a colon and the used formatting-command.<br /><br />The formatting-"
"command should use <b>$TMPFILE</b> to reference the temporary file to "
"reformat.<br /><br />Example:<br /><b>*.cpp *.h : myformatter $TMPFILE</"
"b><br />This will reformat all files ending with <b>.cpp</b> or <b>.h</b> "
"using the custom formatting script <b>myformatter</b>.<br /><br />Example: "
"<br /><b>subdir/* : uncrustify -l CPP -f $TMPFILE -c uncrustify.config -o "
"$TMPFILE</b> <br />This will reformat all files in subdirectory <b>subdir</"
"b> using the <b>uncrustify</b> tool with the config-file <b>uncrustify."
"config</b>."
msgstr ""
"Kuvaus:<br /><b>kdev_format_source</b> on KDevelopin mukana tuleva skripti, "
"jolla voi käyttää hienojakoisia muotoilusääntöjä sijoittamalla "
"<b>format_sources</b>-nimisiä metatiedostoja tiedostojärjestelmään.<br /"
"><br /> <b>format_sources</b>-tiedostojen joka rivi määrittelee "
"jokerimerkkiluettelon, jota seuraa kaksoispiste ja käytetty muotoilukomento."
"<br /><br />Muotoilukomennon tulisi viitata muotoiltavaan "
"väliaikaistiedostoon nimellä <b>$TMPFILE</b>.<br /><br />Esimerkki:<br /"
"><b>*.cpp *.h : myformatter $TMPFILE</b><br />Tämä muotoilee kaikki "
"tiedostot, joiden nimi päättyy <b>.cpp</b> tai <b>.h</b>, käyttäen omaa "
"muotoiluskriptiä <b>myformatter</b>.<br /><br />Esimerkki: <br /><b>subdir/"
"* : uncrustify -l CPP -f $TMPFILE -c uncrustify. config -o $TMPFILE</b> <br /"
">Tämä muotoilee kaikki tiedostot alihakemistossa <b>subdir</b>, käyttäen "
"<b>uncrustify</b>-työkalua asetustiedostolla <b>uncrustify.config</b>."
#: customscript/customscript_plugin.cpp:504
msgid "Command: "
msgstr "Komento: "
#: customscript/customscript_plugin.cpp:510
msgid ""
"<i>You can enter an arbitrary shell command.</i><br />The unformatted source-"
"code is reached to the command <br />through the standard input, and the "
"<br />formatted result is read from the standard output.<br /><br />If you "
"add <b>$TMPFILE</b> into the command, then <br />a temporary file is used "
"for transferring the code."
msgstr ""
"<i>Voit antaa mielivaltaisen komennon.</i><br />Komento saa muotoilemattoman "
"lähdekoodin<br />vakiosyötteen välityksellä, ja<br />muotoiltu tulos luetaan "
"vakiotulosteesta.<br /><br />Jos lisäät komentoon <b>$TMPFILE</b>,<br /"
">koodi siirretään väliaikaistiedoston välityksellä."
#: customscript/customscript_plugin.cpp:521
msgid "More Variables"
msgstr "Lisää muuttujia"
#: customscript/customscript_plugin.cpp:531
#, kde-format
msgid "Style: %1"
msgstr "Tyyli: %1"
# Hmm, mitähän ”the temporary file will be substituted into that position” tarkoittaa?
#: customscript/customscript_plugin.cpp:544
msgid ""
"<b>$TMPFILE</b> will be replaced with the path to a temporary file. <br /"
">The code will be written into the file, the temporary <br />file will be "
"substituted into that position, and the result <br />will be read out of "
"that file. <br /><br /><b>$FILE</b> will be replaced with the path of the "
"original file. <br />The contents of the file must not be modified, changes "
"are allowed <br />only in $TMPFILE.<br /><br /><b>${PROJECT_NAME}</b> will "
"be replaced by the path of <br />the currently open project with the "
"matching name."
msgstr ""
"<b>$TMPFILE</b> korvataan väliaikaistiedoston polulla. <br />Koodi "
"kirjoitetaan väliaikaistiedostoon, ja tulos<br />luetaan siitä tiedostosta. "
"<br /> <br /><b>$FILE</b> korvataan alkuperäisen tiedoston polulla. <br /> "
"Tiedoston sisältöä ei saa muuttaa. Muutoksia saa tehdä<br /> vain $TMPFILE-"
"tiedostoon.<br /><br /><b>${PROJECT_NAME}</b> korvataan polulla avoinna "
"olevan projektiin,<br />jossa tiedosto on."
#: customscript/customscript_plugin.cpp:556
msgid "Variable Replacements"
msgstr "Muuttujien korvaukset"
# Hmm, mitähän ”the temporary file will be substituted into that position” tarkoittaa?
#, fuzzy