Function: ibuffer-make-column-filename-and-process

ibuffer-make-column-filename-and-process is a byte-compiled function defined in ibuffer.el.gz.

Signature

(ibuffer-make-column-filename-and-process BUFFER MARK)

Source Code

;; Defined in /usr/src/emacs/lisp/ibuffer.el.gz
(define-ibuffer-column filename-and-process
  (:name "Filename/Process"
   :header-mouse-map ibuffer-filename/process-header-map
   :summarizer
   (lambda (strings)
     (setq strings (delete "" strings))
     (let ((procs 0)
	   (files 0))
       (dolist (string strings)
         (when (get-text-property 1 'ibuffer-process string)
           (setq procs (1+ procs)))
	 (setq files (1+ files)))
       (concat (cond ((zerop files) "No files")
		     ((= 1 files) "1 file")
		     (t (format "%d files" files)))
	       ", "
	       (cond ((zerop procs) "no processes")
		     ((= 1 procs) "1 process")
		     (t (format "%d processes" procs)))))))
  (let ((proc (get-buffer-process buffer))
	(filename (ibuffer-make-column-filename buffer mark)))
    (if proc
	(concat (propertize (format "(%s %s)" proc (process-status proc))
			    'font-lock-face 'italic
                            'ibuffer-process proc)
		(if (> (length filename) 0)
		    (format " %s" filename)
		  ""))
      filename)))