Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
;; This file: ;; http://angg.twu.net/elisp/frames.el.html ;; http://angg.twu.net/elisp/frames.el ;; (find-angg "elisp/frames.el") ;; Author: Eduardo Ochs <eduardoochs@gmail.com> ;; Version: 2021nov15 ;; ;; (defun e () (interactive) (find-angg "elisp/frames.el")) ;; https://lists.gnu.org/archive/html/eev/2021-10/msg00000.html ;; https://lists.gnu.org/archive/html/eev/2021-11/msg00016.html ;; (load (buffer-file-name)) ;; (find-elnode "Creating Frames") ;; (find-elgrep "grep --color=auto -nH --null -e make-frame *.el */*.el") ;; (find-elnode "Parameter Access") ;; (find-elnode "Frame Titles") ;; (find-elnode "Raising and Lowering") ;; ;; (make-frame '((title . "Foo"))) ;; (make-frame '((title . "Bar"))) ;; (frame-list) ;; (nth 0 (frame-list)) ;; (frame-parameter (nth 0 (frame-list)) 'title) ;; (frame-parameter (nth 1 (frame-list)) 'title) ;; (find-epp (frame-parameters (nth 0 (frame-list)))) ;; (find-epp (frame-parameters (nth 1 (frame-list)))) ;; 2021dec17: (defun ee-first-frame-with-title (title) "Return the first frame with title TITLE or nil if none exists." (let ((frameswiththattitle (cl-loop for frame in (frame-list) if (equal title (frame-parameter frame 'title)) collect frame))) (car frameswiththattitle))) (defun ee-select-frame (title) "Like `select-frame-set-input-focus', but on a frame with title TITLE. Use the first frame with that title if several exist. If there isn't a frame with that title, create one." (let ((frame (ee-first-frame-with-title title))) (if frame (select-frame-set-input-focus frame) (let ((newframe (make-frame `((title . ,title))))) (select-frame-set-input-focus newframe))))) (defun find-wset-F () (ee-select-frame (car sexps)) (setq sexps (cdr sexps))) ;; (find-clnode "Loop Facility") ;; (find-clnode "Loop Examples") ;; (find-clnode "Other Clauses" "if CONDITION CLAUSE") (defun ee-frames-with-title (title) (cl-loop for fr in (frame-list) if (equal title (frame-parameter fr 'title)) collect fr)) (defun ee-frame-with-title (title) (car (ee-frames-with-title title))) ;; (make-frame '((title . "Foo"))) ;; (ee-frames-with-title "Foo") ;; (ee-frame-with-title "Foo") ;; (ee-frames-with-title "SpXlY") ;; (ee-frame-with-title "SpXlY") ;; (find-elnode "Input Focus") ;; (find-elnode "Input Focus" "Function: select-frame-set-input-focus") ;; (ee-use-frame "Foo") ;; (ee-use-frame "Bar") ;; (defun ee-use-frame (title) (let ((fr (ee-frame-with-title title))) (if fr (select-frame-set-input-focus fr) (let ((newfr (make-frame `((title . ,title))))) (select-frame-set-input-focus newfr))))) ;; (find-multiwindow-intro) ;; (find-multiwindow-intro "2. `find-wset'") ;; (find-multiwindow-intro "8. Adding support for new characters in `find-wset'") ;; (find-efunction 'find-wset-o) (defun find-wset-F () (ee-use-frame (car sexps)) (setq sexps (cdr sexps))) ;; (find-wset "13o_" '(find-ebuffer "Fff")) ;; (find-wset "F_" "Foo" '(find-ebuffer "Fff")) ;; (find-wset "F_" "Bar" '(find-ebuffer "Bbb"))