From e7feb1e4d90f2b10673e039e2c98b8cfcbe761a3 Mon Sep 17 00:00:00 2001 From: Pierre Ratinaud Date: Mon, 1 Dec 2014 12:17:43 +0100 Subject: [PATCH] translation --- ProfList.py | 2 +- iramuteq_en.po | 1081 ++++++++++++++++++++++++-- iramuteq_fr_FR.po | 1407 ++++++++++++++++++++++++++++++++-- layout.py | 34 +- locale/es_ES/LC_MESSAGES/iramuteq.mo | Bin 378 -> 378 bytes locale/fr_FR/LC_MESSAGES/iramuteq.mo | Bin 15825 -> 21095 bytes locale/it_IT/LC_MESSAGES/iramuteq.mo | Bin 378 -> 378 bytes locale/pt_PT/LC_MESSAGES/iramuteq.mo | Bin 15986 -> 15666 bytes tree.py | 6 +- 9 files changed, 2379 insertions(+), 151 deletions(-) diff --git a/ProfList.py b/ProfList.py index a85c23a..9e25a4b 100644 --- a/ProfList.py +++ b/ProfList.py @@ -751,7 +751,7 @@ class ProfListctrlPanel(wx.ListCtrl, listmix.ListCtrlAutoWidthMixin, listmix.Col rep.sort(key = itemgetter(1), reverse = True) #win = message(self, u"Formes associées", wx.Size(300, 200)) items = dict([[i, '\t:\t'.join([str(val) for val in forme])] for i, forme in enumerate(rep)]) - win = message(self, items, _(u"Associated Forms").decode('utf8'), (300, 200)) + win = message(self, items, _(u"Associated forms").decode('utf8'), (300, 200)) #win.html = '\n' + '
'.join([' : '.join([str(val) for val in forme]) for forme in rep]) + '\n' #win.HtmlPage.SetPage(win.html) win.Show(True) diff --git a/iramuteq_en.po b/iramuteq_en.po index a26e13f..9ac4937 100644 --- a/iramuteq_en.po +++ b/iramuteq_en.po @@ -3,126 +3,1057 @@ # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # +#, fuzzy msgid "" msgstr "" -"Project-Id-Version: iramuteq 0.6 alpha 1\n" +"Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-02-01 19:26+0100\n" -"PO-Revision-Date: 2013-02-02 09:23+0100\n" -"Last-Translator: Pierre Ratinaud \n" -"Language-Team: LANGUAGE \n" +"POT-Creation-Date: 2014-09-11 16:30+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Poedit-Language: English\n" -"X-Poedit-Country: UNITED KINGDOM\n" -#: iramuteq.py:268 +#: layout.py:507 +msgid "3D graph" +msgstr "" + +#: iramuteq.py:279 +msgid "About..." +msgstr "" + +#: dialog.py:1692 dialog.py:1693 +msgid "Absent form" +msgstr "" + +#: dialog.py:1336 +msgid "Actives variables (almost 3)" +msgstr "" + +#: dialog.py:1873 +msgid "Add cluster size" +msgstr "" + +#: layout.py:336 tree.py:433 tree.py:638 +msgid "Antiprofiles" +msgstr "" + +#: layout.py:133 +msgid "Are you sure ?" +msgstr "" + +#: dialog.py:952 dialog.py:1029 +msgid "Attention" +msgstr "" + +#: dialog.py:574 +msgid "Avoid overlay" +msgstr "" + +#: dialog.py:2083 +msgid "Background color" +msgstr "" + +#: dialog.py:1247 +msgid "Be carefull : computation of repeated segments profiles can be very long on large corpus" +msgstr "" + +#: layout.py:487 layout.py:514 +msgid "CA" +msgstr "" + +#: dialog.py:2345 +msgid "Change ..." +msgstr "" + +#: dialog.py:1215 +msgid "Characteristic text segments" +msgstr "" + +#: dialog.py:82 dialog.py:2284 dialog.py:2645 +msgid "Characters set" +msgstr "" + +#: dialog.py:393 +msgid "Check" +msgstr "" + +#: dialog.py:354 +msgid "" +"Check for new \n" +"releases at startup" +msgstr "" + +#: dialog.py:383 +msgid "" +"Check installation \n" +"of R packages" +msgstr "" + +#: dialog.py:1481 iramuteq.py:246 +msgid "Chi2" +msgstr "" + +#: dialog.py:1728 +msgid "Choice" +msgstr "" + +#: guifunct.py:27 +msgid "Choose a file" +msgstr "" + +#: dialog.py:2490 +msgid "Choose a folder" +msgstr "" + +#: dialog.py:2463 +msgid "Cleaning" +msgstr "" + +#: layout.py:382 layout.py:479 +msgid "Cluster" +msgstr "" + +#: dialog.py:1308 iramuteq.py:251 iramuteq.py:272 layout.py:519 +#: OptionAlceste.py:29 tree.py:394 +msgid "Clustering" +msgstr "" + +#: tree.py:441 tree.py:620 tree.py:629 +msgid "Clusters statistics" +msgstr "" + +#: dialog.py:1856 +msgid "Color or black and white" +msgstr "" + +#: tree.py:439 tree.py:593 +msgid "Colored corpus" +msgstr "" + +#: dialog.py:63 dialog.py:64 dialog.py:68 +msgid "Column separator" +msgstr "" + +#: guifunct.py:337 +msgid "Communities" +msgstr "" + +#: tree.py:462 +msgid "Compute Tgen" +msgstr "" + +#: dialog.py:2277 +msgid "Corpus' name" +msgstr "" + +#: dialog.py:2312 +msgid "Default" +msgstr "" + +#: dialog.py:440 +msgid "Default R mirror" +msgstr "" + +#: OptionAlceste.py:52 +msgid "Default values" +msgstr "" + +#: dialog.py:2409 +msgid "Delete characters not in this list" +msgstr "" + +#: tree.py:473 +msgid "Delete from history" +msgstr "" + +#: dialog.py:1797 +msgid "Dendrogram" +msgstr "" + +#: dialog.py:1841 +msgid "Dendrogram type" +msgstr "" + +#: dialog.py:2302 +msgid "Dictionary" +msgstr "" + +#: tree.py:607 +msgid "Done" +msgstr "" + +#: guifunct.py:610 +msgid "Edges color" +msgstr "" + +#: guifunct.py:275 +msgid "Edges threshold" +msgstr "" + +#: guifunct.py:510 +msgid "Edges width proportional to score" +msgstr "" + +#: iramuteq.py:283 msgid "Edition" -msgstr "Edition" +msgstr "" -#: iramuteq.py:226 +#: iramuteq.py:234 msgid "Exit" -msgstr "Exit" +msgstr "" + +#: tree.py:443 +msgid "Export Clusters" +msgstr "" -#: iramuteq.py:214 +#: tree.py:438 +msgid "Export corpus" +msgstr "" + +#: tree.py:455 +msgid "Export dictionary" +msgstr "" + +#: dialog.py:2915 +msgid "Export finished. Open in a web browser :" +msgstr "" + +#: dialog.py:924 +msgid "Export for ..." +msgstr "" + +#: tree.py:456 +msgid "Export lemma dictionary" +msgstr "" + +#: iramuteq.py:219 msgid "Extract mods" -msgstr "Extract mods" +msgstr "" + +#: iramuteq.py:220 +msgid "Extract thematics" +msgstr "" + +#: dialog.py:2676 +msgid "Extraction type" +msgstr "" -#: iramuteq.py:267 +#: layout.py:496 +msgid "Factor" +msgstr "" + +#: dialog.py:590 +msgid "Factor x : " +msgstr "" + +#: dialog.py:592 +msgid "Factor y : " +msgstr "" + +#: dialog.py:594 +msgid "Factor z : " +msgstr "" + +#: iramuteq.py:282 msgid "File" -msgstr "File" +msgstr "" -#: iramuteq.py:272 +#: guifunct.py:51 guifunct.py:62 guifunct.py:73 +msgid "File format" +msgstr "" + +#: dialog.py:53 dialog.py:54 dialog.py:58 +msgid "First column is an id" +msgstr "" + +#: dialog.py:43 dialog.py:44 dialog.py:48 +msgid "First line is header" +msgstr "" + +#: iramuteq.py:245 +msgid "Frequencies" +msgstr "" + +#: dialog.py:2395 +msgid "General" +msgstr "" + +#: guifunct.py:375 +msgid "Graph settings" +msgstr "" + +#: dialog.py:544 guifunct.py:239 +msgid "Graphic type" +msgstr "" + +#: guifunct.py:683 +msgid "Graphical settings" +msgstr "" + +#: guifunct.py:549 +msgid "Gray scale on text proportional to frequency (0=black, 1=white)" +msgstr "" + +#: iramuteq.py:287 msgid "Help" -msgstr "Help" +msgstr "" -#: iramuteq.py:232 +#: iramuteq.py:240 msgid "Home page" -msgstr "Home page" +msgstr "" + +#: iramuteq.py:213 +msgid "Import from TXM" +msgstr "" -#: iramuteq.py:210 +#: iramuteq.py:211 msgid "Import from factiva" -msgstr "Import from factiva" +msgstr "" + +#: tree.py:384 +msgid "Informations" +msgstr "" + +#: dialog.py:369 +msgid "Interface language" +msgstr "" + +#: dialog.py:2445 +msgid "Keep punctuation" +msgstr "" + +#: dialog.py:2293 +msgid "Language" +msgstr "" + +#: guifunct.py:224 +msgid "Layout" +msgstr "" + +#: dialog.py:919 dialog.py:1255 +msgid "Lemmatised corpus" +msgstr "" + +#: iramuteq.py:1131 +msgid "License GNU GPL" +msgstr "" + +#: dialog.py:972 +msgid "Like ALCESTE" +msgstr "" + +#: dialog.py:972 +msgid "Like Lexico" +msgstr "" + +#: dialog.py:2826 +msgid "Limit frequency" +msgstr "" + +#: dialog.py:570 +msgid "Limit points by cluster chi2" +msgstr "" + +#: dialog.py:2846 +msgid "Limit rank" +msgstr "" + +#: layout.py:72 +msgid "List of not plotted points : " +msgstr "" + +#: dialog.py:599 guifunct.py:660 +msgid "Make a movie" +msgstr "" + +#: dialog.py:2367 +msgid "Make text segments" +msgstr "" + +#: iramuteq.py:285 iramuteq.py:446 iramuteq.py:635 iramuteq.py:697 +#: iramuteq.py:700 +msgid "Matrix analysis" +msgstr "" + +#: dialog.py:400 +msgid "" +"Maximum \n" +"memory for R" +msgstr "" + +#: OptionAlceste.py:43 +msgid "Maximum number of analyzed forms" +msgstr "" + +#: dialog.py:2003 +msgid "Maximum number of forms" +msgstr "" + +#: dialog.py:1224 +msgid "Maximum number of text segments" +msgstr "" + +#: guifunct.py:262 +msgid "Maximum tree" +msgstr "" + +#: dialog.py:1273 +msgid "Maxmum size of segments" +msgstr "" + +#: dialog.py:1739 dialog.py:2866 +msgid "Minimum frequency" +msgstr "" + +#: OptionAlceste.py:40 +msgid "Minimum frequency of an analyzed form (2=automatic)" +msgstr "" + +#: dialog.py:1281 +msgid "Minimum frequency of segments" +msgstr "" + +#: OptionAlceste.py:37 +msgid "Minimum frequency of text segments by clusters (0=automatic)" +msgstr "" + +#: dialog.py:1265 +msgid "Minimum size of segments" +msgstr "" + +#: dialog.py:1371 +msgid "Minimum text segments frenquency in clusters (2= automatic)" +msgstr "" + +#: dialog.py:2667 +msgid "Modalities (one by line, with the *)" +msgstr "" + +#: iramuteq.py:328 tree.py:440 +msgid "Navigator" +msgstr "" + +#: dialog.py:1354 dialog.py:1582 +msgid "Next" +msgstr "" + +#: corpus.py:1431 +msgid "No Text in corpus. Are you sure of the formatting ?" +msgstr "" + +#: dialog.py:2452 +msgid "No space between two forms" +msgstr "" + +#: dialog.py:1361 OptionAlceste.py:35 +msgid "Number of terminal clusters on phase 1" +msgstr "" + +#: dialog.py:2680 +msgid "One file by modality" +msgstr "" + +#: iramuteq.py:280 +msgid "Online help..." +msgstr "" + +#: dialog.py:2680 +msgid "Only one file" +msgstr "" -#: corpus.py:1147 -msgid "No Text in corpora. Are you sure of the formatting ?" -msgstr "No Text in corpora. Are you sure of the formatting ?" +#: tree.py:434 tree.py:469 +msgid "Open ..." +msgstr "" -#: iramuteq.py:190 +#: iramuteq.py:191 msgid "Open a matrix" -msgstr "Open a matrix" +msgstr "" -#: iramuteq.py:194 -msgid "Open a text corpora" -msgstr "Open a text corpora" +#: iramuteq.py:195 +msgid "Open a text corpus" +msgstr "" -#: iramuteq.py:198 +#: iramuteq.py:199 msgid "Open an analysis" -msgstr "Open an analysis" +msgstr "" + +#: tree.py:607 +msgid "Open in a web browser ?" +msgstr "" + +#: dialog.py:2320 +msgid "Other" +msgstr "" + +#: dialog.py:930 dialog.py:976 dialog.py:1007 parse_factiva_xml.py:94 +msgid "Output file" +msgstr "" + +#: dialog.py:2332 +msgid "Output folder" +msgstr "" + +#: tree.py:437 +msgid "POS profiles" +msgstr "" + +#: dialog.py:1080 dialog.py:2273 +msgid "Path" +msgstr "" + +#: dialog.py:428 dialog.py:437 +msgid "Path : " +msgstr "" -#: iramuteq.py:229 +#: dialog.py:550 dialog.py:1978 guifunct.py:247 +msgid "Picture format" +msgstr "" + +#: dialog.py:1805 guifunct.py:385 +msgid "Picture size" +msgstr "" + +#: dialog.py:341 +msgid "Play a sound at the end of analysis" +msgstr "" + +#: iramuteq.py:602 tree.py:712 tree.py:1010 +msgid "Please wait..." +msgstr "" + +#: tree.py:495 +msgid "Please wait...Reading corpus" +msgstr "" + +#: OptionAlceste.py:47 +msgid "Potato mode (less precise, faster)" +msgstr "" + +#: iramuteq.py:237 msgid "Preferences" -msgstr "Preferences" +msgstr "" -#: iramuteq.py:222 -msgid "Save tab as..." -msgstr "Save tab as..." +#: dialog.py:1357 dialog.py:1581 +msgid "Previous" +msgstr "" + +#: layout.py:510 +msgid "Profiles" +msgstr "" -#: iramuteq.py:233 +#: iramuteq.py:254 +msgid "Prototypical Analysis" +msgstr "" + +#: dialog.py:2401 +msgid "Put text in lowercase" +msgstr "" + +#: dialog.py:432 +msgid "R path" +msgstr "" + +#: dialog.py:1220 +msgid "Ranking score" +msgstr "" + +#: dialog.py:2803 +msgid "Ranks" +msgstr "" + +#: layout.py:375 +msgid "Reading profiles" +msgstr "" + +#: tree.py:392 +msgid "Reinert method" +msgstr "" + +#: iramuteq.py:249 iramuteq.py:270 +msgid "Reinert's Method" +msgstr "" + +#: tree.py:385 +msgid "Rename" +msgstr "" + +#: dialog.py:1243 layout.py:516 tree.py:436 +msgid "Repeated segments profiles" +msgstr "" + +#: dialog.py:2429 +msgid "Replace apostrophe by space" +msgstr "" + +#: dialog.py:2437 +msgid "Replace dash by space" +msgstr "" + +#: tree.py:442 tree.py:647 tree.py:657 +msgid "Report" +msgstr "" + +#: dialog.py:556 +msgid "Representation" +msgstr "" + +#: dialog.py:1521 +msgid "Results" +msgstr "" + +#: dialog.py:2605 +msgid "Save as ..." +msgstr "" + +#: dialog.py:1736 guifunct.py:209 +msgid "Score" +msgstr "" + +#: guifunct.py:309 +msgid "Score on edges" +msgstr "" + +#: tree.py:616 +msgid "Search ..." +msgstr "" + +#: parse_factiva_xml.py:89 +msgid "Select a directory of txt files" +msgstr "" + +#: parse_factiva_xml.py:87 +msgid "Select a directory of xml files" +msgstr "" + +#: dialog.py:2323 dialog.py:2640 +msgid "Select a file" +msgstr "" + +#: guifunct.py:356 +msgid "Select a variable" +msgstr "" + +#: dialog.py:1726 +msgid "Select by" +msgstr "" + +#: tabsimi.py:97 +msgid "Select columns" +msgstr "" + +#: dialog.py:2782 +msgid "Selection" +msgstr "" + +#: dialog.py:330 dialog.py:469 dialog.py:970 dialog.py:2120 dialog.py:2250 +#: dialog.py:2789 guifunct.py:160 OptionAlceste.py:63 +msgid "Settings" +msgstr "" + +#: iramuteq.py:241 msgid "Show data" -msgstr "Show data" +msgstr "" -#: iramuteq.py:234 +#: iramuteq.py:242 msgid "Show results" -msgstr "Show results" +msgstr "" -#: iramuteq.py:213 +#: iramuteq.py:253 iramuteq.py:273 +msgid "Similarities Analysis" +msgstr "" + +#: tree.py:395 +msgid "Similarities analysis" +msgstr "" + +#: OptionAlceste.py:31 +msgid "Size of rst1" +msgstr "" + +#: OptionAlceste.py:33 +msgid "Size of rst2" +msgstr "" + +#: iramuteq.py:267 tree.py:390 +msgid "Specificities and CA" +msgstr "" + +#: dialog.py:596 guifunct.py:647 +msgid "Spheres transparency" +msgstr "" + +#: iramuteq.py:218 tree.py:417 msgid "Split from variable" -msgstr "Split from variable" - -#: iramuteq.py:270 -#: iramuteq.py:427 -#: iramuteq.py:636 -#: tableau.py:185 -msgid "Spreadsheet analysis" -msgstr "Spreadsheet analysis" - -#: iramuteq.py:271 -#: iramuteq.py:428 -#: iramuteq.py:635 -#: openanalyse.py:116 -#: openanalyse.py:119 -#: openanalyse.py:122 -#: openanalyse.py:125 -#: openanalyse.py:128 -#: openanalyse.py:131 -#: tableau.py:186 +msgstr "" + +#: tree.py:418 +msgid "Split matrix" +msgstr "" + +#: layout.py:544 +msgid "Stat by cluster" +msgstr "" + +#: iramuteq.py:266 tree.py:389 +msgid "Statistics" +msgstr "" + +#: tree.py:398 +msgid "Sub corpus from metadata" +msgstr "" + +#: tree.py:399 +msgid "Sub corpus from thematic" +msgstr "" + +#: tree.py:400 +msgid "Subcorpus" +msgstr "" + +#: dialog.py:1340 +msgid "Supplementaries variables (almost 1)" +msgstr "" + +#: dialog.py:1327 +msgid "Supplementary variables are marked with a *" +msgstr "" + +#: dialog.py:562 +msgid "Take the x first points" +msgstr "" + +#: dialog.py:566 +msgid "Take the x first points by cluster" +msgstr "" + +#: iramuteq.py:286 iramuteq.py:447 iramuteq.py:634 iramuteq.py:696 +#: iramuteq.py:699 openanalyse.py:152 openanalyse.py:155 openanalyse.py:158 +#: openanalyse.py:161 openanalyse.py:164 openanalyse.py:167 msgid "Text analysis" -msgstr "Text analysis" +msgstr "" -#: iramuteq.py:219 +#: dialog.py:2072 +msgid "Text color" +msgstr "" + +#: dialog.py:2350 +msgid "Text mark" +msgstr "" + +#: guifunct.py:296 +msgid "Text on vertex" +msgstr "" + +#: dialog.py:2375 +msgid "Text segments build process" +msgstr "" + +#: dialog.py:2384 +msgid "Text segments size" +msgstr "" + +#: dialog.py:73 dialog.py:74 dialog.py:78 +msgid "Text separator" +msgstr "" + +#: dialog.py:560 dialog.py:2032 guifunct.py:322 +msgid "Text size" +msgstr "" + +#: dialog.py:583 +msgid "Text size proportional to chi2" +msgstr "" + +#: dialog.py:576 +msgid "Text size proportional to frequency" +msgstr "" + +#: tree.py:461 +msgid "Tgen Editor" +msgstr "" + +#: dialog.py:952 dialog.py:1029 +msgid "This file already exists. Continue anyway ?" +msgstr "" + +#: layout.py:133 +msgid "This file will be delete : " +msgstr "" + +#: iramuteq.py:227 msgid "Tools" -msgstr "Tools" +msgstr "" + +#: guifunct.py:196 +msgid "Use previous coordinates" +msgstr "" + +#: dialog.py:420 +msgid "Use svdlibc" +msgstr "" + +#: dialog.py:2359 +msgid "Use the expression dictionary" +msgstr "" + +#: dialog.py:1721 dialog.py:2017 +msgid "Used forms" +msgstr "" + +#: dialog.py:2799 +msgid "Variables" +msgstr "" + +#: dialog.py:2657 +msgid "Variables (with the * but without the _)" +msgstr "" + +#: dialog.py:1748 +msgid "Variables choice" +msgstr "" + +#: dialog.py:2217 +msgid "Variables selection" +msgstr "" + +#: guifunct.py:598 +msgid "Vertex color" +msgstr "" + +#: guifunct.py:626 +msgid "Vertex size" +msgstr "" + +#: guifunct.py:416 +msgid "Vertex size proportional to frequency" +msgstr "" + +#: guifunct.py:463 +msgid "Vertex text size proportional to frequency" +msgstr "" -#: iramuteq.py:269 -#: iramuteq.py:426 -#: iramuteq.py:564 -#: iramuteq.py:634 -#: tableau.py:184 +#: iramuteq.py:284 iramuteq.py:445 iramuteq.py:574 iramuteq.py:633 msgid "View" -msgstr "View" +msgstr "" -#: iramuteq.py:206 +#: dialog.py:1988 +msgid "Word size proportional to ..." +msgstr "" + +#: iramuteq.py:275 +msgid "WordCloud" +msgstr "" + +#: tree.py:396 +msgid "Wordcloud" +msgstr "" + +#: dialog.py:1927 +msgid "Wordcloud settings" +msgstr "" + +#: dialog.py:1222 +msgid "absolute (sum of chi2 of marked forms in segment)" +msgstr "" + +#: dialog.py:559 dialog.py:1722 dialog.py:2021 +msgid "actives" +msgstr "" + +#: dialog.py:1722 dialog.py:2021 +msgid "actives and supplementaries" +msgstr "" + +#: OptionAlceste.py:32 +msgid "actives forms" +msgstr "" + +#: tree.py:468 +msgid "antiprofiles" +msgstr "" + +#: dialog.py:2832 dialog.py:2852 +msgid "automatic (mean)" +msgstr "" + +#: dialog.py:1883 +msgid "bar" +msgstr "" + +#: dialog.py:1860 +msgid "black and white" +msgstr "" + +#: dialog.py:2154 +msgid "black and white graphical" +msgstr "" + +#: dialog.py:2257 +msgid "characters" +msgstr "" + +#: dialog.py:1733 dialog.py:1735 dialog.py:1992 +msgid "chi2" +msgstr "" + +#: dialog.py:1883 +msgid "circular diagram" +msgstr "" + +#: dialog.py:1481 +msgid "cluster" +msgstr "" + +#: dialog.py:559 dialog.py:873 +msgid "clusters" +msgstr "" + +#: dialog.py:1860 +msgid "color" +msgstr "" + +#: dialog.py:2148 +msgid "column percentage" +msgstr "" + +#: dialog.py:557 +msgid "coordinates" +msgstr "" + +#: dialog.py:2269 dialog.py:2636 +msgid "corpus" +msgstr "" + +#: dialog.py:557 +msgid "correlations" +msgstr "" + +#: OptionAlceste.py:30 +msgid "double on RST" +msgstr "" + +#: dialog.py:2132 +msgid "expected values" +msgstr "" + +#: dialog.py:1481 +msgid "form" +msgstr "" + +#: dialog.py:1992 +msgid "frequency" +msgstr "" + +#: iramuteq.py:207 msgid "from copy/paste" -msgstr "from copy/paste" +msgstr "" -#: iramuteq.py:205 +#: iramuteq.py:206 msgid "from mail" -msgstr "from mail" +msgstr "" -#: iramuteq.py:204 +#: iramuteq.py:205 msgid "from xml" -msgstr "from xml" +msgstr "" + +#: dialog.py:2151 +msgid "graphical" +msgstr "" + +#: dialog.py:554 dialog.py:1813 dialog.py:1950 guifunct.py:393 +msgid "height" +msgstr "" + +#: dialog.py:1733 +msgid "hypergeometrical law" +msgstr "" + +#: dialog.py:2832 dialog.py:2852 +msgid "manual" +msgstr "" + +#: dialog.py:1727 +msgid "modalities" +msgstr "" + +#: dialog.py:46 dialog.py:56 dialog.py:349 dialog.py:364 dialog.py:921 +#: dialog.py:1259 dialog.py:1331 +msgid "no" +msgstr "" + +#: dialog.py:2129 +msgid "observed values" +msgstr "" + +#: dialog.py:2257 +msgid "occurrences" +msgstr "" +#: dialog.py:2257 +msgid "paragraphs" +msgstr "" + +#: dialog.py:1222 +msgid "relative (mean of chi2 of marked forms in segment)" +msgstr "" + +#: dialog.py:2135 +msgid "residuals" +msgstr "" + +#: dialog.py:2145 +msgid "row percentage" +msgstr "" + +#: dialog.py:1481 +msgid "see" +msgstr "" + +#: OptionAlceste.py:30 +msgid "simple on text segments" +msgstr "" + +#: OptionAlceste.py:30 +msgid "simple on texts" +msgstr "" + +#: dialog.py:2138 +msgid "standardized residuals" +msgstr "" + +#: dialog.py:559 +msgid "stars" +msgstr "" + +#: dialog.py:559 dialog.py:1722 dialog.py:2021 +msgid "supplementaries" +msgstr "" + +#: OptionAlceste.py:45 +msgid "svd method" +msgstr "" + +#: dialog.py:2686 +msgid "thematics (one by line, with the -*)" +msgstr "" + +#: dialog.py:2142 +msgid "total percentage" +msgstr "" + +#: dialog.py:1727 +msgid "variables" +msgstr "" + +#: dialog.py:552 dialog.py:1824 dialog.py:1962 guifunct.py:400 +msgid "width" +msgstr "" + +#: dialog.py:46 dialog.py:56 dialog.py:349 dialog.py:364 dialog.py:921 +#: dialog.py:1259 dialog.py:1331 +msgid "yes" +msgstr "" diff --git a/iramuteq_fr_FR.po b/iramuteq_fr_FR.po index 5389ccd..4b1a0a0 100644 --- a/iramuteq_fr_FR.po +++ b/iramuteq_fr_FR.po @@ -1,133 +1,1430 @@ # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# +# Pierre Ratinaud , 2014. msgid "" msgstr "" "Project-Id-Version: iramuteq 0.6 alpha 1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-02-01 19:26+0100\n" -"PO-Revision-Date: 2013-02-01 19:37+0100\n" +"POT-Creation-Date: 2014-12-01 12:03+0100\n" +"PO-Revision-Date: 2014-12-01 12:13+0200\n" "Last-Translator: Pierre Ratinaud \n" "Language-Team: LANGUAGE \n" -"Language: \n" +"Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Poedit-Language: French\n" -"X-Poedit-Country: FRANCE\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"X-Generator: Virtaal 0.7.1\n" -#: iramuteq.py:268 +#: layout.py:510 +msgid "3D graph" +msgstr "Graphe 3D" + +#: iramuteq.py:294 +msgid "About..." +msgstr "A propos..." + +#: dialog.py:1692 dialog.py:1693 +msgid "Absent form" +msgstr "Formes absentes" + +#: layout.py:772 textstat.py:50 +msgid "Abstract" +msgstr "Résumé" + +#: layout.py:775 +msgid "Actives forms" +msgstr "Formes actives" + +#: dialog.py:1336 +msgid "Actives variables (almost 3)" +msgstr "Variables actives (au moins 3)" + +#: dialog.py:1901 +msgid "Add cluster size" +msgstr "Ajouter la taille des classes" + +#: ProfList.py:700 +msgid "All segments" +msgstr "Tous les segments" + +#: layout.py:339 tree.py:444 tree.py:657 +msgid "Antiprofiles" +msgstr "Antiprofils" + +#: ProfList.py:332 +msgid "Antonym" +msgstr "Antonyme" + +#: layout.py:133 +msgid "Are you sure ?" +msgstr "Êtes-vous sûr ?" + +#: Liste.py:163 Liste.py:180 listlex.py:198 listlex.py:233 ProfList.py:313 +#: ProfList.py:754 +msgid "Associated forms" +msgstr "Formes associées" + +#: dialog.py:952 dialog.py:1029 +msgid "Attention" +msgstr "Attention" + +#: dialog.py:574 +msgid "Avoid overlay" +msgstr "Empêcher les recouvrements" + +#: dialog.py:2112 +msgid "Background color" +msgstr "Couleur du fond" + +#: layout.py:728 +msgid "Banal forms" +msgstr "Formes banales" + +#: dialog.py:1247 +msgid "Be carefull : computation of repeated segments profiles can be very long on large corpus" +msgstr "Attention : le calcul des profils de segments répétés peut être très long sur de gros corpus" + +#: dialog.py:2638 +msgid "Build sub corpus" +msgstr "Construire un sous-corpus" + +#: layout.py:490 layout.py:517 layout.py:742 +msgid "CA" +msgstr "AFC" + +#: layout.py:741 +msgid "CA POS" +msgstr "AFC Types" + +#: layout.py:738 +msgid "CA forms" +msgstr "AFC sur les formes" + +#: dialog.py:2376 +msgid "Change ..." +msgstr "Changer ..." + +#: dialog.py:1215 +msgid "Characteristic text segments" +msgstr "Segments de texte caractéristiques" + +#: dialog.py:82 dialog.py:2313 dialog.py:2706 layout.py:1030 +msgid "Characters set" +msgstr "Encodage" + +#: dialog.py:393 +msgid "Check" +msgstr "Vérifier" + +#: dialog.py:354 +msgid "" +"Check for new \n" +"releases at startup" +msgstr "" +"Vérifier l'existence d'une\n" +"nouvelle version au démarrage" + +#: dialog.py:383 +msgid "" +"Check installation \n" +"of R packages" +msgstr "" +"Vérifier l'installation\n" +"des libraires de R" + +#: dialog.py:1481 iramuteq.py:261 +msgid "Chi2" +msgstr "Chi2" + +#: ProfList.py:314 ProfList.py:359 +msgid "Chi2 by cluster" +msgstr "Chi2 par classe" + +#: ProfList.py:315 +msgid "Chi2 by cluster on dendrogram" +msgstr "Chi2 par classe et dendrogramme" + +#: ProfList.py:316 ProfList.py:360 +msgid "Chi2 modalities of variable" +msgstr "Chi2 modalités de la variable" + +#: dialog.py:1728 +msgid "Choice" +msgstr "Choix" + +#: guifunct.py:27 +msgid "Choose a file" +msgstr "Choisissez un fichier" + +#: dialog.py:2523 +msgid "Choose a folder" +msgstr "Choisissez un répertoire" + +#: dialog.py:2494 +msgid "Cleaning" +msgstr "Nettoyage" + +#: ProfList.py:767 +msgid "Close" +msgstr "Fermer" + +#: layout.py:385 layout.py:482 +msgid "Cluster" +msgstr "Classe" + +#: dialog.py:1308 iramuteq.py:266 iramuteq.py:287 layout.py:526 +#: OptionAlceste.py:29 tree.py:399 +msgid "Clustering" +msgstr "Classification" + +#: tree.py:454 tree.py:639 tree.py:648 +msgid "Clusters statistics" +msgstr "Statistiques des classes" + +#: dialog.py:1884 +msgid "Color or black and white" +msgstr "Couleur ou noir et blanc" + +#: tree.py:452 tree.py:612 +msgid "Colored corpus" +msgstr "Corpus en couleur" + +#: dialog.py:63 dialog.py:64 dialog.py:68 +msgid "Column separator" +msgstr "Séparateur de colonnes" + +#: guifunct.py:360 +msgid "Communities" +msgstr "Communautés" + +#: tree.py:450 tree.py:479 +msgid "Compute Tgen" +msgstr "Calculer les TGen" + +#: Liste.py:164 Liste.py:191 listlex.py:199 listlex.py:294 ProfList.py:326 +#: ProfList.py:688 ProfList.py:694 ProfList.py:700 +msgid "Concordance" +msgstr "Concordancier" + +#: dialog.py:2306 +msgid "Corpus' name" +msgstr "Nom du corpus" + +#: dialog.py:2341 +msgid "Default" +msgstr "Défaut" + +#: dialog.py:440 +msgid "Default R mirror" +msgstr "Miroir par défaut de R" + +#: OptionAlceste.py:52 +msgid "Default values" +msgstr "Valeurs par défaut" + +#: ProfList.py:329 +msgid "Definition" +msgstr "Définition" + +#: dialog.py:2440 +msgid "Delete characters not in this list" +msgstr "Éliminer les caractères en dehors de cette liste" + +#: tree.py:492 +msgid "Delete from history" +msgstr "Supprimer de l'historique" + +#: dialog.py:1810 +msgid "Dendrogram" +msgstr "Dendrogramme" + +#: dialog.py:1854 +msgid "Dendrogram type" +msgstr "Type de dendrogramme" + +#: layout.py:1012 +msgid "Description of corpus" +msgstr "Description du corpus" + +#: dialog.py:2331 +msgid "Dictionary" +msgstr "Dictionnaire" + +#: tree.py:626 +msgid "Done" +msgstr "Fait" + +#: guifunct.py:332 +msgid "Edge curved" +msgstr "Arêtes courbées" + +#: guifunct.py:633 +msgid "Edges color" +msgstr "Couleur des arêtes" + +#: guifunct.py:285 +msgid "Edges threshold" +msgstr "Seuil pour les arêtes" + +#: guifunct.py:533 +msgid "Edges width proportional to score" +msgstr "Largeur des arêtes proportionnelle à l'indice" + +#: iramuteq.py:298 msgid "Edition" msgstr "Edition" -#: iramuteq.py:226 +#: ProfList.py:330 +msgid "Etymology" +msgstr "Etymologie" + +#: iramuteq.py:248 msgid "Exit" msgstr "Quitter" -#: iramuteq.py:214 +#: tree.py:456 +msgid "Export clusters" +msgstr "Exporter les classes" + +#: tree.py:451 +msgid "Export corpus" +msgstr "Exporter le corpus" + +#: tree.py:472 +msgid "Export dictionary" +msgstr "Exporter le dictionnaire" + +#: dialog.py:2998 +msgid "Export finished. Open in a web browser :" +msgstr "Export terminé. Ouvrez ce lien dans un navigateur :" + +#: dialog.py:924 +msgid "Export for ..." +msgstr "Exporter pour ..." + +#: ProfList.py:342 +msgid "Export for Tropes" +msgstr "Exporter pour Tropes" + +#: tree.py:473 +msgid "Export lemma dictionary" +msgstr "Exporter le dictionnaire des lemmes" + +#: ProfList.py:341 +msgid "Export..." +msgstr "Exporter..." + +#: ProfList.py:343 +msgid "Exporter for Owledge" +msgstr "Exporter pour Owledge" + +#: iramuteq.py:233 msgid "Extract mods" msgstr "Extraire à partir des modalités" -#: iramuteq.py:267 +#: iramuteq.py:234 +msgid "Extract thematics" +msgstr "Extraire à partir des thématiques" + +#: dialog.py:2737 +msgid "Extraction type" +msgstr "Type d'extraction" + +#: layout.py:499 +msgid "Factor" +msgstr "Facteur" + +#: dialog.py:590 +msgid "Factor x : " +msgstr "Facteur x:" + +#: dialog.py:592 +msgid "Factor y : " +msgstr "Facteur y:" + +#: dialog.py:594 +msgid "Factor z : " +msgstr "Facteur z:" + +#: iramuteq.py:297 msgid "File" msgstr "Fichier" -#: iramuteq.py:272 +#: layout.py:1218 layout.py:1461 +msgid "File exported" +msgstr "Fichier exporté" + +#: guifunct.py:51 guifunct.py:63 guifunct.py:74 +msgid "File format" +msgstr "Format du fichier" + +#: dialog.py:53 dialog.py:54 dialog.py:58 +msgid "First column is an id" +msgstr "La première colonne est un identifiant" + +#: dialog.py:43 dialog.py:44 dialog.py:48 +msgid "First line is header" +msgstr "La première ligne contient les noms des colonnes" + +#: Liste.py:56 +msgid "Form" +msgstr "Forme" + +#: layout.py:726 +msgid "Forms" +msgstr "Formes" + +#: layout.py:730 +msgid "Forms frequencies" +msgstr "Fréquences des formes" + +#: layout.py:732 +msgid "Forms relative frequencies" +msgstr "Fréquences relatives des formes" + +#: Liste.py:57 +msgid "Freq." +msgstr "Freq." + +#: iramuteq.py:259 +msgid "Frequencies" +msgstr "Fréquences" + +#: layout.py:1245 +msgid "Frequency" +msgstr "Fréquences" + +#: dialog.py:2426 +msgid "General" +msgstr "Général" + +#: layout.py:1126 layout.py:1295 +msgid "Graph analysis" +msgstr "Analyse de graphe" + +#: ProfList.py:337 ProfList.py:362 +msgid "Graph of cluster" +msgstr "Graphe de la classe" + +#: guifunct.py:398 +msgid "Graph settings" +msgstr "Paramètres du graphe" + +#: listlex.py:200 listlex.py:345 +msgid "Graphic" +msgstr "Graphique" + +#: dialog.py:544 guifunct.py:249 +msgid "Graphic type" +msgstr "Type de graphique" + +#: guifunct.py:706 +msgid "Graphical settings" +msgstr "Paramètres graphiques" + +#: guifunct.py:572 +msgid "Gray scale on text proportional to frequency (0=black, 1=white)" +msgstr "Nuance de gris des textes proportionnelle à la fréquence (0 = noir, 1 = blanc)" + +#: layout.py:777 +msgid "Hapax" +msgstr "Hapax" + +#: iramuteq.py:302 msgid "Help" msgstr "Aide" -#: iramuteq.py:232 +#: iramuteq.py:343 +msgid "Historic" +msgstr "Historique" + +#: iramuteq.py:254 msgid "Home page" msgstr "Page d'accueil" -#: iramuteq.py:210 +#: dialog.py:1869 +msgid "Image format" +msgstr "Format de l'image" + +#: iramuteq.py:227 +msgid "Import from TXM" +msgstr "Importer de TXM" + +#: iramuteq.py:225 msgid "Import from factiva" msgstr "Importer de factiva" -#: corpus.py:1147 -msgid "No Text in corpora. Are you sure of the formatting ?" -msgstr "Pas de textes dans le corpus. Etes-vous sûr du formatage ?" +#: ProfList.py:325 +msgid "In all segments" +msgstr "Dans tous les segments" + +#: ProfList.py:323 +msgid "In segments of this cluster" +msgstr "Dans les segments de cette classe" + +#: ProfList.py:324 +msgid "In segments of this clustering" +msgstr "Dans les segments de cette classification" + +#: dialog.py:2831 +msgid "Include empty cells (NA)" +msgstr "Inclure les cellules vides (NA)" + +#: tree.py:389 +msgid "Informations" +msgstr "Informations" + +#: dialog.py:369 +msgid "Interface language" +msgstr "Langue de l'interface" + +#: dialog.py:2476 +msgid "Keep punctuation" +msgstr "Conserver la ponctuation" + +#: dialog.py:2322 layout.py:1029 +msgid "Language" +msgstr "Langue" + +#: guifunct.py:234 +msgid "Layout" +msgstr "Présentation" + +#: dialog.py:919 dialog.py:1255 +msgid "Lemmatised corpus" +msgstr "Corpus lemmatisé" + +#: iramuteq.py:1087 +msgid "License GNU GPL" +msgstr "Licence GNU GPL" + +#: dialog.py:972 +msgid "Like ALCESTE" +msgstr "Comme ALCESTE" + +#: dialog.py:972 +msgid "Like Lexico" +msgstr "Comme Lexico" + +#: dialog.py:2901 +msgid "Limit frequency" +msgstr "Fréquence limite" + +#: dialog.py:570 +msgid "Limit points by cluster chi2" +msgstr "Limiter les points par le chi2 de liaison aux classes" + +#: dialog.py:2921 +msgid "Limit rank" +msgstr "Rang limite" + +#: layout.py:72 +msgid "List of not plotted points : " +msgstr "Liste des points non-représentés" + +#: listlex.py:210 ProfList.py:327 +msgid "Make Tgen" +msgstr "Faire un TGen" + +#: dialog.py:599 guifunct.py:683 +msgid "Make a movie" +msgstr "Faire un film" + +#: dialog.py:2398 +msgid "Make text segments" +msgstr "Faire des segments de texte" + +#: tree.py:169 +msgid "Matrix" +msgstr "Matrice" + +#: iramuteq.py:300 +msgid "Matrix analysis" +msgstr "Analyses de matrice" + +#: dialog.py:400 +msgid "" +"Maximum \n" +"memory for R" +msgstr "" +"Mémoire\n" +"maximum de R" + +#: OptionAlceste.py:43 +msgid "Maximum number of analyzed forms" +msgstr "Nombres maximum de formes analysées" + +#: dialog.py:2032 +msgid "Maximum number of forms" +msgstr "Nombre maximum de formes" + +#: dialog.py:1224 +msgid "Maximum number of text segments" +msgstr "Nombre maximum de segments de texte" + +#: guifunct.py:272 +msgid "Maximum tree" +msgstr "Arbre maximum" + +#: dialog.py:1273 +msgid "Maxmum size of segments" +msgstr "Taille maximum des segments" + +#: layout.py:581 +msgid "Mean of forms by segment" +msgstr "Moyenne de formes par segment" + +#: textstat.py:56 +msgid "Mean of occurrences by text" +msgstr "Moyenne d'occurrences par texte" + +#: dialog.py:1739 dialog.py:2941 +msgid "Minimum frequency" +msgstr "Fréquence minimale" + +#: OptionAlceste.py:40 +msgid "Minimum frequency of an analyzed form (2=automatic)" +msgstr "Fréquence minimum d'une forme analysée (2 = automatique)" + +#: dialog.py:1281 +msgid "Minimum frequency of segments" +msgstr "Fréquence minimum d'un segment" + +#: OptionAlceste.py:37 +msgid "Minimum frequency of text segments by clusters (0=automatic)" +msgstr "Nombre minimum de segments de texte par classe (0 = automatique)" + +#: dialog.py:1265 +msgid "Minimum size of segments" +msgstr "Taille minimum des segments" + +#: dialog.py:1371 +msgid "Minimum text segments frenquency in clusters (2= automatic)" +msgstr "Nombre minimum de segments de texte par classe (2 = automatique)" + +#: dialog.py:2728 +msgid "Modalities (one by line, with the *)" +msgstr "Modalités (une par ligne, avec l'étoile (*))" + +#: ProfList.py:333 +msgid "Morphology" +msgstr "Morphologie" + +#: iramuteq.py:260 +msgid "Multiple frequencies" +msgstr "Fréquences multiples" + +#: tree.py:453 +msgid "Navigator" +msgstr "Navigateur" + +#: dialog.py:1354 dialog.py:1582 +msgid "Next" +msgstr "Suivant" + +#: tree.py:720 +msgid "No TGen yet !" +msgstr "Pas encore de TGen !" + +#: corpus.py:1524 +msgid "No Text in corpus. Are you sure of the formatting ?" +msgstr "Pas de textes dans le corpus. Êtes-vous sûr du formatage ?" + +#: dialog.py:2483 +msgid "No space between two forms" +msgstr "Pas d'espace entre deux formes" -#: iramuteq.py:190 +#: layout.py:578 +msgid "Number of active forms" +msgstr "Nombre de formes actives" + +#: layout.py:580 +msgid "Number of active forms with a frequency" +msgstr "Nombre de formes actives avec une fréquence" + +#: layout.py:588 layout.py:590 +msgid "Number of clusters" +msgstr "Nombre de classes" + +#: layout.py:574 layout.py:1033 textstat.py:53 +msgid "Number of forms" +msgstr "Nombre de formes" + +#: layout.py:1034 textstat.py:54 +msgid "Number of hapax" +msgstr "Nombre d'hapax" + +#: layout.py:577 +msgid "Number of lemmas" +msgstr "Nombre de lemmes" + +#: layout.py:587 +msgid "Number of lines" +msgstr "Nombre de lignes" + +#: layout.py:575 textstat.py:52 +msgid "Number of occurrences" +msgstr "Nombre d'occurrences" + +#: layout.py:579 +msgid "Number of supplementary forms" +msgstr "Nombre de formes supplémentaires" + +#: dialog.py:1361 OptionAlceste.py:35 +msgid "Number of terminal clusters on phase 1" +msgstr "Nombre de classes terminales de la phase 1" + +#: layout.py:573 layout.py:1032 +msgid "Number of text segments" +msgstr "Nombre de segments de texte" + +#: layout.py:572 layout.py:1031 textstat.py:51 +msgid "Number of texts" +msgstr "Nombre de textes" + +#: dialog.py:2741 +msgid "One file by modality" +msgstr "Un fichier par modalité" + +#: iramuteq.py:295 +msgid "Online help..." +msgstr "Aide en ligne ..." + +#: dialog.py:2741 +msgid "Only one file" +msgstr "Seulement un fichier" + +#: tree.py:445 tree.py:487 +msgid "Open ..." +msgstr "Ouvrir ..." + +#: iramuteq.py:205 msgid "Open a matrix" msgstr "Ouvrir une matrice" -#: iramuteq.py:194 -msgid "Open a text corpora" -msgstr "Ouvrir un corpus" +#: iramuteq.py:209 +msgid "Open a text corpus" +msgstr "Ouvrir un corpus texte" -#: iramuteq.py:198 +#: iramuteq.py:213 msgid "Open an analysis" msgstr "Ouvrir une Analyse" -#: iramuteq.py:229 +#: tree.py:626 +msgid "Open in a web browser ?" +msgstr "Ouvrir dans un navigateur ?" + +#: dialog.py:2349 +msgid "Other" +msgstr "Autre" + +#: dialog.py:930 dialog.py:976 dialog.py:1007 parse_factiva_xml.py:94 +msgid "Output file" +msgstr "Fichier en sortie" + +#: dialog.py:2363 +msgid "Output folder" +msgstr "Répertoire en sortie" + +#: layout.py:729 Liste.py:58 +msgid "POS" +msgstr "Types" + +#: layout.py:731 +msgid "POS frequencies" +msgstr "Fréquences des types" + +#: tree.py:448 +msgid "POS profiles" +msgstr "Profil des types grammaticaux" + +#: layout.py:733 +msgid "POS relative frequencies" +msgstr "Fréquences relatives des types" + +#: dialog.py:1080 dialog.py:2302 +msgid "Path" +msgstr "Chemin" + +#: dialog.py:428 dialog.py:437 +msgid "Path : " +msgstr "Chemin :" + +#: dialog.py:550 dialog.py:2007 guifunct.py:257 +msgid "Picture format" +msgstr "Format de l'image" + +#: dialog.py:1818 guifunct.py:408 +msgid "Picture size" +msgstr "Taille de l'image" + +#: dialog.py:341 +msgid "Play a sound at the end of analysis" +msgstr "Jouer un son à la fin des analyses" + +#: corpus.py:1622 iramuteq.py:581 iramuteq.py:626 layout.py:946 tree.py:739 +#: tree.py:1063 +msgid "Please wait..." +msgstr "Patientez ..." + +#: tree.py:514 +msgid "Please wait...Reading corpus" +msgstr "Patientez... Lecture du corpus" + +#: OptionAlceste.py:47 +msgid "Potato mode (less precise, faster)" +msgstr "Mode patate (moins précis, plus rapide)" + +#: iramuteq.py:251 msgid "Preferences" msgstr "Préférences" -#: iramuteq.py:222 -msgid "Save tab as..." -msgstr "Enregistrer l'onglet sous ..." +#: dialog.py:1357 dialog.py:1581 +msgid "Previous" +msgstr "Précédent" -#: iramuteq.py:233 +#: ProfList.py:428 ProfList.py:462 +msgid "Problem" +msgstr "Problème" + +#: layout.py:513 +msgid "Profiles" +msgstr "Profils" + +#: iramuteq.py:269 +msgid "Prototypical Analysis" +msgstr "Analyses Prototypiques" + +#: layout.py:1263 layout.py:1273 +msgid "Prototypical analysis" +msgstr "Analyses Prototypiques" + +#: ProfList.py:334 +msgid "Proxemy" +msgstr "Proxémie" + +#: dialog.py:2432 +msgid "Put text in lowercase" +msgstr "Mettre le texte en minuscule" + +#: dialog.py:432 +msgid "R path" +msgstr "Chemin de R" + +#: dialog.py:1220 +msgid "Ranking score" +msgstr "Indice de rang" + +#: dialog.py:2878 +msgid "Ranks" +msgstr "Rangs" + +#: layout.py:378 +msgid "Reading profiles" +msgstr "Lecture des profils" + +#: iramuteq.py:308 +msgid "Ready" +msgstr "Prêt" + +#: iramuteq.py:264 iramuteq.py:285 tree.py:397 +msgid "Reinert's Method" +msgstr "Méthode Reinert" + +#: tree.py:390 +msgid "Rename" +msgstr "Renommer" + +#: ProfList.py:338 ProfList.py:590 +msgid "Repeated segments" +msgstr "Segments répétés" + +#: dialog.py:1243 layout.py:519 tree.py:447 +msgid "Repeated segments profiles" +msgstr "Profils des segments répétés" + +#: dialog.py:2460 +msgid "Replace apostrophe by space" +msgstr "Remplacer les apostrophes par des espaces" + +#: dialog.py:2468 +msgid "Replace dash by space" +msgstr "Remplacer les tirets par des espaces" + +#: tree.py:455 tree.py:486 tree.py:666 tree.py:676 +msgid "Report" +msgstr "Rapport" + +#: dialog.py:556 +msgid "Representation" +msgstr "Représentation" + +#: dialog.py:1521 +msgid "Results" +msgstr "Résultats" + +#: dialog.py:2661 +msgid "Save as ..." +msgstr "Enregistrer sous ..." + +#: dialog.py:1736 guifunct.py:219 +msgid "Score" +msgstr "Indice" + +#: guifunct.py:319 +msgid "Score on edges" +msgstr "Indices sur les arêtes" + +#: tree.py:635 +msgid "Search ..." +msgstr "Rechercher ..." + +#: ProfList.py:249 +msgid "Search..." +msgstr "Rechercher ..." + +#: ProfList.py:694 +msgid "Segments of this clustering" +msgstr "Segments de cette classe" + +#: parse_factiva_xml.py:89 +msgid "Select a directory of txt files" +msgstr "Sélectionnez un répertoire contenant les fichiers txt" + +#: parse_factiva_xml.py:87 +msgid "Select a directory of xml files" +msgstr "Sélectionnez un répertoire contenant les fichiers xml" + +#: dialog.py:2352 dialog.py:2701 +msgid "Select a file" +msgstr "Sélectionnez un fichier" + +#: guifunct.py:379 +msgid "Select a variable" +msgstr "Sélectionnez une variable" + +#: dialog.py:1726 +msgid "Select by" +msgstr "Sélection par" + +#: tabsimi.py:78 +msgid "Select columns" +msgstr "Sélectionnez les colonnes" + +#: dialog.py:330 dialog.py:469 dialog.py:970 dialog.py:2149 dialog.py:2279 +#: dialog.py:2864 guifunct.py:161 OptionAlceste.py:63 +msgid "Settings" +msgstr "Paramètres" + +#: iramuteq.py:255 msgid "Show data" msgstr "Voir les données" -#: iramuteq.py:234 +#: iramuteq.py:256 msgid "Show results" msgstr "Voir les résultats" -#: iramuteq.py:213 +#: iramuteq.py:268 iramuteq.py:288 tree.py:400 +msgid "Similarities Analysis" +msgstr "Analyses de similitudes" + +#: OptionAlceste.py:31 +msgid "Size of rst1" +msgstr "Taille de rst1" + +#: layout.py:584 +msgid "Size of rst1 / rst2" +msgstr "Taille de rst1 / rst2" + +#: OptionAlceste.py:33 +msgid "Size of rst2" +msgstr "Taille de rst2" + +#: layout.py:744 +msgid "Specificities" +msgstr "Spécificités" + +#: iramuteq.py:282 tree.py:395 +msgid "Specificities and CA" +msgstr "Spécificités et AFC" + +#: dialog.py:596 guifunct.py:670 +msgid "Spheres transparency" +msgstr "Transparence des sphéres" + +#: iramuteq.py:232 tree.py:428 msgid "Split from variable" msgstr "Sous corpus par variable" -#: iramuteq.py:270 -#: iramuteq.py:427 -#: iramuteq.py:636 -#: tableau.py:185 -msgid "Spreadsheet analysis" -msgstr "Analyse de tableau" - -#: iramuteq.py:271 -#: iramuteq.py:428 -#: iramuteq.py:635 -#: openanalyse.py:116 -#: openanalyse.py:119 -#: openanalyse.py:122 -#: openanalyse.py:125 -#: openanalyse.py:128 -#: openanalyse.py:131 -#: tableau.py:186 +#: tree.py:429 +msgid "Split matrix" +msgstr "Extraire de la matrice..." + +#: layout.py:551 +msgid "Stat by cluster" +msgstr "Stat par classe" + +#: iramuteq.py:281 tree.py:394 +msgid "Statistics" +msgstr "Statistiques" + +#: tree.py:405 +msgid "Sub corpus" +msgstr "Sous-corpus" + +#: tree.py:457 +msgid "Sub corpus from clusters" +msgstr "Sous-corpus par classe" + +#: tree.py:403 +msgid "Sub corpus from metadata" +msgstr "Sous-corpus par méta-données" + +#: tree.py:404 +msgid "Sub corpus from thematic" +msgstr "Sous-corpus par thématique" + +#: dialog.py:1340 +msgid "Supplementaries variables (almost 1)" +msgstr "Variables supplémentaires (au moins 1)" + +#: layout.py:776 +msgid "Supplementary forms" +msgstr "Formes supplémentaires" + +#: dialog.py:1327 +msgid "Supplementary variables are marked with a *" +msgstr "Les variables supplémentaires sont marquées par une *" + +#: ProfList.py:331 +msgid "Synonymous" +msgstr "Synonymes" + +#: dialog.py:562 +msgid "Take the x first points" +msgstr "Prendre les x premiers points" + +#: dialog.py:566 +msgid "Take the x first points by cluster" +msgstr "Prendre les x premiers par classe" + +#: iramuteq.py:301 msgid "Text analysis" msgstr "Analyse de texte" -#: iramuteq.py:219 +#: dialog.py:2101 +msgid "Text color" +msgstr "Couleur du texte" + +#: dialog.py:2381 +msgid "Text mark" +msgstr "Marqueur de texte" + +#: guifunct.py:306 +msgid "Text on vertex" +msgstr "Texte sur les sommets" + +#: dialog.py:2406 +msgid "Text segments build process" +msgstr "Méthode de construction des segments" + +#: dialog.py:2415 +msgid "Text segments size" +msgstr "Taille des segments de texte" + +#: dialog.py:73 dialog.py:74 dialog.py:78 +msgid "Text separator" +msgstr "Séparateur de texte" + +#: dialog.py:560 dialog.py:2061 guifunct.py:345 +msgid "Text size" +msgstr "Taille du texte" + +#: dialog.py:583 +msgid "Text size proportional to chi2" +msgstr "Taille du texte proportionnelle au chi2" + +#: dialog.py:576 +msgid "Text size proportional to frequency" +msgstr "Taille du texte proportionnelle à la fréquence" + +#: tree.py:147 +msgid "Textual corpus" +msgstr "Corpus textuel" + +#: tree.py:449 tree.py:478 +msgid "Tgen Editor" +msgstr "Editeur de TGen" + +#: layout.py:689 +msgid "Tgens Specificities" +msgstr "Spécificités des TGens" + +#: dialog.py:952 dialog.py:1029 +msgid "This file already exists. Continue anyway ?" +msgstr "Ce fichier existe déjà. Continuer quand même ?" + +#: tree.py:1074 +#, python-format +msgid "This file does not exist : %s" +msgstr "Ce fichier n'existe pas : %s" + +#: layout.py:133 +msgid "This file will be delete : " +msgstr "Ce fichier sera supprimer : " + +#: ProfList.py:462 +msgid "This is not a meta-data" +msgstr "Ce n'est pas une méta-donnée" + +#: ProfList.py:428 +msgid "This is not a variable_modality form" +msgstr "Ce n'est pas une forme du type variable_modalité" + +#: iramuteq.py:241 msgid "Tools" msgstr "Outils" -#: iramuteq.py:269 -#: iramuteq.py:426 -#: iramuteq.py:564 -#: iramuteq.py:634 -#: tableau.py:184 +#: ProfList.py:335 +msgid "Tools from CNRTL (french only)" +msgstr "Outils du CNTRL (français uniquement)" + +#: layout.py:774 +msgid "Total" +msgstr "Total" + +#: listlex.py:209 listlex.py:274 ProfList.py:339 ProfList.py:622 +msgid "Typical text segments" +msgstr "Segments de texte caractéristiques" + +#: guifunct.py:206 +msgid "Use previous coordinates" +msgstr "Utiliser les coordonnées précédentes" + +#: dialog.py:420 +msgid "Use svdlibc" +msgstr "Utiliser svdlibc" + +#: dialog.py:2390 +msgid "Use the expression dictionary" +msgstr "Utiliser le dictionnaire des expressions" + +#: dialog.py:1721 dialog.py:2046 +msgid "Used forms" +msgstr "Formes utilisées" + +#: dialog.py:2874 +msgid "Variables" +msgstr "Variables" + +#: dialog.py:2718 +msgid "Variables (with the * but without the _)" +msgstr "Variables (avec le * mais sans le _ )" + +#: dialog.py:1749 +msgid "Variables choice" +msgstr "Choix des variables" + +#: dialog.py:2246 +msgid "Variables selection" +msgstr "Sélection des variables" + +#: guifunct.py:621 +msgid "Vertex color" +msgstr "Couleur des sommets" + +#: guifunct.py:649 +msgid "Vertex size" +msgstr "Taille des sommets" + +#: guifunct.py:439 +msgid "Vertex size proportional to frequency" +msgstr "Taille des sommets proportionnelle à la fréquence" + +#: guifunct.py:486 +msgid "Vertex text size proportional to frequency" +msgstr "Taille du texte des sommets proportionnelle à la fréquence" + +#: iramuteq.py:299 msgid "View" msgstr "Vue" -#: iramuteq.py:206 +#: iramuteq.py:309 +msgid "Welcome" +msgstr "Bienvenu" + +#: ProfList.py:340 +msgid "Word cloud of cluster" +msgstr "Nuage de mots de la classe" + +#: ProfList.py:317 +msgid "Word graph" +msgstr "Graphe du mot" + +#: dialog.py:2017 +msgid "Word size proportional to ..." +msgstr "Taille des mots proportionnelles à ..." + +#: iramuteq.py:290 tree.py:401 +msgid "WordCloud" +msgstr "Nuage de mots" + +#: dialog.py:1956 +msgid "Wordcloud settings" +msgstr "Préférences de wordcloud" + +#: dialog.py:1222 +msgid "absolute (sum of chi2 of marked forms in segment)" +msgstr "absolue (somme des chi2 des formes marquées du segment)" + +#: dialog.py:559 dialog.py:1722 dialog.py:2050 +msgid "actives" +msgstr "actives" + +#: dialog.py:1722 dialog.py:2050 +msgid "actives and supplementaries" +msgstr "actives et supplémentaires" + +#: OptionAlceste.py:32 +msgid "actives forms" +msgstr "formes actives" + +#: tree.py:485 +msgid "antiprofiles" +msgstr "antiprofils" + +#: dialog.py:2907 dialog.py:2927 +msgid "automatic (mean)" +msgstr "automatique (moyenne)" + +#: dialog.py:1911 +msgid "bar" +msgstr "barre" + +#: dialog.py:1888 +msgid "black and white" +msgstr "noir et blanc" + +#: dialog.py:2183 +msgid "black and white graphical" +msgstr "graphique en noir et blanc" + +#: dialog.py:2286 +msgid "characters" +msgstr "caractères" + +#: dialog.py:1733 dialog.py:1735 dialog.py:2021 +msgid "chi2" +msgstr "chi2" + +#: dialog.py:1911 +msgid "circular diagram" +msgstr "camembert" + +#: dialog.py:1481 +msgid "cluster" +msgstr "classe" + +#: dialog.py:559 dialog.py:873 +msgid "clusters" +msgstr "classes" + +#: dialog.py:1888 +msgid "color" +msgstr "couleur" + +#: dialog.py:2177 +msgid "column percentage" +msgstr "pourcentage en colonne" + +#: dialog.py:557 +msgid "coordinates" +msgstr "coordonnées" + +#: dialog.py:2298 dialog.py:2697 +msgid "corpus" +msgstr "corpus" + +#: dialog.py:557 +msgid "correlations" +msgstr "corrélations" + +#: OptionAlceste.py:30 +msgid "double on RST" +msgstr "double sur RST" + +#: dialog.py:2161 +msgid "expected values" +msgstr "valeurs attendues" + +#: dialog.py:1481 +msgid "form" +msgstr "forme" + +#: dialog.py:2021 +msgid "frequency" +msgstr "fréquences" + +#: iramuteq.py:221 msgid "from copy/paste" msgstr "à partir de copier/coller" -#: iramuteq.py:205 +#: iramuteq.py:220 msgid "from mail" msgstr "à partir de mails" -#: iramuteq.py:204 +#: iramuteq.py:219 msgid "from xml" msgstr "à partir de fichiers xml" +#: dialog.py:2180 +msgid "graphical" +msgstr "Graphique" + +#: dialog.py:554 dialog.py:1826 dialog.py:1979 guifunct.py:416 +msgid "height" +msgstr "hauteur" + +#: dialog.py:1733 +msgid "hypergeometrical law" +msgstr "loi hypergéométrique" + +#: layout.py:596 +msgid "line classified on" +msgstr "lignes classées sur" + +#: dialog.py:2907 dialog.py:2927 +msgid "manual" +msgstr "manuelle" + +#: dialog.py:1727 +msgid "modalities" +msgstr "modalités" + +#: dialog.py:46 dialog.py:56 dialog.py:349 dialog.py:364 dialog.py:921 +#: dialog.py:1259 dialog.py:1331 +msgid "no" +msgstr "non" + +#: dialog.py:2158 +msgid "observed values" +msgstr "valeurs observées" + +#: dialog.py:2286 +msgid "occurrences" +msgstr "occurrences" + +#: textstat.py:54 +msgid "of forms" +msgstr "des formes" + +#: textstat.py:54 +msgid "of occurrences" +msgstr "des occurrences" + +#: dialog.py:2286 +msgid "paragraphs" +msgstr "paragraphes" + +#: dialog.py:1222 +msgid "relative (mean of chi2 of marked forms in segment)" +msgstr "relative (moyenne des chi2 des formes marquées par segment)" + +#: dialog.py:2164 +msgid "residuals" +msgstr "résidus" + +#: dialog.py:2174 +msgid "row percentage" +msgstr "pourcentages en ligne" + +#: dialog.py:1481 +msgid "see" +msgstr "voir" + +#: layout.py:592 +msgid "segments classified on" +msgstr "segments classés sur" + +#: OptionAlceste.py:30 +msgid "simple on text segments" +msgstr "simple sur segments de texte" + +#: OptionAlceste.py:30 +msgid "simple on texts" +msgstr "simple sur texte" + +#: dialog.py:2167 +msgid "standardized residuals" +msgstr "résidus standardisés" + +#: dialog.py:559 +msgid "stars" +msgstr "étoiles" + +#: dialog.py:559 dialog.py:1722 dialog.py:2050 +msgid "supplementaries" +msgstr "supplémentaires" + +#: OptionAlceste.py:45 +msgid "svd method" +msgstr "méthode pour svd" + +#: layout.py:594 +msgid "texts classified on" +msgstr "textes classés sur" + +#: dialog.py:2747 +msgid "thematics (one by line, with the -*)" +msgstr "thématiques (une par ligne, avec l'étoile (*))" + +#: layout.py:598 +msgid "time" +msgstr "temps" + +#: dialog.py:2171 +msgid "total percentage" +msgstr "pourcentage total" + +#: dialog.py:1727 +msgid "variables" +msgstr "variables" + +#: dialog.py:552 dialog.py:1837 dialog.py:1991 guifunct.py:423 +msgid "width" +msgstr "largeur" + +#: dialog.py:46 dialog.py:56 dialog.py:349 dialog.py:364 dialog.py:921 +#: dialog.py:1259 dialog.py:1331 +msgid "yes" +msgstr "oui" + #~ msgid "&Open a questionnaire\tCtrl+O" #~ msgstr "Ouvrir un questionnaire" +#, fuzzy +#~ msgid "Associated Forms" +#~ msgstr "Formes utilisées" + +#~ msgid "Graphical type" +#~ msgstr "Type de graphique" + #~ msgid "Open a questionnaire" #~ msgstr "Ouvrir un questionnaire" + +#, fuzzy +#~ msgid "Reinert method" +#~ msgstr "Méthode Reinert" + +#~ msgid "Selection" +#~ msgstr "Sélection" + +#, fuzzy +#~ msgid "Similarities analysis" +#~ msgstr "Analyses de similitudes" + +#, fuzzy +#~ msgid "Wordcloud" +#~ msgstr "Nuage de mots" diff --git a/layout.py b/layout.py index f22ef5f..a7d7b2e 100644 --- a/layout.py +++ b/layout.py @@ -569,33 +569,33 @@ def PrintRapport(self, corpus, parametres, istxt = True): """ % datetime.datetime.now().ctime() if istxt : totocc = corpus.gettotocc() - txt += ': '.join([_(u'Number of texts'), u'%i%s' % (corpus.getucinb(), sep)]) - txt += ': '.join([_(u'Number of text segments'), '%i%s' % (corpus.getucenb(), sep)]) - txt += ': '.join([_(u'Number of forms'), '%i%s' % (len(corpus.formes), sep)]) - txt += ': '.join([_(u'Number of occurrences'), '%i%s' % (totocc, sep)]) + txt += ': '.join([_(u'Number of texts').decode('utf8'), u'%i%s' % (corpus.getucinb(), sep)]) + txt += ': '.join([_(u'Number of text segments').decode('utf8'), '%i%s' % (corpus.getucenb(), sep)]) + txt += ': '.join([_(u'Number of forms').decode('utf8'), '%i%s' % (len(corpus.formes), sep)]) + txt += ': '.join([_(u'Number of occurrences').decode('utf8'), '%i%s' % (totocc, sep)]) #txt += u'moyenne d\'occurrences par forme: %f%s' % (float(totocc) / float(len(self.corpus.formes)), sep) - txt += ': '.join([_(u'Number of lemmas'), '%i%s' % (len(corpus.lems), sep)]) - txt += ': '.join([_(u'Number of active forms'), '%i%s' % (corpus.getactivesnb(1), sep)]) - txt += ': '.join([_(u'Number of supplementary forms'), '%i%s' % (corpus.getactivesnb(2), sep)]) - txt += ' >= '.join([_(u'Number of active forms with a frequency'), '%i: %i%s' % (parametres['eff_min_forme'], parametres['nbactives'], sep)]) - txt += ': '.join([_(u'Mean of forms by segment'), '%f%s' % (float(totocc) / float(corpus.getucenb()), sep)]) + txt += ': '.join([_(u'Number of lemmas').decode('utf8'), '%i%s' % (len(corpus.lems), sep)]) + txt += ': '.join([_(u'Number of active forms').decode('utf8'), '%i%s' % (corpus.getactivesnb(1), sep)]) + txt += ': '.join([_(u'Number of supplementary forms').decode('utf8'), '%i%s' % (corpus.getactivesnb(2), sep)]) + txt += ' >= '.join([_(u'Number of active forms with a frequency').decode('utf8'), '%i: %i%s' % (parametres['eff_min_forme'], parametres['nbactives'], sep)]) + txt += ': '.join([_(u'Mean of forms by segment').decode('utf8'), '%f%s' % (float(totocc) / float(corpus.getucenb()), sep)]) if 'tailleuc1' in parametres : if parametres['classif_mode'] == 0 : - txt += ': '.join([_(u'Size of rst1 / rst2'), '%i / %i - %i / %i%s' % (parametres['tailleuc1'], parametres['tailleuc2'], parametres['lenuc1'], parametres['lenuc2'], sep)]) + txt += ': '.join([_(u'Size of rst1 / rst2').decode('utf8'), '%i / %i - %i / %i%s' % (parametres['tailleuc1'], parametres['tailleuc2'], parametres['lenuc1'], parametres['lenuc2'], sep)]) else : self.Ucenb = self.nbind - txt += ': '.join([_(u'Number of lines'), '%i%s' % (self.nbind, sep)]) - txt += ': '.join([_(u'Number of clusters'), '%i%s' % (self.clnb, sep)]) + txt += ': '.join([_(u'Number of lines').decode('utf8'), '%i%s' % (self.nbind, sep)]) + txt += ': '.join([_(u'Number of clusters').decode('utf8'), '%i%s' % (self.clnb, sep)]) if istxt : - txt += ': '.join([_(u'Number of clusters'), '%i%s' % (parametres['clnb'], sep)]) + txt += ': '.join([_(u'Number of clusters').decode('utf8'), '%i%s' % (parametres['clnb'], sep)]) if parametres['classif_mode'] == 0 or parametres['classif_mode'] == 1 : - txt += ' '.join(['%i' % sum([len(cl) for cl in corpus.lc]), u'segments classified on', '%i (%.2f%%)%s' % (corpus.getucenb(), (float(sum([len(cl) for cl in corpus.lc])) / float(corpus.getucenb())) * 100, sep)]) + txt += ' '.join(['%i' % sum([len(cl) for cl in corpus.lc]), _(u'segments classified on').decode('utf8'), '%i (%.2f%%)%s' % (corpus.getucenb(), (float(sum([len(cl) for cl in corpus.lc])) / float(corpus.getucenb())) * 100, sep)]) elif self.parametres['classif_mode'] == 2 : - txt += ' '.join([u'%i' % sum([len(cl) for cl in corpus.lc]), 'texts classified on', '%i (%.2f%%)%s' % (corpus.getucinb(), (float(sum([len(cl) for cl in corpus.lc]))) / float(corpus.getucinb()) * 100, sep)]) + txt += ' '.join([u'%i' % sum([len(cl) for cl in corpus.lc]), _(u'texts classified on').decode('utf8'), '%i (%.2f%%)%s' % (corpus.getucinb(), (float(sum([len(cl) for cl in corpus.lc]))) / float(corpus.getucinb()) * 100, sep)]) else : - txt += ' '.join(['%i' % self.ucecla, 'line classified on', '%i (%.2f%%)%s' % (self.Ucenb, (float(self.ucecla) / float(self.Ucenb)) * 100, sep)]) + txt += ' '.join(['%i' % self.ucecla, _(u'line classified on').decode('utf8'), '%i (%.2f%%)%s' % (self.Ucenb, (float(self.ucecla) / float(self.Ucenb)) * 100, sep)]) - txt += ''.join([sep, u'###########################', sep, _(u'time'), ' : %s' % parametres.get('time', ''), sep, u'###########################', sep]) + txt += ''.join([sep, u'###########################', sep, _(u'time').decode('utf8'), ' : %s' % parametres.get('time', ''), sep, u'###########################', sep]) with open(self.pathout['pre_rapport'], 'w') as f : f.write(txt) diff --git a/locale/es_ES/LC_MESSAGES/iramuteq.mo b/locale/es_ES/LC_MESSAGES/iramuteq.mo index c59bfc521ebac306904099f8e328fe3baf23d2c1..6bc66b538d9d98888edbfe50c51189b604d2442f 100644 GIT binary patch delta 24 fcmeyx^owai51*ltu7RO~p^=q=v9^KX#90pjV;Bd^ delta 24 fcmeyx^owai51)ahuA!lVp_!GjfwqCs#90pjW3&g? diff --git a/locale/fr_FR/LC_MESSAGES/iramuteq.mo b/locale/fr_FR/LC_MESSAGES/iramuteq.mo index 071a79c30ba27d2a1878f65fc1c268f511197867..24b6c2e89c978ee07b5686c382c850cf4f4c7305 100644 GIT binary patch literal 21095 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 diff --git a/locale/it_IT/LC_MESSAGES/iramuteq.mo b/locale/it_IT/LC_MESSAGES/iramuteq.mo index c59bfc521ebac306904099f8e328fe3baf23d2c1..6bc66b538d9d98888edbfe50c51189b604d2442f 100644 GIT binary patch delta 24 fcmeyx^owai51*ltu7RO~p^=q=v9^KX#90pjV;Bd^ delta 24 fcmeyx^owai51)ahuA!lVp_!GjfwqCs#90pjW3&g? diff --git a/locale/pt_PT/LC_MESSAGES/iramuteq.mo b/locale/pt_PT/LC_MESSAGES/iramuteq.mo index 373b3e58da4944dd77597a43f8fbd15f988b7e87..f565db647f6691b53bb35837486fa8be53a529d2 100644 GIT binary patch delta 5533 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 delta 5788 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