?? dbide-process.el
字號:
;;;; dbide-data.el --- Process document with DOCBOOK
;; $Id: dbide-process.el,v 1.2 2000/03/29 19:12:16 nwalsh Exp $
;; Copyright (C) 2000 Norman Walsh
;; Based extensively on (one might go so far as to say "totally hacked
;; from") Tony Graham's xslide.
;; Author: Norman Walsh <ndw@nwalsh.com>
;; Created: 29 March 2000
;; Version: $Revision: 1.2 $
;; Keywords: languages, xml, docbook
;;; This file is not part of GNU Emacs.
;; This program is free software; you can redistribute it and/or
;; modify it under the terms of the GNU General Public License
;; as published by the Free Software Foundation; either version 2
;; of the License, or (at your option) any later version.
;;
;; This program is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;;
;; You should have received a copy of the GNU General Public License
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
;;;; Commentary:
;; Copied almost wholesale from psgml.el by Lennart Staflin
;; Send bugs to docbookide-bug@menteith.com
;; Use `docbook-submit-bug-report' for bug reports
;;;; Variables:
(defvar docbook-offer-save t
"*If non-nil, ask about saving modified buffers before \\[docbook-process] is run.")
(defvar docbook-process-command "java com.jclark.docbook.Driver %s %s %s"
"*The shell command to process an DOCBOOK document.
This is a `format' control string that by default should contain two
`%s' conversion specifications: the first will be replaced by the
value of `docbook-xml-source' \(or the empty string, if nil\); the
second will be replaced by the current buffer's file name \(or the
empty string, if nil\).
If `docbook-process-files' is non-nil, the format string should contain
one `%s' conversion specification for each element of its result.
If docbook-process-command is a list, then every element should be a
string. The strings will be tried in order and %-sequences in the
string will be replaced according to the list below, if the string contains
%-sequences with no replacement value the next string will be tried.
%b means the visited file of the current buffer
%s means the DOCBOOK declaration specified in the docbook-xml-source variable
%d means the file containing the DOCTYPE declaration, if not in the buffer
")
(defvar docbook-process-files nil
"If non-nil, a function of no arguments that returns a list of file names.
These file names will serve as the arguments to the `docbook-process-command'
format control string instead of the defaults.")
(defvar docbook-process-error-regexps
'(("file:\\([^:]+\\):\\([0-9]+\\):\\([0-9]+\\):" 1 2 3)
("file:/\\(\\([A-Za-z]:\\)?[^:]+\\):\\([0-9]+\\):\\(\\([0-9]+\\):\\)?" 1 3 5))
"Alist of regexps to recognize error messages from `docbook-process'.
See `compilation-error-regexp-alist'.")
(defvar docbook-xml-source nil
"*If non-nil, this is the name of the XML source file.")
(put 'docbook-xml-source 'docbook-type 'string)
(defvar docbook-docbook-result nil
"*If non-nil, this is the name of the DOCBOOK result file.")
(put 'docbook-docbook-result 'docbook-type 'string)
(defvar docbook-process-command-history nil
"The minibuffer history list for `docbook-process''s COMMAND argument.")
(eval-and-compile
(autoload 'compile-internal "compile" ""))
(defun docbook-default-process-command ()
(apply 'format docbook-process-command
(if docbook-process-files
(funcall docbook-process-files)
(list (or docbook-xml-source "")
(let ((name (buffer-file-name)))
(if name
(file-name-nondirectory name)
""))
(or docbook-docbook-result "")))))
(defun docbook-process (command)
"Process an DOCBOOK stylesheet.
Runs COMMAND, a shell command, in a separate process asynchronously
with output going to the buffer *DOCBOOK process*.
You can then use the command \\[next-error] to find the next error message
and move to the line in the DOCBOOK document that caused it."
(interactive
(list (read-from-minibuffer "Process command: "
(docbook-default-process-command)
nil nil 'docbook-process-command-history)))
(if docbook-offer-save
(save-some-buffers nil nil))
(compile-internal command "No more errors" "DOCBOOK process"
nil
docbook-process-error-regexps))
(provide 'dbide-process)
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -