¥
Size: a a a
¥
ℙ
ℙ
VL
A
АО
call-process-region
для синхронного запуска процесса и передачи ему инпута из буфера. У неё сигнатура такая:(call-process-region START END PROGRAM &optional DELETE BUFFER DISPLAY &rest ARGS)
START
is nil
, that means to use the entire buffer contents; END
is ignored.*foo*
и запускаю:(call-process-region nil nil "wc" t "*foo*" t "-l")
wc -l
, передаст ему весь текст из буфера *foo*
, и заменит текст в буфере на то, что wc написала в STDOUT.Aß
Aß
Aß
(with-current-buffer
(get-buffer-create "*foo*")
(erase-buffer)
(insert "foo\nbar\nbaz\n")
(call-process-region nil nil "wc" t t nil "-l")
(buffer-string))
АО
Aß
АО
Aß
Aß
АО
Aß
АО
*scratch*
написал:(call-process-region (point-min) (point-max) "wc" t t)
(call-process-region nil nil "wc" t t)
Aß
АО
Aß