Adding Padding to the Gnome Terminal in Ubuntu

Screenshot of the Gnome Terminal in Ubuntu with adjusted padding
Photo by Sergiy Noskov
Screenshot of the Gnome Terminal in Ubuntu with adjusted padding

For many Linux users, the terminal is their digital command center. It’s where we unleash the power of the operating system, navigate file systems, and interact with applications. But sometimes, the default look and feel of the terminal can feel a bit cramped. Thankfully, Gnome Terminal in Ubuntu 22.04 offers a way to personalize your workspace by adding padding. This extra breathing room can improve readability and create a more visually appealing experience.

This guide delves into the process of customizing the Gnome Terminal’s padding on Ubuntu 22.04. We’ll explore the concept of padding, delve into the customization options, and provide step-by-step instructions with code examples to achieve your desired padding level.

Understanding Padding in the Gnome Terminal

Padding refers to the empty space surrounding the actual text content within the terminal window. It exists between the text and the window borders. Increasing the padding provides more visual separation between the terminal content and the surrounding UI elements, potentially enhancing readability and user experience.

There are two main areas where padding can be applied in the Gnome Terminal:

  • Inner Padding: This refers to the space between the text and the scrollbar or window borders. Adjusting this padding directly impacts the amount of text displayed on the screen.
  • Outer Padding: This represents the space between the entire terminal window and the desktop environment. While not directly affecting the text itself, it can influence the overall visual balance within your workspace.

While Gnome Terminal doesn’t offer built-in settings to adjust padding directly, we can leverage the power of CSS (Cascading Style Sheets) to achieve this customization.

Customizing Padding with CSS

Gnome Terminal utilizes the GTK+ toolkit, which relies on CSS for styling elements within the application. By creating a custom CSS file, we can define specific styles for the terminal window and manipulate its padding.

Here’s what we’ll need:

  • Text Editor: Any text editor like nano, vim, or your preferred graphical editor will suffice.
  • Basic understanding of CSS syntax: Knowing how to define selectors and style properties will be helpful.

Step-by-Step Guide: Adding Padding to Gnome Terminal

  1. Create the CSS file: Open your terminal and navigate to your home directory using the cd ~ command. Here, we’ll create a directory named .config (if it doesn’t exist already) to store configuration files.
    cd ~
    mkdir -p .config/gtk-3.0

    Next, create a new file named gtk.css inside the .config/gtk-3.0 directory. You can use your preferred text editor to do this. Here’s an example using nano:

    nano ~/.config/gtk-3.0/gtk.css
  2. Define CSS Styles: Now, let’s add the CSS code that defines the desired padding. Here’s an example that increases both inner and outer padding:
    VteTerminal, TerminalScreen, vte-terminal {
    	padding: 10px 10px 10px 10px; /* Inner Padding */
    	-VteTerminal-inner-border: 5px 5px 5px 5px; /* Outer Padding */


    • VteTerminal, TerminalScreen, vte-terminal: These selectors target various elements within the Gnome Terminal window.
    • padding: 10px 10px 10px 10px;: This property defines the inner padding. Each value represents the padding amount for the top, right, bottom, and left sides, respectively. You can adjust these values (in pixels) to achieve your desired padding level.
    • -VteTerminal-inner-border: 5px 5px 5px 5px;: This property, specific to Gnome Terminal, defines the outer padding. Similar to the padding property, adjust the values to control the spacing between the window and the desktop environment.
  3. Save and Restart: Once you’ve added the CSS code, save the gtk.css file.
  4. Close and Reopen Terminals: Any existing Gnome Terminal windows won’t reflect the changes immediately. Close all open terminal windows and then relaunch Gnome Terminal. The new padding should now be applied.

If you want you can simply use the following gist:

Additional Tips:

  • Experiment with different padding values to find your optimal configuration.
  • You can further customize the CSS file to adjust other aspects of the terminal’s appearance, such as font size, colors, and background.

Advanced Customization and Troubleshooting

While the basic approach targets both inner and outer padding, you might prefer to adjust them independently. Here’s how:

Adjusting Inner Padding Only:

Simply remove the -VteTerminal-inner-border property from the CSS code. This will only affect the space between the text and the scrollbar/window borders.

Adjusting Outer Padding Only:

Comment out the padding property and keep the -VteTerminal-inner-border property. Use the comment syntax (/* ... */) in CSS to disable specific lines.

Here’s an example for adjusting outer padding only:

VteTerminal, TerminalScreen, vte-terminal {
	/* padding: 10px 10px 10px 10px; Inner Padding (Commented Out) */
	-VteTerminal-inner-border: 5px 5px 5px 5px; /* Outer Padding */
Troubleshooting and Considerations
  • CSS Syntax Errors: Ensure your CSS code is free of syntax errors. Typos or incorrect formatting can prevent the styles from being applied. You can use online CSS validators to check for errors.
  • Conflicting Styles: If you have other CSS files or themes affecting Gnome Terminal, they might override your custom styles. Consider temporarily disabling other themes or moving your custom CSS to a directory with higher priority.
  • Permissions: Make sure the gtk.css file has the appropriate permissions. You can check and adjust permissions using the chmod command in the terminal.
Advanced Customization Options:

The basic approach provides a solid foundation for adding padding. However, CSS offers a vast array of styling options for further customization. Here are some examples:

  • Font Size and Style: You can adjust the font size, weight, and family using CSS properties like font-size, font-weight, and font-family.
  • Color Scheme: Customize the background color, text color, and other elements using properties like background-color, color, and cursor-color.
  • Transparency: Enable transparency for the terminal window using the opacity property.
Exploring Online Resources:

The internet is a treasure trove of customization inspiration. Numerous online resources showcase various Gnome Terminal themes and configurations. Searching for “Gnome Terminal themes CSS” can provide valuable starting points and ideas for further personalization. Also you can have a look at this old thread, as well.

  • Backup your original gtk.css file before making significant changes.
  • Experimentation is key! Don’t be afraid to try different styles and values to achieve your desired look and feel.

By following these steps and exploring the potential of CSS, you can transform your Gnome Terminal into a visually appealing and comfortable workspace that reflects your preferences. Happy customizing!