From 4b93c9d5464797479056056d4a53304414517682 Mon Sep 17 00:00:00 2001 From: Katsumi Yamaoka Date: Thu, 25 Sep 2008 23:09:28 +0000 Subject: [PATCH] * 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. --- lisp/ChangeLog | 8 ++++++++ lisp/informat.el | 14 +++++++++++--- lisp/textmodes/texinfmt.el | 2 +- 3 files changed, 20 insertions(+), 4 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 1a7529be8d..4161d80f26 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,11 @@ +2008-09-25 Katsumi Yamaoka + + * 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 * progmodes/octave-mod.el (octave-mode-menu): Fix incorrect diff --git a/lisp/informat.el b/lisp/informat.el index 0fd12f3565..0324e1a831 100644 --- a/lisp/informat.el +++ b/lisp/informat.el @@ -152,10 +152,18 @@ "Tagifying %s done" (file-name-nondirectory (buffer-file-name))))) +;;;###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) diff --git a/lisp/textmodes/texinfmt.el b/lisp/textmodes/texinfmt.el index 412c25aa09..ad7c3c89c8 100644 --- a/lisp/textmodes/texinfmt.el +++ b/lisp/textmodes/texinfmt.el @@ -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)))) -- 2.39.2