comparison lisp/emulation/viper.el @ 20003:9bc6a4017c8c

new version
author Michael Kifer <kifer@cs.stonybrook.edu>
date Tue, 30 Sep 1997 01:13:53 +0000
parents c62c4684f0b7
children f44ff2c52fac
comparison
equal deleted inserted replaced
20002:e89847e2df84 20003:9bc6a4017c8c
6 ;; Keywords: emulations 6 ;; Keywords: emulations
7 ;; Author: Michael Kifer <kifer@cs.sunysb.edu> 7 ;; Author: Michael Kifer <kifer@cs.sunysb.edu>
8 8
9 ;; Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc. 9 ;; Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc.
10 10
11 (defconst viper-version "3.00 (Polyglot) of August 18, 1997" 11 (defconst viper-version "3.001 (Polyglot) of September 23, 1997"
12 "The current version of Viper") 12 "The current version of Viper")
13 13
14 ;; This file is part of GNU Emacs. 14 ;; This file is part of GNU Emacs.
15 15
16 ;; GNU Emacs is free software; you can redistribute it and/or modify 16 ;; GNU Emacs is free software; you can redistribute it and/or modify
332 :prefix "viper-" 332 :prefix "viper-"
333 :group 'emulations) 333 :group 'emulations)
334 334
335 (require 'viper-cmd) 335 (require 'viper-cmd)
336 336
337 (defgroup viper-misc nil
338 "Miscellaneous Viper customization."
339 :prefix "viper-"
340 :group 'viper)
341
342
337 (defcustom viper-always t 343 (defcustom viper-always t
338 "Non-nil means, arrange for vi-state to be a default when appropriate. 344 "Non-nil means, arrange for vi-state to be a default when appropriate.
339 This is different from `viper-mode' variable in that `viper-mode' determines 345 This is different from `viper-mode' variable in that `viper-mode' determines
340 whether to use Viper in the first place, while `viper-always', if nil, lets 346 whether to use Viper in the first place, while `viper-always', if nil, lets
341 user decide when to invoke Viper in a major mode." 347 user decide when to invoke Viper in a major mode."
342 :type 'boolean 348 :type 'boolean
343 :tag "Always Invoke Viper" 349 :tag "Always Invoke Viper"
344 :group 'viper) 350 :group 'viper-misc)
345 351
346 ;; Non-viper variables that need to be saved in case the user decides to 352 ;; Non-viper variables that need to be saved in case the user decides to
347 ;; de-viperize emacs. 353 ;; de-viperize emacs.
348 (defvar viper-saved-non-viper-variables nil) 354 (defvar viper-saved-non-viper-variables nil)
349 ;; Contains user settings for vars affected by viper-set-expert-level function. 355 ;; Contains user settings for vars affected by viper-set-expert-level function.
355 "To Viperize or not to Viperize. 361 "To Viperize or not to Viperize.
356 If t, viperize emacs. If nil -- don't. If `ask', ask the user. 362 If t, viperize emacs. If nil -- don't. If `ask', ask the user.
357 This variable is used primatily when Viper is being loaded. 363 This variable is used primatily when Viper is being loaded.
358 364
359 Must be set in `~/.emacs' before Viper is loaded. 365 Must be set in `~/.emacs' before Viper is loaded.
360 DO NOT set this variable interactively." 366 DO NOT set this variable interactively, unless you are using the customization
367 widget."
361 :type '(choice (const nil) (const t) (const ask)) 368 :type '(choice (const nil) (const t) (const ask))
362 :tag "Set Viper Mode on Loading" 369 :tag "Set Viper Mode on Loading"
363 :group 'viper) 370 :group 'viper-misc)
364 371
365 (defcustom viper-non-vi-major-modes 372 (defcustom viper-non-vi-major-modes
366 '(custom-mode dired-mode efs-mode internal-ange-ftp-mode tar-mode 373 '(custom-mode dired-mode efs-mode internal-ange-ftp-mode tar-mode
367 mh-folder-mode gnus-group-mode gnus-summary-mode Info-mode 374 mh-folder-mode gnus-group-mode gnus-summary-mode Info-mode
368 Buffer-menu-mode view-mode vm-mode vm-summary-mode) 375 Buffer-menu-mode view-mode vm-mode vm-summary-mode)
369 "*A list of major modes that should never come up in Vi command mode. 376 "*A list of major modes that should never come up in Vi command mode.
370 Viper automatically augments this list with some obvious modes, such as 377 Viper automatically augments this list with some obvious modes, such as
371 `dired-mode', `tar-mode', etc. So, don't put a mode on this list, unless 378 `dired-mode', `tar-mode', etc. So, don't put a mode on this list, unless
372 it comes up in a wrong Viper state." 379 it comes up in a wrong Viper state."
373 :type '(repeat symbol) 380 :type '(repeat symbol)
374 :group 'viper) 381 :group 'viper-misc)
375 382
376 383
377 384
378 385
379 ;;;###autoload 386 ;;;###autoload