;ELC   
;;; Compiled by pot@pot.cnuce.cnr.it on Tue Mar 18 15:53:23 2003
;;; from file /home/pot/gnu/emacs-pretest.new/lisp/w32-fns.el
;;; in Emacs version 21.3
;;; with bytecomp version 2.85.4.1
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.
(if (and (boundp 'emacs-version)
	 (< (aref emacs-version (1- (length emacs-version))) ?A)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19.29")))
    (error "`w32-fns.el' was compiled for Emacs 19.29 or later"))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\303\304\305#\210\303\306\307#\210\303\310\311#\210\303\312\313#\210\314\314\303\207" [function-key-map completion-ignore-case find-file-visit-truename define-key [backspace] "" [delete] "" [M-backspace] [-134217601] [C-M-backspace] [C-M-delete] t] 4)
#@138 Return the MS-Windows version numbers.
The value is a list of three integers: the major and minor version
numbers, and the build number.
(defalias 'w32-version #[nil "\300 \207" [x-server-version] 1 (#$ . 889)])
#@60 List of strings recognized as Windows NT/9X system shells.
(defvar w32-system-shells '("cmd" "cmd.exe" "command" "command.com" "4nt" "4nt.exe" "4dos" "4dos.exe" "ndos" "ndos.exe") (#$ . 1107))
#@75 Return non-nil if literally running on Windows NT (i.e., not Windows 9X).
(defalias 'w32-using-nt #[nil "\301=\205	 \302\303!\207" [system-type windows-nt getenv "SystemRoot"] 2 (#$ . 1306)])
#@42 Return the name of the shell being used.
(defalias 'w32-shell-name #[nil "\301\300!\203\n \206 \302\303!\206 \302\304!\206 \305 \203 \306\207\307\207" [explicit-shell-file-name boundp getenv "ESHELL" "SHELL" w32-using-nt "cmd.exe" "command.com"] 2 (#$ . 1505)])
(defalias 'w32-system-shell-p #[(shell-name) "\205\n \302!\227	\235\207" [shell-name w32-system-shells file-name-nondirectory] 2])
#@77 Return t if the interactive shell being used expects msdos shell semantics.
(defalias 'w32-shell-dos-semantics #[nil "\300\301 !\206 \302\301 !\227\303\235\205 \300\304\305!!\207" [w32-system-shell-p w32-shell-name file-name-nondirectory ("cmdproxy" "cmdproxy.exe") getenv "COMSPEC"] 3 (#$ . 1911)])
#@54 *Disable startup warning when using "system" shells.
(defvar w32-allow-system-shell nil (#$ . -2219))
#@254 Check the configuration of shell variables on Windows NT/9X.
This function is invoked after loading the init files and processing
the command line arguments.  It issues a warning if the user or site
has configured the shell with inappropriate settings.
(defalias 'w32-check-shell-configuration #[nil "p\306\307!\310	q\210\311 \210\312\313\314!!\203 \315\316\313\314!\"c\210\312\313\317!!\203. \315\320\313\317!\"c\210\312!\203: \315\321\"c\210\322\304!\203L \312\f!\203L \315\323\f\"c\210\324 \325V\203X \311 \210\203q \326\230\203f \327c\210\203\203 \330c\210\202\203 \331\230\203{ \332c\210\204\203 \333c\210\324 \325V\203\221 \334	!\210\202\225 \335	!\210\nq+\207" [system-shell buffer prev-buffer shell-file-name explicit-shell-file-name w32-allow-system-shell get-buffer-create "*Shell Configuration*" nil erase-buffer w32-system-shell-p getenv "ESHELL" format "Warning! The ESHELL environment variable uses %s.\nYou probably want to change it so that it uses cmdproxy.exe instead.\n\n" "SHELL" "Warning! The SHELL environment variable uses %s.\nYou probably want to change it so that it uses cmdproxy.exe instead.\n\n" "Warning! shell-file-name uses %s.\nYou probably want to change it so that it uses cmdproxy.exe instead.\n\n" boundp "Warning! explicit-shell-file-name uses %s.\nYou probably want to change it so that it uses cmdproxy.exe instead.\n\n" buffer-size 0 "-c" "Warning! shell-command-switch is \"-c\".\nYou should set this to \"/c\" when using a system shell.\n\n" "Warning! w32-quote-process-args is t.\nYou should set this to nil when using a system shell.\n\n" "/c" "Warning! shell-command-switch is \"/c\".\nYou should set this to \"-c\" when using a non-system shell.\n\n" "Warning! w32-quote-process-args is nil.\nYou should set this to t when using a non-system shell.\n\n" display-buffer kill-buffer shell-command-switch w32-quote-process-args] 4 (#$ . 2328) nil])
(add-hook 'after-init-hook 'w32-check-shell-configuration)
(defalias 'set-default-process-coding-system #[nil "\203 \303\202	 \304\305 \206 \306\203 \307\202 \310BC\211\207" [default-enable-multibyte-characters default-process-coding-system process-coding-system-alist (undecided-dos . undecided-unix) (raw-text-dos . raw-text-unix) w32-using-nt "[cC][mM][dD][pP][rR][oO][xX][yY]" (undecided-dos . undecided-dos) (raw-text-dos . raw-text-dos)] 2])
(add-hook 'before-init-hook 'set-default-process-coding-system)
#@43 List of locale ids known to be supported.
(defvar w32-valid-locales nil (#$ . 4764))
(byte-code "\300\301!\204\n \301\302M\210\300\207" [fboundp w32-get-valid-locale-ids #[nil "\302\303\211\304V\203 \305	!\203 	B	S\211\202 *\207" [locales i 65535 nil 0 w32-get-locale-info] 3 "Return list of all valid Windows locale ids."]] 2)
#@59 List the name and id of all locales supported by Windows.
(defalias 'w32-list-locales #[nil "\204 \301 \302\303\304!!\210\305 \210\306c\210\307\310\311#c\210\311c\210eb\207" [w32-valid-locales w32-get-valid-locale-ids switch-to-buffer-other-window get-buffer-create "*Supported Locales*" erase-buffer "LCID	Abbrev	Full name\n\n" mapconcat #[(x) "\301\302\303!\303\304\"$\207" [x format "%d	%s	%s" w32-get-locale-info t] 7] "\n"] 4 (#$ . 5107) nil])
(defalias 'w32-init-info #[nil "\305!\306\307	\"\306\310	\"\311\n!\203 \312\f\nC\"\211\202+ \311!\205+ \312\fC\"\211+\207" [invocation-directory instdir dir1 dir2 Info-default-directory-list file-name-directory expand-file-name "../info/" "../../../info/" file-exists-p append] 3])
(byte-code "\300\301\302\"\210\303\304KM\207" [add-hook before-init-hook w32-init-info original-make-auto-save-file-name make-auto-save-file-name] 3)
#@241 Return file name to use for auto-saves of current buffer.
Does not consider `auto-save-visited-file-name' as that variable is checked
before calling this function.  You can redefine this for customization.
See also `auto-save-file-name-p'.
(defalias 'make-auto-save-file-name #[nil "\301 \302\303\"\203 \202 \304!)\207" [filename original-make-auto-save-file-name string-match "^/\\w+@[-A-Za-z0-9._]+:" convert-standard-filename] 3 (#$ . 6011)])
#@263 Convert a standard file's name to something suitable for the current OS.
This function's standard definition is trivial; it just returns the argument.
However, on some systems, the function is redefined
with a definition that really does change some file names.
(defalias 'convert-standard-filename #[(filename) "\303!\304\211G\305V\203 \n\305H\306=\203 \307\310\311\n	#\203+ \n\304\224\312I\210\304\225\202 \313 \203F \304\310\314\n	#\203F \n\304\224\315I\210\304\225\2022 \n*\207" [filename start name copy-sequence 0 1 58 2 string-match "[?*:<>|\" -]" 33 w32-shell-dos-semantics "/" 92] 5 (#$ . 6470)])
(defalias 'x-set-selection #[(type data) "\204 \302\303\304	#\207" [type data PRIMARY put x-selections] 4])
(defalias 'x-get-selection #[(&optional type data-type) "\204 \301\302N\207" [type PRIMARY x-selections] 2])
#@241 Set the coding system used by the Windows System to CODING-SYSTEM.
This is used for things like passing font names with non-ASCII
characters in them to the system. For a list of possible values of
CODING-SYSTEM, use \[list-coding-systems].
(defalias 'set-w32-system-coding-system #[(coding-system) "\302!\210\211\207" [coding-system w32-system-coding-system check-coding-system] 2 (#$ . 7319) (list (let ((default w32-system-coding-system)) (read-coding-system (format "Coding system for system calls (default, %s): " default) default)))])
(byte-code "\302!\210\303\304!\210\305\306\307\"\210\305\310\307\"\210\311	\312\313#\210\311	\314\315#\210\311	\316\317#\210\311	\320\321#\210\311	\322\323#\210\311	\324\325#\210\311	\326\327#\210\311	\330\331#\210\311	\332\333#\210\311	\334\335#\210\336\337\340\341#\210\336\342\340\343#\210\336\344\340\345#\210\336\346\340\347#\210\336\350\340\351#\210\336\352\340\353#\210\336\354\340\353#\207" [locale-coding-system function-key-map set-w32-system-coding-system set-message-beep nil global-set-key [lwindow] ignore [rwindow] define-key [tab] [9] [linefeed] [10] [clear] [11] [return] [13] [escape] [27] [M-tab] [-134217719] [M-linefeed] [-134217718] [M-clear] [-134217717] [M-return] [-134217715] [M-escape] [-134217701] put tab ascii-character 9 linefeed 10 clear 12 return 13 escape 27 backspace 127 delete] 4)
#@68 A list of VGA console colors, their indices and 16-bit RGB values.
(defvar w32-tty-standard-colors '(("white" 15 65535 65535 65535) ("yellow" 14 65535 65535 0) ("lightmagenta" 13 65535 0 65535) ("lightred" 12 65535 0 0) ("lightcyan" 11 0 65535 65535) ("lightgreen" 10 0 65535 0) ("lightblue" 9 0 0 65535) ("darkgray" 8 26112 26112 26112) ("lightgray" 7 48640 48640 48640) ("brown" 6 40960 20992 11520) ("magenta" 5 35584 0 35584) ("red" 4 45568 8704 8704) ("cyan" 3 0 52736 53504) ("green" 2 8704 35584 8704) ("blue" 1 0 0 52480) ("black" 0 0 0 0)) (#$ . 8687))
#@547 Function to add character sets to display with Windows fonts.
Creates entries in `w32-charset-info-alist'.
XLFD-CHARSET is a string which will appear in the XLFD font name to
identify the character set. WINDOWS-CHARSET is a symbol identifying
the Windows character set this maps to. For the list of possible
values, see the documentation for `w32-charset-info-alist'. CODEPAGE
can be a numeric codepage that Windows uses to display the character
set, t for Unicode output with no codepage translation or nil for 8
bit output with no translation.
(defalias 'w32-add-charset-info #[(xlfd-charset windows-charset codepage) "\303\304	\nBB\"\207" [xlfd-charset windows-charset codepage add-to-list w32-charset-info-alist] 5 (#$ . 9256)])
(byte-code "\302\303\304\305#\210\302\306\304\307#\210\302\310\304\311#\210\302\312\313\314#\210\302\315\313\314#\210\302\316\313\314#\210\302\317\320\321#\210\302\322\323\324#\210\302\325\326\327#\210\302\330\331\332#\210\302\333\334\335#\210\302\336\334\337#\210\340\341!\203\246 \302\342\343\344#\210\302\345\346\347#\210\302\350\351\352#\210\302\353\354\355#\210\302\356\357\360#\210\302\361\362\363#\210\302\364\365\366#\210\302\367\346\370#\210\302\371\351\372#\210\302\373\354\374#\210\302\375\376\377#\210\302\201@ \201A \201B #\210\302\201C \201D \332#\210\340\201E !\203\311 \302\201F \201G \201H #\210\302\201I \201G \201H #\210\202\323 \302\201F \304\201H #\210\201J \201K \201L \201M #\210\201J \201N \201O \201M #\210\301B\340\301!\204\373 \332\332\207" [current-load-list x-last-selected-text w32-add-charset-info "iso8859-1" w32-charset-ansi 1252 "iso8859-14" 28604 "iso8859-15" 28605 "jisx0208-sjis" w32-charset-shiftjis 932 "jisx0201-latin" "jisx0201-katakana" "ksc5601.1987" w32-charset-hangeul 949 "big5" w32-charset-chinesebig5 950 "gb2312" w32-charset-gb2312 936 "ms-symbol" w32-charset-symbol nil "ms-oem" w32-charset-oem 437 "ms-oemlatin" 850 boundp w32-extra-charsets-defined "iso8859-2" w32-charset-easteurope 28592 "iso8859-3" w32-charset-turkish 28593 "iso8859-4" w32-charset-baltic 28594 "iso8859-5" w32-charset-russian 28595 "iso8859-6" w32-charset-arabic 28596 "iso8859-7" w32-charset-greek 28597 "iso8859-8" w32-charset-hebrew 1255 "iso8859-9" 1254 "iso8859-13" 1257 "koi8-r" 20866 "tis620" w32-charset-thai 874 "ksc5601.1992" w32-charset-johab 1361 "mac" w32-charset-mac w32-unicode-charset-defined "iso10646-1" w32-charset-unicode t "unicode" make-obsolete-variable w32-enable-italics w32-enable-synthesized-fonts "21.1" w32-charset-to-codepage-alist w32-charset-info-alist] 4)
#@52 Max number of characters to put in the cut buffer.
(defvar x-cut-buffer-max 20000 (#$ . 11811))
#@101 Non-nil means cutting and pasting uses the clipboard.
This is in addition to the primary selection.
(custom-declare-variable 'x-select-enable-clipboard 't '(#$ . 11914) :type 'boolean :group 'killing)
#@162 Make TEXT the last selected text.
If `x-select-enable-clipboard' is non-nil, copy the text to the system
clipboard as well. Optional PUSH is ignored on Windows.
(defalias 'x-select-text #[(text &optional push) "\203 \303	!\210	\211\207" [x-select-enable-clipboard text x-last-selected-text w32-set-clipboard-data] 2 (#$ . 12122)])
#@132 Return the value of the current selection.
Consult the selection, then the cut buffer.  Treat empty strings as if
they were unset.
(defalias 'x-get-selection-value #[nil "\2055 \303\304\305\306\217\210	\307\230\203 \303	\204 \303\2024 	\n=\203% \303\2024 	\n\230\2031 	\303\2024 	\211)\207" [x-select-enable-clipboard text x-last-selected-text nil c (byte-code "\301 \301\207" [text w32-get-clipboard-data] 1) ((error (message "w32-get-clipboard-data:%s" c))) ""] 3 (#$ . 12463)])
(byte-code "\302\303\304\"\210\305\304\302\207" [interprogram-cut-function interprogram-paste-function defalias x-cut-buffer-or-selection-value x-get-selection-value x-select-text] 3)
