RPi-Distro / raspi-config

Configuration tool for the Raspberry Pi
Other
565 stars 206 forks source link

Too many lines, doesn't fit on multiline Braille display #210

Closed pachpict closed 1 year ago

pachpict commented 1 year ago

Issue: Raspi-config has a fixed height which means you cannot access the top menu items when using a multiline Braille display.

I am using a Raspberry Pi to develop applications in Braille for the Canute 360, which is a nine line Braille display. You can find the source code here.

Short version is that this display connects to the computer as a USB device and a screen-reader called BRLTTY reads the last nine lines of the terminal and sends them to the Canute, which represents them as Braille characters for the blind programmer/user. You can simulate this output visually by opening a terminal window and setting it to 40x9.

The raspi-config application would be useful, especially for our less Linux experienced Canute users. However only items 3--9 are visable when in 40x9. This, I assume, is because there are blank lines at the bottom which, when written to the terminal, bump the rest of the options up so the top ones are not visible.

Basic solution: Remove the blank lines at the bottom of raspi-config. It would still obscure the menu title, but that's OK, and it would obviously not work for any sub-menu that had more than nine options. But it would be a big improvement.

Proper solution: Have it fit into the available space, then pan up and down through the options (like midnight commander or most other TUI apps do) within that space.

I appreciate that a nine line high terminal is an unusual case, but the Canute does have the most lines of any Braille display on the market right now. We are building all manner of applications to help blind developers get on in their careers and this small change could make a big difference for the usability of Canute+Pi.

Thanks,

Ed

XECDesign commented 1 year ago

I had a quick look at making whiptail do the right thing, but had no luck. I'd take a look at a PR, but I don't think whiptail is suitable for this.

This would probably work better as a dedicated application, rather than a feature of raspi-config.