annotate lisp/master.el @ 56811:694cd033cd0d

Make "GNU GENERAL PUBLIC LICENSE" an appendix. Rearrange order of nodes and sections such that both "GNU GENERAL PUBLIC LICENSE" and "GNU Free Documentation License" appear at the end, as appropriate for appendices. (Acknowledgments): Use `@unnumberedsec'.
author Luc Teirlinck <teirllm@auburn.edu>
date Fri, 27 Aug 2004 23:36:38 +0000
parents 695cf19ef79e
children 1e74e0c38af6 375f2633d815
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
39780
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
1 ;;; master.el --- make a buffer the master over another buffer
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
2
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
3 ;; Copyright (C) 1999, 2000, 2001 Alexander Schroeder
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
4
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
5 ;; Author: Alex Schroeder <alex@gnu.org>
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
6 ;; Maintainer: Alex Schroeder <alex@gnu.org>
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
7 ;; Version: 1.0.2
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
8 ;; Keywords: comm
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
9
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
10 ;; This file is part of GNU Emacs.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
11
39783
369d1b70be7c Use the usual disclaimer.
Gerd Moellmann <gerd@gnu.org>
parents: 39781
diff changeset
12 ;; GNU Emacs is free software; you can redistribute it and/or modify
369d1b70be7c Use the usual disclaimer.
Gerd Moellmann <gerd@gnu.org>
parents: 39781
diff changeset
13 ;; it under the terms of the GNU General Public License as published by
369d1b70be7c Use the usual disclaimer.
Gerd Moellmann <gerd@gnu.org>
parents: 39781
diff changeset
14 ;; the Free Software Foundation; either version 2, or (at your option)
369d1b70be7c Use the usual disclaimer.
Gerd Moellmann <gerd@gnu.org>
parents: 39781
diff changeset
15 ;; any later version.
39780
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
16
39783
369d1b70be7c Use the usual disclaimer.
Gerd Moellmann <gerd@gnu.org>
parents: 39781
diff changeset
17 ;; GNU Emacs is distributed in the hope that it will be useful,
369d1b70be7c Use the usual disclaimer.
Gerd Moellmann <gerd@gnu.org>
parents: 39781
diff changeset
18 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
369d1b70be7c Use the usual disclaimer.
Gerd Moellmann <gerd@gnu.org>
parents: 39781
diff changeset
19 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
369d1b70be7c Use the usual disclaimer.
Gerd Moellmann <gerd@gnu.org>
parents: 39781
diff changeset
20 ;; GNU General Public License for more details.
39780
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
21
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
22 ;; You should have received a copy of the GNU General Public License
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
23 ;; along with GNU Emacs; see the file COPYING. If not, write to the
39783
369d1b70be7c Use the usual disclaimer.
Gerd Moellmann <gerd@gnu.org>
parents: 39781
diff changeset
24 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
369d1b70be7c Use the usual disclaimer.
Gerd Moellmann <gerd@gnu.org>
parents: 39781
diff changeset
25 ;; Boston, MA 02111-1307, USA.
39780
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
26
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
27 ;;; Commentary:
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
28
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
29 ;; master-mode is a minor mode which enables you to scroll another
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
30 ;; buffer (the slave) without leaving your current buffer (the master).
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
31
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
32 ;; It can be used by sql.el, for example: The SQL buffer is the master
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
33 ;; and its SQLi buffer is the slave. This allows you to scroll the SQLi
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
34 ;; buffer containing the output from the SQL buffer containing the
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
35 ;; commands.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
36 ;;
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
37 ;; This is how to use sql.el and master.el together: The variable
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
38 ;; sql-buffer contains the slave buffer. It is a local variable in the
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
39 ;; SQL buffer.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
40 ;;
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
41 ;; (add-hook 'sql-mode-hook
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
42 ;; (function (lambda ()
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
43 ;; (master-mode t)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
44 ;; (master-set-slave sql-buffer))))
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
45 ;; (add-hook 'sql-set-sqli-hook
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
46 ;; (function (lambda ()
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
47 ;; (master-set-slave sql-buffer))))
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
48
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
49 ;;; Thanks to all the people who helped me out:
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
50 ;;
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
51 ;; Rob Riepel <networking.stanford.edu>
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
52
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
53 ;;; History:
49597
e88404e8f2cf Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 42319
diff changeset
54 ;;
39780
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
55
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
56 ;;; Code:
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
57
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
58 (require 'easy-mmode)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
59
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
60 ;; Variables that don't need initialization.
49597
e88404e8f2cf Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 42319
diff changeset
61
39780
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
62 (defvar master-of nil
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
63 "Slave buffer of the current buffer. See `master-mode'.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
64 You can set this variable using `master-set-slave'.")
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
65
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
66 (defvar master-set-slave-hook nil
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
67 "Hook run after the slave is changed using \\[master-set-slave].")
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
68
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
69 ;;; Define master mode.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
70
39781
38b6f34f98dd (master-mode): Use define-minor-mode instead
Gerd Moellmann <gerd@gnu.org>
parents: 39780
diff changeset
71 ;;;###autoload
38b6f34f98dd (master-mode): Use define-minor-mode instead
Gerd Moellmann <gerd@gnu.org>
parents: 39780
diff changeset
72 (define-minor-mode master-mode
39780
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
73 "Toggle Master mode.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
74 With no argument, this command toggles the mode.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
75 Non-null prefix argument turns on the mode.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
76 Null prefix argument turns off the mode.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
77
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
78 When Master mode is enabled, you can scroll the slave buffer using the
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
79 following commands:
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
80
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
81 \\{master-mode-map}
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
82
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
83 The slave buffer is stored in the buffer-local variable `master-of'.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
84 You can set this variable using `master-set-slave'. You can show
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
85 yourself the value of `master-of' by calling `master-show-slave'."
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
86 ;; The initial value.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
87 nil
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
88 ;; The indicator for the mode line.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
89 nil
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
90 ;; The minor mode bindings.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
91 '(("\C-c\C-n" . master-says-scroll-up)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
92 ("\C-c\C-p" . master-says-scroll-down)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
93 ("\C-c<" . master-says-beginning-of-buffer)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
94 ("\C-c>" . master-says-end-of-buffer)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
95 ("\C-c\C-l" . master-says-recenter)))
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
96
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
97 ;; Initialize Master mode by setting a slave buffer.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
98
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
99 (defun master-set-slave (buffer)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
100 "Makes BUFFER the slave of the current buffer.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
101 Use \\[master-mode] to toggle control of the slave buffer."
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
102 (interactive "bSlave: ")
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
103 (make-local-variable 'master-of)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
104 (setq master-of buffer)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
105 (run-hooks 'master-set-slave-hook))
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
106
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
107 (defun master-show-slave ()
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
108 "Displays a message with the name of the slave buffer."
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
109 (interactive)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
110 (message "This buffer is the master of %s. Master-mode is %S."
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
111 (or master-of "none")
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
112 master-mode))
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
113
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
114
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
115
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
116 ;;; Functions that the master buffer can call for the slave buffer.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
117
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
118 (defun master-says-scroll-up (&optional arg)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
119 "Display and scroll the slave buffer up.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
120 See `scroll-up'."
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
121 (interactive)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
122 (master-says 'scroll-up arg))
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
123
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
124 (defun master-says-scroll-down (&optional arg)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
125 "Display and scroll the slave buffer down.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
126 See `scroll-down'."
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
127 (interactive)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
128 (master-says 'scroll-down arg))
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
129
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
130 (defun master-says-beginning-of-buffer (&optional arg)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
131 "Display and move to the beginning of the slave buffer.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
132 See `beginning-of-buffer'."
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
133 (interactive)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
134 (master-says 'beginning-of-buffer arg))
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
135
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
136 (defun master-says-end-of-buffer (&optional arg)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
137 "Display and move to the end of the slave buffer.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
138 See `end-of-buffer'."
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
139 (interactive)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
140 (master-says 'end-of-buffer arg))
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
141
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
142 (defun master-says-recenter (&optional arg)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
143 "Recenter the slave buffer.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
144 See `recenter'."
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
145 (interactive)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
146 (master-says 'recenter arg))
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
147
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
148 ;; The master function doing the stuff.
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
149
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
150 (defun master-says (&optional command arg)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
151 "Display slave buffer and execute COMMAND with ARG in its window."
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
152 (interactive)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
153 (if (null (buffer-live-p (get-buffer master-of)))
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
154 (error "Slave buffer has disappeared")
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
155 (let ((window (selected-window)))
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
156 (if (not (eq (window-buffer window) (get-buffer master-of)))
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
157 (switch-to-buffer-other-window master-of))
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
158 (if command (condition-case nil (apply command arg) (error nil)))
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
159 (select-window window))))
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
160
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
161 (provide 'master)
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
162
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 49597
diff changeset
163 ;;; arch-tag: dca08daa-8127-45ae-b77e-b135160dce98
39780
20d3b87f7a2d *** empty log message ***
Gerd Moellmann <gerd@gnu.org>
parents:
diff changeset
164 ;;; master.el ends here