SHA256
1
0
forked from pool/emacs

Xauth and ELPA provide

OBS-URL: https://build.opensuse.org/package/show/editors/emacs?expand=0&rev=399
This commit is contained in:
Dr. Werner Fink 2024-07-11 09:37:05 +00:00 committed by Git OBS Bridge
commit b0dad27a79
31 changed files with 10776 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

159
app-defaults.Emacs Normal file
View File

@ -0,0 +1,159 @@
! ==========================================================================
! Emacs
! ==========================================================================
Emacs.pane.menubar.font: -*-helvetica-bold-r-normal--12-*-*-*-p-*-iso8859-*
Emacs.menu*.font: -*-helvetica-bold-r-normal--12-*-*-*-p-*-iso8859-*
! With GNU Emacs 24 Xft is used, therefore no fontsets are required. If you
! like to use fontsets you have to disable "FontBackend" and enable "Font".
! If Xft fails then X font scheme (including fontsets) is used as fallback.
!! Emacs.FontBackend: xft,x
!! Emacs.Font: fontset-16
Emacs*Fontset-0:\
-*-fixed-medium-r-*--16-*-*-*-*-*-fontset-16,\
latin-iso8859-1:-*-fixed-medium-r-*--16-*-iso8859-1,\
latin-iso8859-2:-*-fixed-medium-r-*--16-*-iso8859-2,\
latin-iso8859-3:-*-fixed-medium-r-*--16-*-iso8859-3,\
latin-iso8859-4:-*-fixed-medium-r-*--16-*-iso8859-4,\
cyrillic-iso8859-5:-*-fixed-medium-r-*--16-*-iso8859-5,\
greek-iso8859-7:-*-fixed-medium-r-*--16-*-iso8859-7,\
hebrew-iso8859-8:-*-fixed-medium-r-*--16-*-iso8859-8,\
latin-iso8859-9:-*-fixed-medium-r-*--16-*-iso8859-9,\
latin-iso8859-15:-*-fixed-medium-r-*--16-*-iso8859-15,\
arabic-digit:-*-fixed-medium-r-*--16-*-mulearabic-0,\
arabic-1-column:-*-fixed-medium-r-*--16-*-mulearabic-1,\
arabic-2-column:-*-fixed-medium-r-*--16-*-mulearabic-2,\
katakana-jisx0201:-*-fixed-medium-r-*--16-*-jisx0201.1976-0,\
japanese-jisx0208:-*-fixed-medium-r-*--16-*-jisx0208*-0,\
korean-ksc5601:-*-fixed-medium-r-*--16-*-ksc5601*-*,\
chinese-big5-1:-*-fixed-medium-r-*--16-*-big5*-0,\
chinese-gb2312:-*-medium-r-normal-*-16-*-gb2312*-*,\
chinese-cns11643-1:-*-medium-r-normal-*-16-*-cns11643*-1,\
chinese-cns11643-2:-*-medium-r-normal-*-16-*-cns11643*-2,\
chinese-cns11643-3:-*-medium-r-normal-*-16-*-cns11643*-3,\
chinese-cns11643-4:-*-medium-r-normal-*-16-*-cns11643*-4,\
chinese-cns11643-5:-*-medium-r-normal-*-16-*-cns11643*-5,\
chinese-cns11643-6:-*-medium-r-normal-*-16-*-cns11643*-6,\
chinese-cns11643-7:-*-medium-r-normal-*-16-*-cns11643*-7,\
thai-tis620:-*-fixed-medium-r-*--16-*-tis620.2529-1,\
vietnamese-viscii-lower:-*-fixed-medium-r-*--16-*-viscii1.1-1,\
lao:-*-fixed-medium-r-*--16-*-mulelao-1,\
tibetan:-*-fixed-medium-r-*--16-*-muletibetan-0,\
tibetan-1-column:-*-fixed-medium-r-*--16-*-muletibetan-1
Emacs*Fontset-1:\
-*-fixed-medium-r-*--24-*-*-*-*-*-fontset-24,\
latin-iso8859-1:-*-fixed-medium-r-*--24-*-iso8859-1,\
latin-iso8859-2:-*-fixed-medium-r-*--24-*-iso8859-2,\
latin-iso8859-3:-*-fixed-medium-r-*--24-*-iso8859-3,\
latin-iso8859-4:-*-fixed-medium-r-*--24-*-iso8859-4,\
cyrillic-iso8859-5:-*-fixed-medium-r-*--24-*-iso8859-5,\
greek-iso8859-7:-*-fixed-medium-r-*--24-*-iso8859-7,\
hebrew-iso8859-8:-*-fixed-medium-r-*--24-*-iso8859-8,\
latin-iso8859-9:-*-fixed-medium-r-*--24-*-iso8859-9,\
latin-iso8859-15:-*-fixed-medium-r-*--24-*-iso8859-15,\
arabic-digit:-*-fixed-medium-r-*--24-*-mulearabic-0,\
arabic-1-column:-*-fixed-medium-r-*--24-*-mulearabic-1,\
arabic-2-column:-*-fixed-medium-r-*--24-*-mulearabic-2,\
katakana-jisx0201:-*-fixed-medium-r-*--24-*-jisx0201.1976-0,\
japanese-jisx0208:-*-fixed-medium-r-*--24-*-jisx0208*-0,\
korean-ksc5601:-*-fixed-medium-r-*--24-*-ksc5601*-*,\
chinese-big5-1:-*-fixed-medium-r-*--24-*-big5*-0,\
chinese-gb2312:-*-medium-r-normal-*-24-*-gb2312*-*,\
chinese-cns11643-1:-*-medium-r-normal-*-24-*-cns11643*-1,\
chinese-cns11643-2:-*-medium-r-normal-*-24-*-cns11643*-2,\
chinese-cns11643-3:-*-medium-r-normal-*-24-*-cns11643*-3,\
chinese-cns11643-4:-*-medium-r-normal-*-24-*-cns11643*-4,\
chinese-cns11643-5:-*-medium-r-normal-*-24-*-cns11643*-5,\
chinese-cns11643-6:-*-medium-r-normal-*-24-*-cns11643*-6,\
chinese-cns11643-7:-*-medium-r-normal-*-24-*-cns11643*-7,\
thai-tis620:-*-fixed-medium-r-*--24-*-tis620.2529-1,\
vietnamese-viscii-lower:-*-fixed-medium-r-*--24-*-viscii1.1-1,\
lao:-*-fixed-medium-r-*--24-*-mulelao-1,\
indian-is13194:-*-fixed-medium-r-*--24-*-is13194-devanagari,\
indian-1-column:-*-fixed-medium-r-*--24-*-muleindian-1,\
indian-2-column:-*-fixed-medium-r-*--24-*-muleindian-2,\
tibetan:-*-fixed-medium-r-*--24-*-muletibetan-0,\
tibetan-1-column:-*-fixed-medium-r-*--24-*-muletibetan-1
Emacs*Fontset-2:\
-*-fixed-medium-r-*--20-*-*-*-*-*-fontset-20,\
latin-iso8859-1:-*-fixed-medium-r-*--20-*-iso8859-1,\
latin-iso8859-2:-*-fixed-medium-r-*--20-*-iso8859-2,\
latin-iso8859-3:-*-fixed-medium-r-*--20-*-iso8859-3,\
latin-iso8859-4:-*-fixed-medium-r-*--20-*-iso8859-4,\
cyrillic-iso8859-5:-*-fixed-medium-r-*--20-*-iso8859-5,\
greek-iso8859-7:-*-fixed-medium-r-*--20-*-iso8859-7,\
hebrew-iso8859-8:-*-fixed-medium-r-*--20-*-iso8859-8,\
latin-iso8859-9:-*-fixed-medium-r-*--20-*-iso8859-9,\
latin-iso8859-15:-*-fixed-medium-r-*--20-*-iso8859-15,\
katakana-jisx0201:-*-fixed-medium-r-*--20-*-jisx0201.1976-0,\
japanese-jisx0208:-*-fixed-medium-r-*--20-*-jisx0208*-0,\
korean-ksc5601:-*-fixed-medium-r-*--20-*-ksc5601*-*
Emacs*Fontset-3:\
-*-fixed-medium-r-*--18-*-*-*-*-*-fontset-18,\
latin-iso8859-1:-*-fixed-medium-r-*--18-*-iso8859-1,\
latin-iso8859-2:-*-fixed-medium-r-*--18-*-iso8859-2,\
latin-iso8859-3:-*-fixed-medium-r-*--18-*-iso8859-3,\
latin-iso8859-4:-*-fixed-medium-r-*--18-*-iso8859-4,\
cyrillic-iso8859-5:-*-fixed-medium-r-*--18-*-iso8859-5,\
greek-iso8859-7:-*-fixed-medium-r-*--18-*-iso8859-7,\
hebrew-iso8859-8:-*-fixed-medium-r-*--18-*-iso8859-8,\
latin-iso8859-9:-*-fixed-medium-r-*--18-*-iso8859-9,\
latin-iso8859-15:-*-fixed-medium-r-*--18-*-iso8859-15,\
katakana-jisx0201:-*-*-medium-r-*--18-*-jisx0201.1976-0,\
japanese-jisx0208:-*-*-medium-r-*--18-*-jisx0208*-0,\
korean-ksc5601:-*-fixed-medium-r-*--18-*-ksc5601*-*
Emacs*Fontset-4:\
-*-fixed-medium-r-*--14-*-*-*-*-*-fontset-14,\
latin-iso8859-1:-*-fixed-medium-r-*--14-*-iso8859-1,\
latin-iso8859-2:-*-fixed-medium-r-*--14-*-iso8859-2,\
latin-iso8859-3:-*-fixed-medium-r-*--14-*-iso8859-3,\
latin-iso8859-4:-*-fixed-medium-r-*--14-*-iso8859-4,\
cyrillic-iso8859-5:-*-fixed-medium-r-*--14-*-iso8859-5,\
greek-iso8859-7:-*-fixed-medium-r-*--14-*-iso8859-7,\
hebrew-iso8859-8:-*-fixed-medium-r-*--14-*-iso8859-8,\
latin-iso8859-9:-*-fixed-medium-r-*--14-*-iso8859-9,\
latin-iso8859-15:-*-fixed-medium-r-*--14-*-iso8859-15,\
katakana-jisx0201:-*-fixed-medium-r-*--14-*-jisx0201.1976-0,\
japanese-jisx0208:-*-fixed-medium-r-*--14-*-jisx0208*-0,\
korean-ksc5601:-*-fixed-medium-r-*--14-*-ksc5601*-*,\
thai-tis620:-*-fixed-medium-r-*--14-*-tis620.2529-1,\
lao:-*-fixed-medium-r-*--14-*-mulelao-1
Emacs*Fontset-5:\
-*-fixed-medium-r-*--12-*-*-*-*-*-fontset-12,\
latin-iso8859-1:-*-fixed-medium-r-*--12-*-iso8859-1,\
latin-iso8859-2:-*-fixed-medium-r-*--12-*-iso8859-2,\
latin-iso8859-3:-*-fixed-medium-r-*--12-*-iso8859-3,\
latin-iso8859-4:-*-fixed-medium-r-*--12-*-iso8859-4,\
cyrillic-iso8859-5:-*-fixed-medium-r-*--12-*-iso8859-5,\
greek-iso8859-7:-*-fixed-medium-r-*--12-*-iso8859-7,\
latin-iso8859-15:-*-fixed-medium-r-*--12-*-iso8859-15,\
hebrew-iso8859-8:-*-fixed-medium-r-*--12-*-iso8859-8,\
latin-iso8859-9:-*-fixed-medium-r-*--12-*-iso8859-9,\
katakana-jisx0201:-*-fixed-medium-r-*--12-*-jisx0201.1976-0,\
japanese-jisx0208:-*-fixed-medium-r-*--12-*-jisx0208*-0,\
korean-ksc5601:-*-fixed-medium-r-*--12-*-ksc5601.1987-0
Emacs*Fontset-6:\
-*-fixed-medium-r-*--10-*-*-*-*-*-fontset-10,\
latin-iso8859-1:-*-fixed-medium-r-*--10-*-iso8859-1,\
latin-iso8859-2:-*-fixed-medium-r-*--10-*-iso8859-2,\
latin-iso8859-3:-*-fixed-medium-r-*--10-*-iso8859-3,\
latin-iso8859-4:-*-fixed-medium-r-*--10-*-iso8859-4,\
cyrillic-iso8859-5:-*-fixed-medium-r-*--10-*-iso8859-5,\
greek-iso8859-7:-*-fixed-medium-r-*--10-*-iso8859-7,\
hebrew-iso8859-8:-*-fixed-medium-r-*--10-*-iso8859-8,\
latin-iso8859-9:-*-fixed-medium-r-*--10-*-iso8859-9,\
latin-iso8859-15:-*-fixed-medium-r-*--10-*-iso8859-15,\
katakana-jisx0201:-*-fixed-medium-r-*--10-*-jisx0201.1976-0,\
japanese-jisx0208:-*-fixed-medium-r-*--10-*-jisx0208*-0,\
korean-ksc5601:-*-fixed-medium-r-*--10-*-ksc5601*-*
Emacs*Fontset-7:\
-*-fixed-medium-r-*--8-*-*-*-*-*-fontset-8,\
latin-iso8859-1:-*-fixed-medium-r-*--8-*-iso8859-1,\
greek-iso8859-7:-*-fixed-medium-r-*--8-*-iso8859-7,\
latin-iso8859-15:-*-fixed-medium-r-*--8-*-iso8859-15
Emacs*Fontset-8:\
-*-fixed-medium-r-*--7-*-*-*-*-*-fontset-7,\
latin-iso8859-1:-*-fixed-medium-r-*--7-*-iso8859-1,\
greek-iso8859-7:-*-fixed-medium-r-*--7-*-iso8859-7,\
latin-iso8859-15:-*-fixed-medium-r-*--7-*-iso8859-15

28
check-build.sh Normal file
View File

@ -0,0 +1,28 @@
#!/bin/bash
case $BUILD_BASENAME in
*ppc*)
if test $(getconf PAGESIZE) -ne 65536; then
echo "Error: wrong build host, PAGESIZE must be 65536"
exit 1
fi
;;
*ia64*)
if test $(getconf PAGESIZE) -ne 65536; then
echo "Error: wrong build host, PAGESIZE must be 65536"
exit 1
fi
;;
*)
;;
esac
exec_shield=0
if test -e /proc/sys/kernel/exec-shield; then
read -t 1 exec_shield < /proc/sys/kernel/exec-shield
fi
if test $exec_shield -ne 0 ; then
echo Sorry, Execution Shield exists and is enabled 1>&2
exit 1
fi
exit 0

542
dot.gnu-emacs Normal file
View File

@ -0,0 +1,542 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; File name: ` ~/.gnu-emacs '
;;; ---------------------
;;;
;;; Note: This file is for GNU-Emacs only ...
;;; GNU-Emacs is incompatible to X-Emacs. Therefore your
;;; personal ~/.emacs should load this file if your runnning
;;; the good old GNU-emacs.
;;;
;;; If you need your own personal ~/.gnu-emacs
;;; please make a copy of this file
;;; an placein your changes and/or extension.
;;;
;;; For emacs commands have a look onto the
;;; `emacs-revcard' in the directory /usr/doc/packages/emacs/
;;;
;;; Copyright 1993-2001 Werner Fink
;;; Copyright (c) 1996-2001 SuSE Gmbh Nuernberg, Germany.
;;; All rights reserved.
;;;
;;; Author: Werner Fink, <werner@suse.de> 1993-2001
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; No splash screen at all
;; -----------------------
(if (and (file-exists-p "~/.inhibit-splash-screen")
(boundp 'inhibit-splash-screen))
(setq-default inhibit-splash-screen t))
;; MELPA
(require 'package)
(add-to-list 'package-archives
'("melpa" . "https://melpa.org/packages/"))
;;(package-initialize)
;;
;; Debuging only
;; -------------
; (open-dribble-file "~/.dribble")
; (open-termscript "~/.termscript")
;;
;; Emacs makes backup by moving original files, to
;; avoid trouble with hardlinked files we may use:
;; -----------------------------------------------
; (defconst backup-by-copying-when-linked t)
;;
;; Rmail: We will place all Mail's an Mail-folders into ~/Mail
;; -----------------------------------------------------------
(if (file-accessible-directory-p "~/Mail/")
(setq rmail-secondary-file-directory "~/Mail/"))
;;
;; Prefix for mail-mode
;; ---------------------
(setq mail-yank-prefix "> ")
; (setq mail-archive-file-name "~/Mail/.CarbonCopy")
(setq mail-self-blind nil)
(setq mail-default-headers nil)
(setq mail-signature nil)
;;
;; Settings for message-mode
;; -------------------------
(setq message-from-style "angles")
(if (null mail-host-address)
(let ((tmph (getenv "HOSTNAME"))
(tmpf (getenv "FROM_HEADER")))
(if (or (null tmph) (not (string-match "\\." tmph)))
(setq tmph (system-name)))
(if (not (string-match "\\." tmph))
(setq mail-host-address "our.domain.is.not.set")
(string-match "\\." tmph)
(setq mail-host-address (substring tmph (match-end 0))))
(if (stringp tmpf)
(setq mail-host-address tmpf)))
(setq tmpf nil tmph nil))
;;
;; RMAILGEN: Folder im Rmail-Mode :-)
;; ----------------------------------
;;
;; 1. I want to define a mail directory that isn't `~/'
(if (file-accessible-directory-p "~/Mail/")
(setq rmailgen-default-directory "~/Mail/")) ; must end in slash
;;;
;; 2. I want 78 column
(add-hook 'mail-mode-hook (function (lambda () (setq fill-column 78))))
(if (file-exists-p "~/.abbrev_defs")
(progn (read-abbrev-file "~/.abbrev_defs")
(add-hook 'mail-setup-hook 'mail-abbrevs-setup)))
;;;
;; 3. By default, if mail-archive-file-name is non-nil then
;; archive file names will be generated automatically based on
;; the message to which a reply is being constructed. If I
;; wanted to turn this off I would put in a statement like
(setq rmailgen-archive-file-name nil)
;;;
;; 4. By default, rmailgen.el downcases generated filenames
;; If I wanted uppercase I would put in a statement like here.
(setq rmailgen-downcase "dummy")
;;;
;; 5. By default, rmailgen.el does not append `.gz' to generated
;; filenames. If I wanted such an extension I would put in a statement
;; like
;;(setq rmailgen-gzip-file-name t)
;;;
;; 6. By default, rmailgen.el will use generated FCC filenames even
;; if the file does not exist. If I wanted to FCC only if the file
;; already exists I would put in a statement like
;; (setq rmailgen-archive-only-if-exists t)
;;;
;; 7. Add my own personal output list for specific friends
;; and special subjects.
;;;
;; First define rmail-output-file-alist, just in case this
;; is not already defined. That is, may be
;; ../lisp/rmailout.el has not been loaded yet.
(if (not (boundp 'rmail-output-file-alist))
(defvar rmail-output-file-alist nil))
;;;
(setq rmail-output-file-alist
(append
(list
; ;; For my friends (some have strange account names).
; '("^From:[ \t]*.*jones.*" . "jmjones")
; '("^From:[ \t]*.*Joe[ \t]*Smith.*" . "joe")
;
; ;; Special subject lines.
; '("^Subject:[ \t]*.*crypt.*" . "crypt++")
; '("^Subject:[ \t]*.*rmailgen.*" . "genrmail")
; '("^Subject:[ \t]*.*dired-x.*" . "dired-x")
; '("^Subject:[ \t]*.*GNU Emacs 19 RMAIL Poll.*" . "rmail")
;
; ;; Add more entries here...
)
;;;
;; In case rmail-output-file-alist has been defined
;; already elsewhere.
rmail-output-file-alist))
;;;
;; 8. Load package [REQUIRED].
(if (file-exists-p "/usr/share/emacs/site-lisp/rmailgen.el")
(require 'rmailgen))
;;
;; Base text mode
;; ----------------------
(setq default-major-mode 'text-mode)
(line-number-mode 1)
(global-set-key "\e\?" 'goto-line)
(column-number-mode 1)
;;
;; User can cutomize that: Just show e.g. DOS files with CR/NL
;; ----------------------
; (setq-default inhibit-eol-conversion t)
(setq-default require-final-newline "ask")
;;
;; Specials for X Window System
;; -------------------------
(if (not window-system)
;; ispell
;; ----------------------
;; (A few changes on ispell)
(setq ispell-highlight-face 'underline);)
;;
;; Geometry and layout
;;
; (setq initial-frame-alist
; '((vertical-scroll-bars . right) (height . 34) (width . 80)))
; (setq default-frame-alist
; '((vertical-scroll-bars . right) (height . 34) (width . 80)))
;;
;; Some fonts
;; -----------------------
(if (> emacs-major-version 20) (require 'xfonts))
;;
;; New in Emacs 21: tool bar menu, you may switch it of
;; ----------------------------------------------------
; (if (fboundp 'tool-bar-mode) (tool-bar-mode 0))
;;
;; mouse as arrow
;; --------------
(setq x-pointer-shape x-pointer-left-ptr)
(if (x-display-color-p)
(set-mouse-color "RoyalBlue")
(set-mouse-color (cdr (assq 'mouse-color (frame-parameters)))))
;;
;; Automatically replacing of fore- and background.
(if (not (x-display-color-p))
(progn
(set-face-background 'region
(cdr (assq 'foreground-color (frame-parameters ))))
(set-face-foreground 'region
(cdr (assq 'background-color (frame-parameters ))))
;; ispell
;; ----------------------
;; (A few changes on ispell)
(setq ispell-highlight-face 'underline)))
;;
;; Highlighting of special emacs modes
;; -----------------------------------
;; We use font lock mode
;; Darken greyed strings in font lock mode
(custom-declare-face 'font-lock-string-face
'((((class grayscale) (background light)) (:foreground "gray37" :italic t))
(((class grayscale) (background dark)) (:foreground "LightGray" :italic t))
(((class color) (background light)) (:foreground "gray37"))
(((class color) (background dark)) (:foreground "LightGray"))
(t (:italic t)))
"Font Lock mode face used to highlight strings."
:group 'font-lock-highlighting-faces)
;; Enable font lock support
(require 'font-lock)
(cond ((and (boundp 'jit-lock-mode) (symbol-value 'jit-lock-mode))
(setq font-lock-support-mode '((latex-mode . fast-lock-mode) (t . jit-lock-mode))))
((and (boundp 'lazy-lock-mode) (symbol-value 'lazy-lock-mode))
(setq font-lock-support-mode '((latex-mode . fast-lock-mode) (t . lazy-lock-mode)))))
(add-hook 'after-init-hook #'(lambda () (global-font-lock-mode 1)))
;;
;; Some dialog
;; ------------------
(setq use-dialog-box t)
;;
;; less dialog
;; -----------
;(menu-prompting nil)
;;
;; Set X synchrone
;; ---------------
;; Speed up
(setq mouse-scroll-delay 0)
(setq x-selection-timeout 0)
;;
;; We use a wrapper script for netscape
;;
(if (file-executable-p "/usr/X11R6/bin/Netscape")
(setq browse-url-netscape-program "/usr/X11R6/bin/Netscape"))
)
;;
;; emacsclient: automatical popup under X11
;; ------------------------------------------
;(defun server-make-window-visible ()
; "Try to make this window even more visible."
;(if window-system
; (progn
; (let ((foo (selected-frame)))
; (sit-for 0)
; (make-frame-visible foo))
; (accept-process-output))))
;(add-hook 'server-switch-hook #'(lambda () (server-make-window-visible)))
;(add-hook 'server-visit-hook #'(lambda () (server-make-window-visible)))
;; Start it for popup
;(server-start)
;;
;; Emacs experts like this
;; -----------------------
(put 'eval-expression 'disabled nil)
;;
;; Working on parts of text
;; ------------------------
;; NB: `C-x n n' is narrow-to-region
;; `C-x n p' is narrow-to-page
;; `C-x n w' is widen
;(put 'narrow-to-region 'disabled nil)
;(put 'narrow-to-page 'disabled nil)
;;
;; GNUS
;; ----
;; Sorting
(if (or (and (= emacs-major-version 19) (> emacs-minor-version 29))
(> emacs-major-version 19))
(add-hook 'gnus-select-group-hook
#'(lambda ()
(setq-default gnus-auto-select-first nil)
(setq-default gnus-auto-center-summary nil)
(setq gnus-thread-sort-functions
'(gnus-thread-sort-by-number
gnus-thread-sort-by-subject
gnus-thread-sort-by-date
gnus-thread-sort-by-score))))
(add-hook 'gnus-select-group-hook
#'(lambda ()
(setq-default gnus-auto-select-first nil)
(setq-default gnus-auto-center-summary nil)
;; First of all, sort by date.
(gnus-keysort-headers
(function string-lessp)
(function
(lambda (a)
(gnus-sortable-date (gnus-header-date a)))))
;; Then sort by subject string ignoring `Re:'.
;; If case-fold-search is non-nil, case of letters is ignored.
(gnus-keysort-headers
(function string-lessp)
(function
(lambda (a)
(if case-fold-search
(downcase (gnus-simplify-subject (gnus-header-subject a) t))
(gnus-simplify-subject (gnus-header-subject a) t)))))
))
)
;; highlighting, menus, and subscribing in GNUS
(add-hook 'gnus-startup-hook
#'(lambda ()
(setq gnus-subscribe-newsgroup-method
#'(lambda (newsgroup)
(gnus-subscribe-newsgroup newsgroup)
(gnus-kill-newsgroup newsgroup)))
(setq gnus-use-generic-from t)
;; highlighting and menu in GNUS
(if (or (and (= emacs-major-version 19) (> emacs-minor-version 29))
(> emacs-major-version 19))
(progn
(setq gnus-visual '(highlight menu))
(setq gnus-group-highlight
'(;; News.
((and (> unread 100) (not mailp)) . gnus-summary-high-ticked-face)
((and (> unread 0) (not mailp)) . gnus-summary-high-read-face)
((and (= unread 0) (not mailp)) . gnus-summary-high-ancient-face)
((not mailp) . gnus-summary-normal-ancient-face)
;; Mail.
((and (= unread 0) (eq level 1)) . gnus-group-mail-1-empty-face)
((eq level 1) . gnus-group-mail-1-face)
((and (= unread 0) (eq level 2)) . gnus-group-mail-2-empty-face)
((eq level 2) . gnus-group-mail-2-face)
((and (= unread 0) (eq level 3)) . gnus-group-mail-3-empty-face)
((eq level 3) . gnus-group-mail-3-face)
((= unread 0) . gnus-group-mail-low-empty-face)
(t . gnus-group-mail-low-face)))
)))
)
;;
;; Common to all C modes
;; ---------------------
;(autoload 'hideshowvis-enable "hideshowvis" "Highlight foldable regions")
;(add-hook 'c-mode-common-hook
; #'(lambda () (c-set-style "linux")
; (c-set-offset 'case-label 4)
; (setq c-basic-offset 4)))
;;
;; Auto fill mode
;; --------------
(add-hook 'text-mode-hook 'turn-on-auto-fill)
;;
;; Fill-column
;; -----------
;; Fill-column ist hier auf 78 Charakter gesetzt, nach Wunsch "andern!
(setq-default fill-column 78)
(add-hook 'TeX-mode-hook #'(lambda () (setq fill-column 78)))
;;
;; AUC-TeX
;; ----------------------------
(if (boundp 'AUCTeX-version)
(progn
(let* ((version (split-string AUCTeX-version "\\."))
(major (string-to-number (car version)))
(minor (string-to-number (car (cdr version)))))
(if (or (> major 11) (and (eq major 11) (>= minor 86)))
(custom-set-default 'TeX-master nil)
(setq-default TeX-master nil)))
(if (and window-system (featurep 'font-lock))
(progn
(add-hook 'latex-mode-hook 'turn-on-font-lock)
(if (boundp 'AUCTeX-version)
(progn
(add-hook 'LaTeX-mode-hook 'turn-on-font-lock)
(add-hook 'LaTeX-mode-hook 'LaTeX-math-mode)
(add-hook 'after-init-hook #'(lambda () (load "font-latex" nil t)))))))
))
;;
;; Brace macros
;; ------------
(defun TeX-Inserting (sta stb stc)
(if (= (preceding-char) sta )
(insert stb)
(progn (insert stc) (backward-char 1))))
(defun TeX-schweif () (interactive "*") (TeX-Inserting ?\\ "{" "{}"))
(defun TeX-rundekl () (interactive "*") (TeX-Inserting ?\\ "(" "()"))
(defun TeX-eckigek () (interactive "*") (TeX-Inserting ?\\ "[" "[]"))
(defun TeX-exponen () (interactive "*") (TeX-Inserting ?\\ "^" "^{}"))
(defun TeX-subscri () (interactive "*") (TeX-Inserting ?\\ "_" "_{}"))
(defun TeX-dollarm () (interactive "*") (TeX-Inserting ?\\ "$" "$$"))
(defun TeX-REVbbox () (interactive "*") (TeX-Inserting ?\\ "bbox{" "\\bbox{}"))
(add-hook 'LaTeX-mode-hook
#'(lambda ()
;; Uncomment this for automatic bracket closing
;; Begin bracket closing
; (local-set-key "{" 'TeX-schweif)
; (local-set-key "(" 'TeX-rundekl)
; (local-set-key "[" 'TeX-eckigek)
; (local-set-key "^" 'TeX-exponen)
; (local-set-key "_" 'TeX-subscri)
; (local-set-key "$" 'TeX-dollarm)
; (local-set-key "\C-b" 'TeX-REVbbox)
;;
;; It's german:
;; Deutsche Tastatur im LaTeX-German-Style/Babel-Class
;; ---------------------------------------------------
;; Aktivierung mit `M-x german-mode' -> man dr"ucke
;; *nacheinander* <ComposeCharacter>, <">, <a> und staune!
;; ACHTUNG: Bei grossen Files sehr LANGSAM beim Abspeichern
;; das ist vom Prinzip her bedingt! Hier gibt's keinen Support!
; (require 'ger-keys)
;; End bracket closing
;; For ISO Latin standard: Macro out of `ger-keys'
;; ger-keys should be loaded
; (german-mode)
;; For german style usage:
; (modify-syntax-entry ?" "w")
; (local-set-key "\"" 'self-insert-command)
;; Deutsche Belegung amerikanischer Tastaturen: aus `ger-keys'
; (german-keyboard)
))
;;
;; Provide some usefull function keys
;; ----------------------------------
;; Have a look on /usr/share/emacs/site-lisp/function-keys.el
;; Extensions or changes of the keymap
;; original definitions will found in loaddefs.el.
;;(global-set-key [escape] [?\e]) ; Escape
;;
(global-set-key [M-left] 'backward-word)
(global-set-key [M-right] 'forward-word)
(global-set-key [M-up] 'beginning-of-line)
(global-set-key [M-down] 'end-of-line)
;;
; (global-set-key [C-left] 'backward-char)
; (global-set-key [C-right] 'forward-char)
; (global-set-key [C-up] 'previous-line)
; (global-set-key [C-down] 'next-line)
;;
; (global-set-key [S-left] 'backward-char)
; (global-set-key [S-right] 'forward-char)
; (global-set-key [S-up] 'previous-line)
; (global-set-key [S-down] 'next-line)
;;
(global-set-key [find] 'isearch-forward) ; Search
(global-set-key [select] 'set-mark-command) ; Mark
;;
(global-set-key [S-next] 'end-of-buffer)
(global-set-key [S-prior] 'beginning-of-buffer)
(global-set-key [S-find] 'find-file)
(global-set-key [S-select] 'switch-to-buffer)
(global-set-key [S-insert] 'insert-file)
;;
(if (and (= emacs-major-version 19) (= emacs-minor-version 29))
(define-key key-translation-map [f1] nil)) ; 19.29+
(global-set-key [S-f1] 'find-file)
(global-set-key [M-f1] 'find-file)
(global-set-key [f1] 'help-for-help) ; `Help'
(global-set-key [pause] 'toggle-read-only) ; `HoldScreen'
;;
(if (global-key-binding [f2])
(progn
(global-set-key [S-f2] 'split-window)
(global-set-key [M-f2] 'split-window))
(global-set-key [f2] 'split-window))
(if (global-key-binding [f2])
(progn
(global-set-key [S-f2] 'split-window)
(global-set-key [M-f2] 'split-window))
(global-set-key [f2] 'split-window))
(if (global-key-binding [f3])
(progn
(global-set-key [S-f3] 'isearch-forward)
(global-set-key [M-f3] 'isearch-forward))
(global-set-key [f3] 'isearch-forward))
(if (global-key-binding [f4])
(progn
(global-set-key [S-f4] 'query-replace-regexp)
(global-set-key [M-f4] 'query-replace-regexp))
(global-set-key [f4] 'query-replace-regexp))
(if (global-key-binding [f5])
(progn
(global-set-key [S-f5] 'save-buffer)
(global-set-key [M-f5] 'save-buffer))
(global-set-key [f5] 'save-buffer))
(if (global-key-binding [f6])
(progn
(global-set-key [S-f6] 'find-file)
(global-set-key [M-f6] 'find-file))
(global-set-key [f6] 'find-file))
(if (global-key-binding [f7])
(progn
(global-set-key [S-f7] 'buffer-menu)
(global-set-key [M-f7] 'buffer-menu))
(global-set-key [f7] 'buffer-menu))
(if (global-key-binding [f8])
(progn
(global-set-key [S-f8] 'repeat-complex-command)
(global-set-key [M-f8] 'repeat-complex-command))
(global-set-key [f8] 'repeat-complex-command))
(if (global-key-binding [f9])
(progn
(global-set-key [S-f9] 'execute-extended-command)
(global-set-key [M-f9] 'execute-extended-command))
(global-set-key [f9] 'execute-extended-command))
(if (global-key-binding [f10])
(progn
(global-set-key [S-f10] 'eval-expression)
(global-set-key [M-f10] 'eval-expression))
(global-set-key [f10] 'eval-expression))
;;
;;(global-set-key [f11] [?\e]) ; Escape
(global-set-key [f11] esc-map) ; Escape
;;
(global-set-key [f12] 'backward-delete-char-untabify) ; Backspace
;;
;; DEC keyboard: f13 up to f20
(global-set-key [f13] 'newline) ; Linefeed
(global-set-key [linefeed] 'newline) ; Linefeed
;;
(global-set-key [f14] 'switch-to-buffer)
;;
;; Emacs original key binding
;;
; (global-set-key [home] 'beginning-of-buffer) ;
; (global-set-key [end] 'end-of-buffer) ;
;;
(global-set-key [help] 'info) ; Help
(global-set-key [M-help] 'repeat-complex-command) ; Redo
(global-set-key [menu] 'execute-extended-command) ; Do
(global-set-key [M-menu] 'eval-expression) ; eval
;;
(global-set-key [f17] 'beginning-of-buffer)
(global-set-key [f18] 'end-of-buffer)
(global-set-key [f19] 'save-buffer)
(global-set-key [f20] 'find-file)
;;
;; Translate `C-h' to DEL.
; (keyboard-translate ?\C-h ?\C-?)
;;
;; Translate DEL to `C-h'.
; (keyboard-translate ?\C-? ?\C-h)
;;
;; Use minibuffer for aking GPG passphrase
;;(setq epa-pinentry-mode 'loopback)
;;(pinentry-start)
;;
;;;;;;;;;;
;; the end

40
emacs-24.1-ps-mule.patch Normal file
View File

@ -0,0 +1,40 @@
---
lisp/ps-mule.el | 2 ++
lisp/textmodes/ispell.el | 14 +++++++++++---
2 files changed, 13 insertions(+), 3 deletions(-)
--- lisp/ps-mule.el
+++ lisp/ps-mule.el 2016-09-19 09:01:56.930605125 +0000
@@ -180,6 +180,8 @@ See also the variable `ps-font-info-data
(defconst ps-mule-font-info-database-latin
'((iso-8859-1
+ (normal nil nil))
+ (iso-8859-15
(normal nil nil)))
"Sample setting of `ps-mule-font-info-database' to use latin fonts.")
--- lisp/textmodes/ispell.el
+++ lisp/textmodes/ispell.el 2016-09-19 09:01:56.930605125 +0000
@@ -1533,10 +1533,18 @@ Protects against bogus binding of `enabl
nil ;; in pipe mode. Disable extended-char-mode
(nth 6 (or (assoc ispell-current-dictionary ispell-local-dictionary-alist)
(assoc ispell-current-dictionary ispell-dictionary-alist)))))
+;;
+;; Most languages in ISO-8859-15 for EURO symbols uses ISO-8859-1 chars
+;(defun ispell-get-coding-system ()
+; (nth 7 (or (assoc ispell-current-dictionary ispell-local-dictionary-alist)
+; (assoc ispell-current-dictionary ispell-dictionary-alist))))
(defun ispell-get-coding-system ()
- (nth 7 (or (assoc ispell-current-dictionary ispell-local-dictionary-alist)
- (assoc ispell-current-dictionary ispell-dictionary-alist))))
-
+ (let ((sys (nth 7 (or (assoc ispell-current-dictionary ispell-local-dictionary-alist)
+ (assoc ispell-current-dictionary ispell-dictionary-alist)))))
+ (if (and (boundp 'buffer-file-coding-system)
+ (eq buffer-file-coding-system 'iso-latin-9)
+ (eq sys 'iso-latin-1))
+ 'iso-latin-9 sys)))
(defvar ispell-pdict-modified-p nil
"Non-nil means personal dictionary has modifications to be saved.")

View File

@ -0,0 +1,15 @@
---
lisp/ps-mule.el | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- lisp/ps-mule.el
+++ lisp/ps-mule.el 2016-09-19 08:57:28.807664990 +0000
@@ -262,7 +262,7 @@ Currently, data for Japanese and Korean
(japanese-jisx0208
(normal bdf "jiskan24.bdf"))
(korean-ksc5601
- (normal bdf "hanglm24.bdf"))
+ (normal bdf "gulim24.bdf"))
(japanese-jisx0212
(normal bdf ("jksp40.bdf" "jisksp40.bdf")))
(chinese-cns11643-1

16
emacs-24.3-iconic.patch Normal file
View File

@ -0,0 +1,16 @@
---
lisp/startup.el | 3 +++
1 file changed, 3 insertions(+)
--- lisp/startup.el
+++ lisp/startup.el 2016-09-19 09:15:26.871345783 +0000
@@ -2629,6 +2629,9 @@ nil default-directory" name)
((equal argi "-no-splash")
(setq inhibit-startup-screen t))
+ ((equal argi "-iconic")
+ (setq inhibit-startup-message t))
+
((member argi '("-f" ; what the manual claims
"-funcall"
"-e")) ; what the source used to say

44
emacs-24.3-x11r7.patch Normal file
View File

@ -0,0 +1,44 @@
---
src/xrdb.c | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
--- src/xrdb.c
+++ src/xrdb.c 2023-08-01 06:52:49.143452069 +0000
@@ -39,6 +39,9 @@ along with GNU Emacs. If not, see <http
#include <X11/X.h>
#include <X11/Xutil.h>
#include <X11/Xresource.h>
+#ifdef USE_X_TOOLKIT
+#include <X11/Intrinsic.h>
+#endif
#ifdef HAVE_PWD_H
#include <pwd.h>
#endif
@@ -423,7 +426,15 @@ x_load_resources (Display *display, cons
sprintf (line, "Emacs*horizontalScrollBar.background: grey75");
XrmPutLineResource (&rdb, line);
#endif /* not USE_MOTIF */
-
+#ifdef USE_X_TOOLKIT
+ if ((db = XtScreenDatabase(DefaultScreenOfDisplay (display))))
+ {
+ XrmCombineDatabase (rdb, &db, FALSE);
+ rdb = db;
+ }
+ else
+ {
+#endif /* not USE_X_TOOLKIT */
user_database = get_user_db (display);
/* Figure out what the "customization string" is, so we can use it
@@ -464,6 +475,10 @@ x_load_resources (Display *display, cons
XrmMergeDatabases (db, &rdb);
}
+#ifdef USE_X_TOOLKIT
+ } /* (db != XtScreenDatabase()) */
+#endif /* not USE_X_TOOLKIT */
+
return rdb;
}

41
emacs-24.4-flyspell.patch Normal file
View File

@ -0,0 +1,41 @@
---
lisp/textmodes/flyspell.el | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
--- lisp/textmodes/flyspell.el
+++ lisp/textmodes/flyspell.el 2021-10-08 09:31:55.632323098 +0000
@@ -289,6 +289,12 @@ If this variable is nil, all regions are
"The key binding for flyspell auto correction."
:type 'key-sequence)
+(defvar flyspell-signature-separator
+ (if (boundp 'message-signature-separator)
+ message-signature-separator
+ "^-- $")
+ "*String used to recognize .signatures.")
+
;;*---------------------------------------------------------------------*/
;;* Mode specific options */
;;* ------------------------------------------------------------- */
@@ -313,7 +319,6 @@ property of the major mode name.")
;;*--- mail mode -------------------------------------------------------*/
(put 'mail-mode 'flyspell-mode-predicate 'mail-mode-flyspell-verify)
(put 'message-mode 'flyspell-mode-predicate 'mail-mode-flyspell-verify)
-(defvar message-signature-separator)
(defun mail-mode-flyspell-verify ()
"Function used for `flyspell-generic-check-word-predicate' in Mail mode."
(let* ((header-end (save-excursion
@@ -325,11 +330,11 @@ property of the major mode name.")
nil t)
(point)))
(signature-begin
- (if (not (boundp 'message-signature-separator))
+ (if (not (boundp 'flyspell-signature-separator))
(point-max)
(save-excursion
(goto-char (point-max))
- (re-search-backward message-signature-separator
+ (re-search-backward flyspell-signature-separator
(max header-end (- (point) 4000)) t)
(point)))))
(cond ((< (point) header-end)

25
emacs-24.4-glibc.patch Normal file
View File

@ -0,0 +1,25 @@
---
configure | 1 +
configure.ac | 1 +
2 files changed, 2 insertions(+)
--- configure.ac
+++ configure.ac 2018-05-29 12:18:31.133648098 +0000
@@ -2569,6 +2569,7 @@ fi
use_mmap_for_buffers=no
case "$opsys" in
mingw32) use_mmap_for_buffers=yes ;;
+ gnu-linux) use_mmap_for_buffers=yes ;;
esac
AC_FUNC_MMAP
--- configure
+++ configure 2018-05-29 12:20:07.583908486 +0000
@@ -13612,6 +13612,7 @@ fi
use_mmap_for_buffers=no
case "$opsys" in
mingw32) use_mmap_for_buffers=yes ;;
+ gnu-linux) use_mmap_for_buffers=yes ;;
esac

17
emacs-24.4-nonvoid.patch Normal file
View File

@ -0,0 +1,17 @@
---
src/xmenu.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--- src/xmenu.c
+++ src/xmenu.c 2023-08-01 06:50:00.914537084 +0000
@@ -2424,8 +2424,8 @@ Lisp_Object
xw_popup_dialog (struct frame *f, Lisp_Object header, Lisp_Object contents)
{
Lisp_Object title;
- const char *error_name;
- Lisp_Object selection;
+ const char *error_name = NULL;
+ Lisp_Object selection = Qnil;
specpdl_ref specpdl_count = SPECPDL_INDEX ();
check_window_system (f);

33
emacs-24.4-ps-bdf.patch Normal file
View File

@ -0,0 +1,33 @@
---
lisp/ldefs-boot.el | 4 ++--
lisp/ps-bdf.el | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
--- lisp/ldefs-boot.el
+++ lisp/ldefs-boot.el 2023-08-01 06:47:17.809528438 +0000
@@ -25512,9 +25512,9 @@ With prefix argument ARG, restart the Pr
;;; Generated autoloads from ps-bdf.el
-(defvar bdf-directory-list (if (memq system-type '(ms-dos windows-nt)) (list (expand-file-name "fonts/bdf" installation-directory)) '("/usr/local/share/emacs/fonts/bdf")) "\
+(defvar bdf-directory-list (if (memq system-type '(ms-dos windows-nt)) (list (expand-file-name "fonts/bdf" installation-directory)) '("/usr/share/fonts/bdf")) "\
List of directories to search for `BDF' font files.
-The default value is (\"/usr/local/share/emacs/fonts/bdf\").")
+The default value is (\"/usr/share/fonts/bdf\").")
(custom-autoload 'bdf-directory-list "ps-bdf" t)
(register-definition-prefixes "ps-bdf" '("bdf-"))
--- lisp/ps-bdf.el
+++ lisp/ps-bdf.el 2023-08-01 06:44:43.084366385 +0000
@@ -42,9 +42,9 @@
(defcustom bdf-directory-list
(if (memq system-type '(ms-dos windows-nt))
(list (expand-file-name "fonts/bdf" installation-directory))
- '("/usr/local/share/emacs/fonts/bdf"))
+ '("/usr/share/fonts/bdf"))
"List of directories to search for `BDF' font files.
-The default value is (\"/usr/local/share/emacs/fonts/bdf\")."
+The default value is (\"/usr/share/fonts/bdf\")."
:type '(repeat :tag "BDF font directory list"
(directory :tag "BDF font directory"))
:group 'ps-print-miscellany)

View File

@ -0,0 +1,63 @@
Work around openSUSE bug #1016172
---
lisp/dynamic-setting.el | 12 ++++++++----
src/xsettings.c | 7 ++++++-
2 files changed, 14 insertions(+), 5 deletions(-)
--- lisp/dynamic-setting.el
+++ lisp/dynamic-setting.el 2024-04-11 06:03:25.603986456 +0000
@@ -33,6 +33,7 @@
;;; Customizable variables
(declare-function font-get-system-font "xsettings.c" ())
+(declare-function font-face-attributes "font.c" (font &optional frame))
(defvar font-use-system-font)
@@ -42,15 +43,18 @@ If DISPLAY-OR-FRAME is a frame, the disp
If SET-FONT is non-nil, change the font for frames. Otherwise re-apply
the current form for the frame (i.e. hinting or somesuch changed)."
- (let ((new-font (and (fboundp 'font-get-system-font)
+ (let ((system-font (and (fboundp 'font-get-system-font)
(font-get-system-font)))
- (frame-list (frames-on-display-list display-or-frame)))
- (when (and new-font (display-graphic-p display-or-frame))
+ (frame-list (frames-on-display-list display-or-frame))
+ (user-font (face-attribute 'default :font)))
+ (when (and system-font (display-graphic-p display-or-frame))
(clear-font-cache)
(if set-font
;; Set the font on all current and future frames, as though
;; the `default' face had been "set for this session":
- (set-frame-font new-font nil frame-list)
+ (if (not user-font)
+ (set-frame-font system-font nil frame-list)
+ (set-frame-font user-font nil frame-list))
;; Just reconsider the existing fonts on all frames on each
;; display, by clearing the font and face caches. This will
;; cause all fonts to be recreated.
--- src/xsettings.c
+++ src/xsettings.c 2024-04-11 06:04:36.790667318 +0000
@@ -21,6 +21,7 @@ along with GNU Emacs. If not, see <http
#include <float.h>
#include <limits.h>
+#include <math.h>
#include <fcntl.h>
#include <byteswap.h>
@@ -839,7 +840,11 @@ apply_xft_settings (Display_Info *dpyinf
#endif
FcPatternGetInteger (pat, FC_LCD_FILTER, 0, &oldsettings.lcdfilter);
FcPatternGetInteger (pat, FC_RGBA, 0, &oldsettings.rgba);
- FcPatternGetDouble (pat, FC_DPI, 0, &oldsettings.dpi);
+
+ if (FcPatternGetDouble (pat, FC_DPI, 0, &oldsettings.dpi) == FcResultMatch)
+ {
+ oldsettings.dpi = round(oldsettings.dpi);
+ }
if ((settings->seen & SEEN_AA) != 0 && oldsettings.aa != settings->aa)
{

View File

@ -0,0 +1,56 @@
Index: emacs-25.2/configure.ac
===================================================================
---
emacs-29.1/configure.ac | 2 +-
emacs-29.1/src/image.c | 12 ++++++++++++
2 files changed, 13 insertions(+), 1 deletion(-)
--- emacs-29.1/configure.ac
+++ emacs-29.1/configure.ac 2023-08-01 07:15:12.274827913 +0000
@@ -2883,7 +2883,7 @@ if test "${HAVE_X11}" = "yes" || test "$
else
## 6.3.5 is the earliest version known to work; see Bug#17339.
## 6.8.2 makes Emacs crash; see Bug#13867.
- EMACS_CHECK_MODULES([IMAGEMAGICK], [Wand >= 6.3.5 Wand != 6.8.2])
+ EMACS_CHECK_MODULES([IMAGEMAGICK], [MagickWand >= 6.3.5 MagickWand != 6.8.2])
fi
if test $HAVE_IMAGEMAGICK = yes; then
--- emacs-29.1/src/image.c
+++ emacs-29.1/src/image.c 2023-08-01 07:20:54.484555078 +0000
@@ -10207,7 +10207,11 @@ imagemagick_compute_animated_image (Magi
PixelWand **source, **dest;
size_t source_width, source_height;
ssize_t source_left, source_top;
+#if MagickLibVersion >= 0x700
+ PixelInfo pixel;
+#else
MagickPixelPacket pixel;
+#endif
DisposeType dispose;
ptrdiff_t lines = 0;
@@ -10272,7 +10276,11 @@ imagemagick_compute_animated_image (Magi
if (dispose == BackgroundDispose || PixelGetAlpha (source[x]))
{
PixelGetMagickColor (source[x], &pixel);
+#if MagickLibVersion >= 0x700
+ PixelSetPixelColor (dest[x + source_left], &pixel);
+#else
PixelSetMagickColor (dest[x + source_left], &pixel);
+#endif
}
}
PixelSyncIterator (dest_iterator);
@@ -10317,7 +10325,11 @@ imagemagick_load_image (struct frame *f,
MagickWand *image_wand;
PixelIterator *iterator;
PixelWand **pixels, *bg_wand = NULL;
+#if MagickLibVersion >= 0x700
+ PixelInfo pixel;
+#else
MagickPixelPacket pixel;
+#endif
Lisp_Object image;
#ifndef DONT_CREATE_TRANSFORMED_IMAGEMAGICK_IMAGE
Lisp_Object value;

33
emacs-26.1-xft4x11.patch Normal file
View File

@ -0,0 +1,33 @@
---
lwlib/xlwmenu.c | 13 +++++--------
1 file changed, 5 insertions(+), 8 deletions(-)
--- lwlib/xlwmenu.c
+++ lwlib/xlwmenu.c 2018-06-15 05:50:45.749287186 +0000
@@ -2118,21 +2118,18 @@ XlwMenuInitialize (Widget request, Widge
gray_width, gray_height,
(unsigned long)1, (unsigned long)0, 1);
+ mw->menu.font = XLoadQueryFont (display, mw->menu.fontName);
#if defined USE_CAIRO || defined HAVE_XFT
- if (openXftFont (mw))
+ if (mw->menu.font || openXftFont (mw))
;
else
#endif
{
- mw->menu.font = XLoadQueryFont (display, mw->menu.fontName);
+ mw->menu.font = XLoadQueryFont (display, "fixed");
if (!mw->menu.font)
{
- mw->menu.font = XLoadQueryFont (display, "fixed");
- if (!mw->menu.font)
- {
- fprintf (stderr, "Menu font fixed not found, can't continue.\n");
- emacs_abort ();
- }
+ fprintf (stderr, "Menu font fixed not found, can't continue.\n");
+ emacs_abort ();
}
}

View File

@ -0,0 +1,128 @@
From werner@suse.de
Date: Mon, 08 Mar 2021 13:35:41 +0000
Subject: Allow GNU Emacs server to open X Display
even if the Xauthority file is not the default expected by XCloseDisplay()
---
etc/emacs.service | 2 ++
lisp/server.el | 45 +++++++++++++++++++++++++++++++++++++++++++--
2 files changed, 45 insertions(+), 2 deletions(-)
--- etc/emacs.service
+++ etc/emacs.service 2024-04-11 06:46:29.320172754 +0000
@@ -5,9 +5,11 @@
[Unit]
Description=Emacs text editor
Documentation=info:emacs man:emacs(1) https://gnu.org/software/emacs/
+After=graphical-session.target
[Service]
Type=notify
+Environment=XAUTHORITY=%t/emacs/xauth
ExecStart=emacs --fg-daemon
# Emacs will exit with status 15 after having received SIGTERM, which
--- lisp/server.el
+++ lisp/server.el 2024-04-11 06:17:17.692578500 +0000
@@ -289,6 +289,11 @@ If nil, no instructions are displayed."
"The directory in which to place the server socket.
If local sockets are not supported, this is nil.")
+;; Hold the Xauthority if an X Display is used
+(defvar server-xauth-file nil
+ "The Xauthority file to hold the Xauthority cookies.
+If no Xauthority is used, this is nil.")
+
(define-error 'server-running-external "External server running")
(defun server-clients-with (property value)
@@ -619,6 +624,11 @@ If the key is not valid, signal an error
(let ((server-dir (if server-use-tcp server-auth-dir server-socket-dir)))
(expand-file-name server-name server-dir)))
+(defsubst server--xauth ()
+ "Return the xauth file name to hold the X Authority."
+ (let ((server-dir (if server-use-tcp server-auth-dir server-socket-dir)))
+ (expand-file-name "xauth" server-dir)))
+
(defun server-stop (&optional noframe)
"If this Emacs process has a server communication subprocess, stop it.
If this actually stopped the server, return non-nil. If the
@@ -720,7 +730,8 @@ the `server-process' variable."
(setq leave-dead t)))
;; Now any previous server is properly stopped.
(unless leave-dead
- (let ((server-file (server--file-name)))
+ (let ((server-file (server--file-name))
+ (xauth-file (server--xauth)))
;; Make sure there is a safe directory in which to place the socket.
(server-ensure-safe-dir (file-name-directory server-file))
(with-file-modes ?\700
@@ -762,6 +773,14 @@ the `server-process' variable."
(unless server-process (error "Could not start server process"))
(server-log "Started server")
(process-put server-process :server-file server-file)
+ ;; File to hold X Authority cookies
+ (unless (file-exists-p xauth-file)
+ (make-empty-file xauth-file))
+ (when (file-exists-p xauth-file)
+ (let ((var (concat "XAUTHORITY=" xauth-file)))
+ (dolist (proc (process-list))
+ (process-put proc 'env (cons var (process-get proc 'env)))))
+ (setq server-xauth-file xauth-file))
(setq server-mode t)
(push 'server-mode global-minor-modes)
(when server-use-tcp
@@ -898,7 +917,7 @@ This handles splitting the command if it
(let ((frame
(server-with-environment
(process-get proc 'env)
- '("LANG" "LC_CTYPE" "LC_ALL"
+ '("LANG" "LC_CTYPE" "LC_ALL" "LC_PAPER" "LC_MEASUREMENT"
;; For tgetent(3); list according to ncurses(3).
"BAUDRATE" "COLUMNS" "ESCDELAY" "HOME" "LINES"
"NCURSES_ASSUMED_COLORS" "NCURSES_NO_PADDING"
@@ -1171,6 +1190,8 @@ The following commands are accepted by t
nowait ; t if emacsclient does not want to wait for us.
frame ; Frame opened for the client (if any).
display ; Open frame on this display.
+ (xauth-file (expand-file-name "~/.Xauthority"))
+ xauth-cmd
parent-id ; Window ID for XEmbed
dontkill ; t if client should not be killed.
commands
@@ -1314,6 +1335,16 @@ The following commands are accepted by t
;; -env NAME=VALUE: An environment variable.
("-env"
(let ((var (pop args-left)))
+ (if (and (stringp var)
+ (string-match "^\\([^=]+\\)=\\(.*\\)" var))
+ (if (cond ((string-equal (match-string 1 var) "LANG") t)
+ ((string-equal (match-string 1 var) "LC_CTYPE") t)
+ ((string-equal (match-string 1 var) "LC_ALL") t)
+ ((string-equal (match-string 1 var) "LC_PAPER") t)
+ ((string-equal (match-string 1 var) "LC_MEASUREMENT") t)
+ ((string-equal (match-string 1 var) "DISPLAY") t)
+ ((string-equal (match-string 1 var) "XAUTHORITY") (setq xauth-file (match-string 2 var))))
+ (setenv (match-string 1 var) (match-string 2 var) t)))
;; XXX Variables should be encoded as in getenv/setenv.
(process-put proc 'env
(cons var (process-get proc 'env)))))
@@ -1329,6 +1360,16 @@ The following commands are accepted by t
;; Unknown command.
(arg (error "Unknown command: %s" arg))))
+ (if (and display server-xauth-file)
+ (progn
+ (if (not xauth-file)
+ (setq xauth-file (expand-file-name "~/.Xauthority")))
+ (if (and (file-exists-p xauth-file) (not (file-equal-p xauth-file server-xauth-file)))
+ (progn
+ (setq xauth-cmd (concat "xauth -i -f " xauth-file " extract - " display
+ "| xauth -f " server-xauth-file " merge -"))
+ (shell-command xauth-cmd)))))
+
;; If both -no-wait and -tty are given with file or sexp
;; arguments, use an existing frame.
(and nowait

112
emacs-27.1-pdftex.patch Normal file
View File

@ -0,0 +1,112 @@
---
etc/refcards/Makefile | 6 +++---
etc/refcards/cs-dired-ref.tex | 3 ++-
etc/refcards/cs-survival.tex | 3 ++-
etc/refcards/fr-survival.tex | 2 +-
etc/refcards/pl-refcard.tex | 2 +-
etc/refcards/ru-refcard.tex | 1 +
etc/refcards/sk-dired-ref.tex | 3 ++-
etc/refcards/sk-survival.tex | 3 ++-
etc/refcards/survival.tex | 2 +-
9 files changed, 15 insertions(+), 10 deletions(-)
--- etc/refcards/Makefile
+++ etc/refcards/Makefile 2024-02-02 07:47:53.132617523 +0000
@@ -231,12 +231,12 @@ pl-refcard.pdf: $(pl_refcard_deps)
! pdfmex --version > /dev/null 2> /dev/null; then \
echo "No mex format found."; false; \
fi
- $(ENVADD) pdftex -output-format=pdf pl-refcard.tex
+ $(ENVADD) pdfmex -output-format=pdf pl-refcard.tex
pl-refcard.dvi: $(pl_refcard_deps)
if kpsewhich -format=fmt mex > /dev/null; then \
- $(ENVADD) tex pl-refcard.tex; \
- else \
$(ENVADD) mex pl-refcard.tex; \
+ else \
+ $(ENVADD) tex pl-refcard.tex; \
fi
pl-refcard.ps: pl-refcard.dvi
dvips -t a4 -o $@ pl-refcard.dvi
--- etc/refcards/cs-dired-ref.tex
+++ etc/refcards/cs-dired-ref.tex 2024-02-02 07:47:53.132617523 +0000
@@ -108,7 +108,8 @@ see the Emacs distribution, or {\tt http
\font\eightbf=csbx8
\font\eightit=csti8
\font\eighttt=cstt8
- \font\eightmi=csmi8
+% \font\eightmi=csmi8
+ \font\eightmi=cmmi8
\font\eightsy=cmsy8
\textfont0=\eightrm
\textfont1=\eightmi
--- etc/refcards/cs-survival.tex
+++ etc/refcards/cs-survival.tex 2024-02-02 07:47:53.132617523 +0000
@@ -84,7 +84,8 @@
\font\eightbf=csbx8
\font\eightit=csti8
\font\eighttt=cstt8
-\font\eightmi=csmi8
+%\font\eightmi=csmi8
+\font\eightmi=cmmi8
\font\eightsy=cmsy8
\font\eightss=cmss8
\textfont0=\eightrm
--- etc/refcards/fr-survival.tex
+++ etc/refcards/fr-survival.tex 2024-02-02 07:48:34.823838922 +0000
@@ -1,4 +1,4 @@
-%&tex
+%
% Title: GNU Emacs Survival Card
% Copyright (C) 2000--2024 Free Software Foundation, Inc.
--- etc/refcards/pl-refcard.tex
+++ etc/refcards/pl-refcard.tex 2024-02-02 07:48:49.943556553 +0000
@@ -1,4 +1,4 @@
-%&mex
+%
% Reference Card for GNU Emacs
% Copyright (C) 1999, 2001--2024 Free Software Foundation, Inc.
--- etc/refcards/ru-refcard.tex
+++ etc/refcards/ru-refcard.tex 2024-02-02 07:47:53.132617523 +0000
@@ -25,6 +25,7 @@
\documentclass[10pt]{article}
\usepackage{multicol,tabularx}
\usepackage[a4paper,hmargin={2cm,2cm},vmargin={2cm,2cm},nohead,twoside]{geometry}
+\usepackage{type1ec}
\usepackage[T2A]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[english,russian]{babel}
--- etc/refcards/sk-dired-ref.tex
+++ etc/refcards/sk-dired-ref.tex 2024-02-02 07:47:53.132617523 +0000
@@ -109,7 +109,8 @@ see the Emacs distribution, or {\tt http
\font\eightbf=csbx8
\font\eightit=csti8
\font\eighttt=cstt8
- \font\eightmi=csmi8
+% \font\eightmi=csmi8
+ \font\eightmi=cmmi8
\font\eightsy=cmsy8
\textfont0=\eightrm
\textfont1=\eightmi
--- etc/refcards/sk-survival.tex
+++ etc/refcards/sk-survival.tex 2024-02-02 07:47:53.132617523 +0000
@@ -86,7 +86,8 @@
\font\eightbf=csbx8
\font\eightit=csti8
\font\eighttt=cstt8
-\font\eightmi=csmi8
+%\font\eightmi=csmi8
+\font\eightmi=cmmi8
\font\eightsy=cmsy8
\font\eightss=cmss8
\textfont0=\eightrm
--- etc/refcards/survival.tex
+++ etc/refcards/survival.tex 2024-02-02 07:49:06.719243261 +0000
@@ -1,4 +1,4 @@
-%&tex
+%
% Title: GNU Emacs Survival Card
% Copyright (C) 2000--2024 Free Software Foundation, Inc.

741
emacs-29.1.dif Normal file
View File

@ -0,0 +1,741 @@
---
Makefile.in | 7 +-
configure.ac | 6 --
doc/man/etags.1 | 20 ++++----
lib-src/Makefile.in | 4 -
lib-src/pop.c | 1
lisp/cmuscheme.el | 3 -
lisp/international/mule-cmds.el | 1
lisp/net/ange-ftp.el | 8 +--
lisp/site-load.el | 45 ++++++++++++++++++
lisp/speedbar.el | 1
lisp/textmodes/ispell.el | 88 +++++++++++++++++++++++++++++++++---
site-lisp/term/func-keys.el | 33 +++++++++++++
site-lisp/term/gnome.el | 97 ++++++++++++++++++++++++++++++++++++++++
site-lisp/term/kvt.el | 97 ++++++++++++++++++++++++++++++++++++++++
site-lisp/term/linux.el | 79 ++++++++++++++++++++++++++++++++
site-lisp/term/locale.el | 13 +++++
16 files changed, 472 insertions(+), 31 deletions(-)
--- Makefile.in
+++ Makefile.in 2023-08-01 08:29:04.813378495 +0000
@@ -614,7 +614,7 @@ install-arch-dep: src install-arch-indep
umask 022; ${MKDIR_P} "$(DESTDIR)${bindir}"
$(MAKE) -C lib-src install
ifeq (${ns_self_contained},no)
- ${INSTALL_PROGRAM} $(INSTALL_STRIP) src/emacs${EXEEXT} "$(DESTDIR)${bindir}/$(EMACSFULL)"
+ ${INSTALL_PROGRAM} $(INSTALL_STRIP) src/emacs${EXEEXT} "$(DESTDIR)${bindir}/$(EMACS)"
ifeq (${HAVE_BE_APP},yes)
${INSTALL_PROGRAM} $(INSTALL_STRIP) src/Emacs "$(DESTDIR)${prefix}/apps/Emacs"
endif
@@ -624,7 +624,7 @@ ifeq (${HAVE_BE_APP},yes)
endif
${INSTALL_DATA} src/emacs.pdmp "$(DESTDIR)${libexecdir}/emacs/${version}/${configuration}"/emacs-${EMACS_PDMP}
endif
- -chmod 755 "$(DESTDIR)${bindir}/$(EMACSFULL)"
+ -chmod 755 "$(DESTDIR)${bindir}/$(EMACS)"
ifndef NO_BIN_LINK
rm -f "$(DESTDIR)${bindir}/$(EMACS)"
cd "$(DESTDIR)${bindir}" && $(LN_S_FILEONLY) "$(EMACSFULL)" "$(EMACS)"
@@ -811,6 +811,7 @@ install-man:
umask 022; ${MKDIR_P} "$(DESTDIR)${man1dir}"
thisdir=`pwd -P`; \
cd ${mansrcdir}; \
+ cp ctags.1 gnuctags.1; \
for page in *.1; do \
test "$$page" = ChangeLog.1 && continue; \
dest=`echo "$${page}" | sed -e 's/\.1$$//' -e '$(TRANSFORM)'`.1; \
@@ -947,7 +948,7 @@ uninstall: uninstall-$(NTDIR) uninstall-
for page in *.1; do \
rm -f "$(DESTDIR)${man1dir}"/`echo "$${page}" | sed -e 's/\.1$$//' -e '$(TRANSFORM)'`.1$$ext; done; \
fi)
- rm -f "$(DESTDIR)${bindir}/$(EMACS)" "$(DESTDIR)${bindir}/$(EMACSFULL)"
+ rm -f "$(DESTDIR)${bindir}/$(EMACS)"
(if cd "$(DESTDIR)${icondir}"; then \
rm -f hicolor/*x*/apps/"${EMACS_NAME}.png" \
"hicolor/scalable/apps/${EMACS_NAME}.svg" \
--- configure.ac
+++ configure.ac 2023-08-01 08:20:12.115169895 +0000
@@ -1958,10 +1958,8 @@ fi
LD_SWITCH_X_SITE_RPATH=
if test "${x_libraries}" != NONE; then
if test -n "${x_libraries}"; then
- LD_SWITCH_X_SITE=-L`AS_ECHO(["$x_libraries"]) | sed -e 's/:/ -L/g'`
- LD_SWITCH_X_SITE_RPATH=-Wl,-rpath,`
- AS_ECHO(["$x_libraries"]) | sed -e 's/:/ -Wl,-rpath,/g'
- `
+ LD_SWITCH_X_SITE="-L ${x_libraries%%:*}"
+ LD_SWITCH_X_SITE_RPATH="-Wl,-rpath-link,${x_libraries%%:*}"
fi
x_default_search_path=""
x_search_path=${x_libraries}
--- doc/man/etags.1
+++ doc/man/etags.1 2023-08-01 08:20:12.115169895 +0000
@@ -7,7 +7,7 @@
..
.SH NAME
-etags, ctags \- generate tag file for Emacs, vi
+etags, gnuctags \- generate tag file for Emacs, vi
.SH SYNOPSIS
.hy 0
.na
@@ -25,7 +25,7 @@ etags, ctags \- generate tag file for Em
[\|\-\-help\|] [\|\-\-version\|]
\fIfile\fP .\|.\|.
-\fBctags\fP [\|\-aCdgIQRVh\|] [\|\-BtTuvwx\|] [\|\-l \fIlanguage\fP\|]
+\fBgnuctags\fP [\|\-aCdgIQRVh\|] [\|\-BtTuvwx\|] [\|\-l \fIlanguage\fP\|]
.if n .br
[\|\-o \fItagfile\fP\|] [\|\-r \fIregexp\fP\|]
[\|\-\-parse\-stdin=\fIfile\fP\|]
@@ -45,7 +45,7 @@ etags, ctags \- generate tag file for Em
The \|\fBetags\fP\| program is used to create a tag table file, in a format
understood by
.BR emacs ( 1 )\c
-\&; the \|\fBctags\fP\| program is used to create a similar table in a
+\&; the \|\fBgnuctags\fP\| program is used to create a similar table in a
format understood by
.BR vi ( 1 )\c
\&. Both forms of the program understand
@@ -55,7 +55,7 @@ Perl, Ruby, Rust, PHP, PostScript, Pytho
assembler\-like syntaxes.
Both forms read the files specified on the command line, and write a tag
table (defaults: \fBTAGS\fP for \fBetags\fP, \fBtags\fP for
-\fBctags\fP) in the current working directory.
+\fBgnuctags\fP) in the current working directory.
Files specified with relative file names will be recorded in the tag
table with file names relative to the directory where the tag table
resides. If the tag table is in /dev or is the standard output,
@@ -71,7 +71,7 @@ parsing of the file names following the
language, overriding guesses based on filename extensions.
.SH OPTIONS
Some options make sense only for the \fBvi\fP style tag files produced
-by ctags;
+by gnuctags;
\fBetags\fP does not recognize them.
The programs accept unambiguous abbreviations for long option names.
.TP
@@ -85,7 +85,7 @@ expression search instructions; the \fB\
the delimiter "\|\fB?\fP\|", to search \fIbackwards\fP through files.
The default is to use the delimiter "\|\fB/\fP\|", to search \fIforwards\fP
through files.
-Only \fBctags\fP accepts this option.
+Only \fBgnuctags\fP accepts this option.
.TP
.B \-\-declarations
In C and derived languages, create tags for function declarations,
@@ -183,7 +183,7 @@ the previous ones. The regexps are of o
where \fItagregexp\fP is used to match the tag. It should not match
useless characters. If the match is such that more characters than
needed are unavoidably matched by \fItagregexp\fP, it may be useful to
-add a \fInameregexp\fP, to narrow down the tag scope. \fBctags\fP
+add a \fInameregexp\fP, to narrow down the tag scope. \fBgnuctags\fP
ignores regexps without a \fInameregexp\fP. The syntax of regexps is
the same as in emacs. The following character escape sequences are
supported: \\a, \\b, \\d, \\e, \\f, \\n, \\r, \\t, \\v, which
@@ -262,15 +262,15 @@ tag entries for other files in place. C
by deleting the existing entries for the given files and then
rewriting the new entries at the end of the tags file. It is often
faster to simply rebuild the entire tag file than to use this.
-Only \fBctags\fP accepts this option.
+Only \fBgnuctags\fP accepts this option.
.TP
.B \-v, \-\-vgrind
Instead of generating a tag file, write index (in \fBvgrind\fP format)
-to standard output. Only \fBctags\fP accepts this option.
+to standard output. Only \fBgnuctags\fP accepts this option.
.TP
.B \-x, \-\-cxref
Instead of generating a tag file, write a cross reference (in
-\fBcxref\fP format) to standard output. Only \fBctags\fP accepts this option.
+\fBcxref\fP format) to standard output. Only \fBgnuctags\fP accepts this option.
.TP
.B \-h, \-H, \-\-help
Print usage information. Followed by one or more \-\-language=LANG
--- lib-src/Makefile.in
+++ lib-src/Makefile.in 2023-08-01 08:20:12.115169895 +0000
@@ -144,7 +144,7 @@ HAIKU_CFLAGS=@HAIKU_CFLAGS@
CLIENTW = @CLIENTW@
# Things that a user might actually run, which should be installed in bindir.
-INSTALLABLES = etags${EXEEXT} ctags${EXEEXT} emacsclient${EXEEXT} $(CLIENTW) \
+INSTALLABLES = etags${EXEEXT} gnuctags${EXEEXT} emacsclient${EXEEXT} $(CLIENTW) \
ebrowse${EXEEXT}
# Things that Emacs runs internally, or during the build process,
@@ -403,7 +403,7 @@ etags${EXEEXT}: ${etags_deps}
## etags.o files on top of each other.
## FIXME?
## Can't we use a wrapper that calls 'etags --ctags'?
-ctags${EXEEXT}: ${srcdir}/ctags.c ${etags_deps}
+gnuctags${EXEEXT}: ${srcdir}/ctags.c ${etags_deps}
$(AM_V_CCLD)$(CC) ${ALL_CFLAGS} -o $@ $< $(etags_libs)
ebrowse${EXEEXT}: ${srcdir}/ebrowse.c ${srcdir}/../lib/min-max.h $(NTLIB) \
--- lib-src/pop.c
+++ lib-src/pop.c 2023-08-01 08:20:12.115169895 +0000
@@ -26,6 +26,7 @@ along with GNU Emacs. If not, see <http
#ifdef MAIL_USE_POP
#include <sys/types.h>
+#include <ctype.h>
#ifdef WINDOWSNT
#include "ntlib.h"
#undef _WIN32_WINNT
--- lisp/cmuscheme.el
+++ lisp/cmuscheme.el 2023-08-01 08:20:12.115169895 +0000
@@ -232,7 +232,8 @@ is run).
(read-string "Run Scheme: " scheme-program-name)
scheme-program-name)))
(if (not (comint-check-proc "*scheme*"))
- (let ((cmdlist (split-string-and-unquote cmd)))
+ (let ((cmdlist (split-string-and-unquote cmd))
+ process-connection-type)
(set-buffer (apply #'make-comint "scheme" (car cmdlist)
(scheme-start-file (car cmdlist)) (cdr cmdlist)))
(inferior-scheme-mode)))
--- lisp/international/mule-cmds.el
+++ lisp/international/mule-cmds.el 2023-08-01 08:20:12.115169895 +0000
@@ -39,6 +39,7 @@
(defvar mule-keymap
(let ((map (make-sparse-keymap)))
+ (define-key map "m" 'toggle-enable-multibyte-characters)
(define-key map "f" 'set-buffer-file-coding-system)
(define-key map "r" 'revert-buffer-with-coding-system)
(define-key map "F" 'set-file-name-coding-system)
--- lisp/net/ange-ftp.el
+++ lisp/net/ange-ftp.el 2023-08-01 08:20:12.119169821 +0000
@@ -5076,7 +5076,7 @@ NEWNAME should be the name to give the n
; "If a host matches this regexp then it is assumed to be running VOS.")
;
;(defun ange-ftp-vos-host (host)
-; (and ange-ftp-vos-host-regexp
+; (and host ange-ftp-vos-host-regexp
; (save-match-data
; (string-match ange-ftp-vos-host-regexp host))))
;
@@ -5191,7 +5191,7 @@ NEWNAME should be the name to give the n
;; Return non-nil if HOST is running VMS.
(defun ange-ftp-vms-host (host)
- (and ange-ftp-vms-host-regexp
+ (and host ange-ftp-vms-host-regexp
(string-match-p ange-ftp-vms-host-regexp host)))
;; Because some VMS ftp servers convert filenames to lower case
@@ -5699,7 +5699,7 @@ Other orders of $ and _ seem to all work
;; Return non-nil if HOST is running MTS.
(defun ange-ftp-mts-host (host)
- (and ange-ftp-mts-host-regexp
+ (and host ange-ftp-mts-host-regexp
(string-match-p ange-ftp-mts-host-regexp host)))
;; Parse the current buffer which is assumed to be in mts ftp dir format.
@@ -5897,7 +5897,7 @@ Other orders of $ and _ seem to all work
;; Return non-nil if HOST is running CMS.
(defun ange-ftp-cms-host (host)
- (and ange-ftp-cms-host-regexp
+ (and host ange-ftp-cms-host-regexp
(string-match-p ange-ftp-cms-host-regexp host)))
(defun ange-ftp-add-cms-host (host)
--- lisp/site-load.el
+++ lisp/site-load.el 2023-08-01 08:20:12.119169821 +0000
@@ -0,0 +1,45 @@
+;;;;
+;;; emacs-27.1/lisp/site-load.el
+;;; Copyright (c) 1995,96,98,99 SuSE Gmbh Nuernberg, Germany. All rights reserved.
+;;;
+;;; Autor: Werner Fink <werner@suse.de>, No warranty of any kind
+;;;;
+;; CONFIGURATION (under bash):
+;; (export CC=gcc; \
+;; export CFLAGS="-O2 $(arch dependent flags) -pipe \
+;; -DSYSTEM_PURESIZE_EXTRA=25000 -DSITELOAD_PURESIZE_EXTRA=10000" ; \
+;; ./configure $(arch)-suse-linux --with-x --with-x-toolkit=lucid \
+;; --with-gcc --with-pop --with-system-malloc --prefix=/usr \
+;; --exec-prefix=/usr \
+;; --x-includes=/usr/X11R6/include --x-libraries=/usr/X11R6/lib )
+;;
+;; include bug fixes you have
+;;
+;; MAKE:
+;; make LDFLAGS=-s CC=gcc CFLAGS="-O2 $(arch dependent flags) -pipe \
+;; -DSYSTEM_PURESIZE_EXTRA=25000 -DSITELOAD_PURESIZE_EXTRA=10000"
+;;
+;; DOC:
+;; lisp/delsel.elc lisp/lpr.elc added to src/Makefile.in for DOCumentation
+;;
+;;;;
+(garbage-collect)
+
+(load "emacs-lisp/pcase")
+(load "emacs-lisp/easy-mmode")
+(garbage-collect)
+
+(load "lpr")
+(setq lpr-headers-switches (list "-h"))
+(setq lpr-add-switches t)
+(garbage-collect)
+
+;; Overwrite `load delsel'
+;; Choose `t' in your ~/.emacs
+(custom-set-variables '(delete-selection-mode nil))
+(garbage-collect)
+
+(setq gnus-default-nntp-server "news")
+(garbage-collect)
+
+;;; site-load.el ends here
--- lisp/speedbar.el
+++ lisp/speedbar.el 2023-08-01 08:20:12.119169821 +0000
@@ -727,6 +727,7 @@ If you want to change this while speedba
;; Navigation.
(define-key map "n" 'speedbar-next)
+ (define-key map [tab] 'speedbar-next)
(define-key map "p" 'speedbar-prev)
(define-key map "\M-n" 'speedbar-restricted-next)
(define-key map "\M-p" 'speedbar-restricted-prev)
--- lisp/textmodes/ispell.el
+++ lisp/textmodes/ispell.el 2023-08-01 08:20:12.119169821 +0000
@@ -191,13 +191,15 @@ Must be greater than 1."
:type 'integer)
(defcustom ispell-program-name
- (or (executable-find "aspell")
- (executable-find "ispell")
- (executable-find "hunspell")
- ;; Enchant is commonly installed as `enchant-2', so use this
- ;; name and avoid old versions of `enchant'.
- (executable-find "enchant-2")
- "ispell")
+ (if (functionp 'append-ispell-dict-alist)
+ "ispell"
+ (or (executable-find "aspell")
+ (executable-find "ispell")
+ (executable-find "hunspell")
+ ;; Enchant is commonly installed as `enchant-2', so use this
+ ;; name and avoid old versions of `enchant'.
+ (executable-find "enchant-2")
+ "ispell"))
"Program invoked by \\[ispell-word] and \\[ispell-region] commands."
:type 'string
:set (lambda (symbol value)
@@ -1427,6 +1429,78 @@ The variable `ispell-library-directory'
;; Define commands in menu in opposite order you want them to appear.
(let ((map (make-sparse-keymap "Spell")))
+ ;; Begin adding list for ispell dictonaries installed on SuSE
+ (if (and (functionp 'append-ispell-dict-alist)
+ (symbolp 'ispell-program-name)
+ (string-match "ispell" ispell-program-name))
+ (let ((dicts (reverse (cons (cons "default" nil)
+ (append ispell-local-dictionary-alist ispell-dictionary-alist))))
+ (path (and (boundp 'ispell-library-path) ispell-library-path))
+ name load-dict)
+ (dolist (dict dicts)
+ (setq name (car dict)
+ load-dict (car (cdr (member "-d" (nth 5 dict)))))
+ (cond ((not (stringp name))
+ (define-key map (vector 'default)
+ (cons "Select Default Dict"
+ (cons "Dictionary for which Ispell was configured"
+ (list 'lambda () '(interactive)
+ (list 'ispell-change-dictionary "default"))))))
+ ((or (not path) ; load all if library dir not defined
+ (file-exists-p (concat path "/" name ".hash"))
+ (file-exists-p (concat path "/" name ".has"))
+ (and load-dict
+ (or (file-exists-p(concat path "/" load-dict ".hash"))
+ (file-exists-p(concat path "/" load-dict ".has")))))
+ (define-key map (vector (intern name))
+ (cons (concat "Select " (capitalize name) " Dict")
+ (list 'lambda () '(interactive)
+ (list 'ispell-change-dictionary name))))))))
+ (if (and (functionp 'ispell-find-aspell-dictionaries)
+ (symbolp 'ispell-program-name)
+ (string-match "aspell" ispell-program-name))
+ (progn
+ (ispell-find-aspell-dictionaries)
+ (let ((dicts (reverse (cons (cons "default" nil)
+ (append ispell-local-dictionary-alist ispell-dictionary-alist))))
+ name)
+ (dolist (dict dicts)
+ (setq name (car dict))
+ (cond ((not (stringp name))
+ (define-key map (vector 'default)
+ (cons "Select Default Dict"
+ (cons "Dictionary for which Aspell was configured"
+ (list 'lambda () '(interactive)
+ (list 'ispell-change-dictionary "default"))))))
+ ((and (stringp name)
+ (ispell-aspell-find-dictionary name))
+ (define-key map (vector (intern name))
+ (cons (concat "Select " (capitalize name) " Dict")
+ (list 'lambda () '(interactive)
+ (list 'ispell-change-dictionary name)))))))))
+ (if (and (functionp 'ispell-find-hunspell-dictionaries)
+ (symbolp 'ispell-program-name)
+ (string-match "hunspell" ispell-program-name))
+ (progn
+ (ispell-find-hunspell-dictionaries)
+ (let ((dicts (reverse (cons (cons "default" nil)
+ (append ispell-local-dictionary-alist ispell-hunspell-dictionary-alist))))
+ name)
+ (dolist (dict dicts)
+ (setq name (car dict))
+ (cond ((not (stringp name))
+ (define-key map (vector 'default)
+ (cons "Select Default Dict"
+ (cons "Dictionary for which Hunspell was configured"
+ (list 'lambda () '(interactive)
+ (list 'ispell-change-dictionary "default"))))))
+ ((stringp name)
+ (define-key map (vector (intern name))
+ (cons (concat "Select " (capitalize name) " Dict")
+ (list 'lambda () '(interactive)
+ (list 'ispell-change-dictionary name)
+ )))))))))))
+ ;; End adding list for ispell dictonaries installed on SuSE
(define-key map [ispell-change-dictionary]
`(menu-item ,(purecopy "Change Dictionary...") ispell-change-dictionary
:help ,(purecopy "Supply explicit dictionary file name")))
--- site-lisp/term/func-keys.el
+++ site-lisp/term/func-keys.el 2023-08-01 08:20:12.119169821 +0000
@@ -0,0 +1,33 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;; term/func-keys.el for site-lisp path
+;;; Copyright (c) 1996-2001 SuSE Gmbh Nuernberg, Germany.
+;;;
+;;; Author: Werner Fink <werner@suse.de>, No warranty of any kind
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; num block
+;; kp_f1 .. kp_f4 and kp_tab not found on MF-102
+ (global-set-key [kp-f1] esc-map) ; Escape
+ (global-set-key [kp-f2] 'undo) ; Undo
+ (global-set-key [kp-f3] 'isearch-forward) ; Search
+ (global-set-key [kp-f4] 'kill-line) ; Kill-Line
+;;
+;; Backspace, Delete and any thing else
+;;
+(if (not window-system)
+ ; Do nothing within terminals because they know about
+ nil
+ (if (fboundp 'normal-erase-is-backspace-mode)
+ (normal-erase-is-backspace-mode 1)
+ (global-set-key [delete] 'delete-char))
+ ;(global-set-key [delete] '[127])
+ ;(global-unset-key [backspace])
+ ;(global-set-key [backspace] '[127])
+)
+;;
+;; Wheel mouse support
+;;
+(if (fboundp 'mouse-wheel-mode)
+ (mouse-wheel-mode 1)
+)
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; Ende von func-keys.el
--- site-lisp/term/gnome.el
+++ site-lisp/term/gnome.el 2023-08-01 08:20:12.119169821 +0000
@@ -0,0 +1,97 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;; term/gnomw.el for site-lisp path
+;;; Copyright (c) 2000 SuSE Gmbh Nuernberg, Germany. All rights reserved.
+;;;
+;;; Author: Werner Fink <werner@suse.de>, No warranty of any kind
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; (define-key function-key-map "\e[1~" [find])
+; (define-key function-key-map "\eOH" [home])
+ (define-key function-key-map "\e[1~" [home])
+ (define-key function-key-map "\e[2~" [insertchar])
+ (define-key function-key-map "\e[3~" [deletechar])
+; (define-key function-key-map "\e[4~" [select])
+; (define-key function-key-map "\eOF" [end])
+ (define-key function-key-map "\e[4~" [end])
+ (define-key function-key-map "\e[5~" [prior])
+ (define-key function-key-map "\e[6~" [next])
+ (define-key function-key-map "\e[OP" [f1])
+ (define-key function-key-map "\e[OQ" [f2])
+ (define-key function-key-map "\e[OR" [f3])
+ (define-key function-key-map "\e[OS" [f4])
+ (define-key function-key-map "\e[15~" [f5])
+ (define-key function-key-map "\e[17~" [f6])
+ (define-key function-key-map "\e[18~" [f7])
+ (define-key function-key-map "\e[19~" [f8])
+ (define-key function-key-map "\e[20~" [f9])
+ (define-key function-key-map "\e[21~" [f10])
+ (define-key function-key-map "\e[23~" [f11])
+ (define-key function-key-map "\e[24~" [f12])
+ (define-key function-key-map "\e[25~" [f13])
+ (define-key function-key-map "\e[26~" [f14])
+ (define-key function-key-map "\e[28~" [help])
+ (define-key function-key-map "\e[29~" [menu])
+ (define-key function-key-map "\e?\e[28~" [M-help])
+ (define-key function-key-map "\e?\e[29~" [M-menu])
+ (define-key function-key-map "\e[31~" [f17])
+ (define-key function-key-map "\e[32~" [f18])
+ (define-key function-key-map "\e[33~" [f19])
+ (define-key function-key-map "\e[34~" [f20])
+;;
+;; num block
+;; [home] and [end] found in num block
+; (define-key function-key-map "\eOH" [home])
+; (define-key function-key-map "\eOF" [end])
+ (define-key function-key-map "\e[1~" [home])
+ (define-key function-key-map "\e[4~" [end])
+;;
+;; Locked num block
+ (define-key function-key-map "\eOI" [kp-tab])
+ (define-key function-key-map "\eOj" [kp-multiply])
+ (define-key function-key-map "\eOk" [kp-add])
+ (define-key function-key-map "\eOl" [kp-separator])
+ (define-key function-key-map "\eOM" [kp-enter])
+ (define-key function-key-map "\eOm" [kp-subtract])
+ (define-key function-key-map "\eOn" [kp-decimal])
+; (define-key function-key-map "\eOn" [kp-period]) ; [kp-decimal]
+ (define-key function-key-map "\eOo" [kp-divide])
+ (define-key function-key-map "\eOp" [kp-0])
+ (define-key function-key-map "\eOq" [kp-1])
+ (define-key function-key-map "\eOr" [kp-2])
+ (define-key function-key-map "\eOs" [kp-3])
+ (define-key function-key-map "\eOt" [kp-4])
+ (define-key function-key-map "\eOu" [kp-5])
+ (define-key function-key-map "\eOv" [kp-6])
+ (define-key function-key-map "\eOw" [kp-7])
+ (define-key function-key-map "\eOx" [kp-8])
+ (define-key function-key-map "\eOy" [kp-9])
+;;
+;; Undefine some ESC ESC behavior --- for later use
+ (global-unset-key "\e\e")
+ (define-key esc-map "\e" nil)
+;;
+ (define-key function-key-map "\eOD" [left])
+ (define-key function-key-map "\eOC" [right])
+ (define-key function-key-map "\eOA" [up])
+ (define-key function-key-map "\eOB" [down])
+;;
+ (define-key function-key-map "\e\eOD" [M-left])
+ (define-key function-key-map "\e\eOC" [M-right])
+ (define-key function-key-map "\e\eOA" [M-up])
+ (define-key function-key-map "\e\eOB" [M-down])
+;;
+;; Not in Use?
+ (define-key function-key-map "\C-?\eOD" [C-left])
+ (define-key function-key-map "\C-?\eOC" [C-right])
+ (define-key function-key-map "\C-?\eOA" [C-up])
+ (define-key function-key-map "\C-?\eOB" [C-down])
+;;
+;; Backspace, Delete and any thing else
+;;
+ (global-unset-key [insertchar])
+ (global-set-key [insertchar] 'overwrite-mode)
+ (global-unset-key [deletechar])
+ (global-set-key [deletechar] 'delete-char)
+;;
+(load "term/func-keys" nil t)
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; Ende von gnomw.el
--- site-lisp/term/kvt.el
+++ site-lisp/term/kvt.el 2023-08-01 08:20:12.119169821 +0000
@@ -0,0 +1,97 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;; term/kvt.el for site-lisp path
+;;; Copyright (c) 2000 SuSE Gmbh Nuernberg, Germany. All rights reserved.
+;;;
+;;; Author: Werner Fink <werner@suse.de>, No warranty of any kind
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+ (define-key function-key-map "\e[1~" [find])
+ (define-key function-key-map "\eOH" [home])
+ (define-key function-key-map "\e[2~" [insertchar])
+ (define-key function-key-map "\e[3~" [deletechar])
+ (define-key function-key-map "\e[4~" [select])
+ (define-key function-key-map "\eOF" [end])
+ (define-key function-key-map "\e[5~" [prior])
+ (define-key function-key-map "\e[6~" [next])
+ (define-key function-key-map "\e[11~" [f1])
+ (define-key function-key-map "\e[12~" [f2])
+ (define-key function-key-map "\e[13~" [f3])
+ (define-key function-key-map "\e[14~" [f4])
+ (define-key function-key-map "\e[15~" [f5])
+ (define-key function-key-map "\e[17~" [f6])
+ (define-key function-key-map "\e[18~" [f7])
+ (define-key function-key-map "\e[19~" [f8])
+ (define-key function-key-map "\e[20~" [f9])
+ (define-key function-key-map "\e[21~" [f10])
+ (define-key function-key-map "\e[23~" [f11])
+ (define-key function-key-map "\e[24~" [f12])
+ (define-key function-key-map "\e[25~" [f13])
+ (define-key function-key-map "\e[26~" [f14])
+ (define-key function-key-map "\e[28~" [help])
+ (define-key function-key-map "\e[29~" [menu])
+ (define-key function-key-map "\e?\e[28~" [M-help])
+ (define-key function-key-map "\e?\e[29~" [M-menu])
+ (define-key function-key-map "\e[31~" [f17])
+ (define-key function-key-map "\e[32~" [f18])
+ (define-key function-key-map "\e[33~" [f19])
+ (define-key function-key-map "\e[34~" [f20])
+;;
+;; num block
+;; [home] and [end] found in num block
+ (define-key function-key-map "\eOH" [home])
+ (define-key function-key-map "\eOF" [end])
+;;
+;; Locked num block
+ (define-key function-key-map "\eOP" [kp-f1])
+ (define-key function-key-map "\eOQ" [kp-f2])
+ (define-key function-key-map "\eOR" [kp-f3])
+ (define-key function-key-map "\eOS" [kp-f4])
+ (define-key function-key-map "\eOI" [kp-tab])
+ (define-key function-key-map "\eOj" [kp-multiply])
+ (define-key function-key-map "\eOk" [kp-add])
+ (define-key function-key-map "\eOl" [kp-separator])
+ (define-key function-key-map "\eOM" [kp-enter])
+ (define-key function-key-map "\eOm" [kp-subtract])
+ (define-key function-key-map "\eOn" [kp-decimal])
+; (define-key function-key-map "\eOn" [kp-period]) ; [kp-decimal]
+ (define-key function-key-map "\eOo" [kp-divide])
+ (define-key function-key-map "\eOp" [kp-0])
+ (define-key function-key-map "\eOq" [kp-1])
+ (define-key function-key-map "\eOr" [kp-2])
+ (define-key function-key-map "\eOs" [kp-3])
+ (define-key function-key-map "\eOt" [kp-4])
+ (define-key function-key-map "\eOu" [kp-5])
+ (define-key function-key-map "\eOv" [kp-6])
+ (define-key function-key-map "\eOw" [kp-7])
+ (define-key function-key-map "\eOx" [kp-8])
+ (define-key function-key-map "\eOy" [kp-9])
+;;
+;; Undefine some ESC ESC behavior --- for later use
+ (global-unset-key "\e\e")
+ (define-key esc-map "\e" nil)
+;;
+ (define-key function-key-map "\eOD" [left])
+ (define-key function-key-map "\eOC" [right])
+ (define-key function-key-map "\eOA" [up])
+ (define-key function-key-map "\eOB" [down])
+;;
+ (define-key function-key-map "\e\eOD" [M-left])
+ (define-key function-key-map "\e\eOC" [M-right])
+ (define-key function-key-map "\e\eOA" [M-up])
+ (define-key function-key-map "\e\eOB" [M-down])
+;;
+;; Not in Use?
+ (define-key function-key-map "\C-?\eOD" [C-left])
+ (define-key function-key-map "\C-?\eOC" [C-right])
+ (define-key function-key-map "\C-?\eOA" [C-up])
+ (define-key function-key-map "\C-?\eOB" [C-down])
+;;
+;; Backspace, Delete and any thing else
+;;
+ (global-unset-key [insertchar])
+ (global-set-key [insertchar] 'overwrite-mode)
+ (global-unset-key [deletechar])
+ (global-set-key [deletechar] 'delete-char)
+;;
+(load "term/func-keys" nil t)
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; Ende von kvt.el
--- site-lisp/term/linux.el
+++ site-lisp/term/linux.el 2023-08-01 08:20:12.119169821 +0000
@@ -0,0 +1,79 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;; term/linux.el for site-lisp path
+;;; Copyright (c) 1996 SuSE Gmbh Nuernberg, Germany. All rights reserved.
+;;;
+;;; Author: Werner Fink <werner@suse.de>, No warranty of any kind
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+ (define-key function-key-map "\e[1~" [home])
+ (define-key function-key-map "\e[2~" [insertchar])
+ (define-key function-key-map "\e[3~" [deletechar])
+ (define-key function-key-map "\e[4~" [end])
+ (define-key function-key-map "\e[5~" [prior])
+ (define-key function-key-map "\e[6~" [next])
+ (define-key function-key-map "\e[[A" [f1])
+ (define-key function-key-map "\e[[B" [f2])
+ (define-key function-key-map "\e[[C" [f3])
+ (define-key function-key-map "\e[[D" [f4])
+ (define-key function-key-map "\e[[E" [f5])
+ (define-key function-key-map "\e[17~" [f6])
+ (define-key function-key-map "\e[18~" [f7])
+ (define-key function-key-map "\e[19~" [f8])
+ (define-key function-key-map "\e[20~" [f9])
+ (define-key function-key-map "\e[21~" [f10])
+ (define-key function-key-map "\e[23~" [f11])
+ (define-key function-key-map "\e[24~" [f12])
+ (define-key function-key-map "\e[25~" [f13])
+ (define-key function-key-map "\e[26~" [f14])
+ (define-key function-key-map "\e[28~" [help])
+ (define-key function-key-map "\e[29~" [menu])
+ (define-key function-key-map "\e?\e[28~" [M-help])
+ (define-key function-key-map "\e?\e[29~" [M-menu])
+ (define-key function-key-map "\e[31~" [f17])
+ (define-key function-key-map "\e[32~" [f18])
+ (define-key function-key-map "\e[33~" [f19])
+ (define-key function-key-map "\e[34~" [f20])
+;;
+;; Not in Use?
+;; ----------------------------------
+;; Console-Setting for Linux ???
+ (define-key function-key-map "\e[H" [M-up])
+ (define-key function-key-map "\e[Y" [M-down])
+ (define-key function-key-map "\e[M" [menu])
+ (define-key function-key-map "\e?\e[M" [M-menu])
+ (define-key function-key-map "\e[P" [pause])
+;;
+;; num block
+ (define-key function-key-map "\e[G" [begin])
+;;
+;; Locked num block Nothing to do :-)
+;;
+;; Undefine some ESC ESC behavior --- for later use
+ (global-unset-key "\e\e")
+ (define-key esc-map "\e" nil)
+;;
+ (define-key function-key-map "\e[D" [left])
+ (define-key function-key-map "\e[C" [right])
+ (define-key function-key-map "\e[A" [up])
+ (define-key function-key-map "\e[B" [down])
+;;
+ (define-key function-key-map "\e\e[D" [M-left])
+ (define-key function-key-map "\e\e[C" [M-right])
+ (define-key function-key-map "\e\e[A" [M-up])
+ (define-key function-key-map "\e\e[B" [M-down])
+;;
+;; Not in Use?
+ (define-key function-key-map "\C-?\e[D" [C-left])
+ (define-key function-key-map "\C-?\e[C" [C-right])
+ (define-key function-key-map "\C-?\e[A" [C-up])
+ (define-key function-key-map "\C-?\e[B" [C-down])
+;;
+;; Backspace, Delete and any thing else
+;;
+ (global-unset-key [insertchar])
+ (global-set-key [insertchar] 'overwrite-mode)
+ (global-unset-key [deletechar])
+ (global-set-key [deletechar] 'delete-char)
+;;
+(load "term/func-keys" nil t)
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; Ende von linux.el
--- site-lisp/term/locale.el
+++ site-lisp/term/locale.el 2023-08-01 08:20:12.119169821 +0000
@@ -0,0 +1,13 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;; term/locale.el for site-lisp path
+;;; Copyright (c) 1996-2003 SuSE Linux AG Nuernberg, Germany.
+;;; Copyright (c) 2007 SuSE LINUX Products GmbH Nuernberg, Germany.
+;;;
+;;; Author: Werner Fink <werner@suse.de>, No warranty of any kind
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+(add-hook 'term-setup-hook (function (lambda ()
+ (load "term/func-keys" t t))))
+;;
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; Ende von locale.el

BIN
emacs-29.4-pdf.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

BIN
emacs-29.4.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

11
emacs-29.4.tar.xz.sig Normal file
View File

@ -0,0 +1,11 @@
-----BEGIN PGP SIGNATURE-----
iQFLBAABCgA1FiEEuwLkB66eqofJ5yodLU4f6VlXE10FAmZ26AAXHHN0ZWZhbmth
bmdhc0BnbWFpbC5jb20ACgkQLU4f6VlXE12pAwf8C+BIyBYVe3q7ErFAL7O1zK/k
fuL/Nh1g9pKY6JDiNx4INLi4DoFaoj4HzLj356N/m/8xZl0+J1TYOp5gR3TNiYSo
hf8Dxt9V3zEminMzXeQnrH0IMESkktpXmlhCcb5GtapO86KzYrFeZXU95fk8C3+H
7MVDo3QznLnQTUb+OythZ5d5ClN1XVNKrkcu/hdHR51lPYP4NW/zbWdCYvKsSNTD
pkr+484KAT/R2FzoyhUtbiGkJacG0AxHA7uwPqjCFcoaet/6GjkJ9UJTJo7A1VwF
9qBwS2UCLofsZpoutly+43Id+OJBmA6PbGyQayvDCPuxfX9Ok/TjWWLSY0z5wA==
=E1hc
-----END PGP SIGNATURE-----

10
emacs-rpmlintrc Normal file
View File

@ -0,0 +1,10 @@
addFilter(".*zero-length.*/var/games/emacs/.*-scores.*")
addFilter(".*non-etc-or-var-file-marked-as-conffile.*/usr/share/emacs/site-lisp/site-start.el.*")
addFilter(".*name-repeated-in-summar.*")
addFilter(".*files-duplicate.*/usr/share/emacs.*")
addFilter(".*desktopfile-without-binary.*/usr/share/applications/emacs.desktop.*emacs.*")
addFilter(".*emacs-info.noarch:.*W:.*package-with-huge-docs:.*100%.*")
addFilter(".*emacs-eln.*:.*W:.*unstripped-binary-or-object.*")
addFilter(".*emacs-eln.*:.*E:.*shared-library-without-dependency-information.*")
addFilter(".*desktopfile-without-binary.*")
addFilter(".*E:.*invalid-desktopfile.*/usr/share/applications/emacsclient.*\.desktop.*")

3109
emacs.changes Normal file

File diff suppressed because it is too large Load Diff

170
emacs.keyring Normal file
View File

@ -0,0 +1,170 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
=8PjB
-----END PGP PUBLIC KEY BLOCK-----
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
=9clf
-----END PGP PUBLIC KEY BLOCK-----

158
emacs.sh Normal file
View File

@ -0,0 +1,158 @@
#!/bin/bash
#
# Launch a GNU Emacs
#
# The environment variable EMACS_TOOLKIT is used to determine
# the prefered GUI. Possible values/types of EMACS_TOOLKIT are
#
# nox -- for pure console based GNU Emacs
# gtk -- for full GTK2/3 based GNU Emacs (for real X11)
# wayland -- for full GTK2/3 based GNU Emacs (for wayland)
# x11 -- for full LUCID based GNU Emacs (used Xaw3d)
#
# Should work but remember history
# bnc#345669 -- Emacs doesn't un-maximize in KDE/KWin
# bnc#342385 -- Emacs doesn't keep the iconic information in KDE/KWin
#
# if test -z "$EMACS_TOOLKIT" ; then
# EMACS_TOOLKIT=gtk
# KDE_FULL_SESSION=$(xprop -root KDE_FULL_SESSION 2>/dev/null)
# case "$KDE_FULL_SESSION" in
# *true*) EMACS_TOOLKIT=x11
# esac
# fi
#
if test -n "${XDG_SESSION_TYPE}"
then
if test "${XDG_SESSION_TYPE}" = wayland -a -x ${0}-wayland
then
: ${EMACS_TOOLKIT:=wayland}
else
: ${EMACS_TOOLKIT:=gtk}
fi
else
: ${EMACS_TOOLKIT:=gtk}
fi
#
# Enabled again
#
if test "$EMACS_TOOLKIT" = gtk -o "$EMACS_TOOLKIT" = wayland
then
# Currently (2013/05/24) the parser of the GNOME libs
# are broken that is it is not independent from locale
LC_NUMERIC=POSIX
GDK_RGBA=0
export LC_NUMERIC GDK_RGBA
fi
arg0=$0
argv=("$@")
if test -x ${arg0}-${EMACS_TOOLKIT}
then
set -- ${arg0}-${EMACS_TOOLKIT}
elif test -x ${arg0}-x11
then
set -- ${arg0}-x11
elif test -x ${arg0}-nox
then
set -- ${arg0}-nox
else
echo "no emacs binary found"
exit 1
fi
if [[ "$1" =~ .*-nox ]] ; then
exec -a $arg0 ${1+"$@"} "${argv[@]}"
fi
dbusdaemon=$(type -p dbus-daemon 2>/dev/null)
#
# Now check for valid dbus, e.g. after su/sudo/slogin
#
if test -n "$dbusdaemon" ; then
#
# Workaround for boo#1205109
#
if test "$EUID" = 0 -a "$XDG_RUNTIME_DIR" != /run/user/0; then
unset XDG_CONFIG_HOME XDG_CACHE_HOME XDG_DESKTOP_DIR XDG_RUNTIME_DIR XDG_DATA_DIRS
# unset DBUS_SESSION_BUS_ADDRESS
if test ! -d /run/user/0; then
systemctl start user@0 >/dev/null 2>&1
fi
if test -S /run/user/0/bus; then
DBUS_SESSION_BUS_ADDRESS=unix:/run/user/0/bus
fi
fi
# Standard on modern systems
: ${XDG_RUNTIME_DIR:=/run/user/${EUID}}
export XDG_RUNTIME_DIR
# Oops ... no dbus-daemon then launch a new session
if test -z "$DBUS_SESSION_BUS_ADDRESS" ; then
dbuslaunch=$(type -p dbus-launch 2>/dev/null)
dbusession=$(type -p dbus-run-session 2>/dev/null)
if test -z "$dbusession" -a -n "$dbuslaunch" ; then
set -- $dbuslaunch --sh-syntax --close-stderr --exit-with-session ${1+"$@"}
arg0=$dbuslaunch
elif test -n "$dbusession" ; then
set -- $dbusession -- ${1+"$@"}
arg0=$dbusession
else
arg0=emacs
fi
elif test -S "${XDG_RUNTIME_DIR}/bus" ; then
dbusupdate=$(type -p dbus-update-activation-environment 2>/dev/null)
dbusstatus=$(systemctl --user is-active dbus.service 2>/dev/null)
if test -n "$dbusupdate" -a "$dbusstatus" != active ; then
export DBUS_SESSION_BUS_ADDRESS="unix:path=${XDG_RUNTIME_DIR}/bus"
$dbusupdate --systemd "DBUS_SESSION_BUS_ADDRESS"
fi
fi
unset dbuslaunch dbusdaemon
fi
#
# Disable AT bridge if not accessible
#
if test -z "$NO_AT_BRIDGE" ; then
gsettings=$(gsettings get org.gnome.desktop.interface toolkit-accessibility 2>/dev/null)
if test -z "$gsettings" -o "$gsettings" = false ; then
NO_AT_BRIDGE=1
export NO_AT_BRIDGE
fi
unset gsettings
fi
#
# Check input method for working ibus setup
#
case "$XMODIFIERS" in
@im=ibus*)
_arch=$(getconf LONG_BIT)
if test "$_arch" != 64
then
unset _arch
else
_arch=-64
fi
if type -p gtk-query-immodules-3.0${_arch} &> /dev/null
then
_ibus=$(gtk-query-immodules-3.0${_arch} | grep im-ibus)
else
unset _ibus
fi
if test -n "$_ibus"
then
if test -z "$GTK_IM_MODULE" -o "$GTK_IM_MODULE" != ibus
then
export GTK_IM_MODULE=ibus
fi
else
unset XMODIFIERS
fi
unset _ibus _arch
if ! ibus list-engine &> /dev/null
then
unset GTK_IM_MODULE XMODIFIERS
fi
;;
*)
esac
unset G_MESSAGES_DEBUG G_DEBUG G_MESSAGES_PREFIXED
exec -a $arg0 ${1+"$@"} "${argv[@]}"

5117
emacs.spec Normal file

File diff suppressed because it is too large Load Diff

29
emacs.test Normal file
View File

@ -0,0 +1,29 @@
Testform für emacs
===================
22.05.2007: Version 22.0.99
Maintainer: werner
Vorraussetzungen:
=================
X sollte installiert sein.
Starten:
========
emacs
emacs -nw
emacs -q --no-site
emacs -nw -q --no-site
als Editor von mailx/elm/pine ...
Testen mit verschiedensten File-Typen (*.tex, man-pages.
*.html, info-mode, gnus, rmail, ...)
Ergebnisse:
===========
Hängt von der gewählten mode ab.

5
macros.emacs Normal file
View File

@ -0,0 +1,5 @@
# -*- rpm-spec -*-
%_emacs_sitelispdir %{_datadir}/emacs/site-lisp
%_emacs_etcdir %{_datadir}/emacs/etc
%_emacs_sitestartdir %{_emacs_sitelispdir}/site-start.d
%_emacs_archsitelispdir %{_libdir}/emacs/site-lisp

41
pdump.patch Normal file
View File

@ -0,0 +1,41 @@
From 54823555425ffabe31b42672b1894d0e3ff1b018 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bj=C3=B6rn=20Bidar?= <bjorn.bidar@thaodan.de>
Date: Fri, 10 Feb 2023 23:31:35 +0200
Subject: [PATCH] Allow to override pdmp base
---
src/emacs.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/src/emacs.c b/src/emacs.c
index 687b8c7f81f0..2d6bfe07d813 100644
--- src/emacs.c
+++ src/emacs.c
@@ -867,11 +867,15 @@ load_pdump (int argc, char **argv, char *dump_file)
NULL
#endif
;
+#ifdef PDMP_BASE
+ const char *argv0_base = PDMP_BASE
+#else
const char *argv0_base =
#ifdef NS_SELF_CONTAINED
"Emacs"
#else
"emacs"
+#endif
#endif
;
@@ -1012,7 +1016,11 @@ load_pdump (int argc, char **argv, char *dump_file)
if (IS_DIRECTORY_SEP (*p))
last_sep = p;
}
+#ifdef PDMP_BASE
+ argv0_base = PDMP_BASE;
+#else
argv0_base = last_sep ? last_sep + 1 : argv[0];
+#endif
ptrdiff_t needed = (strlen (path_exec)
+ 1
+ strlen (argv0_base)

BIN
site-lisp.tar.bz2 (Stored with Git LFS) Normal file

Binary file not shown.