From 2e51ca74914cea4bb7f69af82b46945235fdf8c8 Mon Sep 17 00:00:00 2001 From: Yanis HAMOUDI Date: Sat, 8 Feb 2025 22:40:49 +0100 Subject: [PATCH] =?UTF-8?q?Am=C3=A9lioration=20du=20parser.=20On=20laisse?= =?UTF-8?q?=20les=20commentaires=20comme=20fait=20make?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/fr/monlouyan/bakefile/BakefileParser.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/fr/monlouyan/bakefile/BakefileParser.java b/src/fr/monlouyan/bakefile/BakefileParser.java index c98d8cf..7d1a0ac 100644 --- a/src/fr/monlouyan/bakefile/BakefileParser.java +++ b/src/fr/monlouyan/bakefile/BakefileParser.java @@ -24,7 +24,7 @@ public class BakefileParser { * Regex pour détecter les lignes de commande associées à une target. * Format : " gcc -o program program.c" (ligne indentée) */ - private static final Pattern COMMAND_PATTERN = Pattern.compile("^\\t(.+?)(?:#.*)?$"); + private static final Pattern COMMAND_PATTERN = Pattern.compile("^\\t(.+)$"); /** * Regex pour détecter les définitions de variables. @@ -124,7 +124,7 @@ public class BakefileParser { commands = new ArrayList<>(); } else if (commandMatcher.matches()) { - commands.add(commandMatcher.group(1).trim()); + commands.add(commandMatcher.group(1)); } } @@ -152,7 +152,8 @@ public class BakefileParser { for (Map.Entry entry : variables.entrySet()) { String key = "$(" + entry.getKey() + ")"; if (result.contains(key)) { - result = result.replace(key, entry.getValue().trim()); + // Préserver les espaces dans les valeurs des variables + result = result.replace(key, entry.getValue()); replaced = true; } }