Commit | Line | Data |
---|---|---|
a0d14345 | 1 | ;;; w32-fns.el --- Lisp routines for Windows NT. |
b578f267 | 2 | |
95ed0025 RS |
3 | ;; Copyright (C) 1994 Free Software Foundation, Inc. |
4 | ||
5 | ;; Author: Geoff Voelker (voelker@cs.washington.edu) | |
6 | ||
7 | ;; This file is part of GNU Emacs. | |
8 | ||
9 | ;; GNU Emacs is free software; you can redistribute it and/or modify | |
10 | ;; it under the terms of the GNU General Public License as published by | |
11 | ;; the Free Software Foundation; either version 2, or (at your option) | |
12 | ;; any later version. | |
13 | ||
14 | ;; GNU Emacs is distributed in the hope that it will be useful, | |
15 | ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
16 | ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
17 | ;; GNU General Public License for more details. | |
18 | ||
19 | ;; You should have received a copy of the GNU General Public License | |
b578f267 EN |
20 | ;; along with GNU Emacs; see the file COPYING. If not, write to the |
21 | ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
22 | ;; Boston, MA 02111-1307, USA. | |
95ed0025 RS |
23 | |
24 | ;;; Commentary: | |
25 | ||
26 | ;; (August 12, 1993) | |
81b38822 | 27 | ;; Created. |
95ed0025 | 28 | |
81b38822 KH |
29 | ;; (November 21, 1994) |
30 | ;; [C-M-backspace] defined. | |
31 | ;; mode-line-format defined to show buffer file type. | |
32 | ;; audio bell initialized. | |
95ed0025 RS |
33 | |
34 | ;;; Code: | |
35 | ||
36 | ;; Map delete and backspace | |
37 | (define-key function-key-map [backspace] "\177") | |
38 | (define-key function-key-map [delete] "\C-d") | |
39 | (define-key function-key-map [M-backspace] [?\M-\177]) | |
81b38822 KH |
40 | (define-key function-key-map [C-M-backspace] [\C-\M-delete]) |
41 | ||
95ed0025 RS |
42 | ;; Ignore case on file-name completion |
43 | (setq completion-ignore-case t) | |
44 | ||
45 | ;; The cmd.exe shell uses the "/c" switch instead of the "-c" switch | |
46 | ;; for executing its command line argument (from simple.el). | |
47 | (setq shell-command-switch "/c") | |
48 | ||
3eab6a03 RS |
49 | ;; For appending suffixes to directories and files in shell completions. |
50 | (add-hook 'shell-mode-hook | |
51 | '(lambda () (setq comint-completion-addsuffix '("\\" . " ")))) | |
52 | ||
926e2fdb | 53 | ;; Avoid creating auto-save file names containing invalid characters. |
4e0cd0df GV |
54 | (fset 'original-make-auto-save-file-name |
55 | (symbol-function 'make-auto-save-file-name)) | |
56 | ||
57 | (defun make-auto-save-file-name () | |
58 | "Return file name to use for auto-saves of current buffer. | |
59 | Does not consider `auto-save-visited-file-name' as that variable is checked | |
60 | before calling this function. You can redefine this for customization. | |
61 | See also `auto-save-file-name-p'." | |
62 | (let ((name (original-make-auto-save-file-name)) | |
63 | (start 0)) | |
926e2fdb GV |
64 | ;; Skip drive letter if present. |
65 | (if (string-match "^[\/]?[a-zA-`]:" name) | |
66 | (setq start (- (match-end 0) (match-beginning 0)))) | |
67 | ;; Destructively replace occurrences of *?"<>|: with $ | |
68 | (while (string-match "[?*\"<>|:]" name start) | |
4e0cd0df GV |
69 | (aset name (match-beginning 0) ?$) |
70 | (setq start (1+ (match-end 0)))) | |
71 | name)) | |
72 | ||
95ed0025 | 73 | ;;; Fix interface to (X-specific) mouse.el |
bffcf874 RS |
74 | (defun x-set-selection (type data) |
75 | (or type (setq type 'PRIMARY)) | |
76 | (put 'x-selections type data)) | |
77 | ||
78 | (defun x-get-selection (&optional type data-type) | |
79 | (or type (setq type 'PRIMARY)) | |
80 | (get 'x-selections type)) | |
81 | ||
95ed0025 RS |
82 | (fmakunbound 'font-menu-add-default) |
83 | (global-unset-key [C-down-mouse-1]) | |
84 | (global-unset-key [C-down-mouse-2]) | |
85 | (global-unset-key [C-down-mouse-3]) | |
86 | ||
81b38822 KH |
87 | ;;; Set to a system sound if you want a fancy bell. |
88 | (set-message-beep nil) | |
89 | ||
a0d14345 | 90 | ;;; w32-fns.el ends here |