Tomas-M / xlunch

Graphical app launcher for X with minimal dependencies
http://xlunch.org
GNU General Public License v3.0
219 stars 37 forks source link

Margin should be configurable #112

Closed Jemi closed 4 years ago

Jemi commented 4 years ago

Xlunch creates a margin of around 1 to 2 inches on all sides of the run prompt and icons area. This looks like too much to me, and this margin should be configurable. It should even be possible to have a margin of zero, thereby permitting maximum utilization of screen real estate. I played with some of the options, but nothing seems to affect this margin. Even adding additional columns will just squeeze more columns into the area bounded by the margin, but without affecting the size of the margin. Please make this margin adjustable.

OS: Artix Linux Monitor resolution: 1920x1200 Xlunch version: 4.5.4-git

2020-07-15-220150_1920x1200_scrot

Tomas-M commented 4 years ago

In my opinion the margin is configurable. I do not remember now what parameters to use, try --border or --borderratio

PMunch commented 4 years ago

This is indeed configurable already (as with pretty much anything in xlunch), but because of all the options it might be a bit tricky to find. According to the documentation:

-b, --border [i]                   Size of the border around the icons and prompt
                                   (default: 1/10th of screen width)
                                   This can also be set to 'auto' in order to
                                   automatically calculate a border taking into
                                   account the margin settings and the
                                   configured columns and rows. You can also specify
                                   border in terms of percentage of screen width by
                                   appending a % sign to the value
-B, --sideborder [i]               Size of the border on the sides, if this is used
                                   --border will be only top and bottom. Similarily
                                   this can be set to 'auto' or a percentage but
                                   then only side borders are calculated
--borderratio [i]                  The ratio of the border to apply above the
                                   content. 0 is no top border, only bottom. 100 is
                                   only top border, no bottom
--sideborderratio [i]              The ratio of the side border to apply to the
                                   left of the content. 0 is no left border, only
                                   right. 100 is only left border, no right

It might also be helpful to have a look at the spacing chart which visually shows the various spacing options.

Jemi commented 4 years ago

In my opinion the margin is configurable. I do not remember now what parameters to use, try --border or --borderratio

The problem as it turns out is not that it's not configurable, it's that --border doesn't respond in the expected way (or any way as far as I can tell) when giving 0 as the parameter, and this is undocumented and doesn't produce any kind of error message. --border 1 works fine. Is there a reason why it would be desirable to not allow --border 0 as an option?

PMunch commented 4 years ago

Hmm, that is an implementation detail. The border parameter in the code defaults to 0 and setting --border auto sets it to 0. It's a bit unfortunate, but I think this was to ensure backwards compatibility at some point. Should certainly be documented though, PRs welcome.