Function: hycontrol-windows-grid
hycontrol-windows-grid is an autoloaded, interactive and byte-compiled
function defined in hycontrol.el.
Signature
(hycontrol-windows-grid ARG)
Documentation
Display a grid of windows in the selected frame, sized to prefix ARG.
Left digit of ARG is the number of grid rows and the right digit
is the number of grid columns. Use {\C-h h h} to restore the
prior frame configuration after a grid is displayed.
If ARG is 0, prompt for a major mode whose buffers should be displayed in the grid windows, then prompt for the grid size.
If ARG is < 0, prompt for a glob-type file pattern and display files that match the pattern in an abs(ARG) sized windows grid or an autosized one if the ARG value is invalid.
Otherwise, prompt for the grid size if ARG is an invalid size
(positive and more than two digits).
With a current buffer in Dired, Buffer Menu or IBuffer mode that contains marked items, the buffers associated with those items are displayed in the grid (unless ARG is 0).
By default, the most recently used buffers are displayed in each
window, first selecting only those buffers which match any of the
predicate expressions in hycontrol-display-buffer-predicate-list.
(The default predicate list chooses buffers with attached files).
Then, if there are not enough buffers for all windows, the buffers
that failed to match to any predicate are used. In all cases,
buffers whose names start with a space are ignored.
When done, this resets the persistent HyControl prefix argument to
1 to prevent following commands from using the often large grid size
argument.
If the key that invokes this command in hyperbole-minor-mode is also
bound in the current major mode map, then interactively invoke that
command instead. Typically prevents clashes over {\C-c @}.
Key Bindings
Source Code
;; Defined in ~/.emacs.d/elpa/hyperbole-20260414.325/hycontrol.el
;;; Split selected frame into a grid of windows given by row and
;;; column count, displaying different buffers in each window.
;;;###autoload
(defun hycontrol-windows-grid (arg)
"Display a grid of windows in the selected frame, sized to prefix ARG.
Left digit of ARG is the number of grid rows and the right digit
is the number of grid columns. Use {\\`C-h' h h} to restore the
prior frame configuration after a grid is displayed.
If ARG is 0, prompt for a major mode whose buffers should be
displayed in the grid windows, then prompt for the grid size.
If ARG is < 0, prompt for a glob-type file pattern and display
files that match the pattern in an abs(ARG) sized windows grid
or an autosized one if the ARG value is invalid.
Otherwise, prompt for the grid size if ARG is an invalid size
\(positive and more than two digits).
With a current buffer in Dired, Buffer Menu or IBuffer mode that
contains marked items, the buffers associated with those items
are displayed in the grid (unless ARG is 0).
By default, the most recently used buffers are displayed in each
window, first selecting only those buffers which match any of the
predicate expressions in `hycontrol-display-buffer-predicate-list'.
\(The default predicate list chooses buffers with attached files).
Then, if there are not enough buffers for all windows, the buffers
that failed to match to any predicate are used. In all cases,
buffers whose names start with a space are ignored.
When done, this resets the persistent HyControl prefix argument to
1 to prevent following commands from using the often large grid size
argument.
If the key that invokes this command in `hyperbole-minor-mode' is also
bound in the current major mode map, then interactively invoke that
command instead. Typically prevents clashes over {\\`C-c' @}."
(interactive "P")
(let ((numeric-arg (prefix-numeric-value current-prefix-arg)))
(if (or (<= numeric-arg 0) (> numeric-arg 11))
;; Very unlikely other mode commands could use prefix arg in
;; this range, so ignore other key bindings.
(hycontrol--windows-grid-internal arg)
(let* ((key (hypb:cmd-key-vector #'hycontrol-windows-grid hyperbole-mode-map))
(mode-binding (lookup-key (current-local-map) key))
(this-key-flag (and (called-interactively-p 'interactive)
(equal (this-single-command-keys) key))))
(cond ((and mode-binding (not (integerp mode-binding))
(not (eq this-command mode-binding))
this-key-flag (if (eq major-mode #'outline-mode) (not arg) t))
;; If the key that invokes this command in `hyperbole-minor-mode'
;; is also bound in the current major mode map, then
;; interactively invoke that command instead. Typically
;; prevents clashes over {C-c @}.
(call-interactively mode-binding))
((and (not arg) this-key-flag
(boundp 'outline-minor-mode) outline-minor-mode
(setq mode-binding (lookup-key outline-minor-mode-map key))
(not (integerp mode-binding))
(keymapp mode-binding))
;; Prevent a conflict with keymap binding in Outline minor mode
(kbd-key:key-series-to-events key))
;;
;; No key conflicts, display window grid
(t (hycontrol--windows-grid-internal arg)))))))