[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Finding last *Async Shell Command* buffer?
From: |
Emanuel Berg |
Subject: |
Re: Finding last *Async Shell Command* buffer? |
Date: |
Thu, 25 Mar 2021 21:27:39 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) |
Jean Louis wrote:
>> The *Buffer List* should be sorted but if you want even
>> faster, tell me what these buffers are called exactly...
>
> Well, they are called like below.
>
> In this buffer, type RET to select the completion
> near point.
>
> Possible completions are: *Async Shell Command* *Async Shell
> Command*<100> *Async Shell Command*<101> *Async Shell
> Command*<102> *Async Shell Command*<103> *Async Shell
> Command*<104> *Async Shell Command*<105> *Async Shell
> Command*<106> *Async Shell Command*<107> *Async Shell
> Command*<108> *Async Shell Command*<109> *Async Shell
> Command*<10> *Async Shell Command*<110> *Async Shell
> Command*<111> *Async Shell Command*<112> *Async Shell
> Command*<113> ...
>
> but I think not the last number is really the last if any of
> those buffers was killed previously.
That doesn't matter, I have what you need:
;;; -*- lexical-binding: t -*-
;;;
;;; this file:
;;; http://user.it.uu.se/~embe8573/emacs-init/switch-to-buffer-regexp.el
;;; https://dataswamp.org/~incal/emacs-init/switch-to-buffer-regexp.el
(require 'cl-lib)
(defun buffer-names ()
(mapcar #'buffer-name (buffer-list)) )
(defun switch-to-buffer-regexp (buf-re)
(let*((ori-buf (buffer-name (current-buffer)))
(hits (cl-remove-if-not
(lambda (b) (string-match buf-re b)) (buffer-names)) ))
(when hits
(let ((new-hits (cl-remove ori-buf hits)))
(when new-hits
(when (string-match buf-re ori-buf)
(bury-buffer ori-buf) )
(switch-to-buffer (car new-hits)) )))))
;; try it!
;; (require 'gnus)
;; (dotimes (i 4) (gnus-post-news 'post "")) ; create 4 posts
(global-set-key "\C-cu" (lambda () (interactive) (switch-to-buffer-regexp
"\*unsent posting\*.*")))
;; hit again to iterate
(provide 'switch-to-buffer-regexp)
Then do:
(defun switch-to-async-buffer ()
(interactive)
(switch-to-buffer-regexp "\*Async Shell Command\*") )
Assign key - done
--
underground experts united
https://dataswamp.org/~incal
- Finding last *Async Shell Command* buffer?, Jean Louis, 2021/03/25
- Re: Finding last *Async Shell Command* buffer?, Emanuel Berg, 2021/03/25
- Re: Finding last *Async Shell Command* buffer?, Jean Louis, 2021/03/25
- Re: Finding last *Async Shell Command* buffer?,
Emanuel Berg <=
- Re: Finding last *Async Shell Command* buffer?, Jean Louis, 2021/03/25
- Re: Finding last *Async Shell Command* buffer?, Emanuel Berg, 2021/03/25
- Re: Finding last *Async Shell Command* buffer?, Jean Louis, 2021/03/25
- Re: Finding last *Async Shell Command* buffer?, Emanuel Berg, 2021/03/25
- Re: Finding last *Async Shell Command* buffer?, Jean Louis, 2021/03/25
- Re: Finding last *Async Shell Command* buffer?, Robert Thorpe, 2021/03/26
- Re: Finding last *Async Shell Command* buffer?, Eli Zaretskii, 2021/03/26
- Re: Finding last *Async Shell Command* buffer?, Jean Louis, 2021/03/26
- Re: Finding last *Async Shell Command* buffer?, Eli Zaretskii, 2021/03/26
- Re: Finding last *Async Shell Command* buffer?, Emanuel Berg, 2021/03/26