Hi.

I dug through the code and came up with a solution. I’ll attach the patch.


Regards, Mathias

-- 
debian/rules
diff -Nur orig/Zend/zend_highlight.h new/Zend/zend_highlight.h
--- orig/Zend/zend_highlight.h	2006-01-05 00:53:04.000000000 +0100
+++ new/Zend/zend_highlight.h	2007-04-06 18:07:40.000000000 +0200
@@ -31,6 +31,7 @@
 
 
 typedef struct _zend_syntax_highlighter_ini {
+	char *highlight_bg;
 	char *highlight_html;
 	char *highlight_comment;
 	char *highlight_default;
diff -Nur orig/Zend/zend_highlight.c new/Zend/zend_highlight.c
--- orig/Zend/zend_highlight.c	2006-01-05 00:53:04.000000000 +0100
+++ new/Zend/zend_highlight.c	2007-04-06 17:31:29.000000000 +0200
@@ -92,11 +92,12 @@
 {
 	zval token;
 	int token_type;
-	char *last_color = syntax_highlighter_ini->highlight_html;
+	char *last_color = syntax_highlighter_ini->highlight_bg;
 	char *next_color;
 	int in_string=0;
 
-	zend_printf("<code>");
+	zend_printf("<body style=\"background-color: %s\"><code>", last_color);
+	last_color = syntax_highlighter_ini->highlight_html;
 	zend_printf("<span style=\"color: %s\">\n", last_color);
 	/* highlight stuff coming back from zendlex() */
 	token.type = 0;
@@ -182,7 +183,7 @@
 		zend_printf("</span>\n");
 	}
 	zend_printf("</span>\n");
-	zend_printf("</code>");
+	zend_printf("</code></body>");
 }
 
 
diff -Nur orig/ext/standard/basic_functions.c new/ext/standard/basic_functions.c
--- orig/ext/standard/basic_functions.c	2006-10-13 03:42:19.000000000 +0200
+++ new/ext/standard/basic_functions.c	2007-04-06 17:39:29.000000000 +0200
@@ -5370,6 +5370,7 @@
 
 ZEND_API void php_get_highlight_struct(zend_syntax_highlighter_ini *syntax_highlighter_ini)
 {
+	syntax_highlighter_ini->highlight_bg      = INI_STR("highlight.bg");
 	syntax_highlighter_ini->highlight_comment = INI_STR("highlight.comment");
 	syntax_highlighter_ini->highlight_default = INI_STR("highlight.default");
 	syntax_highlighter_ini->highlight_html    = INI_STR("highlight.html");

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to