10.8.3/Terminal 2.3.

Terminal resizes the entire window in seemingly unpredictable ways whenever I change the size of the font -- a frequent operation when frequently going between laptop and external displays.

Is there some way to prevent this? iTerm seems to do the same thing.

Update: Based on @robmathers' answer below, it seems likely that what I want isn't possible. Can anyone recommend any OS X terminal emulators that don't have this feature?


As far as I know, you can't do this in Terminal (I don't use iTerm, so I can't speak to that). The reason is that Terminal's window sizes are defined by characters, rather than pixels. Hence, when you change fonts, the window resizes based on the proportions of that font, so as to preserve the format of the existing content on the screen.

It sounds a bit silly at first, but given that a terminal simply displays only text characters, it makes sense — if a window is sized by pixels, you'd often end up with wasted space when the size of the window doesn't exactly match a character boundary.

  • however if you have several tabs open the window can resize to a width based on pixels. you get the wasted space you talk about. and worse, if it thinks you need more width to see the tabs it will even grow the window when you shrink the font. – Partly Cloudy Oct 31 '14 at 4:36

Old question here ... but thought I'd add that this has been supported in iTerm for almost two years now https://gitlab.com/gnachman/iterm2/issues/2900

Just uncheck the "Adjust window when changing font size" box in the preferences.

iTerm Preferences, General tab

2020 Update

The box is now here:

2020 version, iTerm Preferences, General tab

  • That's great! :) – lfree Apr 25 '18 at 6:27
  • 2
    it has moved a bit, now it's under General, Window, but you can always search the settings for adjust and it will find it wherever they've put it. great answer. – JL Peyret Nov 18 '19 at 20:43
  • 2
    This should be the accepted answer. – BiBi Jun 17 '20 at 9:46
  • Agree with @BiBi this should be the accepted answer – nclarx Jul 8 '20 at 22:21

Based on your update to the question, have a look at the ZOC Terminal. It it is commercial, can be used for local shells and also SSH and other connections, but offers tabbed sessions and the ability to control what happens when the window is resized (for example the there is a choice to retain the the rows/columns and instead shrink/grow font size, etc.). Have a look at it's Session-Profile>Layout settings page.


I have had this same issue for years. I recently found not a solution but a workaround for OS X, which does not require you to change terminal emulators. It uses an application called Spectacle: https://www.spectacleapp.com/

Spectacle provides keyboard shortcuts for positioning and resizing windows (but not the fontsize, as far as I can tell). When I want to change the size of my font, I issue the default command to do so, which creates the unwanted re-sizing of the window. I then reduce or increase the size of the window using the Spectacle keyboard shortcut, until I get it back to a preferred size.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .