home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: alt.lucid-emacs.help
- Sender: help-lucid-emacs-request@lucid.com
- Date: Tue, 21 Jul 92 11:07:56 EDT
- From: lamour@maestro.mitre.org (Michael Lamoureux)
- Message-ID: <9207211507.AA19905@maestro.mitre.org>
- Subject: some examples
- Path: sparky!uunet!wendy-fate.uu.net!help-lucid-emacs
- Lines: 244
-
- Well, I've been hacking at this for a few days, and I guess
- this may be useful to someone else. If anyone has any ideas for
- making this simpler, more useful, etc, please let me know.
-
- Below: key-bindings for Sun4 keyboard
- Perl hilighting defs for lhilit
- VM hiliting defs & hook for lhilit
- sound bindings (nothing much)
- a menubar def
- an x-find-file hack
-
- BTW, this makes for a great menubar font (IMHO):
- Emacs*menubar*font: -adobe-times-bold-r-normal--14-140-75-75-p-77-iso8859-1
-
- Just in case you wanted to know,
- Michael
- lamour@mitre.org
-
- PS> If you don't find this useful, then I guess you could just
- consider it a long .sig ;-)
-
- ----------------------------- Cut Here --------------------------------
- ;;
- ;; Dot emacs file for Michael Lamoureux
- ;; This file contains ideas stolen from a great many sources
- ;; latest hack added on 7/21/92
- ;;
- ;; Added some organization to this mess on 2/15/92. The following
- ;; sections can be found below by searching on the specified strings.
- ;; &&lucid - Lucid emacs 19 stuff
-
- ;; [ I censored a couple hundred lines in here - mjl ]
-
- ;; &&lucid ========== Lucid emacs 19 stuff ===========================
- (if (string-match "Lucid" emacs-version)
- (progn
- ;; emacs-19 key bindings for Sun4 keyboard
- ;;
- ;; Left keypad
- (define-key global-map [(f11)] 'keyboard-quit) ;; Stop
- (define-key global-map [(f12)] 'repeat-complex-command) ;; Again
- (define-key global-map [(f14)] 'undo) ;; Undo
- (define-key global-map [(f16)] 'kill-ring-save) ;; Copy
- (define-key global-map [(f18)] 'yank) ;; Paste
- (define-key global-map [(control f18)] 'yank-pop) ;; Paste
- (define-key global-map [(f19)] 'isearch-forward) ;; Find
- (define-key global-map [(control f19)] 'query-replace) ;; Find
- (define-key global-map [(f20)] 'kill-region) ;; Cut
-
- ;; Function keys
- ;; F1 seems to be stolen, and F11 & F12 don't return X keysyms
- (define-key global-map [(f2)] 'x-new-screen)
- (define-key global-map [(control f2)] 'delete-screen)
- (define-key global-map [(f3)] 'compile)
- (define-key global-map [(f4)] 'next-error)
- (define-key global-map [(f5)] 'find-tag)
- (define-key global-map [(control f5)] 'find-next-tag)
- (define-key global-map [(f6)] 'eval-region)
- (define-key global-map [(f7)] 'fill-region)
- (define-key global-map [(f8)] 'ispell-region)
- (define-key global-map [(control f8)] 'ispell-buffer)
- (define-key global-map [(f9)] 'vm)
- (define-key global-map [(control f9)] 'gnus)
- (define-key global-map [(f10)] 'manual-entry)
- ;; now that I look at it again, there appears to be much randomness in
- ;; the above bindings ;-)
-
- ;; Right keypad
- (define-key global-map [(f22)] 'lpr-buffer) ;; PrSc
- (define-key global-map [(f23)] 'keyboard-quit) ;; Break
- (define-key global-map [(f27)] 'beginning-of-line) ;; Home
- (define-key global-map [(control f27)] 'beginning-of-buffer) ;; Home
- (define-key global-map [(f29)] 'scroll-down) ;; PgUp
- (define-key global-map [(control f29)] 'scroll-down) ;; PgUp
- (define-key global-map [(control left)] 'backward-word) ;; <
- (define-key global-map [(f31)] 'move-to-window-line) ;; []
- (define-key global-map [(control right)] 'forward-word) ;; >
- (define-key global-map [(f35)] 'scroll-up) ;; PgDn
- (define-key global-map [(control f35)] 'scroll-up) ;; PgDn
- (define-key global-map [(r13)] 'end-of-line) ;; End
- (define-key global-map [(control r13)] 'end-of-buffer) ;; End
-
-
- ;; Some random sounds to amuse myself
- (let ((default-directory exec-directory))
- (load-sound-file "sounds/bark.au" 'undefined-key)
- (load-sound-file "sounds/drip.au" 'undefined-click) ;; broken???
- (load-sound-file "sounds/whip.au" 'command-error 100)
- (load-sound-file "sounds/gong.au" 'auto-save-error) ;; non-std sound
- (load-sound-file "sounds/whip.au" 'no-completion 100)
- (load-sound-file "sounds/cuckoo.au" 'y-or-n-p)
- (load-sound-file "sounds/cuckoo.au" 'yes-or-no-p))
-
- ;; Menubar functions
- ;; There must be a better way to do this
- (defun find-dot-emacs ()
- (interactive)
- (find-file "~/.emacs")
- )
- (defun find-dot-cshrc ()
- (interactive)
- (find-file "~/.zshrc")
- )
- (defun find-dot-mailrc ()
- (interactive)
- (find-file "~/.mailrc")
- )
- (defun find-dot-login ()
- (interactive)
- (find-file "~/.zlogin")
- )
- (defun find-dot-xdefaults ()
- (interactive)
- (find-file "~/.Xdefaults")
- )
- (defun find-dot-openwin ()
- (interactive)
- (find-file "~/.openwin-init")
- )
-
- ;; Menubar def
- ;; most of this stolen from menubar.el
- (setq default-menubar
- '(("File" ["New Screen" x-new-screen t]
- ["Open File..." find-file t]
- ("Open Special"
- ["Dot Emacs" find-dot-emacs t]
- ["Dot Login" find-dot-login t]
- ["Dot Cshrc" find-dot-cshrc t]
- ["Dot Mailrc" find-dot-mailrc t]
- ["Dot Xdefaults" find-dot-xdefaults t]
- ["Dot Openwin-init" find-dot-openwin t]
- )
- ["Save Buffer" save-buffer t]
- ["Save Buffer As..." write-file t]
- ["Revert Buffer" revert-buffer t]
- "-----"
- ["Print Buffer" lpr-buffer t]
- "-----"
- ["Delete Screen" delete-screen t]
- ["Kill Buffer..." kill-buffer t]
- ["Exit Emacs" save-buffers-kill-emacs t]
- )
- ("Edit" ["Undo" advertised-undo t]
- ["Cut" x-kill-primary-selection t]
- ["Copy" x-copy-primary-selection t]
- ["Paste" x-yank-clipboard-selection t]
- ["Clear" x-delete-primary-selection t]
- )
- ("Buffers" "")
- ("Applications"
- ["Read Mail" vm t]
- ["Read News" gnus t]
- ["Info" info t]
- ["Compose Mail" mail t]
- ["Compile" compile t]
- )
- ("Spelling"
- ["Spell Word" ispell-word t]
- ["Spell Region" ispell-region t]
- ["Spell Buffer" ispell-buffer t]
- )
- ("Help" ["Info" info t]
- ["Describe Mode" describe-mode t]
- ["Command Apropos..." command-apropos t]
- ["List Keybindings" describe-bindings t]
- ["Describe Key..." describe-key t]
- ["Describe Function..." describe-function t]
- ["Describe Variable..." describe-variable t]
- "-----"
- ["Unix Manual..." manual-entry t]
- ["Emacs Tutorial" help-with-tutorial t]
- ["Emacs News" view-emacs-news t]
- )
- ))
- (set-screen-menubar default-menubar)
-
-
- (load "lhilit" nil t)
-
- (set-face-foreground 'hilit0 "red3")
- (set-face-foreground 'hilit1 "white")
- (set-face-foreground 'hilit2 "blue3")
- (set-face-foreground 'hilit6 "yellow")
- (set-face-foreground 'hilit9 "seagreen")
-
- ;; I basically just ported my epoch lightbrite Perl defs
- ;; to use lhilit
- (setq perl-mode-hilit
- '(
- ("[ \n\t{]if[ \n\t;(]" nil hilit0) ;; flow control
- ("[ \n\t{]until[ \n\t;(]" nil hilit0)
- ("[ \n\t{]while[ \n\t;(]" nil hilit0)
- ("[ \n\t{]else[ \n\t;(]" nil hilit0)
- ("[ \n\t{]elsif[ \n\t;(]" nil hilit0)
- ("[ \n\t{]unless[ \n\t;(]" nil hilit0)
- ("[ \n\t{]for[ \n\t;(]" nil hilit0)
- ("[ \n\t{]foreach[ \n\t;(]" nil hilit0)
- ("[ \n\t{]continue[ \n\t;(]" nil hilit0)
- ("[ \n\t{]exit[ \n\t;(]" nil hilit0)
- ("[ \n\t{]die[ \n\t;(]" nil hilit0)
- ("[ \n\t{]last[ \n\t;(]" nil hilit0)
- ("[ \n\t{]goto[ \n\t;(]" nil hilit0)
- ("[ \n\t{]next[ \n\t;(]" nil hilit0)
- ("[ \n\t{]redo[ \n\t;(]" nil hilit0)
- ("[ \n\t{]return[ \n\t;(]" nil hilit0)
-
- ("^#if" nil hilit7) ;; cpp stuff
- ("^#else" nil hilit7)
- ("^#ifdef" nil hilit7)
- ("^#ifndef" nil hilit7)
- ("^#include" nil hilit7)
- ("^#define" nil hilit7)
- ("^#undef" nil hilit7)
- ("^#endif" nil hilit7)
-
- ("#" "\n" hilit3) ;; comments
-
- ("^[ \n\t]*sub.*\\{" nil hilit1) ;; subroutines
- ("[ \n\t{]*eval[ \n\t(;]" nil hilit1)
-
- ("--- .* ---" nil hilit6) ;; markers
- ("=== .* ===" nil hilit6)))
-
- (hilit::mode-list-update "Perl" perl-mode-hilit)
-
- (setq vm-mode-hilit
- '(
- ("^From:.*" nil hilit0)
- ("^Subject:.*" nil hilit2)))
- (hilit::mode-list-update "VM" vm-mode-hilit)
- (add-hook 'vm-mode-hooks 'hilit::hilit-buffer)
-
-
- ;; A 2-minute hack of x-find-file in Lucid emacs for Bob
- ;; This needs to do more, but I haven't had time
- (defun x-find-file (filename)
- "Does find file in new X Window"
- (interactive "FX find file: ")
- (select-screen (x-create-screen nil))
- (switch-to-buffer (find-file-noselect filename)))
- )
- )
- ;; Other Lucid specific code includes Guido Bosch's VM popup menu in ~/.vm
-