diff --git a/collects/scribble/private/manual-code.rkt b/collects/scribble/private/manual-code.rkt
index 2e9eb53f..e384ddc0 100644
--- a/collects/scribble/private/manual-code.rkt
+++ b/collects/scribble/private/manual-code.rkt
@@ -29,7 +29,10 @@
                               #:name "#:context keyword")
                    (~optional (~seq #:line-numbers line-numbers:expr)
                               #:defaults ([line-numbers #'#f])
-                              #:name "#:line-numbers keyword"))
+                              #:name "#:line-numbers keyword")
+                   (~optional (~seq #:line-number-sep line-number-sep:expr)
+                              #:defaults ([line-number-sep #'1])
+                              #:name "#:line-number-sep keyword"))
               ...)
         str ...)
      #`(typeset-code str ...
@@ -43,7 +46,8 @@
                                         (and (pair? (syntax-e v))
                                              #`#'#,(car (syntax-e v))))
                                       #'#f))
-                     #:line-numbers line-numbers)]))
+                     #:line-numbers line-numbers
+                     #:line-number-sep line-number-sep)]))
 
 (define-syntax (codeblock stx) #`(code-inset #,(do-codeblock stx)))
 (define-syntax (codeblock0 stx) (do-codeblock stx))
@@ -53,6 +57,7 @@
                       #:indent [indent 2]
                       #:keep-lang-line? [keep-lang-line? #t]
                       #:line-numbers [line-numbers #f]
+                      #:line-number-sep [line-number-sep 1]
                       #:block? [block? #t]
                       . strs)
   (let* ([xstr (apply string-append strs)]
@@ -162,6 +167,7 @@
         (list->lines
          indent
          #:line-numbers line-numbers
+         #:line-number-sep line-number-sep
          #:block? block?
          (let loop ([pos 0]
                     [tokens tokens])
@@ -245,6 +251,7 @@
 
 (define (list->lines indent-amt l 
                      #:line-numbers line-numbers
+                     #:line-number-sep line-number-sep
                      #:block? block?)
   (define indent-elem (if (zero? indent-amt)
                           ""
@@ -265,9 +272,13 @@
     (define ln (format "~a" n))
     (define lnl (string-length ln))
     (define diff (- line-cntl lnl))
-    (define l1 (list (tt ln) (hspace 1)))
-    (cons (make-element 'smaller (make-element 'smaller  
-      (if (not (zero? diff)) (cons (hspace diff) l1) l1))) r))
+    (define l1 (list (tt ln) (hspace line-number-sep)))
+    (cons (make-element 'smaller 
+                        (make-element 'smaller  
+                                      (if (not (zero? diff))
+                                          (cons (hspace diff) l1)
+                                          l1)))
+          r))
 
   (define (make-line accum-line line-number)
     (define rest (cons indent-elem accum-line))
diff --git a/collects/scribblings/scribble/manual.scrbl b/collects/scribblings/scribble/manual.scrbl
index 1f843b41..7a99dc35 100644
--- a/collects/scribblings/scribble/manual.scrbl
+++ b/collects/scribblings/scribble/manual.scrbl
@@ -72,12 +72,14 @@ and @racket[code] versus @racket[racketbock] and
                        (code:line #:indent indent-expr)
                        (code:line #:expand expand-expr)
                        (code:line #:context context-expr)
-                       (code:line #:line-numbers line-number-expr)])
+                       (code:line #:line-numbers line-number-expr)
+                       (code:line #:line-number-sep line-number-sep-expr)])
               #:contracts ([keep-expr any/c]
                            [indent-expr exact-nonnegative-integer?]
                            [expand-expr (or/c #f (syntax-object? . -> . syntax-object?))]
                            [context-expr syntax-object?]
-                           [line-number-expr (or/c #f exact-nonnegative-integer?)])]{
+                           [line-number-expr (or/c #f exact-nonnegative-integer?)]
+                           [line-number-sep-expr exact-nonnegative-integer?])]{
 
 Parses the code formed by the strings produced by the
 @racket[str-expr]s as a Racket module (roughly) and produces a
@@ -104,7 +106,9 @@ for-label bindings in the lexical environment of the syntax object
 provided by @racket[context-expr]. The default @racket[context-expr]
 has the same lexical context as the first @racket[str-expr].
 When @racket[line-number-expr] is true, line number is enabled starting 
-from @racket[line-number-expr].
+from @racket[line-number-expr], and @racket[line-number-sep] controls
+the separation (in spaces; defaults to 1) between the line numbers and
+code.
 
 When @racket[expand-expr] produces a procedure, it is used to
 macro-expand the parsed program, and syntax coloring is based on the