add caps mode

 

File modified: lisp/misc/Makefile lisp/misc/caps-mode.el

Change370 at Tue Aug 31 07:34:18 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 12378d88df05 -r 42c25938510b lisp/misc/caps-mode.el
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lisp/misc/caps-mode.el	Tue Aug 31 07:34:18 2010 +0200
@@ -0,0 +1,65 @@
+;;; caps-mode.el -- (minor mode) letters are inserted capitalized
+
+;; Copyright (C) 2004 Joe Corneli <jcorneli <at> math.utexas.edu>,
+;; Christoph Conrad <nospam <at> spamgourmet.com>, Kevin Rodgers
+;; <ihs_4664 <at> yahoo.com>, Kim F. Storm <no-spam <at> cua.dk>
+
+;; Time-stamp: <jac -- Sat Aug  7 13:05:16 CDT 2004>
+
+;; This file is not part of GNU Emacs, but it is distributed under
+;; the same terms as GNU Emacs.
+
+;; GNU Emacs is free software; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published
+;; by the Free Software Foundation; either version 2, or (at your
+;; option) any later version.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs; see the file COPYING.  If not, write to the
+;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+;; Boston, MA 02111-1307, USA.
+
+;;; Commentary:          
+
+;; This is a simple minor mode in which all letters are inserted in
+;; captialized form.  I haven't bothered with letters outside of
+;; ASCII.
+
+;; Note that this mode has absolutely nothing to do with the toggle
+;; state of your capslock.
+
+;;; Code:
+
+(defun caps-mode-self-insert-command (&optional n)
+  "Like `self-insert-command', but upcase the the typed character."
+  (interactive "p")   
+  (insert-char (upcase last-command-char) n))
+
+(defvar caps-mode-map
+  (let ((map (make-sparse-keymap)))
+    (mapc (lambda (char)
+             (define-key 
+	       map 
+	       (char-to-string char)
+	       'caps-mode-self-insert-command))
+           "abcdefghijklmnopqrstuvwxyz")
+     map))
+
+(define-minor-mode caps-mode
+  "Toggle caps mode.
+With no argument, this command toggles the mode.
+Non-null prefix argument turns on the mode.
+Null prefix argument turns off the mode.
+
+When caps mode is enabled, all letters are inserted in their
+capitalized form."
+  :init-value nil
+  :lighter " Caps")
+
+(provide 'caps-mode)
+;;; caps-mode.el ends here


back