diff --git a/basis/html/templates/fhtml/fhtml.factor b/basis/html/templates/fhtml/fhtml.factor
index ed5a1ea48a..b6d960841e 100644
--- a/basis/html/templates/fhtml/fhtml.factor
+++ b/basis/html/templates/fhtml/fhtml.factor
@@ -2,9 +2,8 @@
! Copyright (C) 2006, 2010 Slava Pestov
! See http://factorcode.org/license.txt for BSD license.
USING: accessors combinators compiler.units html.templates io
-io.encodings.utf8 io.files kernel lexer lexer.private math
-namespaces parser parser.notes quotations sequences splitting
-vocabs.parser ;
+io.encodings.utf8 io.files kernel lexer math namespaces parser
+parser.notes quotations sequences splitting vocabs.parser ;
IN: html.templates.fhtml
! We use a custom lexer so that %> ends a token even if not
diff --git a/core/lexer/lexer-docs.factor b/core/lexer/lexer-docs.factor
index 01ed6828c2..61f0b717e4 100644
--- a/core/lexer/lexer-docs.factor
+++ b/core/lexer/lexer-docs.factor
@@ -1,5 +1,5 @@
-USING: help.markup help.syntax kernel lexer.private math
-sequences strings words quotations ;
+USING: help.markup help.syntax kernel math sequences strings
+words quotations ;
IN: lexer
HELP: lexer
diff --git a/core/lexer/lexer.factor b/core/lexer/lexer.factor
index ffccd7694c..f60babccc0 100644
--- a/core/lexer/lexer.factor
+++ b/core/lexer/lexer.factor
@@ -52,18 +52,14 @@ ERROR: unexpected want got ;
: forbid-tab ( c -- c )
[ CHAR: \t eq? [ "[space]" "[tab]" unexpected ] when ] keep ; inline
-
+ ] dip or ; inline
: change-lexer-column ( lexer quot -- )
- [ [ column>> ] [ line-text>> ] bi ] prepose keep column<< ; inline
+ [ check-lexer [ column>> ] [ line-text>> ] bi ] prepose
+ keep column<< ; inline
GENERIC: skip-blank ( lexer -- )