git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[RFC] git-gui window layout

From
APAdam Piatyszek <ediap@users.sourceforge.net>
Date
Oct 12, 2007, 08:49 UTC
Message-ID
<470F3516.7020606@users.sourceforge.net>
Dear Giters,

I would like you to comment on my idea to change, or at least add a possibility to change, the current layout of git-gui window.

Nowadays there is a tendency to produce wide screens for laptops and even standalone LCD monitors. One can safely assume that the minimum reasonable horizontal resolution of a screen is at least 1024 pixels (I do not expect anyone using git-gui with 800x600 resolution). Moreover, most popular window managers decreases the vertical dimension of a desktop by using horizontally-oriented panels (e.g. KDE, Gnome, XFCE4, etc.)

The current layout of git-gui window covering the whole desktop area on a typical WXGA (1280x800) laptop LCD display is thus:

+----------+-----------------------------------+
|          |                                   |
|  staged  |          unstaged                 |
|          |                                   |
+----------+----------------+------------------+
|###     commit log         |      EMPTY       |
|###                        |                  |
+---------------------------+------------------+
|                                              |
|    diff output                               |
|                                              |
+----------------------------------------------+

In my opinion, the staged, unstaged and diff areas are usually used for displaying things that are taller than wider (e.g. a list of files, patches of well structured code, which is usually < 80 columns). The commit log window is also designed for text narrower than < 80 cols.

Therefore in my opinion it might be more useful to restructure this layout to something like this:

+-------------+----------------------------+---+
|             |                            |###|
|             |       commit log           |###|
|   staged    +----------------------------+---+
|             |                                |
|             |                                |
+----- 1 -----+                                |
|             |       diff output              |
|             2                                |
|  unstaged   |                                |
|             |                                |
|             |                                |
+-------------+--------------------------------+

Buttons (rescan, push, commit, etc.) are denoted here as ###. Besides the walls denoted as 1 and 2 should be movable so one could adjust the size of staged/unstaged and diff areas. The minimum width of diff window would be limited by the commit log window width (I propose 80 colums) plus the size of the buttons.

Unfortunately, I do not nothing about TCL/TK programming, so I even did not tried to analyse the code of git-gui. Therefore I am not sure if such a restructure is easy to implement.

Anyway I hope for your comments to this idea.

BR, /Adam

-- 
.:.  Adam Piatyszek - "ediap"       .:.  JID: ediap(at)jabber.org .:.
.:.  ediap(at)users.sourceforge.net .:.  PGP key ID: 0x1F115CCB   .:.
Next: Johannes Sixt
Message 1 of 3 in “[RFC] git-gui window layout”
  1. Adam PiatyszekOct 12, 2007
  2. Johannes SixtOct 12, 2007
  3. Adam PiatyszekOct 12, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.