403Webshell
Server IP : 217.160.0.212  /  Your IP : 216.73.216.141
Web Server : Apache
System : Linux www 6.18.51-i1-ampere #1196 SMP Fri Sep 11 20:43:55 CEST 2026 aarch64
User : sws1073854427 ( 1073854427)
PHP Version : 8.4.23
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /usr/share/emacs/28.2/lisp/eshell/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/emacs/28.2/lisp/eshell/esh-proc.elc
;ELC
;;; Compiled
;;; in Emacs version 28.2
;;; with all optimizations.



(byte-code "\300\301!\210\302\303\304\305\306\307\310\311&\210\312\313\314\315\316DD\317\320\321\322\323&\210\312\324\314\315\325DD\326\322\327%\210\312\330\314\315\331DD\332\322\327%\210\312\333\314\315\334DD\335\322\336%\210\312\337\314\315\340DD\341\322\336%\210\312\342\314\315\343DD\344\322\345%\210\312\346\314\315\347DD\350\322\323%\210\312\351\314\315\352DD\353\320\321\322\323&\207" [require esh-io custom-declare-group eshell-proc nil "When Eshell invokes external commands, it always does so\nasynchronously, so that Emacs isn't tied up waiting for the process to\nfinish." :tag "Process management" :group eshell custom-declare-variable eshell-proc-load-hook funcall function #[0 "\300\207" [nil] 1 #1=""] "A hook that gets run when `eshell-proc' is loaded." :version "24.1" :type hook eshell-process-wait-seconds #[0 "\300\207" [0] 1 #1#] "The number of seconds to delay waiting for a synchronous process." integer eshell-process-wait-milliseconds #[0 "\300\207" [50] 1 #1#] "The number of milliseconds to delay waiting for a synchronous process." eshell-done-messages-in-minibuffer #[0 "\300\207" [t] 1 #1#] "If non-nil, subjob \"Done\" messages will display in minibuffer." boolean eshell-delete-exited-processes #[0 "\300\207" [t] 1 #1#] "If nil, process entries will stick around until `jobs' is run.\nThis variable sets the buffer-local value of `delete-exited-processes'\nin Eshell buffers.\n\nThis variable causes Eshell to mimic the behavior of bash when set to\nnil.  It allows the user to view the exit status of a completed subjob\n(process) at their leisure, because the process entry remains in\nmemory until the user examines it using \\[list-processes].\n\nOtherwise, if `eshell-done-messages-in-minibuffer' is nil, and this\nvariable is set to t, the only indication the user will have that a\nsubjob is done is that it will no longer appear in the\n\\[list-processes\\] display.\n\nNote that Eshell will have to be restarted for a change in this\nvariable's value to take effect." eshell-reset-signals #[0 "\300\207" ["^\\(interrupt\\|killed\\|quit\\|stopped\\)"] 1 #1#] "If a termination signal matches this regexp, the terminal will be reset." regexp eshell-exec-hook #[0 "\300\207" [nil] 1 #1#] "Called each time a process is exec'd by `eshell-gather-process-output'.\nIt is passed one argument, which is the process that was just started.\nIt is useful for things that must be done each time a process is\nexecuted in an eshell mode buffer (e.g., `set-process-query-on-exit-flag').\nIn contrast, `eshell-mode-hook' is only executed once, when the buffer\nis created." eshell-kill-hook #[0 "\300\207" [nil] 1 #1#] "Called when a process run by `eshell-gather-process-output' has ended.\nIt is passed two arguments: the process that was just ended, and the\ntermination status (as a string).  Note that the first argument may be\nnil, in which case the user attempted to send a signal, but there was\nno relevant process.  This can be used for displaying help\ninformation, for example."] 8)
(defvar eshell-current-subjob-p nil)
#@47 A list of the current status of subprocesses.
(defvar eshell-process-list nil (#$ . 3148))
(defvar eshell-proc-mode-map (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307#\210\301\310\311#\210\301\312\313#\210\301\314\315#\210\207" [make-sparse-keymap define-key [3 134217833] eshell-insert-process "" eshell-interrupt-process "" eshell-kill-process "" eshell-send-eof-to-process "" list-processes "" eshell-quit-process] 5))
#@173 Function run when killing a process.
Runs `eshell-reset-after-proc' and `eshell-kill-hook', passing arguments
PROC and STATUS to functions on the latter.

(fn PROC STATUS)
(defalias 'eshell-kill-process-function #[514 "\300\301\302\"\210\302!\210\303\301#\207" [remove-hook eshell-kill-hook eshell-reset-after-proc run-hook-with-args] 6 (#$ . 3610)])
#@101 Non-nil if Eshell-Proc mode is enabled.
Use the command `eshell-proc-mode' to change this variable.
(defvar eshell-proc-mode nil (#$ . 3971))
(make-variable-buffer-local 'eshell-proc-mode)
#@622 Minor mode for the proc eshell module.

This is a minor mode.  If called interactively, toggle the
`Eshell-Proc mode' mode.  If the prefix argument is positive, enable
the mode, and if it is zero or negative, disable the mode.

If called from Lisp, toggle the mode if ARG is `toggle'.  Enable the
mode if ARG is nil, omitted, or is a positive number.  Disable the
mode if ARG is a negative number.

To check whether the minor mode is enabled in the current buffer,
evaluate `eshell-proc-mode'.

The mode's hook is called both when the mode is enabled and when it is
disabled.

\{eshell-proc-mode-map}

(fn &optional ARG)
(defalias 'eshell-proc-mode #[256 "\302 \303=\203
?\202\247\203\304W\203\305\202\306\307\301!\2031\310\300	\"\2031\300	B\311\312\203;\313\202<\314\"\210\315\316!\203^\302 \203P\211\302 \232\203^\317\320\203Z\321\202[\322\323#\210\210\324 \210\207" [eshell-proc-mode local-minor-modes current-message toggle 1 nil t boundp delq run-hooks eshell-proc-mode-hook eshell-proc-mode-on-hook eshell-proc-mode-off-hook called-interactively-p any message "Eshell-Proc mode %sabled%s" "en" "dis" " in current buffer" force-mode-line-update] 6 (#$ . 4167) (byte-code "\203\n\301!\202\302C\207" [current-prefix-arg prefix-numeric-value toggle] 2)])
(defvar eshell-proc-mode-hook nil)
(byte-code "\301\302N\204\f\303\301\302\304#\210\303\301\305\306#\210\303\301\307\310C#\210\311\312\310\310\211%\207" [eshell-proc-mode-map eshell-proc-mode-hook variable-documentation put "Hook run after entering or leaving `eshell-proc-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" custom-type hook standard-value nil add-minor-mode eshell-proc-mode] 6)
#@39 Initialize the process handling code.
(defalias 'eshell-proc-initialize #[0 "\300\301!\210\302 \207" [make-local-variable eshell-process-list eshell-proc-mode] 2 (#$ . 5946)])
#@158 Reset the command input location after a process terminates.
The signals which will cause this to happen are matched by
`eshell-reset-signals'.

(fn STATUS)
(defalias 'eshell-reset-after-proc #[257 "\211;\205\301\"\205\302\303!\210\304 \207" [eshell-reset-signals string-match require esh-mode eshell-reset] 4 (#$ . 6129)])
#@63 Wait until PROC has successfully completed.

(fn &rest PROCS)
(defalias 'eshell-wait-for-process #[128 "\211\2053\211@\211\303\304!\205\304!\262\203+\211\236\203+\305 \203#\306 \210\307	\n\"\210\202\210\211A\262\202\207" [eshell-process-list eshell-process-wait-seconds eshell-process-wait-milliseconds fboundp processp input-pending-p discard-input sit-for] 5 (#$ . 6465)])
(defalias 'eshell/wait 'eshell-wait-for-process)
#@52 List processes, if there are any.

(fn &rest ARGS)
(defalias 'eshell/jobs #[128 "\300\301!\205
\301 \205
\302 \207" [fboundp process-list list-processes] 3 (#$ . 6909)])
#@157 Kill processes.
Usage: kill [-<signal>] <pid>|<process> ...
Accepts PIDs and process objects.  Optionally accept signals
and signal names.

(fn &rest ARGS)
(defalias 'eshell/kill #[128 "\301@\302\211;\203.\303\304\"\203\305\306!!\262\202*\303\307\"\203*\310\311\302O!\262A\262)\210\203\220@\312\313!\205?\313!\262\203K\314@!\202O\306@!\211\203\210\211\204_\315\316!\266\202\211\211\247\204o\315\317\320!\"\266\202\211\211\247\203\203\211\321X\203\203\315\322\"\266\202\211\323\"\210\210A\262\2020\210\302\207" [case-fold-search SIGINT nil string-match "\\`-[[:digit:]]+\\'" abs string-to-number "\\`-\\([[:upper:]]+\\|[[:lower:]]+\\)\\'" intern 1 fboundp processp process-id error "kill: null pid.  Process may actually be a network connection." "kill: invalid argument type: %s" type-of 0 "kill: bad pid: %d" signal-process] 7 (#$ . 7088)])
(put 'eshell/kill 'eshell-no-numeric-conversions t)
#@114 Read the name of a process from the minibuffer, using completion.
The prompt will be set to PROMPT.

(fn PROMPT)
(defalias 'eshell-read-process-name #[257 "\300\301\302\303 \"\304\305$\207" [completing-read mapcar #[257 "\300!\301B\207" [process-name t] 3 "\n\n(fn PROC)"] process-list nil t] 6 (#$ . 8032)])
#@76 Insert the name of PROCESS into the current buffer at point.

(fn PROCESS)
(defalias 'eshell-insert-process #[257 "\300\301\302!\303#\207" [insert-and-inherit "#<process " process-name ">"] 5 (#$ . 8349) (byte-code "\300\301\302!!C\207" [get-process eshell-read-process-name "Name of process: "] 3)])
#@44 Record OBJECT as now running.

(fn OBJECT)
(defalias 'eshell-record-process-object #[257 "\211\303\304!\205\n\304!\262\203#\203#\305\306!\210\307\310\311\312!\313!#!\210\211	\314\211\257\nB\211\207" [eshell-current-subjob-p eshell-current-handles eshell-process-list fboundp processp require esh-mode eshell-interactive-print format "[%s] %d\n" process-name process-id nil] 7 (#$ . 8657)])
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put eshell-record-process-object speed -1 put byte-optimizer byte-compile-inline-expand] 5)
#@58 Record the process ENTRY as fully completed.

(fn ENTRY)
(defalias 'eshell-remove-process-entry #[257 "\211@\302\303!\205\303!\262\203&\3048\203&\203&\305\306\307@!\310@!#\210\311	\"\211\207" [eshell-done-messages-in-minibuffer eshell-process-list fboundp processp 2 message "[%s]+ Done %s" process-name process-command delq] 6 (#$ . 9218)])
#@51 Scratch buffer for holding Eshell's input/output.
(defvar eshell-scratch-buffer " *eshell-scratch*" (#$ . 9579))
#@132 A marker that tracks the beginning of output of the last subprocess.
Used only on systems which do not support async subprocesses.
(defvar eshell-last-sync-output-start nil (#$ . 9699))
#@272 List of commands which need `process-connection-type' to be nil.
Currently only affects commands in pipelines, and not those at
the front.  If an element contains a directory part it must match
the full name of a command, otherwise just the nondirectory part must match.
(defvar eshell-needs-pipe '("bc" "pbpaste" "putclip" "xclip" "xsel" "wl-copy") (#$ . 9892))
#@109 Return non-nil if COMMAND needs `process-connection-type' to be nil.
See `eshell-needs-pipe'.

(fn COMMAND)
(defalias 'eshell-needs-pipe-p #[257 "\302\300!\205>\205>\303=?\205>\3042>	\211\205;\211@\211\305\306\"\203(\202+\307!\230\2034\310\304\311\"\210A\266\202\202\2620\207" [eshell-in-pipeline-p eshell-needs-pipe boundp first found string-search "/" file-name-nondirectory throw t] 7 (#$ . 10262)])
#@59 Gather the output from COMMAND + ARGS.

(fn COMMAND ARGS)
(defalias 'eshell-gather-process-output #[514 "\306\307!\210\310!\203\311\312!!\204\313\314\"\210\203	\202 \n\315 \316\211\211\211\317\320!\203\337\321!?\2057\f\322\323!!\324\325\326!\316%)\266\202\262\211\317\327!\205Y\327!\262\203r\203r\306\330!\210\331\332\333\334!\335!#!\210\211
\316\211\257@B\211@\266\336p\"\210\337\340 \203\221\341\202\222\342\"\210\343\344\"\210\345\346\"\210\317\347!\203\245\347!\211@\262\211A\262\210\350\351!!\203\301\352\353\"\262\354\262\203\322\204\322\352\355\"\262\354\262\211\203\245\356#\210\202\245p\340 \316\211\211\211\211\357A!\204\362\360 A\361B!q\262\362 \210q\210\345\346\"\210\324\363\364A`\354B\316\257\"\"\262\365\366!\203+6\203+A`\316\223\210\211\247\203jq\210eb\210`\262\367y\370=\203f`\262\371\"\262q\210\203Y\341\316\"\210\202]\372!\210\262q\210\2029q\210\306\330!\210\373C!\210\374\247\203}\202~\375!\210\376
\"\210\365\366!\203\2216\204\224\316A\211\247\204\240\313\377#\210\354\262\266*\207" [eshell-current-subjob-p eshell-delete-exited-processes delete-exited-processes process-environment process-connection-type eshell-current-handles require esh-var file-executable-p file-regular-p file-truename error "%s: not an executable file" eshell-environment-variables nil fboundp make-process eshell-needs-pipe-p file-local-name expand-file-name apply start-file-process file-name-nondirectory processp esh-mode eshell-interactive-print format "[%s] %d\n" process-name process-id set-process-buffer set-process-filter eshell-interactive-output-p eshell-output-filter eshell-insertion-filter set-process-sentinel eshell-sentinel run-hook-with-args eshell-exec-hook process-coding-system vectorp coding-system-eol-type coding-system-change-eol-conversion dos t unix set-process-coding-system markerp point-marker get-buffer-create erase-buffer call-process-region append boundp eshell-in-pipeline-p 1 0 buffer-substring-no-properties eshell-output-object eshell-update-markers eshell-close-handles -1 eshell-kill-process-function "%s: external command failed: %s" eshell-process-list eshell-last-sync-output-start eshell-scratch-buffer eshell-last-output-end] 22 (#$ . 10688)])
#@162 Insert a string into the eshell buffer, or a process/file/buffer.
PROC is the process for which we're inserting output.  STRING is the
output.

(fn PROC STRING)
(defalias 'eshell-insertion-filter #[514 "\301\302!!\205Pr\302!q\210\236\211\205M\303\233\3038P\240\210\3048?\205M\3038\205M\3038\303\233\305\240\210\304\233\306\240\210\307\305A@#\210\304\233\305\240\266\202&\262)\207" [eshell-process-list buffer-live-p process-buffer 3 4 nil t eshell-output-object] 8 (#$ . 13008)])
#@147 Generic sentinel for command processes.  Reports only signals.
PROC is the process that's exiting.  STRING is the exit message.

(fn PROC STRING)
(defalias 'eshell-sentinel #[514 "\301\302!!\205br\302!q\210\303\304#\216\236\211\205_\303\305\"\216\306\230?\205^\307\310\"\2043\311\"\210\211A@\3128\312\233\211\313\240\266\314!\313C\211\303\315&\240\210\211\242 \262\266\203)\262*\207" [eshell-process-list buffer-live-p process-buffer make-closure #[0 "\302\300\301\"\207" [V0 V1 eshell-kill-process-function] 3] #[0 "\301\300!\207" [V0 eshell-remove-process-entry] 2] "run" string-match "^\\(finished\\|exited\\)" eshell-insertion-filter 3 nil process-exit-status #[0 "\305\3008\203
\306\307\310\304\242#\207\302\203\311\302\310\301#\210\312\303\310\301#\207" [V0 V1 V2 V3 V4 4 run-at-time 0 nil eshell-output-object eshell-close-handles] 4]] 15 (#$ . 13517)])
#@239 Interact with a process, using PROMPT if more than one, via FUNC.
If ALL is non-nil, background processes will be interacted with as well.
If QUERY is non-nil, query the user with QUERY before calling FUNC.

(fn FUNC &optional ALL QUERY)
(defalias 'eshell-process-interact #[769 "\301\211\211\203I\211@\302@!\303>\2034\204\3048\2044\203-\305\306\307@!\"!\2034@!\262\302@!\310>\204B\211B\262A\266\202\202\210\211\203\\\211@\311!\210A\266\202\202K\210\207" [eshell-process-list nil process-status (run stop open closed) 2 y-or-n-p format-message process-name (run stop open closed) eshell-remove-process-entry] 12 (#$ . 14420)])
(byte-code "\300\301\302\303\304DD\305\306\307%\210\300\310\302\303\311DD\312\306\313%\210\300\314\302\303\315DD\316\306\317%\207" [custom-declare-variable eshell-kill-process-wait-time funcall function #[0 "\300\207" [5] 1 #1=""] "Seconds to wait between sending termination signals to a subprocess." :type integer eshell-kill-process-signals #[0 "\300\207" [(SIGINT SIGQUIT SIGKILL)] 1 #1#] "Signals used to kill processes when an Eshell buffer exits.\nEshell calls each of these signals in order when an Eshell buffer is\nkilled; if the process is still alive afterwards, Eshell waits a\nnumber of seconds defined by `eshell-kill-process-wait-time', and\ntries the next signal in the list." (repeat symbol) eshell-kill-processes-on-exit #[0 "\300\207" [nil] 1 #1#] "If non-nil, kill active processes when exiting an Eshell buffer.\nEmacs will only kill processes owned by that Eshell buffer.\n\nIf nil, ownership of background and foreground processes reverts to\nEmacs itself, and will die only if the user exits Emacs, calls\n`kill-process', or terminates the processes externally.\n\nIf `ask', Emacs prompts the user before killing any processes.\n\nIf `every', it prompts once for every process.\n\nIf t, it kills all buffer-owned processes without asking.\n\nProcesses are first sent SIGHUP, then SIGINT, then SIGQUIT, then\nSIGKILL.  The variable `eshell-kill-process-wait-time' specifies how\nlong to delay between signals." (choice (const :tag "Kill all, don't ask" t) (const :tag "Ask before killing" ask) (const :tag "Ask for each process" every) (const :tag "Don't kill subprocesses" nil))] 6)
#@133 Kill current process by trying various signals in sequence.
See the variable `eshell-kill-processes-on-exit'.

(fn &optional QUERY)
(defalias 'eshell-round-robin-kill #[256 "C\211\242\205+\303\304\305\"\306#\210\307\262	\204\211\307\240\210\202\310\n!\210\211\242A\240\210\202\207" [eshell-kill-process-signals eshell-process-list eshell-kill-process-wait-time eshell-process-interact make-closure #[257 "\301\302!\300\242@\"\207" [V0 signal-process process-id] 4 "\n\n(fn PROC)"] t nil sleep-for] 6 (#$ . 16693)])
#@75 Kill processes belonging to the current Eshell buffer, possibly w/ query.
(defalias 'eshell-query-kill-processes #[0 "\205D	\205D\302 \303\304\"\216\305 \210\306=\203\"\307\310\311\312 \"!\203,\313\314=\205*\315!\210\316\317!\211\203=\320!\203=\321!\210\210\322\323!)\262\207" [eshell-kill-processes-on-exit eshell-process-list current-window-configuration make-closure #[0 "\301\300!\207" [V0 set-window-configuration] 2] list-processes ask y-or-n-p format-message "Kill processes owned by `%s'? " buffer-name eshell-round-robin-kill every "Kill Eshell child process `%s'? " get-buffer "*Process List*" buffer-live-p kill-buffer message nil] 5 (#$ . 17227)])
#@22 Interrupt a process.
(defalias 'eshell-interrupt-process #[0 "\300\301!?\205\302\303\304\"\207" [eshell-process-interact interrupt-process eshell-kill-process-function nil "interrupt"] 3 (#$ . 17907) nil])
#@17 Kill a process.
(defalias 'eshell-kill-process #[0 "\300\301!?\205\302\303\304\"\207" [eshell-process-interact kill-process eshell-kill-process-function nil "killed"] 3 (#$ . 18121) nil])
#@30 Send quit signal to process.
(defalias 'eshell-quit-process #[0 "\300\301!?\205\302\303\304\"\207" [eshell-process-interact quit-process eshell-kill-process-function nil "quit"] 3 (#$ . 18317) nil])
#@22 Send EOF to process.
(defalias 'eshell-send-eof-to-process #[0 "\300\301!\210\302\303\211\304#\210\305\306!\207" [require esh-mode eshell-send-input nil t eshell-process-interact process-send-eof] 4 (#$ . 18524) nil])
(provide 'esh-proc)

Youez - 2016 - github.com/yon3zu
LinuXploit