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<String, String> 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; } }