From: William M. Grove <grove001@umn.edu>
To: help-gnu-emacs@gnu.org
Subject: how to click on file in file manager and have gnuclientw open it up
Date: Thu, 1 Mar 2007 19:10:14 -0600 [thread overview]
Message-ID: <MPG.2051355fb0f532a7989683@news.tc.umn.edu> (raw)
I use Explorer and other file manager programs (Directory Opus,
Powerdesk) to browse directory trees in WinXP. I have associated
certain file types (e.g., *.r files) with gnuclientw.exe in Windows.
When I click on an *.r file, gnuclientw starts up and opens a window,
but the contents of the window are blank (or they show the last file I
edited in emacs, if I didn't close it out before exiting emacs)---emacs
doesn't show my the *.r file I clicked on, the way other editing
programs for Windows will do if they are associated with that file type.
How can I fix this? It's tedious to have to start up gnuclientw.exe (or
runemacs.exe), then use File | Open | etc. to browse down through the
directory tree to the file's location and open it, or even just do Ctrl-
f and type in the whole path to visit the file in question.
Here is my .emacs file, which tries to start gnuserv.exe up so
gnuclientw.exe and it are in client-server relationship. Alas, the
arrangement isn't working---gnuserv isn't showing up in Task Manager. I
am guessing this problem has something to do with my "file clicked on
doesn't show up in emacs window" problem.
****************** start of .emacs file ********************
;;File: GROVE-HOME//~/.emacs
;;Author: William M. Grove
;;Email: grove001@umn.edu
;;last mod.: 04.06.2005 20:59
(setq debug-on-error t) ; this way no mystery derailments
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; S T A R T U P
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Don't show splash screen
(setq inhibit-startup-message t)
(message "Loading .emacs")
;; Hundreds of times the default value. This significantly speeds
;; up startup and operations for my computer without crashes
(setq gc-cons-threshold 50000000)
;; set up minibuffer size & location
(setq initial-frame-alist '((minibuffer . t) (name . "William M. Grove")
(width . 100) (height . 35) (left . 5) (top . 5)))
(setq default-frame-alist '((minibuffer . t) (menu-bar-lines . 1)
(width. 75) (height . 23)))
;; Set titles for main frame and icon (%f == file name,
;; %b == buffer name)
(setq-default frame-title-format (list "Emacs: %f"))
(setq-default icon-title-format "Emacs - %b")
;; location of initial frame
(set-frame-position (selected-frame) 0 0)
;; size of initial frame
(if (window-at 0 0)
(let ((init-frame (window-frame (window-at 0 0))))
(set-frame-height init-frame 74)
(set-frame-width init-frame 180) )
)
;; Make all "yes or no" prompts show "y or n" instead
(fset 'yes-or-no-p 'y-or-n-p)
(setq my-author-name (getenv "USER"))
(setq user-full-name (getenv "USER"))
(setq default-directory (getenv "HOME"))
;; Start off in user's home directory
(cd (getenv "HOME"))
;; Set my email address for whatever purpose
(setq user-mail-address "grove001@umn.edu")
;; add signature automagically
(setq mail-signature t)
;; Contents of mode line
(line-number-mode 1)
(setq column-number-mode t)
;; show current function
(which-func-mode t)
;;; Modeline stuff
(setq default-mode-line-format
'("-"
;; mode-line-mule-info
mode-line-modified
mode-line-frame-identification
mode-line-buffer-identification
" "
global-mode-string
" %[(" mode-name mode-line-process minor-mode-alist "%n"
")%]--"
(line-number-mode "L%l--")
(column-number-mode "C%c--")
(-3 . "%p")
"-%-"))
(set-default 'truncate-lines t)
;; Even though we truncate long lines, I'd like to be able to see
;; what I'm missing
(require 'auto-show)
(auto-show-mode 1)
(setq-default auto-show-mode t)
;; Display time in mode line
(setq display-time-day-and-date t)
(display-time)
;; tabs, default color scheme
(setq default-tab-width 3)
(setq-default tab-stop-list; globally set tab stops default
'(4 7 10 13 16 19 22 25 28 31 34 37 40 43 46 49 52 55 58 61 64 67
70 73 76 79 82 85 88 91 94 97 100 103 106 109 112 115 118))
(defvar tabs-are-spaces nil
"*If set, replace all tabs with equivalent spaces. Automatically
buffer-local when set.")
(make-variable-buffer-local 'tabs-are-spaces)
;; Color theme
;; load before all the color stuff happens below
(load-library "color-theme")
(add-to-list 'color-themes '(color-theme-GaryF "GaryF" "Gary Fong
<gwfong@hotmail.com>"))
;; If you want to have comments displayed in italics, uncomment the
;; following lines. Note that this must be done before font settings!
(setq w32-enable-italics t)
(make-face-italic 'font-lock-comment-face)
;; This loads file to highlight current line
;; Author: Dave Love <fx@gnu.org>
(load "hl-line")
(setq hl-line-mode t)
;; Bookmarks
(setq bookmark-save-flag 1)
(setq completion-auto-help t) ; I want as much help as I can get
(setq completion-auto-exit t) ; Dont want to always hit return
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; A B B R E V I A T I O N S
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; In abbrev mode, inserting an abbreviation causes it to expand and
;; be replaced by its expansion
(setq-default abbrev-mode t)
(quietly-read-abbrev-file "~/.abbrev_defs")
(setq save-abbrevs t)
; Reads in an abbrev file if it exists
; C-x a i g to create an abbrev
(if (file-exists-p abbrev-file-name)
(read-abbrev-file))
;; Spaces rather than spaces+tabs
(setq unicon-indent-use-only-spaces t)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; A U T O I N S E R T
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; directory with templates
(add-hook 'find-file-hooks 'auto-insert)
(load-library "autoinsert")
(setq auto-insert-directory "~/insert/")
;;; templates
(setq auto-insert-alist
(append '((awk-mode . "awk-insert.awk"))
(append '((bat-mode . "bat-insert.bat"))
(append '((btm-mode . "btm-insert.btm"))
(append '((cmd-mode . "cmd-insert.cmd"))
(append '((fortran-mode . "fortran-insert.fortran"))
(append '((f90-mode . "f90-insert.f90"))
(append '((LaTeX-mode . "LaTeX-insert.LaTeX"))
(append '((r-mode . "r-insert.r"))
(append '((s-mode . "s-insert.s"))
(append '((sas-mode . "sas-insert.sas")))))))))))))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; C O L O R S
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Give me colours in major editing modes
;; First set syntax highlighting, which uses color a lot
(require 'font-lock)
(global-font-lock-mode t)
;; Set the colors of the mode line
;(cond (window-system
; (set-face-background 'modeline "yellow")
; (set-face-foreground 'modeline "blue")
;))
;; Font-lock-mode affects colors of mode line, too
;(add-hook 'font-lock-mode-hook
; '(lambda ()
; (set-face-background 'modeline "Blue4")
; (set-face-foreground 'modeline "Gold")
; (set-face-foreground 'secondary-selection "red")
; (set-face-background 'highlight "yellow")
;))
;; Set the wanted overall frame color style
;;(change-color-style default-color-style)
;; Background
(set-background-color "white smoke")
;; Override default text colours
(custom-set-faces
'(font-lock-comment-face ((((class color)) (:foreground
"firebrick"))))
;'(font-lock-comment-face ((((class color)) (:foreground "green4"))))
'(region ((((class color)) (:background "wheat"))))
'(highlight ((((class color)) (:background "green1"))))
'(font-lock-string-face ((((class color)) (:foreground "green4"))))
'(font-lock-keyword-face ((((class color)) (:foreground "orange"))))
'(font-lock-type-face ((((class color)) (:foreground "blue"))))
'(font-lock-variable-name-face ((((class color)) (:foreground
"brown"))))
'(font-lock-function-name-face ((((class color)) (:foreground "royal
blue"))))
;'(font-lock-function-name-face ((((class color)) (:foreground
"firebrick"))))
)
;;; Here are some color preferences. I've spent a good deal of time
;;; adjusting color settings, trying to get it to look good and also be
;;; fairly easy to read.
(setq default-frame-alist
(append default-frame-alist
;'((foreground-color . "yellow")
;'((foreground-color . "green")
;'((foreground-color . "wheat")
'((foreground-color . "black")
'((background-color . "white smoke")
;'((cursor-color . "green3")))
'((cursor-color . "blue"))))))
(set-face-foreground 'bold "yellow")
(set-face-background 'bold "grey40")
(set-face-foreground 'bold-italic "yellow green")
(set-face-foreground 'italic "yellow3")
(set-face-foreground 'region "white")
(set-face-background 'region "blue")
;; Load custom color theme if it exists
;(color-theme-emacs-21)
;(color-theme-subtle-blue)
;(color-theme-GaryF)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; M I S C. C O M M A N D S
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; WoMan stuff for reading man pages in emacs
(autoload 'woman "woman" "Decode and browse a UN*X man page." t)
(autoload 'woman-find-file "woman"
"Find, decode and browse a specific UN*X man-page file." t)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; F A C E S
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;Faces
; (set-face-foreground 'region "black")
; (set-face-background 'highlight "CadetBlue")
; (set-face-background 'secondary-selection "MediumSeaGreen")
;; New faces
(defvar font-lock-number-face 'font-lock-number-face)
(defvar font-lock-hexnumber-face 'font-lock-hexnumber-face)
(defvar font-lock-floatnumber-face 'font-lock-floatnumber-face)
(defvar font-lock-keys-face 'font-lock-keys-face)
(defvar font-lock-qt-face 'font-lock-qt-face)
(defface font-lock-number-face
'(
(((class grayscale) (background light)) (:foreground
"LightGray" :bold t))
(((class grayscale) (background dark)) (:foreground "DimGray" :bold
t))
(((class color) (background light)) (:background "hotpink"))
(((class color) (background dark)) (:foreground "black" :background
"hotpink"))
(t (:italic t)))
"blah"
:group 'font-lock-highlighting-faces)
(defface font-lock-hexnumber-face
'(
(((class grayscale) (background light)) (:foreground
"LightGray" :bold t))
(((class grayscale) (background dark)) (:foreground "DimGray" :bold
t))
(((class color) (background light)) (:background "darkblue"))
(((class color) (background dark)) (:foreground "black" :background
"darkblue"))
(t (:italic t)))
"blah"
:group 'font-lock-highlighting-faces)
(defface font-lock-floatnumber-face
'(
(((class grayscale) (background light)) (:foreground
"LightGray" :bold t))
(((class grayscale) (background dark)) (:foreground "DimGray" :bold
t))
(((class color) (background light)) (:background "darkgreen"))
(((class color) (background dark)) (:foreground "black" :background
"darkgreen"))
(t (:italic t)))
"blah"
:group 'font-lock-highlighting-faces)
(defface font-lock-keys-face
'(
(((class grayscale) (background light)) (:foreground
"LightGray" :bold t))
(((class grayscale) (background dark)) (:foreground "DimGray" :bold
t))
(((class color) (background light)) (:background "yellow"))
(((class color) (background dark)) (:foreground "black" :background
"yellow"))
(t (:italic t)))
"blah"
:group 'font-lock-highlighting-faces)
(defface font-lock-qt-face
'(
(((class grayscale) (background light)) (:foreground
"LightGray" :bold t))
(((class grayscale) (background dark)) (:foreground "DimGray" :bold
t))
(((class color) (background light)) (:background "brown"))
(((class color) (background dark)) (:foreground "green" :background
"brown"))
(t (:italic t)))
"blah"
:group 'font-lock-highlighting-faces)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; F U N C T I O N S
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; ASCII table function
(defun ascii-table ()
"Print the ascii table. Based on a defun by Alex Schroeder
<asc@bsiag.com>"
(interactive) (switch-to-buffer "*ASCII*") (erase-buffer)
(insert (format "ASCII characters up to number %d.\n" 254)) (let ((i
0))
(while (< i 254) (setq i (+ i 1))
(insert (format "%4d %c\n" i i)))) (beginning-of-buffer))
;; make-comment-italic
(defun make-comment-italic ()
(interactive "*")
(make-face-italic 'font-lock-comment-face))
;; make-comment-unitalic
(defun make-comment-unitalic ()
(interactive "*")
(make-face-unitalic 'font-lock-comment-face))
;; make-comment-invisible
(defun make-comment-invisible ()
(interactive "*")
(custom-set-faces
'(font-lock-comment-face ((((class color)) (:foreground "white"))))))
;; make-comment-visible
(defun make-comment-visible ()
(interactive "*")
(custom-set-faces
'(font-lock-comment-face ((((class color)) (:foreground "green4"))))))
;; make-comment-red
(defun make-comment-red ()
(interactive "*")
(custom-set-faces
'(font-lock-comment-face ((((class color)) (:foreground "red3"))))))
(defun wrap-all-lines ()
"Enable line wrapping"
(interactive) ;this makes the function a command too
(set-default 'truncate-lines nil)
)
(defun open-dot-emacs ()
"opening-dot-emacs"
(interactive) ;this makes the function a command too
(find-file "~/.emacs")
)
(defun open-dot-emacs ()
"opening-dot-emacs"
(interactive) ;this makes the function a command too
(find-file "~/.emacs")
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; K E Y B I N D I N G S
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;(global-set-key [home] 'beginning-of-line)
;;(global-set-key [end] 'end-of-line)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; B U F F E R / F I L E H A N D L I N G
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; syntax highlighting (font-lock)
(cond (window-system
;; (require 'font-lock-menu)
(setq font-lock-maximum-decoration t)
(global-font-lock-mode t)
(setq font-lock-support-mode 'lazy-lock-mode)
(setq font-lock-defer-on-scrolling nil)
(setq font-lock-defer-on-the-fly nil)
(setq lazy-lock-defer-time 0)
(setq lazy-lock-minimum-size 10240)
))
;; Getting new features into Emacs: load and autoload
;; Emacs gets built with a lot of default functionality for commonly
;; used functions and modes, but sometimes there is a need to
;; load in external Emacs LISP code to do special things; most of
;; this is handled automatically by Emacs such that you will only
;; see the messages from it when a new feature is being added.
;; You can add autoloads in your .emacs for features which Emacs
;; hasn't provided though, such as whist.el and wconfig.el in
;; ~gnu/emacs/local, as in the following examples
(autoload 'whist "whist" "Add history entries to a file" t)
(autoload 'wconfig-ring-save "wconfig" "Store the current window
config." t)
;; Loading should be done only for functions which you intend to use
;; every time you run Emacs; since additional features use more
;; memory, take more time for Emacs to start-up and can slow down
;; the overall performance of the machine which Emacs is being
;; run on (if lots of features were added), it is better to use
;; autoload. The following are loaded directly because of
;; actions they take when loaded.
;; recentf --- menu of recently visited files
(require 'recentf)
(recentf-mode 1)
;; This method of killing the current buffer, when bound to C-x C-c,
;; allows you to close an emacs frame the same way, whether it's
;; the sole window you have open, or whether it's a "child" frame
;; of a "parent" frame. If you're like me, and use emacs in a
;; windowing environment, you probably have lots of frames open
;; at any given time. Well, it's a pain to remember to do
;; Ctrl-x 5 0 to dispose of a child frame, and to remember to do
;; C-x C-x to close the main frame (and if you're not careful,
;; doing so will take all the child frames away with it). This
;; is my solution to that: an intelligent close-frame operation
;; that works in all cases (even in an emacs -nw session).
(defun intelligent-close ()
"quit a frame the same way no matter what kind of frame you are on"
(interactive)
(if (eq (car (visible-frame-list)) (selected-frame))
;;for parent/master frame...
(if (> (length (visible-frame-list)) 1)
;;close a parent with children present
(delete-frame (selected-frame))
;;close a parent with no children present
(save-buffers-kill-emacs))
;;close a child frame
(delete-frame (selected-frame)))
)
;; scrolling a buffer's frame just one line at a time
(setq scroll-step 1)
;; Alas, this next thing doesn't seem to work right now
(setq auto-save-directory (expand-file-name "~/autosaves/"))
(setq auto-save-interval 125)
;; Add Time-stamp <> or Time-stamp " " anywhere in the top 8 lines
;; of a file to insert save date and time and user:
(add-hook 'write-file-hooks 'time-stamp)
;; (add-hook 'server-visit-hook '(lambda ()
;; (interactive)
;; (yes-or-no-p "Hello there")))
(add-hook 'server-switch-hook 'make-frame-command)
;; (add-hook 'server-done-hook '(lambda ()
;; (interactive)
;; (if (is-buffer-a-client)
;; (delete-frame))))
;; add a comment character in front of all lines in the region
(defun ewd-comment-region (start end)
"Add one comment character in front of all lines in the region."
(interactive "*r")
(or comment-start (setq comment-start (read-input "Comment char?: ")))
(ewd-prepend start end comment-start)
)
;; remove a comment character from in front of all lines in the region
(defun ewd-uncomment-region (start end)
"Remove one comment character from in front of all lines in the
region."
(interactive "*r")
(or comment-start (setq comment-start (read-input "Comment char?: ")))
(ewd-unprepend start end comment-start)
)
(defun kill-buffer-and-window ()
"Kill the current buffer and delete the selected window."
(interactive)
(let ((buffer (current-buffer)))
(delete-window (selected-window))
(kill-buffer buffer))
)
;; let split windows display different buffers
(defun split-window-switch-buffer () (interactive)
"Split current window and display the two last buffers used."
(split-window)
(switch-to-buffer (other-buffer (current-buffer)))
)
(defun hsplit-window-switch-buffer () (interactive)
"Split current window horizontally and display the two last buffers
used."
(split-window-horizontally)
(switch-to-buffer (other-buffer (current-buffer)))
)
(defun kill-current-buffer ()
"Kill the current buffer, without confirmation."
(interactive)
(kill-buffer (current-buffer))
)
(defun kill-buffer-other-window (arg)
"Kill the buffer in the other window, and make the current buffer full
size. If no other window, kills current buffer."
(interactive "p")
(let ((buf (save-window-excursion
(other-window arg)
(current-buffer))))
(delete-windows-on buf)
(kill-buffer buf))
)
(defun kill-buffer-jump-other-window (arg)
"Kill this buffer and jump to other window."
(interactive "p")
(other-window arg)
(kill-buffer-other-window arg)
)
(fset 'scroll-cursor-to-top
"\C-u1\C-l")
(defun Kill-Line ()
"Kills the whole line under cursor"
(interactive)
(beginning-of-line)
(kill-line)
)
;;begin buffer-switching methods, which I bind to Ctrl-TAB and
;; Ctrl-Shift-TAB
;; ------------------------------------------------------------------
;; Original yic-buffer.el
;; From: choo@cs.yale.edu (young-il choo)
;; Date: 7 Aug 90 23:39:19 GMT
;;
;; Modified
;; ------------------------------------------------------------------
(defun yic-ignore (str)
(or
;;buffers I don't want to switch to
(string-match "\\*Buffer List\\*" str)
(string-match "^TAGS" str)
(string-match "^\\*Messages\\*$" str)
(string-match "^\\*Completions\\*$" str)
(string-match "^ " str)
;; Test to see if the window is visible on an existing visible
;; frame. Because I can always ALT-TAB to that visible frame,
;; I never want to Ctrl-TAB to that buffer in the current
;; frame. That would cause a duplicate top-level buffer
;; inside two frames.
(memq str
(mapcar
(lambda (x)
(buffer-name
(window-buffer
(frame-selected-window x))))
(visible-frame-list))))
)
(defun yic-next (ls)
"Switch to next buffer in ls skipping unwanted ones."
(let* ((ptr ls)
bf bn go
)
(while (and ptr (null go))
(setq bf (car ptr) bn (buffer-name bf))
(if (null (yic-ignore bn)) ;skip over
(setq go bf)
(setq ptr (cdr ptr))
)
)
(if go
(switch-to-buffer go)))
)
(defun yic-prev-buffer ()
"Switch to previous buffer in current window."
(interactive)
(yic-next (reverse (buffer-list)))
)
(defun yic-next-buffer ()
"Switch to the other buffer (2nd in list-buffer) in current window."
(interactive)
(bury-buffer (current-buffer))
(yic-next (buffer-list))
)
;; end of yic buffer-switching methods
(autoload 'goto-last-buffer "goto-last-buffer" nil t)
(global-set-key [(control c) (b)] 'goto-last-buffer)
(global-set-key [(control c) (B)] 'buffer-menu)
;; Make region visible (only up to next operation on it)
(setq transient-mark-mode t)
;; Filename case-sensitivity. For Windows systems only
(if (eq system-type 'windows-nt)
(setq w32-downcase-file-names t)
)
;; Convert DOS cr-lf to UNIX newline
(defun dos-unix () (interactive) (goto-char (point-min))
(while (search-forward "\r" nil t) (replace-match "")))
;; Convert UNIX newline to DOS cr-lf
(defun unix-dos () (interactive) (goto-char (point-min))
(while (search-forward "\n" nil t) (replace-match "\r\n"))
)
;; Insert date into buffer
(defun insert-date ()
"Insert date at point."
(interactive)
(insert (format-time-string "%A, %B %e, %Y %k:%M:%S %z"))
)
;; some programs require this, few if any of mine are bothered by it
(setq require-final-newline t)
;;;;; rect-mark ;;;;;
;; Support for marking a rectangle of text with highlighting (rect-
mark.el).
; Only needed for emacs - xemacs has something similar built in.
; ftp://ls6-ftp.cs.uni-dortmund.de/pub/src/emacs/
(if (boundp 'running-xemacs)
; Just bind mouse rectangle select similarly to rect-mark.el on GNU
Emacs.
; Note you can't show a rectangular region during keyboard select -
; only during mouse select.
(progn
(global-set-key [(shift button1)] 'mouse-track-do-rectangle)
(global-set-key (kbd "C-x r C-SPC") 'set-mark-command)
(global-set-key (kbd "C-x r C-x") 'exchange-point-and-mark)
(global-set-key (kbd "C-x r C-w") 'kill-rectangle)
)
;(else GNU Emacs
(progn
(global-set-key (kbd "C-x r C-SPC") 'rm-set-mark)
(global-set-key (kbd "C-x r C-x") 'rm-exchange-point-and-mark)
(global-set-key (kbd "C-x r C-w") 'rm-kill-region)
(global-set-key (kbd "C-x r M-w") 'rm-kill-ring-save)
;<shift>-<mouse button 1> now does a rectangular mark.
(global-set-key [(shift down-mouse-1)] 'rm-mouse-drag-region)
(autoload 'rm-set-mark "rect-mark"
"Set mark for rectangle." t)
(autoload 'rm-exchange-point-and-mark "rect-mark"
"Exchange point and mark for rectangle." t)
(autoload 'rm-kill-region "rect-mark"
"Kill a rectangular region and save it in the kill ring." t)
(autoload 'rm-kill-ring-save "rect-mark"
"Copy a rectangular region to the kill ring." t)
(autoload 'rm-mouse-drag-region "rect-mark"
"Drag out a rectangular region with the mouse." t)
)
)
;; dealing with marking, yanking rectangular regions
;;(defun option-package-start-rect-mark ()
;; (autoload 'rm-set-mark "rect-mark"
;; "Set mark for rectangle." t)
;; (autoload 'rm-exchange-point-and-mark "rect-mark"
;; "Exchange point and mark for rectangle." t)
;; (autoload 'rm-kill-region "rect-mark"
;; "Kill a rectangular region and save it in the kill ring." t)
;; (autoload 'rm-kill-ring-save "rect-mark"
;; "Copy a rectangular region to the kill ring." t)
;; (autoload 'rm-mouse-drag-region "rect-mark"
;; "Drag out a rectangular region with the mouse." t)
;; (option-enable-keys 'option-keys-rect-mark-alist)
;;)
;;(defun option-package-end-rect-mark ()
;; (option-disable-keys 'option-keys-rect-mark-alist)
;;)
;;; session management
(require 'desktop)
(load "desktop")
(desktop-load-default)
(desktop-read)
;;; misc key bindings
(global-set-key [(alt g)] 'goto-line)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; O U T P U T O F M - X C U S T O M I Z E
;; D O N O T E D I T B E L O W T H I S L I N E
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; 06/02/2005 1909
(custom-set-variables
;; custom-set-variables was added by Custom -- don't edit or cut/paste
it!
;; Your init file should contain only one such instance.
'(abbrev-mode t)
'(bookmark-save-flag 3)
'(calculator-number-digits 6)
'(case-fold-search t)
'(current-language-environment "Latin-1")
'(default-input-method "latin-1-prefix")
'(explicit-shell-file-name "d:\\UWIN\\usr\\bin\\ksh.exe")
'(global-font-lock-mode t nil (font-lock))
'(global-hl-line-mode t nil (hl-line))
'(hl-line-face (quote highlight))
'(mouse-wheel-mode t nil (mwheel))
'(msb-mode t nil (msb))
'(only-global-abbrevs t)
'(save-completions-retention-time 672)
'(save-place t nil (saveplace))
'(server-program "c:/emacs-21.3/bin/gnuserv.exe")
'(sh-alias-alist (quote ((ksh . ksh93) (bash2 . bash) (sh5 . sh)
(nil))))
'(show-paren-mode t nil (paren))
'(show-paren-ring-bell-on-mismatch t)
'(show-paren-style (quote expression))
'(tempo-insert-region t)
'(tempo-interactive t))
(custom-set-faces
;; custom-set-faces was added by Custom -- don't edit or cut/paste it!
;; Your init file should contain only one such instance.
)
;; -----------------------------------------------------------------
;; AUC TeX
;(add-to-list 'load-path "d:/emacs-21.3/site-lisp/auctex/")
(add-to-list 'Info-default-directory-list "d:/emacs-21.3/site-
lisp/auctex/doc/")
(load "tex-site")
;; -----------------------------------------------------------------
;; Reftex activation (Reftex is included with Emacs 21.1)
(autoload 'reftex-mode "reftex" "RefTeX Minor Mode" t)
(autoload 'turn-on-reftex "reftex" "RefTeX Minor Mode" nil)
(autoload 'reftex-citation "reftex-cite" "Make citation" nil)
(autoload 'reftex-index-phrase-mode "reftex-index" "Phrase mode" t)
(add-hook 'LaTeX-mode-hook 'turn-on-reftex) ; with AUCTeX LaTeX mode
(add-hook 'latex-mode-hook 'turn-on-reftex) ; with Emacs latex mode
;;
----------------------------------------------------------------------
;; Info for Ispell
(add-to-list 'Info-default-directory-list "d:/Cygwin/usr/local/info/")
;; info for Aspell
;; Enable aspell as the spell program
;; (Requires that the Aspell program and a dictionary be installed on
the PC.
;; Install them in: c:\Aspell
;; Add the following to the PATH variable: c:\Aspell\bin
;; The latest version of the Aspell program, Aspell-<version>.exe,
;; and the dictionary of your choice, for example: aspell-en-
<version>.exe,
;; can be found at http://aspell.net/win32/).
(setq-default ispell-program-name "aspell")
(message ".emacs loaded.")
;; EOF
(put 'downcase-region 'disabled nil)
(put 'upcase-region 'disabled nil)
****************** end of .emacs file **********************
Note: the ****start**** and ****end**** lines are _not_ part of the
.emacs file, of course.
Thanks in advance for suggestions anyone can provide.
Sincerely,
Will Grove, a none-too-savvy emacs user
next reply other threads:[~2007-03-02 1:10 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-03-02 1:10 William M. Grove [this message]
2007-03-02 16:04 ` how to click on file in file manager and have gnuclientw open it up weber
2007-03-02 21:48 ` james
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=MPG.2051355fb0f532a7989683@news.tc.umn.edu \
--to=grove001@umn.edu \
--cc=help-gnu-emacs@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).