* informat.el (Info-split-threshold): New variable.
authorKatsumi Yamaoka <yamaoka@jpl.org>
Thu, 25 Sep 2008 23:09:28 +0000 (23:09 +0000)
committerKatsumi Yamaoka <yamaoka@jpl.org>
Thu, 25 Sep 2008 23:09:28 +0000 (23:09 +0000)
(Info-split): Use it.

* textmodes/texinfmt.el (texinfo-format-buffer):
Use Info-split-threshold to decide whether to split Info files.

lisp/ChangeLog
lisp/informat.el
lisp/textmodes/texinfmt.el

index 1a7529b..4161d80 100644 (file)
@@ -1,3 +1,11 @@
+2008-09-25  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+       * informat.el (Info-split-threshold): New variable.
+       (Info-split): Use it.
+
+       * textmodes/texinfmt.el (texinfo-format-buffer):
+       Use Info-split-threshold to decide whether to split Info files.
+
 2008-09-25  Chong Yidong  <cyd@stupidchicken.com>
 
        * progmodes/octave-mod.el (octave-mode-menu): Fix incorrect
index 0fd12f3..0324e1a 100644 (file)
        "Tagifying %s done"  (file-name-nondirectory (buffer-file-name)))))
 
 \f
+;;;###autoload
+(defcustom Info-split-threshold 262144
+  "The number of characters by which `Info-split' splits an info file."
+  :type 'integer
+  :version "23.1"
+  :group 'texinfo)
+
 ;;;###autoload
 (defun Info-split ()
   "Split an info file into an indirect file plus bounded-size subfiles.
-Each subfile will be up to 50,000 characters plus one node.
+Each subfile will be up to the number of characters that
+`Info-split-threshold' specifies, plus one node.
 
 To use this command, first visit a large Info file that has a tag
 table.  The buffer is modified into a (small) indirect info file which
@@ -167,7 +175,7 @@ file name.  The indirect file still functions as an Info file, but it
 contains just the tag table and a directory of subfiles."
 
   (interactive)
-  (if (< (buffer-size) 70000)
+  (if (< (buffer-size) (+ 20000 Info-split-threshold))
       (error "This is too small to be worth splitting"))
   (goto-char (point-min))
   (search-forward "\^_")
@@ -192,7 +200,7 @@ contains just the tag table and a directory of subfiles."
       (narrow-to-region (point-min) (point))
       (goto-char (point-min))
       (while (< (1+ (point)) (point-max))
-       (goto-char (min (+ (point) 50000) (point-max)))
+       (goto-char (min (+ (point) Info-split-threshold) (point-max)))
        (search-forward "\^_" nil 'move)
        (setq subfiles
              (cons (list (+ start chars-deleted)
index 412c25a..ad7c3c8 100644 (file)
@@ -166,7 +166,7 @@ and don't split the file if large.  You can use `Info-tagify' and
     (Info-tagify)
     (if nosplit
         nil
-      (if (> (buffer-size) 100000)
+      (if (> (buffer-size) (+ 50000 Info-split-threshold))
           (progn
             (message (setq lastmessage "Splitting Info file..."))
             (Info-split))))