Added a dialog to show some statistics for the last PEP 8 check to the PEP 8 dialog.

Sat, 15 Jan 2011 19:26:07 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sat, 15 Jan 2011 19:26:07 +0100
changeset 847
cc18fbcde9fc
parent 846
869c200be26e
child 848
e2fad77b41ba

Added a dialog to show some statistics for the last PEP 8 check to the PEP 8 dialog.

APIs/Python3/eric5.api file | annotate | diff | comparison | revisions
Documentation/Help/source.qch file | annotate | diff | comparison | revisions
Documentation/Help/source.qhp file | annotate | diff | comparison | revisions
Documentation/Source/eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html file | annotate | diff | comparison | revisions
Documentation/Source/eric5.Plugins.CheckerPlugins.Pep8.Pep8StatisticsDialog.html file | annotate | diff | comparison | revisions
Documentation/Source/eric5.UI.FindFileDialog.html file | annotate | diff | comparison | revisions
Documentation/Source/index-eric5.Plugins.CheckerPlugins.Pep8.html file | annotate | diff | comparison | revisions
Plugins/CheckerPlugins/Pep8/Pep8Checker.py file | annotate | diff | comparison | revisions
Plugins/CheckerPlugins/Pep8/Pep8Dialog.py file | annotate | diff | comparison | revisions
Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui file | annotate | diff | comparison | revisions
Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py file | annotate | diff | comparison | revisions
Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui file | annotate | diff | comparison | revisions
UtilitiesPython2/Pep8Checker.py file | annotate | diff | comparison | revisions
eric5.e4p file | annotate | diff | comparison | revisions
i18n/eric5_cs.ts file | annotate | diff | comparison | revisions
i18n/eric5_de.qm file | annotate | diff | comparison | revisions
i18n/eric5_de.ts file | annotate | diff | comparison | revisions
i18n/eric5_en.qm file | annotate | diff | comparison | revisions
i18n/eric5_en.ts file | annotate | diff | comparison | revisions
i18n/eric5_es.ts file | annotate | diff | comparison | revisions
i18n/eric5_fr.ts file | annotate | diff | comparison | revisions
i18n/eric5_it.ts file | annotate | diff | comparison | revisions
i18n/eric5_ru.ts file | annotate | diff | comparison | revisions
i18n/eric5_tr.ts file | annotate | diff | comparison | revisions
i18n/eric5_zh_CN.GB2312.ts file | annotate | diff | comparison | revisions
--- a/APIs/Python3/eric5.api	Sat Jan 15 16:30:40 2011 +0100
+++ b/APIs/Python3/eric5.api	Sat Jan 15 19:26:07 2011 +0100
@@ -2636,12 +2636,14 @@
 eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.Pep8Dialog.on_resultList_itemActivated?4(item, column)
 eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.Pep8Dialog.on_showButton_clicked?4()
 eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.Pep8Dialog.on_startButton_clicked?4()
+eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.Pep8Dialog.on_statisticsButton_clicked?4()
 eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.Pep8Dialog.on_storeDefaultButton_clicked?4()
 eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.Pep8Dialog.positionRole?7
 eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.Pep8Dialog.prepare?4(fileList, project)
 eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.Pep8Dialog.settingsKey?7
 eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.Pep8Dialog.start?4(fn, codestring = "", save = False, repeat = None)
 eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.Pep8Dialog?1(parent = None)
+eric5.Plugins.CheckerPlugins.Pep8.Pep8StatisticsDialog.Pep8StatisticsDialog?1(statistics, parent = None)
 eric5.Plugins.CheckerPlugins.Pep8.pep8.BENCHMARK_KEYS?7
 eric5.Plugins.CheckerPlugins.Pep8.pep8.BINARY_OPERATORS?7
 eric5.Plugins.CheckerPlugins.Pep8.pep8.Checker.build_tokens_line?4()
Binary file Documentation/Help/source.qch has changed
--- a/Documentation/Help/source.qhp	Sat Jan 15 16:30:40 2011 +0100
+++ b/Documentation/Help/source.qhp	Sat Jan 15 19:26:07 2011 +0100
@@ -334,6 +334,7 @@
                 <section title="eric5.Plugins.CheckerPlugins.Pep8.Pep8Checker" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8Checker.html" />
                 <section title="eric5.Plugins.CheckerPlugins.Pep8.Pep8CodeSelectionDialog" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8CodeSelectionDialog.html" />
                 <section title="eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html" />
+                <section title="eric5.Plugins.CheckerPlugins.Pep8.Pep8StatisticsDialog" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8StatisticsDialog.html" />
                 <section title="eric5.Plugins.CheckerPlugins.Pep8.pep8" ref="eric5.Plugins.CheckerPlugins.Pep8.pep8.html" />
               </section>
               <section title="eric5.Plugins.CheckerPlugins.SyntaxChecker" ref="index-eric5.Plugins.CheckerPlugins.SyntaxChecker.html">
@@ -9396,7 +9397,9 @@
       <keyword name="Pep8Dialog.__clearErrors" id="Pep8Dialog.__clearErrors" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html#Pep8Dialog.__clearErrors" />
       <keyword name="Pep8Dialog.__createResultItem" id="Pep8Dialog.__createResultItem" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html#Pep8Dialog.__createResultItem" />
       <keyword name="Pep8Dialog.__finish" id="Pep8Dialog.__finish" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html#Pep8Dialog.__finish" />
+      <keyword name="Pep8Dialog.__resetStatistics" id="Pep8Dialog.__resetStatistics" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html#Pep8Dialog.__resetStatistics" />
       <keyword name="Pep8Dialog.__resort" id="Pep8Dialog.__resort" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html#Pep8Dialog.__resort" />
+      <keyword name="Pep8Dialog.__updateStatistics" id="Pep8Dialog.__updateStatistics" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html#Pep8Dialog.__updateStatistics" />
       <keyword name="Pep8Dialog.on_buttonBox_clicked" id="Pep8Dialog.on_buttonBox_clicked" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html#Pep8Dialog.on_buttonBox_clicked" />
       <keyword name="Pep8Dialog.on_excludeMessagesSelectButton_clicked" id="Pep8Dialog.on_excludeMessagesSelectButton_clicked" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html#Pep8Dialog.on_excludeMessagesSelectButton_clicked" />
       <keyword name="Pep8Dialog.on_includeMessagesSelectButton_clicked" id="Pep8Dialog.on_includeMessagesSelectButton_clicked" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html#Pep8Dialog.on_includeMessagesSelectButton_clicked" />
@@ -9404,9 +9407,14 @@
       <keyword name="Pep8Dialog.on_resultList_itemActivated" id="Pep8Dialog.on_resultList_itemActivated" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html#Pep8Dialog.on_resultList_itemActivated" />
       <keyword name="Pep8Dialog.on_showButton_clicked" id="Pep8Dialog.on_showButton_clicked" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html#Pep8Dialog.on_showButton_clicked" />
       <keyword name="Pep8Dialog.on_startButton_clicked" id="Pep8Dialog.on_startButton_clicked" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html#Pep8Dialog.on_startButton_clicked" />
+      <keyword name="Pep8Dialog.on_statisticsButton_clicked" id="Pep8Dialog.on_statisticsButton_clicked" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html#Pep8Dialog.on_statisticsButton_clicked" />
       <keyword name="Pep8Dialog.on_storeDefaultButton_clicked" id="Pep8Dialog.on_storeDefaultButton_clicked" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html#Pep8Dialog.on_storeDefaultButton_clicked" />
       <keyword name="Pep8Dialog.prepare" id="Pep8Dialog.prepare" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html#Pep8Dialog.prepare" />
       <keyword name="Pep8Dialog.start" id="Pep8Dialog.start" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html#Pep8Dialog.start" />
+      <keyword name="Pep8StatisticsDialog (Module)" id="Pep8StatisticsDialog (Module)" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8StatisticsDialog.html" />
+      <keyword name="Pep8StatisticsDialog" id="Pep8StatisticsDialog" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8StatisticsDialog.html#Pep8StatisticsDialog" />
+      <keyword name="Pep8StatisticsDialog (Constructor)" id="Pep8StatisticsDialog (Constructor)" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8StatisticsDialog.html#Pep8StatisticsDialog.__init__" />
+      <keyword name="Pep8StatisticsDialog.__createItem" id="Pep8StatisticsDialog.__createItem" ref="eric5.Plugins.CheckerPlugins.Pep8.Pep8StatisticsDialog.html#Pep8StatisticsDialog.__createItem" />
       <keyword name="Tabnanny (Package)" id="Tabnanny (Package)" ref="index-eric5.Plugins.CheckerPlugins.Tabnanny.html" />
       <keyword name="TabnannyDialog (Module)" id="TabnannyDialog (Module)" ref="eric5.Plugins.CheckerPlugins.Tabnanny.TabnannyDialog.html" />
       <keyword name="TabnannyDialog" id="TabnannyDialog" ref="eric5.Plugins.CheckerPlugins.Tabnanny.TabnannyDialog.html#TabnannyDialog" />
@@ -10413,6 +10421,7 @@
       <file>eric5.Plugins.CheckerPlugins.Pep8.Pep8Checker.html</file>
       <file>eric5.Plugins.CheckerPlugins.Pep8.Pep8CodeSelectionDialog.html</file>
       <file>eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html</file>
+      <file>eric5.Plugins.CheckerPlugins.Pep8.Pep8StatisticsDialog.html</file>
       <file>eric5.Plugins.CheckerPlugins.Pep8.pep8.html</file>
       <file>eric5.Plugins.CheckerPlugins.SyntaxChecker.SyntaxCheckerDialog.html</file>
       <file>eric5.Plugins.CheckerPlugins.Tabnanny.Tabnanny.html</file>
--- a/Documentation/Source/eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html	Sat Jan 15 16:30:40 2011 +0100
+++ b/Documentation/Source/eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html	Sat Jan 15 19:26:07 2011 +0100
@@ -66,9 +66,15 @@
 <td><a href="#Pep8Dialog.__finish">__finish</a></td>
 <td>Private slot called when the PEP 8 check finished or the user pressed the cancel button.</td>
 </tr><tr>
+<td><a href="#Pep8Dialog.__resetStatistics">__resetStatistics</a></td>
+<td>Private slot to reset the statistics data.</td>
+</tr><tr>
 <td><a href="#Pep8Dialog.__resort">__resort</a></td>
 <td>Private method to resort the tree.</td>
 </tr><tr>
+<td><a href="#Pep8Dialog.__updateStatistics">__updateStatistics</a></td>
+<td>Private method to update the collected statistics.</td>
+</tr><tr>
 <td><a href="#Pep8Dialog.on_buttonBox_clicked">on_buttonBox_clicked</a></td>
 <td>Private slot called by a button of the button box clicked.</td>
 </tr><tr>
@@ -90,6 +96,9 @@
 <td><a href="#Pep8Dialog.on_startButton_clicked">on_startButton_clicked</a></td>
 <td>Private slot to start a PEP 8 check run.</td>
 </tr><tr>
+<td><a href="#Pep8Dialog.on_statisticsButton_clicked">on_statisticsButton_clicked</a></td>
+<td>Private slot to show the statistics dialog.</td>
+</tr><tr>
 <td><a href="#Pep8Dialog.on_storeDefaultButton_clicked">on_storeDefaultButton_clicked</a></td>
 <td>Private slot to store the current configuration values as default values.</td>
 </tr><tr>
@@ -140,12 +149,28 @@
 <p>
         Private slot called when the PEP 8 check finished or the user
         pressed the cancel button.
+</p><a NAME="Pep8Dialog.__resetStatistics" ID="Pep8Dialog.__resetStatistics"></a>
+<h4>Pep8Dialog.__resetStatistics</h4>
+<b>__resetStatistics</b>(<i></i>)
+<p>
+        Private slot to reset the statistics data.
 </p><a NAME="Pep8Dialog.__resort" ID="Pep8Dialog.__resort"></a>
 <h4>Pep8Dialog.__resort</h4>
 <b>__resort</b>(<i></i>)
 <p>
         Private method to resort the tree.
-</p><a NAME="Pep8Dialog.on_buttonBox_clicked" ID="Pep8Dialog.on_buttonBox_clicked"></a>
+</p><a NAME="Pep8Dialog.__updateStatistics" ID="Pep8Dialog.__updateStatistics"></a>
+<h4>Pep8Dialog.__updateStatistics</h4>
+<b>__updateStatistics</b>(<i>statistics</i>)
+<p>
+        Private method to update the collected statistics.
+</p><dl>
+<dt><i>statistics</i></dt>
+<dd>
+dictionary of statistical data with
+            message code as key and message count as value
+</dd>
+</dl><a NAME="Pep8Dialog.on_buttonBox_clicked" ID="Pep8Dialog.on_buttonBox_clicked"></a>
 <h4>Pep8Dialog.on_buttonBox_clicked</h4>
 <b>on_buttonBox_clicked</b>(<i>button</i>)
 <p>
@@ -195,6 +220,11 @@
 <b>on_startButton_clicked</b>(<i></i>)
 <p>
         Private slot to start a PEP 8 check run.
+</p><a NAME="Pep8Dialog.on_statisticsButton_clicked" ID="Pep8Dialog.on_statisticsButton_clicked"></a>
+<h4>Pep8Dialog.on_statisticsButton_clicked</h4>
+<b>on_statisticsButton_clicked</b>(<i></i>)
+<p>
+        Private slot to show the statistics dialog.
 </p><a NAME="Pep8Dialog.on_storeDefaultButton_clicked" ID="Pep8Dialog.on_storeDefaultButton_clicked"></a>
 <h4>Pep8Dialog.on_storeDefaultButton_clicked</h4>
 <b>on_storeDefaultButton_clicked</b>(<i></i>)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Documentation/Source/eric5.Plugins.CheckerPlugins.Pep8.Pep8StatisticsDialog.html	Sat Jan 15 19:26:07 2011 +0100
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN'
+'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
+<html><head>
+<title>eric5.Plugins.CheckerPlugins.Pep8.Pep8StatisticsDialog</title>
+<style>
+body {
+    background: #EDECE6;
+    margin: 0em 1em 10em 1em;
+    color: black;
+}
+
+h1 { color: white; background: #85774A; }
+h2 { color: white; background: #85774A; }
+h3 { color: white; background: #9D936E; }
+h4 { color: white; background: #9D936E; }
+    
+a { color: #BA6D36; }
+
+</style>
+</head>
+<body><a NAME="top" ID="top"></a>
+<h1>eric5.Plugins.CheckerPlugins.Pep8.Pep8StatisticsDialog</h1>
+<p>
+Module implementing a dialog showing statistical data for the last PEP 8 run.
+</p>
+<h3>Global Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Classes</h3>
+<table>
+<tr>
+<td><a href="#Pep8StatisticsDialog">Pep8StatisticsDialog</a></td>
+<td>Class implementing a dialog showing statistical data for the last PEP 8 run.</td>
+</tr>
+</table>
+<h3>Functions</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<hr /><hr />
+<a NAME="Pep8StatisticsDialog" ID="Pep8StatisticsDialog"></a>
+<h2>Pep8StatisticsDialog</h2>
+<p>
+    Class implementing a dialog showing statistical data for the last
+    PEP 8 run.
+</p>
+<h3>Derived from</h3>
+QDialog, Ui_Pep8StatisticsDialog
+<h3>Class Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#Pep8StatisticsDialog.__init__">Pep8StatisticsDialog</a></td>
+<td>Constructor</td>
+</tr><tr>
+<td><a href="#Pep8StatisticsDialog.__createItem">__createItem</a></td>
+<td>Private method to create an entry in the result list.</td>
+</tr>
+</table>
+<a NAME="Pep8StatisticsDialog.__init__" ID="Pep8StatisticsDialog.__init__"></a>
+<h4>Pep8StatisticsDialog (Constructor)</h4>
+<b>Pep8StatisticsDialog</b>(<i>statistics, parent = None</i>)
+<p>
+        Constructor
+</p><dl>
+<dt><i>dictionary</i></dt>
+<dd>
+with the statistical data
+</dd><dt><i>parent</i></dt>
+<dd>
+reference to the parent widget (QWidget)
+</dd>
+</dl><a NAME="Pep8StatisticsDialog.__createItem" ID="Pep8StatisticsDialog.__createItem"></a>
+<h4>Pep8StatisticsDialog.__createItem</h4>
+<b>__createItem</b>(<i>count, code, message</i>)
+<p>
+        Private method to create an entry in the result list.
+</p><dl>
+<dt><i>count</i></dt>
+<dd>
+occurrences of the issue (integer)
+</dd><dt><i>code</i></dt>
+<dd>
+of a PEP 8 message (string)
+</dd><dt><i>message</i></dt>
+<dd>
+PEP 8 message to be shown (string)
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
\ No newline at end of file
--- a/Documentation/Source/eric5.UI.FindFileDialog.html	Sat Jan 15 16:30:40 2011 +0100
+++ b/Documentation/Source/eric5.UI.FindFileDialog.html	Sat Jan 15 19:26:07 2011 +0100
@@ -45,9 +45,9 @@
 <p>
     Class implementing a dialog to search for text in files.
 </p><p>
-    The occurrences found are displayed in a QTreeWidget showing the filename, the 
-    linenumber and the found text. The file will be opened upon a double click onto 
-    the respective entry of the list.
+    The occurrences found are displayed in a QTreeWidget showing the filename,
+    the linenumber and the found text. The file will be opened upon a double
+    click onto the respective entry of the list.
 </p><h4>Signals</h4>
 <dl>
 <dt>designerFile(str)</dt>
@@ -55,7 +55,8 @@
 emitted to open a Qt-Designer file
 </dd><dt>sourceFile(str, int, str, int, int)</dt>
 <dd>
-emitted to open a source file at a line
+emitted to open a source file
+        at a line
 </dd>
 </dl>
 <h3>Derived from</h3>
@@ -164,7 +165,7 @@
         Private method to copy the path of an entry to the clipboard.
 </p><a NAME="FindFileDialog.__createItem" ID="FindFileDialog.__createItem"></a>
 <h4>FindFileDialog.__createItem</h4>
-<b>__createItem</b>(<i>file, line, text, start, end, replTxt = "", md5 = ""</i>)
+<b>__createItem</b>(<i>file, line, text, start, end, replTxt="", md5=""</i>)
 <p>
         Private method to create an entry in the file list.
 </p><dl>
@@ -211,7 +212,8 @@
 the root directory to search in (string)
 </dd><dt><i>filterRe</i></dt>
 <dd>
-regular expression defining the filter criteria (regexp object)
+regular expression defining the filter
+            criteria (regexp object)
 </dd>
 </dl><dl>
 <dt>Returns:</dt>
@@ -247,7 +249,8 @@
 <h4>FindFileDialog.on_dirCombo_editTextChanged</h4>
 <b>on_dirCombo_editTextChanged</b>(<i>text</i>)
 <p>
-        Private slot to handle the textChanged signal of the directory combo box.
+        Private slot to handle the textChanged signal of the directory
+        combo box.
 </p><dl>
 <dt><i>text</i></dt>
 <dd>
@@ -293,7 +296,8 @@
 <h4>FindFileDialog.on_findtextCombo_editTextChanged</h4>
 <b>on_findtextCombo_editTextChanged</b>(<i>text</i>)
 <p>
-        Private slot to handle the editTextChanged signal of the find text combo.
+        Private slot to handle the editTextChanged signal of the find
+        text combo.
 </p><dl>
 <dt><i>text</i></dt>
 <dd>
@@ -313,7 +317,8 @@
 <h4>FindFileDialog.on_replacetextCombo_editTextChanged</h4>
 <b>on_replacetextCombo_editTextChanged</b>(<i>text</i>)
 <p>
-        Private slot to handle the editTextChanged signal of the replace text combo.
+        Private slot to handle the editTextChanged signal of the replace
+        text combo.
 </p><dl>
 <dt><i>text</i></dt>
 <dd>
--- a/Documentation/Source/index-eric5.Plugins.CheckerPlugins.Pep8.html	Sat Jan 15 16:30:40 2011 +0100
+++ b/Documentation/Source/index-eric5.Plugins.CheckerPlugins.Pep8.html	Sat Jan 15 19:26:07 2011 +0100
@@ -38,6 +38,9 @@
 <td><a href="eric5.Plugins.CheckerPlugins.Pep8.Pep8Dialog.html">Pep8Dialog</a></td>
 <td>Module implementing a dialog to show the results of the PEP 8 check.</td>
 </tr><tr>
+<td><a href="eric5.Plugins.CheckerPlugins.Pep8.Pep8StatisticsDialog.html">Pep8StatisticsDialog</a></td>
+<td>Module implementing a dialog showing statistical data for the last PEP 8 run.</td>
+</tr><tr>
 <td><a href="eric5.Plugins.CheckerPlugins.Pep8.pep8.html">pep8</a></td>
 <td></td>
 </tr>
--- a/Plugins/CheckerPlugins/Pep8/Pep8Checker.py	Sat Jan 15 16:30:40 2011 +0100
+++ b/Plugins/CheckerPlugins/Pep8/Pep8Checker.py	Sat Jan 15 19:26:07 2011 +0100
@@ -60,6 +60,7 @@
         pep8.Checker.__init__(self, filename, lines)
         
         self.messages = []
+        self.statistics = {}
     
     def __ignore_code(self, code):
         """
@@ -103,13 +104,12 @@
             return
         
         text = pep8.getMessage(code, *args)
-        if code in pep8.options.counters:
-            pep8.options.counters[code] += 1
+        if code in self.statistics:
+            self.statistics[code] += 1
         else:
-            pep8.options.counters[code] = 1
-            pep8.options.messages[code] = text[5:]
+            self.statistics[code] = 1
         self.file_errors += 1
-        if pep8.options.counters[code] == 1 or pep8.options.repeat:
+        if self.statistics[code] == 1 or pep8.options.repeat:
             self.messages.append(
                 (self.filename, self.line_offset + line_number,
                  offset + 1, text)
@@ -133,6 +133,7 @@
             (comma separated string)
         """
         self.messages = []
+        self.statistics = {}
         
         interpreter = Preferences.getDebugger("PythonInterpreter")
         if interpreter == "" or not Utilities.isExecutable(interpreter):
@@ -173,6 +174,10 @@
             
             index = 0
             while index < len(output):
+                if output[index] == "PEP8_STATISTICS":
+                    index += 1
+                    break
+                
                 fname = output[index + 1]
                 lineno = int(output[index + 2])
                 position = int(output[index + 3])
@@ -187,6 +192,10 @@
                 
                 text = pep8.getMessage(code, *args)
                 self.messages.append((fname, lineno, position, text))
+            while index < len(output):
+                code, countStr = output[index].split(None, 1)
+                self.statistics[code] = int(countStr)
+                index += 1
         else:
             self.messages.append(filename, "1", "1",
                 self.trUtf8("Python2 interpreter did not finish within 15s."))
--- a/Plugins/CheckerPlugins/Pep8/Pep8Dialog.py	Sat Jan 15 16:30:40 2011 +0100
+++ b/Plugins/CheckerPlugins/Pep8/Pep8Dialog.py	Sat Jan 15 19:26:07 2011 +0100
@@ -20,6 +20,7 @@
 
 from .Pep8Checker import Pep8Checker, Pep8Py2Checker
 from .Pep8CodeSelectionDialog import Pep8CodeSelectionDialog
+from .Pep8StatisticsDialog import Pep8StatisticsDialog
 
 from .Ui_Pep8Dialog import Ui_Pep8Dialog
 
@@ -47,10 +48,16 @@
         QDialog.__init__(self, parent)
         self.setupUi(self)
         
+        self.statisticsButton = self.buttonBox.addButton(
+            self.trUtf8("Statistics..."), QDialogButtonBox.ActionRole)
+        self.statisticsButton.setToolTip(
+            self.trUtf8("Press to show some statistics for the last run"))
+        self.statisticsButton.setEnabled(False)
         self.showButton = self.buttonBox.addButton(
             self.trUtf8("Show"), QDialogButtonBox.ActionRole)
         self.showButton.setToolTip(
             self.trUtf8("Press to show all files containing an issue"))
+        self.showButton.setEnabled(False)
         self.buttonBox.button(QDialogButtonBox.Close).setEnabled(False)
         self.buttonBox.button(QDialogButtonBox.Cancel).setDefault(True)
         
@@ -65,6 +72,7 @@
         self.__project = None
         self.__forProject = False
         self.__data = {}
+        self.__statistics = {}
         
         self.clearButton.setIcon(
             UI.PixmapCache.getIcon("clearLeft.png"))
@@ -102,14 +110,42 @@
         itm = QTreeWidgetItem(self.__lastFileItem, 
             ["{0:6}".format(line), code, message])
         if code.startswith("W"):
-            itm.setIcon(0, UI.PixmapCache.getIcon("warning.png"))
+            itm.setIcon(1, UI.PixmapCache.getIcon("warning.png"))
         else:
-            itm.setIcon(0, UI.PixmapCache.getIcon("syntaxError.png"))
+            itm.setIcon(1, UI.PixmapCache.getIcon("syntaxError.png"))
+        
+        itm.setTextAlignment(0, Qt.AlignRight)
+        itm.setTextAlignment(1, Qt.AlignHCenter)
+        
         itm.setData(0, self.filenameRole, file)
         itm.setData(0, self.lineRole, int(line))
         itm.setData(0, self.positionRole, int(pos))
         itm.setData(0, self.messageRole, message)
     
+    def __updateStatistics(self, statistics):
+        """
+        Private method to update the collected statistics.
+        
+        @param statistics dictionary of statistical data with
+            message code as key and message count as value
+        """
+        self.__statistics["_FilesCount"] += 1
+        if statistics:
+            self.__statistics["_FilesIssues"] += 1
+            for key in statistics:
+                if key in self.__statistics:
+                    self.__statistics[key] += statistics[key]
+                else:
+                    self.__statistics[key] = statistics[key]
+    
+    def __resetStatistics(self):
+        """
+        Private slot to reset the statistics data.
+        """
+        self.__statistics = {}
+        self.__statistics["_FilesCount"] = 0
+        self.__statistics["_FilesIssues"] = 0
+    
     def prepare(self, fileList, project):
         """
         Public method to prepare the dialog with a list of filenames.
@@ -163,6 +199,8 @@
             self.repeatCheckBox.setChecked(repeat)
         QApplication.processEvents()
         
+        self.__resetStatistics()
+        
         if save:
             self.__fileOrFileList = fn
         
@@ -212,9 +250,9 @@
             for file in py3files + py2files:
                 self.checkProgress.setValue(progress)
                 QApplication.processEvents()
-                self.__resort()
                 
                 if self.cancelled:
+                    self.__resort()
                     return
                 
                 self.__lastFileItem = None
@@ -250,28 +288,21 @@
                         repeat = repeatMessages, 
                         select = includeMessages,
                         ignore = excludeMessages)
-                    checker.messages.sort(key = lambda a: a[1])
-                    for message in checker.messages:
-                        fname, lineno, position, text = message
-                        if not source[lineno - 1].strip()\
-                           .endswith("__IGNORE_WARNING__"):
-                            self.noResults = False
-                            self.__createResultItem(
-                                fname, lineno, position, text)
                 else:
                     checker = Pep8Checker(file, source, 
                         repeat = repeatMessages, 
                         select = includeMessages,
                         ignore = excludeMessages)
                     checker.check_all()
-                    checker.messages.sort(key = lambda a: a[1])
-                    for message in checker.messages:
-                        fname, lineno, position, text = message
-                        if not source[lineno - 1].strip()\
-                           .endswith("__IGNORE_WARNING__"):
-                            self.noResults = False
-                            self.__createResultItem(
-                                fname, lineno, position, text)
+                checker.messages.sort(key = lambda a: a[1])
+                for message in checker.messages:
+                    fname, lineno, position, text = message
+                    if not source[lineno - 1].strip()\
+                       .endswith("__IGNORE_WARNING__"):
+                        self.noResults = False
+                        self.__createResultItem(
+                            fname, lineno, position, text)
+                self.__updateStatistics(checker.statistics)
                 progress += 1
             self.checkProgress.setValue(progress)
             QApplication.processEvents()
@@ -294,9 +325,11 @@
         if self.noResults:
             QTreeWidgetItem(self.resultList, [self.trUtf8('No issues found.')])
             QApplication.processEvents()
+            self.statisticsButton.setEnabled(False)
             self.showButton.setEnabled(False)
             self.__clearErrors()
         else:
+            self.statisticsButton.setEnabled(True)
             self.showButton.setEnabled(True)
         self.resultList.header().resizeSections(QHeaderView.ResizeToContents)
         self.resultList.header().setStretchLastSection(True)
@@ -405,6 +438,14 @@
                 editor.clearFlakesWarnings()
     
     @pyqtSlot()
+    def on_statisticsButton_clicked(self):
+        """
+        Private slot to show the statistics dialog.
+        """
+        dlg = Pep8StatisticsDialog(self.__statistics, self)
+        dlg.exec_()
+    
+    @pyqtSlot()
     def on_loadDefaultButton_clicked(self):
         """
         Private slot to load the default configuration values.
@@ -446,6 +487,8 @@
             self.__finish()
         elif button == self.showButton:
             self.on_showButton_clicked()
+        elif button == self.statisticsButton:
+            self.on_statisticsButton_clicked()
     
     def __clearErrors(self):
         """
--- a/Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui	Sat Jan 15 16:30:40 2011 +0100
+++ b/Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui	Sat Jan 15 19:26:07 2011 +0100
@@ -62,15 +62,52 @@
         </property>
        </widget>
       </item>
-      <item row="0" column="5" colspan="2">
-       <widget class="QPushButton" name="startButton">
-        <property name="toolTip">
-         <string>Press to start the PEP 8 check run</string>
-        </property>
-        <property name="text">
-         <string>Start</string>
-        </property>
-       </widget>
+      <item row="0" column="5" rowspan="4">
+       <layout class="QVBoxLayout" name="verticalLayout_2">
+        <item>
+         <widget class="QPushButton" name="startButton">
+          <property name="toolTip">
+           <string>Press to start the PEP 8 check run</string>
+          </property>
+          <property name="text">
+           <string>Start</string>
+          </property>
+         </widget>
+        </item>
+        <item>
+         <spacer name="verticalSpacer">
+          <property name="orientation">
+           <enum>Qt::Vertical</enum>
+          </property>
+          <property name="sizeHint" stdset="0">
+           <size>
+            <width>20</width>
+            <height>18</height>
+           </size>
+          </property>
+         </spacer>
+        </item>
+        <item>
+         <widget class="QPushButton" name="loadDefaultButton">
+          <property name="toolTip">
+           <string>Press to load the default values</string>
+          </property>
+          <property name="text">
+           <string>Load Defaults</string>
+          </property>
+         </widget>
+        </item>
+        <item>
+         <widget class="QPushButton" name="storeDefaultButton">
+          <property name="toolTip">
+           <string>Press to store the current values as defaults</string>
+          </property>
+          <property name="text">
+           <string>Store Defaults</string>
+          </property>
+         </widget>
+        </item>
+       </layout>
       </item>
       <item row="1" column="0">
        <widget class="QLabel" name="label">
@@ -106,19 +143,6 @@
         </property>
        </widget>
       </item>
-      <item row="1" column="6" rowspan="3">
-       <spacer name="verticalSpacer">
-        <property name="orientation">
-         <enum>Qt::Vertical</enum>
-        </property>
-        <property name="sizeHint" stdset="0">
-         <size>
-          <width>20</width>
-          <height>80</height>
-         </size>
-        </property>
-       </spacer>
-      </item>
       <item row="2" column="0">
        <widget class="QLabel" name="label_3">
         <property name="text">
@@ -154,51 +178,14 @@
        </widget>
       </item>
       <item row="3" column="0" colspan="4">
-       <layout class="QHBoxLayout" name="horizontalLayout">
-        <item>
-         <widget class="QCheckBox" name="repeatCheckBox">
-          <property name="toolTip">
-           <string>Select to repeat each message type</string>
-          </property>
-          <property name="text">
-           <string>Repeat messages</string>
-          </property>
-         </widget>
-        </item>
-        <item>
-         <spacer name="horizontalSpacer">
-          <property name="orientation">
-           <enum>Qt::Horizontal</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>40</width>
-            <height>20</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-        <item>
-         <widget class="QPushButton" name="loadDefaultButton">
-          <property name="toolTip">
-           <string>Press to load the default values</string>
-          </property>
-          <property name="text">
-           <string>Load Defaults</string>
-          </property>
-         </widget>
-        </item>
-        <item>
-         <widget class="QPushButton" name="storeDefaultButton">
-          <property name="toolTip">
-           <string>Press to store the current values as defaults</string>
-          </property>
-          <property name="text">
-           <string>Store Defaults</string>
-          </property>
-         </widget>
-        </item>
-       </layout>
+       <widget class="QCheckBox" name="repeatCheckBox">
+        <property name="toolTip">
+         <string>Select to repeat each message type</string>
+        </property>
+        <property name="text">
+         <string>Repeat messages</string>
+        </property>
+       </widget>
       </item>
      </layout>
     </widget>
@@ -266,6 +253,7 @@
  <pixmapfunction>qPixmapFromMimeSource</pixmapfunction>
  <tabstops>
   <tabstop>startButton</tabstop>
+  <tabstop>loadDefaultButton</tabstop>
   <tabstop>excludeFilesEdit</tabstop>
   <tabstop>clearButton</tabstop>
   <tabstop>excludeMessagesEdit</tabstop>
@@ -275,7 +263,6 @@
   <tabstop>clearButtonIncludeMessages</tabstop>
   <tabstop>includeMessagesSelectButton</tabstop>
   <tabstop>repeatCheckBox</tabstop>
-  <tabstop>loadDefaultButton</tabstop>
   <tabstop>storeDefaultButton</tabstop>
   <tabstop>resultList</tabstop>
   <tabstop>buttonBox</tabstop>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py	Sat Jan 15 19:26:07 2011 +0100
@@ -0,0 +1,79 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (c) 2011 Detlev Offenbach <detlev@die-offenbachs.de>
+#
+
+"""
+Module implementing a dialog showing statistical data for the last PEP 8 run.
+"""
+
+from PyQt4.QtCore import Qt, QCoreApplication
+from PyQt4.QtGui import QDialog, QTreeWidgetItem
+
+from . import pep8
+
+from .Ui_Pep8StatisticsDialog import Ui_Pep8StatisticsDialog
+
+import UI.PixmapCache
+
+class Pep8StatisticsDialog(QDialog, Ui_Pep8StatisticsDialog):
+    """
+    Class implementing a dialog showing statistical data for the last
+    PEP 8 run.
+    """
+    def __init__(self, statistics, parent = None):
+        """
+        Constructor
+        
+        @param dictionary with the statistical data
+        @param parent reference to the parent widget (QWidget)
+        """
+        QDialog.__init__(self, parent)
+        self.setupUi(self)
+        
+        stats = statistics.copy()
+        filesCount = stats["_FilesCount"]
+        filesIssues = stats["_FilesIssues"]
+        del stats["_FilesCount"]
+        del stats["_FilesIssues"]
+        
+        totalIssues = 0
+        
+        for code in sorted(stats.keys(), key=lambda a: a[1:]):
+            if code in pep8.pep8_messages_sample_args:
+                message = QCoreApplication.translate("pep8", 
+                    pep8.pep8_messages[code]).format(
+                        *pep8.pep8_messages_sample_args[code])
+            else:
+                message = QCoreApplication.translate("pep8", 
+                    pep8.pep8_messages[code])
+            self.__createItem(stats[code], code, message)
+            totalIssues += stats[code]
+        
+        self.total.setText(
+            self.trUtf8("%n issue(s) found", "", totalIssues))
+        self.filesChecked.setText(
+            self.trUtf8("%n file(s) checked", "", filesCount))
+        self.filesIssues.setText(
+            self.trUtf8("%n file(s) with issues found", "", filesIssues))
+        
+        self.statisticsList.resizeColumnToContents(0)
+        self.statisticsList.resizeColumnToContents(1)
+    
+    def __createItem(self, count, code, message):
+        """
+        Private method to create an entry in the result list.
+        
+        @param count occurrences of the issue (integer)
+        @param code of a PEP 8 message (string)
+        @param message PEP 8 message to be shown (string)
+        """
+        itm = QTreeWidgetItem(self.statisticsList, 
+            ["{0:6}".format(count), code, message])
+        if code.startswith("W"):
+            itm.setIcon(1, UI.PixmapCache.getIcon("warning.png"))
+        elif code.startswith("E"):
+            itm.setIcon(1, UI.PixmapCache.getIcon("syntaxError.png"))
+        
+        itm.setTextAlignment(0, Qt.AlignRight)
+        itm.setTextAlignment(1, Qt.AlignHCenter)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui	Sat Jan 15 19:26:07 2011 +0100
@@ -0,0 +1,121 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>Pep8StatisticsDialog</class>
+ <widget class="QDialog" name="Pep8StatisticsDialog">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>531</width>
+    <height>300</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>PEP 8 Statistics</string>
+  </property>
+  <layout class="QVBoxLayout" name="verticalLayout">
+   <item>
+    <widget class="QTreeWidget" name="statisticsList">
+     <property name="alternatingRowColors">
+      <bool>true</bool>
+     </property>
+     <property name="rootIsDecorated">
+      <bool>false</bool>
+     </property>
+     <property name="wordWrap">
+      <bool>true</bool>
+     </property>
+     <column>
+      <property name="text">
+       <string>Count</string>
+      </property>
+     </column>
+     <column>
+      <property name="text">
+       <string>Code</string>
+      </property>
+     </column>
+     <column>
+      <property name="text">
+       <string>Message</string>
+      </property>
+     </column>
+    </widget>
+   </item>
+   <item>
+    <layout class="QHBoxLayout" name="horizontalLayout">
+     <item>
+      <widget class="QLabel" name="total">
+       <property name="text">
+        <string/>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QLabel" name="filesChecked">
+       <property name="text">
+        <string/>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QLabel" name="filesIssues">
+       <property name="text">
+        <string/>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
+   <item>
+    <widget class="QDialogButtonBox" name="buttonBox">
+     <property name="orientation">
+      <enum>Qt::Horizontal</enum>
+     </property>
+     <property name="standardButtons">
+      <set>QDialogButtonBox::Close</set>
+     </property>
+    </widget>
+   </item>
+  </layout>
+ </widget>
+ <tabstops>
+  <tabstop>statisticsList</tabstop>
+  <tabstop>buttonBox</tabstop>
+ </tabstops>
+ <resources/>
+ <connections>
+  <connection>
+   <sender>buttonBox</sender>
+   <signal>accepted()</signal>
+   <receiver>Pep8StatisticsDialog</receiver>
+   <slot>accept()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>248</x>
+     <y>254</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>157</x>
+     <y>274</y>
+    </hint>
+   </hints>
+  </connection>
+  <connection>
+   <sender>buttonBox</sender>
+   <signal>rejected()</signal>
+   <receiver>Pep8StatisticsDialog</receiver>
+   <slot>reject()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>316</x>
+     <y>260</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>286</x>
+     <y>274</y>
+    </hint>
+   </hints>
+  </connection>
+ </connections>
+</ui>
--- a/UtilitiesPython2/Pep8Checker.py	Sat Jan 15 16:30:40 2011 +0100
+++ b/UtilitiesPython2/Pep8Checker.py	Sat Jan 15 19:26:07 2011 +0100
@@ -56,6 +56,7 @@
         pep8.Checker.__init__(self, filename, lines)
         
         self.messages = []
+        self.statistics = {}
     
     def __ignore_code(self, code):
         """
@@ -98,13 +99,12 @@
         if self.__ignore_code(code):
             return
         
-        if code in pep8.options.counters:
-            pep8.options.counters[code] += 1
+        if code in self.statistics:
+            self.statistics[code] += 1
         else:
-            pep8.options.counters[code] = 1
-            pep8.options.messages[code] = code
+            self.statistics[code] = 1
         self.file_errors += 1
-        if pep8.options.counters[code] == 1 or pep8.options.repeat:
+        if self.statistics[code] == 1 or pep8.options.repeat:
             self.messages.append(
                 (self.filename, self.line_offset + line_number,
                  offset + 1, code, args)
@@ -164,6 +164,9 @@
                 print len(args)
                 for a in args:
                     print a
+            print "PEP8_STATISTICS"
+            for key in checker.statistics:
+                print key, checker.statistics[key]
         else:
             print "NO_PEP8"
             print filename
--- a/eric5.e4p	Sat Jan 15 16:30:40 2011 +0100
+++ b/eric5.e4p	Sat Jan 15 19:26:07 2011 +0100
@@ -851,6 +851,7 @@
     <Source>Plugins/CheckerPlugins/Pep8/Pep8CodeSelectionDialog.py</Source>
     <Source>UtilitiesPython2/pep8.py</Source>
     <Source>UtilitiesPython2/Pep8Checker.py</Source>
+    <Source>Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py</Source>
   </Sources>
   <Forms>
     <Form>PyUnit/UnittestDialog.ui</Form>
@@ -1087,6 +1088,7 @@
     <Form>Helpviewer/SslCertificatesDialog.ui</Form>
     <Form>Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui</Form>
     <Form>Plugins/CheckerPlugins/Pep8/Pep8CodeSelectionDialog.ui</Form>
+    <Form>Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui</Form>
   </Forms>
   <Translations>
     <Translation>i18n/eric5_cs.qm</Translation>
--- a/i18n/eric5_cs.ts	Sat Jan 15 16:30:40 2011 +0100
+++ b/i18n/eric5_cs.ts	Sat Jan 15 19:26:07 2011 +0100
@@ -11512,17 +11512,17 @@
         <translation>Text</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="62"/>
+        <location filename="UI/FindFileDialog.py" line="64"/>
         <source>Find</source>
         <translation>Hledat</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="500"/>
+        <location filename="UI/FindFileDialog.py" line="522"/>
         <source>Select directory</source>
         <translation>Výběr adresáře</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="58"/>
+        <location filename="UI/FindFileDialog.py" line="59"/>
         <source>Stop</source>
         <translation></translation>
     </message>
@@ -11577,7 +11577,7 @@
         <translation>Nahradit</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="599"/>
+        <location filename="UI/FindFileDialog.py" line="629"/>
         <source>Replace in Files</source>
         <translation>Nahradit v souborech</translation>
     </message>
@@ -11602,37 +11602,37 @@
         <translation>Pocit jako</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="624"/>
+        <location filename="UI/FindFileDialog.py" line="655"/>
         <source>Open</source>
         <translation>Otevřít</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="625"/>
+        <location filename="UI/FindFileDialog.py" line="656"/>
         <source>Copy Path to Clipboard</source>
         <translation>Kopírovat cestu do schránky</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="339"/>
+        <location filename="UI/FindFileDialog.py" line="357"/>
         <source>Invalid search expression</source>
         <translation>Neplatný výraz hledání</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="339"/>
+        <location filename="UI/FindFileDialog.py" line="357"/>
         <source>&lt;p&gt;The search expression is not valid.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Výraz hledná není platný. &lt;/p&gt;&lt;p&gt;Chyba: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="562"/>
+        <location filename="UI/FindFileDialog.py" line="586"/>
         <source>&lt;p&gt;Could not read the file &lt;b&gt;{0}&lt;/b&gt;. Skipping it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Nelze číst ze souboru  &lt;b&gt;{0}&lt;/b&gt;. Přeskočeno.&lt;/p&gt;&lt;p&gt;Důvod: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="599"/>
+        <location filename="UI/FindFileDialog.py" line="629"/>
         <source>&lt;p&gt;Could not save the file &lt;b&gt;{0}&lt;/b&gt;. Skipping it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Nelze uložit do souboru  &lt;b&gt;{0}&lt;/b&gt;. Přeskočeno.&lt;/p&gt;&lt;p&gt;Důvod: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="575"/>
+        <location filename="UI/FindFileDialog.py" line="600"/>
         <source>&lt;p&gt;The current and the original hash of the file &lt;b&gt;{0}&lt;/b&gt; are different. Skipping it.&lt;/p&gt;&lt;p&gt;Hash 1: {1}&lt;/p&gt;&lt;p&gt;Hash 2: {2}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -23336,52 +23336,52 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="68"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="70"/>
         <source>Press to start the PEP 8 check run</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="71"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="73"/>
         <source>Start</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="78"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="115"/>
         <source>Exclude Messages:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="92"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="129"/>
         <source>Press to clear the exclude messages edit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="149"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="173"/>
         <source>Press to select the messages from a list</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="152"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="176"/>
         <source>...</source>
         <translation type="unfinished">...</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="139"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="163"/>
         <source>Press to clear the include messages edit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="161"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="183"/>
         <source>Select to repeat each message type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="164"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="186"/>
         <source>Repeat messages</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="209"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="196"/>
         <source>&lt;b&gt;Result List&lt;/b&gt;
 &lt;p&gt;This list shows the results of the PEP 8 check. Double clicking
 an entry will open this entry in an editor window and position the cursor at
@@ -23389,95 +23389,155 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="225"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="212"/>
         <source>File/Line</source>
         <translation type="unfinished">Soubor/Řádek</translation>
     </message>
     <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="217"/>
+        <source>Code</source>
+        <translation type="unfinished">Kód</translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="222"/>
+        <source>Message</source>
+        <translation type="unfinished">Zpráva</translation>
+    </message>
+    <message>
         <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="230"/>
-        <source>Code</source>
-        <translation type="unfinished">Kód</translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="235"/>
-        <source>Message</source>
-        <translation type="unfinished">Zpráva</translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="243"/>
         <source>Shows the progress of the PEP 8 check action</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="50"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="56"/>
         <source>Show</source>
         <translation type="unfinished">Zobrazit</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="52"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="58"/>
         <source>Press to show all files containing an issue</source>
         <translation type="unfinished">Stisknout pro zobrazení všech souborů, které obsahují problém</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="232"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="270"/>
         <source>Error: {0}</source>
         <translation type="unfinished">Chyby: {0}</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="295"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="326"/>
         <source>No issues found.</source>
         <translation type="unfinished">Žádné problémy nenalezeny.</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="85"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="122"/>
         <source>Enter message codes or categories to be excluded separated by a comma</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="132"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="156"/>
         <source>Enter message codes or categories to be included separated by a comma</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="184"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="93"/>
         <source>Press to load the default values</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="187"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="96"/>
         <source>Load Defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="194"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="103"/>
         <source>Press to store the current values as defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="197"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="106"/>
         <source>Store Defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="125"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="149"/>
         <source>Included Messages:</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="51"/>
+        <source>Statistics...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="53"/>
+        <source>Press to show some statistics for the last run</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>Pep8Py2Checker</name>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="139"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="140"/>
         <source>Python2 interpreter not configured.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="191"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="200"/>
         <source>Python2 interpreter did not finish within 15s.</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>Pep8StatisticsDialog</name>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="14"/>
+        <source>PEP 8 Statistics</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="30"/>
+        <source>Count</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="35"/>
+        <source>Code</source>
+        <translation type="unfinished">Kód</translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="40"/>
+        <source>Message</source>
+        <translation type="unfinished">Zpráva</translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="53"/>
+        <source>%n issue(s) found</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+        </translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="55"/>
+        <source>%n file(s) checked</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+        </translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="57"/>
+        <source>%n file(s) with issues found</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+        </translation>
+    </message>
+</context>
+<context>
     <name>PixmapDiagram</name>
     <message>
         <location filename="Graphics/PixmapDiagram.py" line="159"/>
Binary file i18n/eric5_de.qm has changed
--- a/i18n/eric5_de.ts	Sat Jan 15 16:30:40 2011 +0100
+++ b/i18n/eric5_de.ts	Sat Jan 15 19:26:07 2011 +0100
@@ -11269,7 +11269,7 @@
 <context>
     <name>FindFileDialog</name>
     <message>
-        <location filename="UI/FindFileDialog.py" line="500"/>
+        <location filename="UI/FindFileDialog.py" line="522"/>
         <source>Select directory</source>
         <translation>Wähle ein Verzeichnis</translation>
     </message>
@@ -11404,12 +11404,12 @@
         <translation>Text</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="62"/>
+        <location filename="UI/FindFileDialog.py" line="64"/>
         <source>Find</source>
         <translation>Suchen</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="58"/>
+        <location filename="UI/FindFileDialog.py" line="59"/>
         <source>Stop</source>
         <translation>Anhalten</translation>
     </message>
@@ -11464,17 +11464,17 @@
         <translation>Ersetzen</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="599"/>
+        <location filename="UI/FindFileDialog.py" line="629"/>
         <source>Replace in Files</source>
         <translation>Ersetzen in Dateien</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="562"/>
+        <location filename="UI/FindFileDialog.py" line="586"/>
         <source>&lt;p&gt;Could not read the file &lt;b&gt;{0}&lt;/b&gt;. Skipping it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Datei &lt;b&gt;{0}&lt;/b&gt; konnte nicht gelesen werden. Überspringe sie.&lt;/p&gt;&lt;p&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="599"/>
+        <location filename="UI/FindFileDialog.py" line="629"/>
         <source>&lt;p&gt;Could not save the file &lt;b&gt;{0}&lt;/b&gt;. Skipping it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Die Datei &lt;b&gt;{0}&lt;/b&gt; konnte nicht gespeichert werden. Überspringe sie.&lt;/p&gt;&lt;p&gt;Ursache: {1}&lt;/p&gt;</translation>
     </message>
@@ -11499,27 +11499,27 @@
         <translation>Ersttreffer öffnen</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="624"/>
+        <location filename="UI/FindFileDialog.py" line="655"/>
         <source>Open</source>
         <translation>Öffnen</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="625"/>
+        <location filename="UI/FindFileDialog.py" line="656"/>
         <source>Copy Path to Clipboard</source>
         <translation>Pfad in die Zwischenablage kopieren</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="339"/>
+        <location filename="UI/FindFileDialog.py" line="357"/>
         <source>Invalid search expression</source>
         <translation>Ungültiger Suchausdruck</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="339"/>
+        <location filename="UI/FindFileDialog.py" line="357"/>
         <source>&lt;p&gt;The search expression is not valid.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Der Suchausdruck ist nicht gültig.&lt;/p&gt;&lt;p&gt;Fehler: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="575"/>
+        <location filename="UI/FindFileDialog.py" line="600"/>
         <source>&lt;p&gt;The current and the original hash of the file &lt;b&gt;{0}&lt;/b&gt; are different. Skipping it.&lt;/p&gt;&lt;p&gt;Hash 1: {1}&lt;/p&gt;&lt;p&gt;Hash 2: {2}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Der aktuelle und der originale Hash-Wert der Datei &lt;b&gt;{0}&lt;/b&gt; sind unterschiedlich. Überspringe sie.&lt;/p&gt;&lt;p&gt;Hash 1: {1}&lt;/p&gt;&lt;p&gt;Hash 2: {2}&lt;/p&gt;</translation>
     </message>
@@ -22993,52 +22993,52 @@
         <translation>Drücken, um den Filtertext zu löschen</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="68"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="70"/>
         <source>Press to start the PEP 8 check run</source>
         <translation>Drücken, um die PEP 8 Prüfung zu starten</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="71"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="73"/>
         <source>Start</source>
         <translation>Starten</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="78"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="115"/>
         <source>Exclude Messages:</source>
         <translation>Ignorierte Nachrichten:</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="92"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="129"/>
         <source>Press to clear the exclude messages edit</source>
         <translation>Drücken, um die Liste ignorierter Nachrichten zu löschen</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="149"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="173"/>
         <source>Press to select the messages from a list</source>
         <translation>Drücken, um die Nachrichten aus einer Liste zu wählen</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="152"/>
-        <source>...</source>
-        <translation>...</translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="139"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="176"/>
+        <source>...</source>
+        <translation>...</translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="163"/>
         <source>Press to clear the include messages edit</source>
         <translation>Drücken, um die Liste ausgewählter Nachrichten zu löschen</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="161"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="183"/>
         <source>Select to repeat each message type</source>
         <translation>Auswählen, um Wiederholungen eines Nachrichtentyps zuzulassen</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="164"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="186"/>
         <source>Repeat messages</source>
         <translation>Nachrichten wiederholen</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="209"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="196"/>
         <source>&lt;b&gt;Result List&lt;/b&gt;
 &lt;p&gt;This list shows the results of the PEP 8 check. Double clicking
 an entry will open this entry in an editor window and position the cursor at
@@ -23049,95 +23049,152 @@
 Zeile und Position.&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="225"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="212"/>
         <source>File/Line</source>
         <translation>Datei/Zeile</translation>
     </message>
     <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="217"/>
+        <source>Code</source>
+        <translation>Schlüssel</translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="222"/>
+        <source>Message</source>
+        <translation>Nachricht</translation>
+    </message>
+    <message>
         <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="230"/>
-        <source>Code</source>
-        <translation>Schlüssel</translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="235"/>
-        <source>Message</source>
-        <translation>Nachricht</translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="243"/>
         <source>Shows the progress of the PEP 8 check action</source>
         <translation>Zeigt den Fortschritt der PEP 8 Prüfung an</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="50"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="56"/>
         <source>Show</source>
         <translation>Zeige</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="52"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="58"/>
         <source>Press to show all files containing an issue</source>
         <translation>Drücken, um alle Dateien mit Problemen anzuzeigen</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="232"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="270"/>
         <source>Error: {0}</source>
         <translation>Fehler: {0}</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="295"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="326"/>
         <source>No issues found.</source>
         <translation>Keine Probleme gefunden.</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="85"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="122"/>
         <source>Enter message codes or categories to be excluded separated by a comma</source>
         <translation>Gib die Nachrichtenschlüssel oder -kategorien für auszuschließende Nachrichten durch Komma getrennt ein</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="132"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="156"/>
         <source>Enter message codes or categories to be included separated by a comma</source>
         <translation>Gib die Nachrichtenschlüssel oder -kategorien für ausgewählte Nachrichten durch Komma getrennt ein</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="184"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="93"/>
         <source>Press to load the default values</source>
         <translation>Drücken, um Standarwerte zu laden</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="187"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="96"/>
         <source>Load Defaults</source>
         <translation>Standards laden</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="194"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="103"/>
         <source>Press to store the current values as defaults</source>
         <translation>Drücken, um die aktuellen Werte als Standard zu speichern</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="197"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="106"/>
         <source>Store Defaults</source>
         <translation>Standards speichern</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="125"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="149"/>
         <source>Included Messages:</source>
         <translation>Ausgewählte Nachrichten:</translation>
     </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="51"/>
+        <source>Statistics...</source>
+        <translation>Statistik...</translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="53"/>
+        <source>Press to show some statistics for the last run</source>
+        <translation>Drücken, um eine Statistik für den letzten Lauf zu zeigen</translation>
+    </message>
 </context>
 <context>
     <name>Pep8Py2Checker</name>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="139"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="140"/>
         <source>Python2 interpreter not configured.</source>
         <translation>Kein Python2 Interpreter konfiguriert.</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="191"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="200"/>
         <source>Python2 interpreter did not finish within 15s.</source>
         <translation>Python2 Interpreter wurde nicht innerhalb von 15s beendet.</translation>
     </message>
 </context>
 <context>
+    <name>Pep8StatisticsDialog</name>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="14"/>
+        <source>PEP 8 Statistics</source>
+        <translation>PEP 8 Statistik</translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="30"/>
+        <source>Count</source>
+        <translation>Anzahl</translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="35"/>
+        <source>Code</source>
+        <translation>Schlüssel</translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="40"/>
+        <source>Message</source>
+        <translation>Nachricht</translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="53"/>
+        <source>%n issue(s) found</source>
+        <translation>
+            <numerusform>%n Problem gefunden</numerusform>
+            <numerusform>%n Probleme gefunden</numerusform>
+        </translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="55"/>
+        <source>%n file(s) checked</source>
+        <translation>
+            <numerusform>%n Datei überprüft</numerusform>
+            <numerusform>%n Dateien überprüft</numerusform>
+        </translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="57"/>
+        <source>%n file(s) with issues found</source>
+        <translation>
+            <numerusform>%n Datei mit Problemen gefunden</numerusform>
+            <numerusform>%n Dateien mit Problemen gefunden</numerusform>
+        </translation>
+    </message>
+</context>
+<context>
     <name>PixmapDiagram</name>
     <message>
         <location filename="Graphics/PixmapDiagram.py" line="159"/>
Binary file i18n/eric5_en.qm has changed
--- a/i18n/eric5_en.ts	Sat Jan 15 16:30:40 2011 +0100
+++ b/i18n/eric5_en.ts	Sat Jan 15 19:26:07 2011 +0100
@@ -1,5 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS><TS version="1.1" language="en">
+<!DOCTYPE TS>
+<TS version="2.0" language="en">
 <context>
     <name>AboutDialog</name>
     <message>
@@ -1549,7 +1550,7 @@
     </message>
     <message>
         <location filename="Helpviewer/Bookmarks/BookmarksMenu.py" line="139"/>
-        <source>Open in New &amp;Tab<byte value="x9"/>Ctrl+LMB</source>
+        <source>Open in New &amp;Tab	Ctrl+LMB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -1585,7 +1586,7 @@
     </message>
     <message>
         <location filename="Helpviewer/Bookmarks/BookmarksToolBar.py" line="72"/>
-        <source>Open in New &amp;Tab<byte value="x9"/>Ctrl+LMB</source>
+        <source>Open in New &amp;Tab	Ctrl+LMB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -11390,57 +11391,57 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="58"/>
+        <location filename="UI/FindFileDialog.py" line="59"/>
         <source>Stop</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="62"/>
+        <location filename="UI/FindFileDialog.py" line="64"/>
         <source>Find</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="599"/>
+        <location filename="UI/FindFileDialog.py" line="629"/>
         <source>Replace in Files</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="339"/>
+        <location filename="UI/FindFileDialog.py" line="357"/>
         <source>Invalid search expression</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="339"/>
+        <location filename="UI/FindFileDialog.py" line="357"/>
         <source>&lt;p&gt;The search expression is not valid.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="500"/>
+        <location filename="UI/FindFileDialog.py" line="522"/>
         <source>Select directory</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="562"/>
+        <location filename="UI/FindFileDialog.py" line="586"/>
         <source>&lt;p&gt;Could not read the file &lt;b&gt;{0}&lt;/b&gt;. Skipping it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="599"/>
+        <location filename="UI/FindFileDialog.py" line="629"/>
         <source>&lt;p&gt;Could not save the file &lt;b&gt;{0}&lt;/b&gt;. Skipping it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="624"/>
+        <location filename="UI/FindFileDialog.py" line="655"/>
         <source>Open</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="625"/>
+        <location filename="UI/FindFileDialog.py" line="656"/>
         <source>Copy Path to Clipboard</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="575"/>
+        <location filename="UI/FindFileDialog.py" line="600"/>
         <source>&lt;p&gt;The current and the original hash of the file &lt;b&gt;{0}&lt;/b&gt; are different. Skipping it.&lt;/p&gt;&lt;p&gt;Hash 1: {1}&lt;/p&gt;&lt;p&gt;Hash 2: {2}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -11823,7 +11824,7 @@
     </message>
     <message>
         <location filename="Helpviewer/HelpBrowserWV.py" line="778"/>
-        <source>Open Link in New Tab<byte value="x9"/>Ctrl+LMB</source>
+        <source>Open Link in New Tab	Ctrl+LMB</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
@@ -22874,52 +22875,52 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="68"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="70"/>
         <source>Press to start the PEP 8 check run</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="71"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="73"/>
         <source>Start</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="78"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="115"/>
         <source>Exclude Messages:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="92"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="129"/>
         <source>Press to clear the exclude messages edit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="149"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="173"/>
         <source>Press to select the messages from a list</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="152"/>
-        <source>...</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="139"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="176"/>
+        <source>...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="163"/>
         <source>Press to clear the include messages edit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="161"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="183"/>
         <source>Select to repeat each message type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="164"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="186"/>
         <source>Repeat messages</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="209"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="196"/>
         <source>&lt;b&gt;Result List&lt;/b&gt;
 &lt;p&gt;This list shows the results of the PEP 8 check. Double clicking
 an entry will open this entry in an editor window and position the cursor at
@@ -22927,95 +22928,152 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="225"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="212"/>
         <source>File/Line</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="217"/>
+        <source>Code</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="222"/>
+        <source>Message</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
         <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="230"/>
-        <source>Code</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="235"/>
-        <source>Message</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="243"/>
         <source>Shows the progress of the PEP 8 check action</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="50"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="56"/>
         <source>Show</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="52"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="58"/>
         <source>Press to show all files containing an issue</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="232"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="270"/>
         <source>Error: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="295"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="326"/>
         <source>No issues found.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="85"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="122"/>
         <source>Enter message codes or categories to be excluded separated by a comma</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="132"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="156"/>
         <source>Enter message codes or categories to be included separated by a comma</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="184"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="93"/>
         <source>Press to load the default values</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="187"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="96"/>
         <source>Load Defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="194"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="103"/>
         <source>Press to store the current values as defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="197"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="106"/>
         <source>Store Defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="125"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="149"/>
         <source>Included Messages:</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="51"/>
+        <source>Statistics...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="53"/>
+        <source>Press to show some statistics for the last run</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>Pep8Py2Checker</name>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="139"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="140"/>
         <source>Python2 interpreter not configured.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="191"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="200"/>
         <source>Python2 interpreter did not finish within 15s.</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>Pep8StatisticsDialog</name>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="14"/>
+        <source>PEP 8 Statistics</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="30"/>
+        <source>Count</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="35"/>
+        <source>Code</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="40"/>
+        <source>Message</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="53"/>
+        <source>%n issue(s) found</source>
+        <translation>
+            <numerusform>%n issue found</numerusform>
+            <numerusform>%n issues found</numerusform>
+        </translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="55"/>
+        <source>%n file(s) checked</source>
+        <translation>
+            <numerusform>%n file checked</numerusform>
+            <numerusform>%n files checked</numerusform>
+        </translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="57"/>
+        <source>%n file(s) with issues found</source>
+        <translation>
+            <numerusform>%n file with issues found</numerusform>
+            <numerusform>%n files with issues found</numerusform>
+        </translation>
+    </message>
+</context>
+<context>
     <name>PixmapDiagram</name>
     <message>
         <location filename="Graphics/PixmapDiagram.py" line="159"/>
--- a/i18n/eric5_es.ts	Sat Jan 15 16:30:40 2011 +0100
+++ b/i18n/eric5_es.ts	Sat Jan 15 19:26:07 2011 +0100
@@ -11403,17 +11403,17 @@
         <translation>Texto</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="62"/>
+        <location filename="UI/FindFileDialog.py" line="64"/>
         <source>Find</source>
         <translation>Buscar</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="500"/>
+        <location filename="UI/FindFileDialog.py" line="522"/>
         <source>Select directory</source>
         <translation>Seleccionar un directorio</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="58"/>
+        <location filename="UI/FindFileDialog.py" line="59"/>
         <source>Stop</source>
         <translation>Detener</translation>
     </message>
@@ -11478,7 +11478,7 @@
         <translation>Reemplazar</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="599"/>
+        <location filename="UI/FindFileDialog.py" line="629"/>
         <source>Replace in Files</source>
         <translation>Reemplazar en Archivos</translation>
     </message>
@@ -11493,37 +11493,37 @@
         <translation>Abrir primera ocurrencia</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="624"/>
+        <location filename="UI/FindFileDialog.py" line="655"/>
         <source>Open</source>
         <translation>Abrir</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="625"/>
+        <location filename="UI/FindFileDialog.py" line="656"/>
         <source>Copy Path to Clipboard</source>
         <translation>Copiar Ruta al Portapapeles</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="339"/>
+        <location filename="UI/FindFileDialog.py" line="357"/>
         <source>Invalid search expression</source>
         <translation>Expresión de búsqueda no válida</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="339"/>
+        <location filename="UI/FindFileDialog.py" line="357"/>
         <source>&lt;p&gt;The search expression is not valid.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;La expresión de búsqueda no es válida.&lt;/p&gt;&lt;p&gt;Error:{0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="562"/>
+        <location filename="UI/FindFileDialog.py" line="586"/>
         <source>&lt;p&gt;Could not read the file &lt;b&gt;{0}&lt;/b&gt;. Skipping it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;No se pudo leer el archivo &lt;b&gt;{0}&lt;/b&gt;. Omitiéndolo.&lt;/p&gt;&lt;p&gt;Razón: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="599"/>
+        <location filename="UI/FindFileDialog.py" line="629"/>
         <source>&lt;p&gt;Could not save the file &lt;b&gt;{0}&lt;/b&gt;. Skipping it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;No se pudo guardar el archivo &lt;b&gt;{0}&lt;/b&gt;. Omitiéndolo.&lt;/p&gt;&lt;p&gt;Razón: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="575"/>
+        <location filename="UI/FindFileDialog.py" line="600"/>
         <source>&lt;p&gt;The current and the original hash of the file &lt;b&gt;{0}&lt;/b&gt; are different. Skipping it.&lt;/p&gt;&lt;p&gt;Hash 1: {1}&lt;/p&gt;&lt;p&gt;Hash 2: {2}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Los hash actual y original del archivos &lt;b&gt;{0}&lt;/b&gt; son distintos. Abandonando.&lt;/p&gt;&lt;p&gt;Hash 1: {1}&lt;/p&gt;&lt;p&gt;Hash 2: {2}&lt;/p&gt;</translation>
     </message>
@@ -23045,87 +23045,87 @@
         <translation type="unfinished">Pulse para limpiar la caja de filtro</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="68"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="70"/>
         <source>Press to start the PEP 8 check run</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="71"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="73"/>
         <source>Start</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="78"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="115"/>
         <source>Exclude Messages:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="85"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="122"/>
         <source>Enter message codes or categories to be excluded separated by a comma</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="92"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="129"/>
         <source>Press to clear the exclude messages edit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="173"/>
+        <source>Press to select the messages from a list</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="176"/>
+        <source>...</source>
+        <translation type="unfinished">...</translation>
+    </message>
+    <message>
         <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="149"/>
-        <source>Press to select the messages from a list</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="152"/>
-        <source>...</source>
-        <translation type="unfinished">...</translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="125"/>
         <source>Included Messages:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="132"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="156"/>
         <source>Enter message codes or categories to be included separated by a comma</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="139"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="163"/>
         <source>Press to clear the include messages edit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="161"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="183"/>
         <source>Select to repeat each message type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="164"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="186"/>
         <source>Repeat messages</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="184"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="93"/>
         <source>Press to load the default values</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="187"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="96"/>
         <source>Load Defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="194"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="103"/>
         <source>Press to store the current values as defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="197"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="106"/>
         <source>Store Defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="209"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="196"/>
         <source>&lt;b&gt;Result List&lt;/b&gt;
 &lt;p&gt;This list shows the results of the PEP 8 check. Double clicking
 an entry will open this entry in an editor window and position the cursor at
@@ -23133,60 +23133,117 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="225"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="212"/>
         <source>File/Line</source>
         <translation type="unfinished">Archivo/Línea</translation>
     </message>
     <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="217"/>
+        <source>Code</source>
+        <translation type="unfinished">Código</translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="222"/>
+        <source>Message</source>
+        <translation type="unfinished">Mensaje</translation>
+    </message>
+    <message>
         <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="230"/>
-        <source>Code</source>
-        <translation type="unfinished">Código</translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="235"/>
-        <source>Message</source>
-        <translation type="unfinished">Mensaje</translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="243"/>
         <source>Shows the progress of the PEP 8 check action</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="50"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="56"/>
         <source>Show</source>
         <translation type="unfinished">Mostrar</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="52"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="58"/>
         <source>Press to show all files containing an issue</source>
         <translation type="unfinished">Pulsar para mostrar todos los archivos con algún problema</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="232"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="270"/>
         <source>Error: {0}</source>
         <translation type="unfinished">Error: {0}</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="295"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="326"/>
         <source>No issues found.</source>
         <translation type="unfinished">No se han encontrado problemas.</translation>
     </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="51"/>
+        <source>Statistics...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="53"/>
+        <source>Press to show some statistics for the last run</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>Pep8Py2Checker</name>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="139"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="140"/>
         <source>Python2 interpreter not configured.</source>
         <translation type="unfinished">Intérprete de Python2 no configurado.</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="191"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="200"/>
         <source>Python2 interpreter did not finish within 15s.</source>
         <translation type="unfinished">El intérprete de Python2 no terminó en un plazo de 15s.</translation>
     </message>
 </context>
 <context>
+    <name>Pep8StatisticsDialog</name>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="14"/>
+        <source>PEP 8 Statistics</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="30"/>
+        <source>Count</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="35"/>
+        <source>Code</source>
+        <translation type="unfinished">Código</translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="40"/>
+        <source>Message</source>
+        <translation type="unfinished">Mensaje</translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="53"/>
+        <source>%n issue(s) found</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+        </translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="55"/>
+        <source>%n file(s) checked</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+        </translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="57"/>
+        <source>%n file(s) with issues found</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+        </translation>
+    </message>
+</context>
+<context>
     <name>PixmapDiagram</name>
     <message>
         <location filename="Graphics/PixmapDiagram.py" line="159"/>
--- a/i18n/eric5_fr.ts	Sat Jan 15 16:30:40 2011 +0100
+++ b/i18n/eric5_fr.ts	Sat Jan 15 19:26:07 2011 +0100
@@ -12318,7 +12318,7 @@
 <context>
     <name>FindFileDialog</name>
     <message>
-        <location filename="UI/FindFileDialog.py" line="500"/>
+        <location filename="UI/FindFileDialog.py" line="522"/>
         <source>Select directory</source>
         <translation>Sélection répertoire</translation>
     </message>
@@ -12453,12 +12453,12 @@
         <translation>Texte</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="62"/>
+        <location filename="UI/FindFileDialog.py" line="64"/>
         <source>Find</source>
         <translation>Trouver</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="58"/>
+        <location filename="UI/FindFileDialog.py" line="59"/>
         <source>Stop</source>
         <translation>Arrêt</translation>
     </message>
@@ -12523,7 +12523,7 @@
         <translation>Remplacer</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="599"/>
+        <location filename="UI/FindFileDialog.py" line="629"/>
         <source>Replace in Files</source>
         <translation>Remplacer dans les fichiers</translation>
     </message>
@@ -12548,37 +12548,37 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="624"/>
+        <location filename="UI/FindFileDialog.py" line="655"/>
         <source>Open</source>
         <translation type="unfinished">Ouvrir</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="625"/>
+        <location filename="UI/FindFileDialog.py" line="656"/>
         <source>Copy Path to Clipboard</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="339"/>
+        <location filename="UI/FindFileDialog.py" line="357"/>
         <source>Invalid search expression</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="339"/>
+        <location filename="UI/FindFileDialog.py" line="357"/>
         <source>&lt;p&gt;The search expression is not valid.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="562"/>
+        <location filename="UI/FindFileDialog.py" line="586"/>
         <source>&lt;p&gt;Could not read the file &lt;b&gt;{0}&lt;/b&gt;. Skipping it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="599"/>
+        <location filename="UI/FindFileDialog.py" line="629"/>
         <source>&lt;p&gt;Could not save the file &lt;b&gt;{0}&lt;/b&gt;. Skipping it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="575"/>
+        <location filename="UI/FindFileDialog.py" line="600"/>
         <source>&lt;p&gt;The current and the original hash of the file &lt;b&gt;{0}&lt;/b&gt; are different. Skipping it.&lt;/p&gt;&lt;p&gt;Hash 1: {1}&lt;/p&gt;&lt;p&gt;Hash 2: {2}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -24976,52 +24976,52 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="68"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="70"/>
         <source>Press to start the PEP 8 check run</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="71"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="73"/>
         <source>Start</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="78"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="115"/>
         <source>Exclude Messages:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="92"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="129"/>
         <source>Press to clear the exclude messages edit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="149"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="173"/>
         <source>Press to select the messages from a list</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="152"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="176"/>
         <source>...</source>
         <translation type="unfinished">...</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="139"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="163"/>
         <source>Press to clear the include messages edit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="161"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="183"/>
         <source>Select to repeat each message type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="164"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="186"/>
         <source>Repeat messages</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="209"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="196"/>
         <source>&lt;b&gt;Result List&lt;/b&gt;
 &lt;p&gt;This list shows the results of the PEP 8 check. Double clicking
 an entry will open this entry in an editor window and position the cursor at
@@ -25029,95 +25029,152 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="225"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="212"/>
         <source>File/Line</source>
         <translation type="unfinished">Fichier/ligne</translation>
     </message>
     <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="217"/>
+        <source>Code</source>
+        <translation type="unfinished">Code</translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="222"/>
+        <source>Message</source>
+        <translation type="unfinished">Message</translation>
+    </message>
+    <message>
         <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="230"/>
-        <source>Code</source>
-        <translation type="unfinished">Code</translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="235"/>
-        <source>Message</source>
-        <translation type="unfinished">Message</translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="243"/>
         <source>Shows the progress of the PEP 8 check action</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="50"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="56"/>
         <source>Show</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="52"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="58"/>
         <source>Press to show all files containing an issue</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="232"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="270"/>
         <source>Error: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="295"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="326"/>
         <source>No issues found.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="85"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="122"/>
         <source>Enter message codes or categories to be excluded separated by a comma</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="132"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="156"/>
         <source>Enter message codes or categories to be included separated by a comma</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="184"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="93"/>
         <source>Press to load the default values</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="187"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="96"/>
         <source>Load Defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="194"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="103"/>
         <source>Press to store the current values as defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="197"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="106"/>
         <source>Store Defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="125"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="149"/>
         <source>Included Messages:</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="51"/>
+        <source>Statistics...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="53"/>
+        <source>Press to show some statistics for the last run</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>Pep8Py2Checker</name>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="139"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="140"/>
         <source>Python2 interpreter not configured.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="191"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="200"/>
         <source>Python2 interpreter did not finish within 15s.</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>Pep8StatisticsDialog</name>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="14"/>
+        <source>PEP 8 Statistics</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="30"/>
+        <source>Count</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="35"/>
+        <source>Code</source>
+        <translation type="unfinished">Code</translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="40"/>
+        <source>Message</source>
+        <translation type="unfinished">Message</translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="53"/>
+        <source>%n issue(s) found</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+        </translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="55"/>
+        <source>%n file(s) checked</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+        </translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="57"/>
+        <source>%n file(s) with issues found</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+        </translation>
+    </message>
+</context>
+<context>
     <name>PixmapDiagram</name>
     <message>
         <location filename="Graphics/PixmapDiagram.py" line="159"/>
--- a/i18n/eric5_it.ts	Sat Jan 15 16:30:40 2011 +0100
+++ b/i18n/eric5_it.ts	Sat Jan 15 19:26:07 2011 +0100
@@ -11414,7 +11414,7 @@
 <context>
     <name>FindFileDialog</name>
     <message>
-        <location filename="UI/FindFileDialog.py" line="500"/>
+        <location filename="UI/FindFileDialog.py" line="522"/>
         <source>Select directory</source>
         <translation>Seleziona una directory</translation>
     </message>
@@ -11549,12 +11549,12 @@
         <translation>Testo</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="62"/>
+        <location filename="UI/FindFileDialog.py" line="64"/>
         <source>Find</source>
         <translation>Trova</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="58"/>
+        <location filename="UI/FindFileDialog.py" line="59"/>
         <source>Stop</source>
         <translation>Ferma</translation>
     </message>
@@ -11619,7 +11619,7 @@
         <translation>Sostituisci</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="599"/>
+        <location filename="UI/FindFileDialog.py" line="629"/>
         <source>Replace in Files</source>
         <translation>Sostituisci nei file</translation>
     </message>
@@ -11634,37 +11634,37 @@
         <translation>Feeling Like</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="624"/>
+        <location filename="UI/FindFileDialog.py" line="655"/>
         <source>Open</source>
         <translation>Apri</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="625"/>
+        <location filename="UI/FindFileDialog.py" line="656"/>
         <source>Copy Path to Clipboard</source>
         <translation>Copia il path nella Clipboard</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="339"/>
+        <location filename="UI/FindFileDialog.py" line="357"/>
         <source>Invalid search expression</source>
         <translation>Espressione di ricerca non valida</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="339"/>
+        <location filename="UI/FindFileDialog.py" line="357"/>
         <source>&lt;p&gt;The search expression is not valid.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;L&apos;espressione di ricerca non è valida.&lt;/p&gt;&lt;p&gt;Errore: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="562"/>
+        <location filename="UI/FindFileDialog.py" line="586"/>
         <source>&lt;p&gt;Could not read the file &lt;b&gt;{0}&lt;/b&gt;. Skipping it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Non posso leggere il file&lt;b&gt;{0}&lt;/b&gt;. Lo salto.&lt;/p&gt;&lt;p&gt;Motivo:{1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="599"/>
+        <location filename="UI/FindFileDialog.py" line="629"/>
         <source>&lt;p&gt;Could not save the file &lt;b&gt;{0}&lt;/b&gt;. Skipping it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Non posso salvare il file&lt;b&gt;{0}&lt;/b&gt;. Lo salto.&lt;/p&gt;&lt;p&gt;Motivo:{1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="575"/>
+        <location filename="UI/FindFileDialog.py" line="600"/>
         <source>&lt;p&gt;The current and the original hash of the file &lt;b&gt;{0}&lt;/b&gt; are different. Skipping it.&lt;/p&gt;&lt;p&gt;Hash 1: {1}&lt;/p&gt;&lt;p&gt;Hash 2: {2}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -23391,52 +23391,52 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="68"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="70"/>
         <source>Press to start the PEP 8 check run</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="71"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="73"/>
         <source>Start</source>
         <translation type="unfinished">Inizia</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="78"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="115"/>
         <source>Exclude Messages:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="92"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="129"/>
         <source>Press to clear the exclude messages edit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="149"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="173"/>
         <source>Press to select the messages from a list</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="152"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="176"/>
         <source>...</source>
         <translation type="unfinished">...</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="139"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="163"/>
         <source>Press to clear the include messages edit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="161"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="183"/>
         <source>Select to repeat each message type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="164"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="186"/>
         <source>Repeat messages</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="209"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="196"/>
         <source>&lt;b&gt;Result List&lt;/b&gt;
 &lt;p&gt;This list shows the results of the PEP 8 check. Double clicking
 an entry will open this entry in an editor window and position the cursor at
@@ -23444,95 +23444,152 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="225"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="212"/>
         <source>File/Line</source>
         <translation type="unfinished">File/Linea</translation>
     </message>
     <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="217"/>
+        <source>Code</source>
+        <translation type="unfinished">Codice</translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="222"/>
+        <source>Message</source>
+        <translation type="unfinished">Messaggio</translation>
+    </message>
+    <message>
         <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="230"/>
-        <source>Code</source>
-        <translation type="unfinished">Codice</translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="235"/>
-        <source>Message</source>
-        <translation type="unfinished">Messaggio</translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="243"/>
         <source>Shows the progress of the PEP 8 check action</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="50"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="56"/>
         <source>Show</source>
         <translation type="unfinished">Mostra</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="52"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="58"/>
         <source>Press to show all files containing an issue</source>
         <translation type="unfinished">Premi per mostrare tutti i file che contengono errori di sintassi</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="232"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="270"/>
         <source>Error: {0}</source>
         <translation type="unfinished">Errori: {0}</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="295"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="326"/>
         <source>No issues found.</source>
         <translation type="unfinished">Nessun problema trovato.</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="85"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="122"/>
         <source>Enter message codes or categories to be excluded separated by a comma</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="132"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="156"/>
         <source>Enter message codes or categories to be included separated by a comma</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="184"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="93"/>
         <source>Press to load the default values</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="187"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="96"/>
         <source>Load Defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="194"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="103"/>
         <source>Press to store the current values as defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="197"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="106"/>
         <source>Store Defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="125"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="149"/>
         <source>Included Messages:</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="51"/>
+        <source>Statistics...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="53"/>
+        <source>Press to show some statistics for the last run</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>Pep8Py2Checker</name>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="139"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="140"/>
         <source>Python2 interpreter not configured.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="191"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="200"/>
         <source>Python2 interpreter did not finish within 15s.</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>Pep8StatisticsDialog</name>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="14"/>
+        <source>PEP 8 Statistics</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="30"/>
+        <source>Count</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="35"/>
+        <source>Code</source>
+        <translation type="unfinished">Codice</translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="40"/>
+        <source>Message</source>
+        <translation type="unfinished">Messaggio</translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="53"/>
+        <source>%n issue(s) found</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+        </translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="55"/>
+        <source>%n file(s) checked</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+        </translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="57"/>
+        <source>%n file(s) with issues found</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+        </translation>
+    </message>
+</context>
+<context>
     <name>PixmapDiagram</name>
     <message>
         <location filename="Graphics/PixmapDiagram.py" line="159"/>
--- a/i18n/eric5_ru.ts	Sat Jan 15 16:30:40 2011 +0100
+++ b/i18n/eric5_ru.ts	Sat Jan 15 19:26:07 2011 +0100
@@ -11438,7 +11438,7 @@
 <context>
     <name>FindFileDialog</name>
     <message>
-        <location filename="UI/FindFileDialog.py" line="500"/>
+        <location filename="UI/FindFileDialog.py" line="522"/>
         <source>Select directory</source>
         <translation>Выберите каталог</translation>
     </message>
@@ -11573,12 +11573,12 @@
         <translation>Текст</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="62"/>
+        <location filename="UI/FindFileDialog.py" line="64"/>
         <source>Find</source>
         <translation>Найти</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="58"/>
+        <location filename="UI/FindFileDialog.py" line="59"/>
         <source>Stop</source>
         <translation>Стоп</translation>
     </message>
@@ -11633,17 +11633,17 @@
         <translation>Заменить</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="599"/>
+        <location filename="UI/FindFileDialog.py" line="629"/>
         <source>Replace in Files</source>
         <translation>Заменить в файлах</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="562"/>
+        <location filename="UI/FindFileDialog.py" line="586"/>
         <source>&lt;p&gt;Could not read the file &lt;b&gt;{0}&lt;/b&gt;. Skipping it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Не могу прочитать файл &lt;b&gt;{0}&lt;/b&gt;. Пропускаю.&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="599"/>
+        <location filename="UI/FindFileDialog.py" line="629"/>
         <source>&lt;p&gt;Could not save the file &lt;b&gt;{0}&lt;/b&gt;. Skipping it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Не могу сохранить файл &lt;b&gt;{0}&lt;/b&gt;. Пропускаю.&lt;/p&gt;&lt;p&gt;Причина: {1}&lt;/p&gt;</translation>
     </message>
@@ -11668,27 +11668,27 @@
         <translation>Приблизительно</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="624"/>
+        <location filename="UI/FindFileDialog.py" line="655"/>
         <source>Open</source>
         <translation>Открыть</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="625"/>
+        <location filename="UI/FindFileDialog.py" line="656"/>
         <source>Copy Path to Clipboard</source>
         <translation>Сопировать путь в буфер обмена</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="339"/>
+        <location filename="UI/FindFileDialog.py" line="357"/>
         <source>Invalid search expression</source>
         <translation>Неверное выражение для поиска</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="339"/>
+        <location filename="UI/FindFileDialog.py" line="357"/>
         <source>&lt;p&gt;The search expression is not valid.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;</source>
         <translation>&lt;p&gt;Неверное выражение для поиска.&lt;/p&gt;&lt;p&gt;Ошибка: {0}&lt;/p&gt;</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="575"/>
+        <location filename="UI/FindFileDialog.py" line="600"/>
         <source>&lt;p&gt;The current and the original hash of the file &lt;b&gt;{0}&lt;/b&gt; are different. Skipping it.&lt;/p&gt;&lt;p&gt;Hash 1: {1}&lt;/p&gt;&lt;p&gt;Hash 2: {2}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -23455,52 +23455,52 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="68"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="70"/>
         <source>Press to start the PEP 8 check run</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="71"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="73"/>
         <source>Start</source>
         <translation type="unfinished">Начало</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="78"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="115"/>
         <source>Exclude Messages:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="92"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="129"/>
         <source>Press to clear the exclude messages edit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="149"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="173"/>
         <source>Press to select the messages from a list</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="152"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="176"/>
         <source>...</source>
         <translation type="unfinished">...</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="139"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="163"/>
         <source>Press to clear the include messages edit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="161"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="183"/>
         <source>Select to repeat each message type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="164"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="186"/>
         <source>Repeat messages</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="209"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="196"/>
         <source>&lt;b&gt;Result List&lt;/b&gt;
 &lt;p&gt;This list shows the results of the PEP 8 check. Double clicking
 an entry will open this entry in an editor window and position the cursor at
@@ -23508,95 +23508,155 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="225"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="212"/>
         <source>File/Line</source>
         <translation type="unfinished">Файл/Строка</translation>
     </message>
     <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="217"/>
+        <source>Code</source>
+        <translation type="unfinished">Код</translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="222"/>
+        <source>Message</source>
+        <translation type="unfinished">Сообщение</translation>
+    </message>
+    <message>
         <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="230"/>
-        <source>Code</source>
-        <translation type="unfinished">Код</translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="235"/>
-        <source>Message</source>
-        <translation type="unfinished">Сообщение</translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="243"/>
         <source>Shows the progress of the PEP 8 check action</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="50"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="56"/>
         <source>Show</source>
         <translation type="unfinished">Показать</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="52"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="58"/>
         <source>Press to show all files containing an issue</source>
         <translation type="unfinished">Показать все файлы, содержащие синтаксические ошибки</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="232"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="270"/>
         <source>Error: {0}</source>
         <translation type="unfinished">Ошибка: {0}</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="295"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="326"/>
         <source>No issues found.</source>
         <translation type="unfinished">Синтаксисические ошибки не найдены.</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="85"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="122"/>
         <source>Enter message codes or categories to be excluded separated by a comma</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="132"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="156"/>
         <source>Enter message codes or categories to be included separated by a comma</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="184"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="93"/>
         <source>Press to load the default values</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="187"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="96"/>
         <source>Load Defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="194"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="103"/>
         <source>Press to store the current values as defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="197"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="106"/>
         <source>Store Defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="125"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="149"/>
         <source>Included Messages:</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="51"/>
+        <source>Statistics...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="53"/>
+        <source>Press to show some statistics for the last run</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>Pep8Py2Checker</name>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="139"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="140"/>
         <source>Python2 interpreter not configured.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="191"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="200"/>
         <source>Python2 interpreter did not finish within 15s.</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>Pep8StatisticsDialog</name>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="14"/>
+        <source>PEP 8 Statistics</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="30"/>
+        <source>Count</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="35"/>
+        <source>Code</source>
+        <translation type="unfinished">Код</translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="40"/>
+        <source>Message</source>
+        <translation type="unfinished">Сообщение</translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="53"/>
+        <source>%n issue(s) found</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+        </translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="55"/>
+        <source>%n file(s) checked</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+        </translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="57"/>
+        <source>%n file(s) with issues found</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+        </translation>
+    </message>
+</context>
+<context>
     <name>PixmapDiagram</name>
     <message>
         <location filename="Graphics/PixmapDiagram.py" line="159"/>
--- a/i18n/eric5_tr.ts	Sat Jan 15 16:30:40 2011 +0100
+++ b/i18n/eric5_tr.ts	Sat Jan 15 19:26:07 2011 +0100
@@ -12420,22 +12420,22 @@
         <translation>Yerdeğiştir</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="58"/>
+        <location filename="UI/FindFileDialog.py" line="59"/>
         <source>Stop</source>
         <translation>Dur</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="62"/>
+        <location filename="UI/FindFileDialog.py" line="64"/>
         <source>Find</source>
         <translation>Bul</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="599"/>
+        <location filename="UI/FindFileDialog.py" line="629"/>
         <source>Replace in Files</source>
         <translation>Dosya içinde değiştir</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="500"/>
+        <location filename="UI/FindFileDialog.py" line="522"/>
         <source>Select directory</source>
         <translation>Dizin Seçiniz</translation>
     </message>
@@ -12460,37 +12460,37 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="624"/>
+        <location filename="UI/FindFileDialog.py" line="655"/>
         <source>Open</source>
         <translation type="unfinished">Aç</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="625"/>
+        <location filename="UI/FindFileDialog.py" line="656"/>
         <source>Copy Path to Clipboard</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="339"/>
+        <location filename="UI/FindFileDialog.py" line="357"/>
         <source>Invalid search expression</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="339"/>
+        <location filename="UI/FindFileDialog.py" line="357"/>
         <source>&lt;p&gt;The search expression is not valid.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="562"/>
+        <location filename="UI/FindFileDialog.py" line="586"/>
         <source>&lt;p&gt;Could not read the file &lt;b&gt;{0}&lt;/b&gt;. Skipping it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="599"/>
+        <location filename="UI/FindFileDialog.py" line="629"/>
         <source>&lt;p&gt;Could not save the file &lt;b&gt;{0}&lt;/b&gt;. Skipping it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="575"/>
+        <location filename="UI/FindFileDialog.py" line="600"/>
         <source>&lt;p&gt;The current and the original hash of the file &lt;b&gt;{0}&lt;/b&gt; are different. Skipping it.&lt;/p&gt;&lt;p&gt;Hash 1: {1}&lt;/p&gt;&lt;p&gt;Hash 2: {2}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -24873,52 +24873,52 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="68"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="70"/>
         <source>Press to start the PEP 8 check run</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="71"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="73"/>
         <source>Start</source>
         <translation type="unfinished">Başla</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="78"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="115"/>
         <source>Exclude Messages:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="92"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="129"/>
         <source>Press to clear the exclude messages edit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="149"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="173"/>
         <source>Press to select the messages from a list</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="152"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="176"/>
         <source>...</source>
         <translation type="unfinished">...</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="139"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="163"/>
         <source>Press to clear the include messages edit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="161"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="183"/>
         <source>Select to repeat each message type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="164"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="186"/>
         <source>Repeat messages</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="209"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="196"/>
         <source>&lt;b&gt;Result List&lt;/b&gt;
 &lt;p&gt;This list shows the results of the PEP 8 check. Double clicking
 an entry will open this entry in an editor window and position the cursor at
@@ -24926,95 +24926,152 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="225"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="212"/>
         <source>File/Line</source>
         <translation type="unfinished">Dosya/Satır</translation>
     </message>
     <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="217"/>
+        <source>Code</source>
+        <translation type="unfinished">Kod</translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="222"/>
+        <source>Message</source>
+        <translation type="unfinished">Mesaj</translation>
+    </message>
+    <message>
         <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="230"/>
-        <source>Code</source>
-        <translation type="unfinished">Kod</translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="235"/>
-        <source>Message</source>
-        <translation type="unfinished">Mesaj</translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="243"/>
         <source>Shows the progress of the PEP 8 check action</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="50"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="56"/>
         <source>Show</source>
         <translation type="unfinished">Göster</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="52"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="58"/>
         <source>Press to show all files containing an issue</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="232"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="270"/>
         <source>Error: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="295"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="326"/>
         <source>No issues found.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="85"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="122"/>
         <source>Enter message codes or categories to be excluded separated by a comma</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="132"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="156"/>
         <source>Enter message codes or categories to be included separated by a comma</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="184"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="93"/>
         <source>Press to load the default values</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="187"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="96"/>
         <source>Load Defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="194"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="103"/>
         <source>Press to store the current values as defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="197"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="106"/>
         <source>Store Defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="125"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="149"/>
         <source>Included Messages:</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="51"/>
+        <source>Statistics...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="53"/>
+        <source>Press to show some statistics for the last run</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>Pep8Py2Checker</name>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="139"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="140"/>
         <source>Python2 interpreter not configured.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="191"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="200"/>
         <source>Python2 interpreter did not finish within 15s.</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>Pep8StatisticsDialog</name>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="14"/>
+        <source>PEP 8 Statistics</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="30"/>
+        <source>Count</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="35"/>
+        <source>Code</source>
+        <translation type="unfinished">Kod</translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="40"/>
+        <source>Message</source>
+        <translation type="unfinished">Mesaj</translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="53"/>
+        <source>%n issue(s) found</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+        </translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="55"/>
+        <source>%n file(s) checked</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+        </translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="57"/>
+        <source>%n file(s) with issues found</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+            <numerusform></numerusform>
+        </translation>
+    </message>
+</context>
+<context>
     <name>PixmapDiagram</name>
     <message>
         <location filename="Graphics/PixmapDiagram.py" line="159"/>
--- a/i18n/eric5_zh_CN.GB2312.ts	Sat Jan 15 16:30:40 2011 +0100
+++ b/i18n/eric5_zh_CN.GB2312.ts	Sat Jan 15 19:26:07 2011 +0100
@@ -12460,22 +12460,22 @@
         <translation>替换</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="58"/>
+        <location filename="UI/FindFileDialog.py" line="59"/>
         <source>Stop</source>
         <translation>中止</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="62"/>
+        <location filename="UI/FindFileDialog.py" line="64"/>
         <source>Find</source>
         <translation>查找</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="599"/>
+        <location filename="UI/FindFileDialog.py" line="629"/>
         <source>Replace in Files</source>
         <translation>在文件中替换</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="500"/>
+        <location filename="UI/FindFileDialog.py" line="522"/>
         <source>Select directory</source>
         <translation>选择文件夹</translation>
     </message>
@@ -12500,37 +12500,37 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="624"/>
+        <location filename="UI/FindFileDialog.py" line="655"/>
         <source>Open</source>
         <translation type="unfinished">打开</translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="625"/>
+        <location filename="UI/FindFileDialog.py" line="656"/>
         <source>Copy Path to Clipboard</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="339"/>
+        <location filename="UI/FindFileDialog.py" line="357"/>
         <source>Invalid search expression</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="339"/>
+        <location filename="UI/FindFileDialog.py" line="357"/>
         <source>&lt;p&gt;The search expression is not valid.&lt;/p&gt;&lt;p&gt;Error: {0}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="562"/>
+        <location filename="UI/FindFileDialog.py" line="586"/>
         <source>&lt;p&gt;Could not read the file &lt;b&gt;{0}&lt;/b&gt;. Skipping it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="599"/>
+        <location filename="UI/FindFileDialog.py" line="629"/>
         <source>&lt;p&gt;Could not save the file &lt;b&gt;{0}&lt;/b&gt;. Skipping it.&lt;/p&gt;&lt;p&gt;Reason: {1}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="UI/FindFileDialog.py" line="575"/>
+        <location filename="UI/FindFileDialog.py" line="600"/>
         <source>&lt;p&gt;The current and the original hash of the file &lt;b&gt;{0}&lt;/b&gt; are different. Skipping it.&lt;/p&gt;&lt;p&gt;Hash 1: {1}&lt;/p&gt;&lt;p&gt;Hash 2: {2}&lt;/p&gt;</source>
         <translation type="unfinished"></translation>
     </message>
@@ -24948,52 +24948,52 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="68"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="70"/>
         <source>Press to start the PEP 8 check run</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="71"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="73"/>
         <source>Start</source>
         <translation type="unfinished">开始</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="78"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="115"/>
         <source>Exclude Messages:</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="92"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="129"/>
         <source>Press to clear the exclude messages edit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="149"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="173"/>
         <source>Press to select the messages from a list</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="152"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="176"/>
         <source>...</source>
         <translation type="unfinished">……</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="139"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="163"/>
         <source>Press to clear the include messages edit</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="161"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="183"/>
         <source>Select to repeat each message type</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="164"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="186"/>
         <source>Repeat messages</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="209"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="196"/>
         <source>&lt;b&gt;Result List&lt;/b&gt;
 &lt;p&gt;This list shows the results of the PEP 8 check. Double clicking
 an entry will open this entry in an editor window and position the cursor at
@@ -25001,95 +25001,149 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="225"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="212"/>
         <source>File/Line</source>
         <translation type="unfinished">文件/行</translation>
     </message>
     <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="217"/>
+        <source>Code</source>
+        <translation type="unfinished">代码</translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="222"/>
+        <source>Message</source>
+        <translation type="unfinished">消息</translation>
+    </message>
+    <message>
         <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="230"/>
-        <source>Code</source>
-        <translation type="unfinished">代码</translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="235"/>
-        <source>Message</source>
-        <translation type="unfinished">消息</translation>
-    </message>
-    <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="243"/>
         <source>Shows the progress of the PEP 8 check action</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="50"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="56"/>
         <source>Show</source>
         <translation type="unfinished">显示</translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="52"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="58"/>
         <source>Press to show all files containing an issue</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="232"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="270"/>
         <source>Error: {0}</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="295"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="326"/>
         <source>No issues found.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="85"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="122"/>
         <source>Enter message codes or categories to be excluded separated by a comma</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="132"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="156"/>
         <source>Enter message codes or categories to be included separated by a comma</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="184"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="93"/>
         <source>Press to load the default values</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="187"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="96"/>
         <source>Load Defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="194"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="103"/>
         <source>Press to store the current values as defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="197"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="106"/>
         <source>Store Defaults</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="125"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.ui" line="149"/>
         <source>Included Messages:</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="51"/>
+        <source>Statistics...</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Dialog.py" line="53"/>
+        <source>Press to show some statistics for the last run</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>Pep8Py2Checker</name>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="139"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="140"/>
         <source>Python2 interpreter not configured.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="191"/>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8Checker.py" line="200"/>
         <source>Python2 interpreter did not finish within 15s.</source>
         <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
+    <name>Pep8StatisticsDialog</name>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="14"/>
+        <source>PEP 8 Statistics</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="30"/>
+        <source>Count</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="35"/>
+        <source>Code</source>
+        <translation type="unfinished">代码</translation>
+    </message>
+    <message>
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.ui" line="40"/>
+        <source>Message</source>
+        <translation type="unfinished">消息</translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="53"/>
+        <source>%n issue(s) found</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+        </translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="55"/>
+        <source>%n file(s) checked</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+        </translation>
+    </message>
+    <message numerus="yes">
+        <location filename="Plugins/CheckerPlugins/Pep8/Pep8StatisticsDialog.py" line="57"/>
+        <source>%n file(s) with issues found</source>
+        <translation type="unfinished">
+            <numerusform></numerusform>
+        </translation>
+    </message>
+</context>
+<context>
     <name>PixmapDiagram</name>
     <message>
         <location filename="Graphics/PixmapDiagram.py" line="159"/>

eric ide

mercurial