;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. (byte-code "\300\301!\210\302\303\304\305\306\307\310\301&\210\302\311\312\313\306\314\310\301&\210\315\316!\207" [require shell custom-declare-variable explicit-msdos-shell-file-name "cmdproxy.exe" "*If non-nil, is file name to use for explicitly requested msdos\ninferior shell." :type (choice (const :tag "None" nil) file) :group explicit-msdos-comspec-file-name (if (w32-using-nt) "cmd.exe" "command.com") "*If non-nil, is file name to use for explicitly requested COMSPEC\nenvironment variable." (choice (const :tag "None" nil) file) make-variable-buffer-local msdos-minor-mode] 8) #@71 Non-nil if using msdos-minor mode as a minor mode of some other mode. (defvar msdos-minor-mode nil (#$ . 676)) #@1371 Run an inferior msdos shell, with I/O through buffer *msdos*. This function is intended to be used in an Ntemacs session in which bash is the primary shell. But sometimes an MSDOS window, within emacs, is also needed. If buffer exists but shell process is not running, make new shell. If buffer exists and shell process is running, just switch to buffer `*msdos*'. Program used comes from variable `explicit-msdos-shell-file-name'. If a file `~/.emacs_SHELLNAME' exists, it is given as initial input (Note that this may lose due to a timing error if the shell discards input when it starts up.) The buffer is put in Shell mode, giving commands for sending input and controlling the subjobs of the shell. See `shell-mode'. See also the variable `shell-prompt-pattern'. The buffer is put into \[msdos-minor-mode]. See `msdos-minor-mode'. The COMSPEC environment variable in the inferior shell, but not in the emacs process, is set to `explicit-msdos-comspec-file-name'. The SHELL environment variable in the inferior shell, but not in the emacs process, is set to `explicit-msdos-shell-file-name'. The shell file name (sans directories) is used to make a symbol name such as `explicit-csh-args'. If that symbol is a variable, its value is used as a list of arguments when invoking the shell. (Type \[describe-mode] in the shell buffer for a list of commands.) (defalias 'msdos #[nil "\306\307!\204s\310 !\311\nP\312\313\n\314Q!\315\316\317!\316\320!\212\321\317 \"\210\321\320\"\210\322\323\324 \f\205?\325\f!\205?\fJ\326 !\205H\327 P%q\210\321\317\"\210\321\320\"\210p\330 \210\331 \210\332\333!\210eb\210\334c\210db\210)\335 !.\207\335\307!\207" [explicit-msdos-shell-file-name prog name startfile xargs-name shell-buffer comint-check-proc "*msdos*" file-name-nondirectory "~/.emacs_" intern-soft "explicit-" "-args" nil getenv "COMSPEC" "SHELL" setenv apply make-comint "msdos" boundp file-exists-p "/k " shell-mode msdos-minor-mode sleep-for 4 "Remember to exit this buffer with `exit'. If you kill the\nbuffer without exiting, you may not be able to shut down Windows cleanly." pop-to-buffer comspec shell explicit-msdos-comspec-file-name] 7 (#$ . 795) nil]) #@360 Minor mode for running msdos in a shell-mode buffer: a. Uses \[set-buffer-process-coding-system] to set the coding system to `'raw-text-dos'. The DOS C-m C-l end-of-line is critical. The shell freezes without it. b. The variable `comint-completion-addsuffix' is set to `\' for directories. c. Prevents echoing of commands. d. strips ctrl-m from output.  (defalias 'msdos-minor-mode #[nil "\303\304\301!\210\305\303\306\307\310\311\303$\210\312\313\211\"\207" [msdos-minor-mode comint-completion-addsuffix comint-process-echoes t make-local-variable ("\\" . " ") add-hook comint-output-filter-functions shell-strip-ctrl-m nil set-buffer-process-coding-system raw-text-dos] 5 (#$ . 2999) nil]) (byte-code "\301\302\303\304#\210\302\236\204\305\306C\"\307\310!\207" [minor-mode-alist put msdos-minor-mode permanent-local t append (msdos-minor-mode " msdos") provide msdos] 4)