X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/233ba4d924933cb56129bd7511e6137b7c0b8e3e..ce8171797dafbde765170b79e5f154afc4872e86:/lisp/emulation/ws-mode.el diff --git a/lisp/emulation/ws-mode.el b/lisp/emulation/ws-mode.el index 69f7b1d50e..fb140e6ebd 100644 --- a/lisp/emulation/ws-mode.el +++ b/lisp/emulation/ws-mode.el @@ -1,6 +1,6 @@ ;;; ws-mode.el --- WordStar emulation mode for GNU Emacs -;; Copyright (C) 1991, 2001-2011 Free Software Foundation, Inc. +;; Copyright (C) 1991, 2001-2014 Free Software Foundation, Inc. ;; Author: Juergen Nickelsen ;; Version: 0.7 @@ -73,8 +73,7 @@ (define-key map "\C-x" 'save-buffers-kill-emacs) (define-key map "y" 'ws-delete-block) (define-key map "\C-y" 'ws-delete-block) - map) - "") + map)) (defvar wordstar-C-o-map (let ((map (make-keymap))) @@ -95,9 +94,9 @@ (define-key map "\C-r" 'set-fill-column) (define-key map "\C-u" 'keyboard-quit) (define-key map "wd" 'delete-other-windows) - (define-key map "wh" 'split-window-horizontally) + (define-key map "wh" 'split-window-right) (define-key map "wo" 'other-window) - (define-key map "wv" 'split-window-vertically) + (define-key map "wv" 'split-window-below) map) "") @@ -140,14 +139,13 @@ (define-key map "y" 'ws-kill-eol) (define-key map "\C-y" 'ws-kill-eol) (define-key map "\177" 'ws-kill-bol) - map) - "") + map)) -(defvar wordstar-mode-map +(defvar wordstar-mode-map (let ((map (make-keymap))) (define-key map "\C-a" 'backward-word) (define-key map "\C-b" 'fill-paragraph) - (define-key map "\C-c" 'scroll-up) + (define-key map "\C-c" 'scroll-up-command) (define-key map "\C-d" 'forward-char) (define-key map "\C-e" 'previous-line) (define-key map "\C-f" 'forward-word) @@ -161,7 +159,7 @@ (define-key map "\C-o" wordstar-C-o-map) (define-key map "\C-p" 'quoted-insert) (define-key map "\C-q" wordstar-C-q-map) - (define-key map "\C-r" 'scroll-down) + (define-key map "\C-r" 'scroll-down-command) (define-key map "\C-s" 'backward-char) (define-key map "\C-t" 'kill-word) (define-key map "\C-u" 'keyboard-quit) @@ -170,17 +168,16 @@ (define-key map "\C-x" 'next-line) (define-key map "\C-y" 'kill-complete-line) (define-key map "\C-z" 'scroll-up-line) - map) - "") + map)) ;; wordstar-C-j-map not yet implemented -(defvar wordstar-C-j-map nil "") +(defvar wordstar-C-j-map nil) (put 'wordstar-mode 'mode-class 'special) ;;;###autoload -(defun wordstar-mode () +(define-derived-mode wordstar-mode fundamental-mode "WordStar" "Major mode with WordStar-like key bindings. BUGS: @@ -191,106 +188,7 @@ BUGS: - Search and replace (C-q a) is only available in forward direction No key bindings beginning with ESC are installed, they will work -Emacs-like. - -The key bindings are: - - C-a backward-word - C-b fill-paragraph - C-c scroll-up-line - C-d forward-char - C-e previous-line - C-f forward-word - C-g delete-char - C-h backward-char - C-i indent-for-tab-command - C-j help-for-help - C-k ordstar-C-k-map - C-l ws-repeat-search - C-n open-line - C-p quoted-insert - C-r scroll-down-line - C-s backward-char - C-t kill-word - C-u keyboard-quit - C-v overwrite-mode - C-w scroll-down - C-x next-line - C-y kill-complete-line - C-z scroll-up - - C-k 0 ws-set-marker-0 - C-k 1 ws-set-marker-1 - C-k 2 ws-set-marker-2 - C-k 3 ws-set-marker-3 - C-k 4 ws-set-marker-4 - C-k 5 ws-set-marker-5 - C-k 6 ws-set-marker-6 - C-k 7 ws-set-marker-7 - C-k 8 ws-set-marker-8 - C-k 9 ws-set-marker-9 - C-k b ws-begin-block - C-k c ws-copy-block - C-k d save-buffers-kill-emacs - C-k f find-file - C-k h ws-show-markers - C-k i ws-indent-block - C-k k ws-end-block - C-k p ws-print-block - C-k q kill-emacs - C-k r insert-file - C-k s save-some-buffers - C-k t ws-mark-word - C-k u ws-exdent-block - C-k C-u keyboard-quit - C-k v ws-move-block - C-k w ws-write-block - C-k x kill-emacs - C-k y ws-delete-block - - C-o c wordstar-center-line - C-o b switch-to-buffer - C-o j justify-current-line - C-o k kill-buffer - C-o l list-buffers - C-o m auto-fill-mode - C-o r set-fill-column - C-o C-u keyboard-quit - C-o wd delete-other-windows - C-o wh split-window-horizontally - C-o wo other-window - C-o wv split-window-vertically - - C-q 0 ws-find-marker-0 - C-q 1 ws-find-marker-1 - C-q 2 ws-find-marker-2 - C-q 3 ws-find-marker-3 - C-q 4 ws-find-marker-4 - C-q 5 ws-find-marker-5 - C-q 6 ws-find-marker-6 - C-q 7 ws-find-marker-7 - C-q 8 ws-find-marker-8 - C-q 9 ws-find-marker-9 - C-q a ws-query-replace - C-q b ws-to-block-begin - C-q c end-of-buffer - C-q d end-of-line - C-q f ws-search - C-q k ws-to-block-end - C-q l ws-undo - C-q p ws-last-cursorp - C-q r beginning-of-buffer - C-q C-u keyboard-quit - C-q w ws-last-error - C-q y ws-kill-eol - C-q DEL ws-kill-bol -" - (interactive) - (kill-all-local-variables) - (use-local-map wordstar-mode-map) - (setq mode-name "WordStar") - (setq major-mode 'wordstar-mode) - (run-mode-hooks 'wordstar-mode-hook)) +Emacs-like.") (defun wordstar-center-paragraph () @@ -716,7 +614,7 @@ This will only work for errors raised by WordStar mode functions." (defun ws-query-replace (from to) "In WordStar mode: Search string, remember string for repetition." - (interactive "sReplace: + (interactive "sReplace: \n\ sWith: " ) (setq ws-search-string from) (setq ws-search-direction t)