diff --git a/karaf/gshell/gshell-commands/src/main/java/org/apache/felix/karaf/gshell/commands/InfoAction.java b/karaf/gshell/gshell-commands/src/main/java/org/apache/felix/karaf/gshell/commands/InfoAction.java
index 4f657bd..68264b0 100644
--- a/karaf/gshell/gshell-commands/src/main/java/org/apache/felix/karaf/gshell/commands/InfoAction.java
+++ b/karaf/gshell/gshell-commands/src/main/java/org/apache/felix/karaf/gshell/commands/InfoAction.java
@@ -31,6 +31,7 @@
 
 import org.apache.felix.karaf.gshell.console.OsgiCommandSupport;
 import org.apache.felix.gogo.commands.Command;
+import org.fusesource.jansi.Ansi;
 
 @Command(scope = "shell", name = "info", description = "Print Karaf informations")
 public class InfoAction extends OsgiCommandSupport {
@@ -151,7 +152,9 @@
     }
 
     void printValue(String name, int pad, String value) {
-        System.out.println("  @|bold " + name + spaces(pad - name.length()) + "|   " + value);
+        System.out.println(Ansi.ansi().a("  ")
+                                .a(Ansi.Attribute.INTENSITY_BOLD).a(name).a(spaces(pad - name.length())).a(Ansi.Attribute.RESET)
+                                .a("   ").a(value).toString());
     }
 
     String spaces(int nb) {
