Are there emacs commands which will let me resize/move the frames/windows?
By frame/window I mean the GUI object that X/Windows/whateverAppleCallsIt to contain the interface to emacs. Sorry, emacs language conflicts with OS-GUI language.
Are there emacs commands which will let me resize/move the frames/windows?
By frame/window I mean the GUI object that X/Windows/whateverAppleCallsIt to contain the interface to emacs. Sorry, emacs language conflicts with OS-GUI language.
There are the built in functions set-frame-size, set-frame-height, set-frame-width and set-frame-position which let's you programmatically set the frame size and position.
For example (set-frame-size (selected-frame) 300 300 t) would set the currently selected frame size to 300x300 pixels.
If you want to set the size interactively there is the frame-cmds package available on melpa that you can install via M-x package-install RET frame-cmds RET if you have melpa in you package-archives list or download from it from the emacs wiki.
In addition to frame-cmds.el, which is mentioned by @Tephra, you have library frame-fns.el, on which it depends, and which provides some general frame-manipulation utility functions.
Libraries fit-frame.el and autofit-frame.el, which shrink-wrap a frame to fit the text that is in its selected window (used typically in a one-window frame). See Shrink-Wrapping Frames.
Library zoom-frm.el lets you easily zoom the text in a frame (or a buffer) in and out. It extends and is more flexible than the standard Emacs text "scaling" provided by vanilla Emacs.
Library doremi-frm.el provides another way to incrementally resize frames.
Yes, one can find the official detailed list here:
Those could be combined to do all sort of things, like for example:
(defun my/frame-move-resize (position) "Resize selected frame to cover exactly 1/3 of screen area, and move frame to given third of current screen. Symbol POSITION can be either left, center, right." (pcase position ('left (setf x 0)) ('center (setf x 1)) ('right (setf x 2))) (let* ((HEIGHT (display-pixel-height)) (WIDTH (display-pixel-width))) (set-frame-size (selected-frame) (/ WIDTH 3) HEIGHT t) (set-frame-position (selected-frame) (* x (/ WIDTH 3)) 0))) ;; Example: (my/frame-move-resize 'center) moom-move-frame and other related functions in moom package move/resize Emacs frame (not window) https://github.com/takaxp/moom