"Matthew O. Persico" <mpersico(a)erols.com> writes:
> and just slap it over my sumo unwind. I am now on 21.2.19 of xemacs. The
> only problem I see is when you try to do a perldoc - his code looks for a
> function called Man-get-page-in-background, which is probably FSF.
>
> Any ideas on the corresponding XEmacs call?
manual-entry (and the name of the program to call is
'Manual-program').
Jan
P.S. I found some of my work again. This is the patch I made to get
cperl to respect the delete-key-deletes-forward issues under XEmacs.
Could you please try to get this by Ilya once more and then submit a
version to XEmacs-patches ?
diff -u /u/users/vroonhof/emacs/lisp/cperl-mode.el.4.5 /u/users/vroonhof/emacs/lisp/cperl-mode.el
--- /u/users/vroonhof/emacs/lisp/cperl-mode.el.4.5 Fri Aug 6 12:39:43 1999
+++ /u/users/vroonhof/emacs/lisp/cperl-mode.el Fri Aug 6 12:39:43 1999
@@ -800,6 +800,10 @@
;;; `constant-face' was backward.
;;; (`font-lock-other-type-face'): Done via `defface' too.
+;;; After 4.5
+;;; (`cperl-set-conformant-backward-deletion'): Follow policy of the
+;;; Emacs version
+
;;; Code:
@@ -847,6 +851,7 @@
(cperl-make-face (, arg) (, descr)))
(or (boundp (quote (, arg))) ; We use unquoted variants too
(defconst (, arg) (quote (, arg)) (, descr))))))))
+
(require 'custom)
(defun cperl-choose-color (&rest list)
@@ -1537,7 +1542,8 @@
;;; Portability stuff:
-(defconst cperl-xemacs-p (string-match "XEmacs\\|Lucid" emacs-version))
+(defconst cperl-xemacs-p (or (featurep 'xemacs)
+ (string-match "XEmacs\\|Lucid" emacs-version)))
(defmacro cperl-define-key (emacs-key definition &optional xemacs-key)
(` (define-key cperl-mode-map
@@ -1551,6 +1557,16 @@
(where-is-internal 'backward-delete-char-untabify)))
"Character generated by key bound to delete-backward-char.")
+(defvar cperl-backward-delete-function nil)
+
+(defmacro cperl-set-conformant-backward-deletion (func)
+ `(if (not (boundp 'backward-delete-function))
+ (cperl-define-key "\177" ,func)
+ ;; we do not clobber backspace on standard Emacs, why?
+ (setq cperl-backward-delete-function ,func)
+ (define-key cperl-mode-map [backspace] ,func)
+ (setq cperl-del-back-ch 'backspace)))
+
(and (vectorp cperl-del-back-ch) (= (length cperl-del-back-ch) 1)
(setq cperl-del-back-ch (aref cperl-del-back-ch 0)))
@@ -1681,7 +1697,7 @@
[(control meta |)])
;;(cperl-define-key "\M-q" 'cperl-fill-paragraph)
;;(cperl-define-key "\e;" 'cperl-indent-for-comment)
- (cperl-define-key "\177" 'cperl-electric-backspace)
+ (cperl-set-conformant-backward-deletion 'cperl-electric-backspace)
(cperl-define-key "\t" 'cperl-indent-command)
;; don't clobber the backspace binding:
(cperl-define-key "\C-c\C-hF" 'cperl-info-on-command
@@ -2126,6 +2142,9 @@
(make-local-variable 'vc-header-alist)
(set 'vc-header-alist cperl-vc-header-alist) ; Avoid warning
(make-local-variable 'font-lock-defaults)
+ (when cperl-backward-delete-function
+ (make-local-variable 'backward-delete-function)
+ (setq backward-delete-function cperl-backward-delete-function))
(setq font-lock-defaults
(cond
((string< emacs-version "19.30")