diff --git a/glafp-utils/sgmlverb/sgmlverb.lex b/glafp-utils/sgmlverb/sgmlverb.lex
index daa20ae2b9fcfdf6fe75a039195a5ccd01dbd624..d6ce058a5188a05904e7912859e8532af517ddde 100644
--- a/glafp-utils/sgmlverb/sgmlverb.lex
+++ b/glafp-utils/sgmlverb/sgmlverb.lex
@@ -40,11 +40,15 @@ miranda			([0-9]+(\-([0-9]+)?)?)?>
 <VERB>\~		{ printf ("&tilde;"); }
 <VERB>\^		{ printf ("&circ;"); }
 
-<NORM>\<verb\>		{ printf ("<verb>"); PUSH NORM; BEGIN VERBENV; }
-<VERBENV>\<\/verb\>	{ printf ("</verb>"); POP; }
-<VERBENV>\&\&		{ printf ("&"); }
-<VERBENV>\&		{ printf ("&ero;"); }
-<VERBENV>\<\/		{ printf ("&etago;"); }
+<NORM>\<verb\>		 { printf ("<verb>"); PUSH NORM; BEGIN VERBENV; }
+<NORM>\<code\>		 { printf ("<code>"); PUSH NORM; BEGIN VERBENV; }
+<NORM>\\begin\{code\}	 { printf ("<code>"); PUSH NORM; BEGIN VERBENV; }
+<VERBENV>\<\/verb\>	 { printf ("</verb>"); POP; }
+<VERBENV>\<\/code\>	 { printf ("</code>"); POP; }
+<VERBENV>\<\\end\{code\} { printf ("</code>"); POP; }
+<VERBENV>\&\&		 { printf ("&"); }
+<VERBENV>\&		 { printf ("&ero;"); }
+<VERBENV>\<\/		 { printf ("&etago;"); }
 
 %%
 int