[latexila] Latexmk pp: improve the regex
- From: SÃbastien Wilmet <swilmet src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [latexila] Latexmk pp: improve the regex
- Date: Sat, 30 Jul 2011 22:48:50 +0000 (UTC)
commit 12efb6f63c90e16c76a8f7447c1c254e44cf18dc
Author: SÃbastien Wilmet <swilmet src gnome org>
Date: Sat Jul 30 14:14:49 2011 +0200
Latexmk pp: improve the regex
src/post_processors.vala | 17 +++++++++--------
1 files changed, 9 insertions(+), 8 deletions(-)
---
diff --git a/src/post_processors.vala b/src/post_processors.vala
index 839ada4..7ee6701 100644
--- a/src/post_processors.vala
+++ b/src/post_processors.vala
@@ -191,25 +191,26 @@ private class LatexmkPostProcessor : GLib.Object, PostProcessor
try
{
- string reg_rule_str = "^-{12}\\R";
+ string ungreedy_lines = "((?U)(.*\\R)*)";
+
+ string reg_rule_str = "-{12}\\R";
reg_rule_str += "(?P<line>Run number \\d+ of rule '(?P<rule>.*)')\\R";
reg_rule_str += "(-{12}\\R){2}";
reg_rule_str += "Running '(?P<cmd>.*)'\\R";
reg_rule_str += "-{12}\\R";
- reg_rule_str += "((?U)(.*\\R)*)"; // ungreedy
- reg_rule_str += "Latexmk: applying rule .*\\R";
+ reg_rule_str += ungreedy_lines;
+ reg_rule_str += "(Latexmk: applying rule .*\\R)+";
reg_rule_str += "(For rule '.*', running .*\\R)?";
- reg_rule_str += "(?P<output>(?U)(.*\\R)*)"; // ungreedy
+ reg_rule_str += "(?P<output>" + ungreedy_lines + ")";
reg_rule_str += "(Latexmk:|Rule '.*':)";
- reg_rule = new Regex (reg_rule_str,
- RegexCompileFlags.MULTILINE | RegexCompileFlags.OPTIMIZE);
+ reg_rule = new Regex (reg_rule_str, RegexCompileFlags.OPTIMIZE);
- string reg_no_rule_str = "^(Latexmk: This is Latexmk.*\\R)?";
+ string reg_no_rule_str = "(Latexmk: This is Latexmk.*\\R)?";
reg_no_rule_str += "(\\*{4} Report bugs.*\\R)?";
reg_no_rule_str += "(?P<output>(.*\\R)*)";
- reg_no_rule = new Regex (reg_no_rule_str, RegexCompileFlags.MULTILINE);
+ reg_no_rule = new Regex (reg_no_rule_str);
}
catch (RegexError e)
{
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]