My mother works as an IT consultant in the Bay Area (it’s a pretty rad story, she taught me my computing fundamentals as a kid but could never break into the industry due to its biases and such, until ten years ago after my folks relocated to the Bay Area during a tumultuous time for all of us. I stayed in Seattle and broke into tech a few years later).
She just handed-me-down a glorious Dell XPS 13, which I immediately installed my standard Arch Linux + Awesome WM dev environment on.
Hmm. Beautiful screen, but I can’t see anything. I squinted through the Arch install process, but when I got my window manager and favorite dev tools up-and-running, something needed to be done.
Now, it turns out that I really didn’t need to do this and it was just a fun exercise: https://wiki.archlinux.org/index.php/HiDPI
This code scales the workspace and window decorations — I need to write a similar function for the menus. It assumes that a theme’s font will be stored in a variable theme.font in the format “fontname 7”, which is what I found to be the case in the Arch theme. I didn’t do any other checking or testing. Without further ado, here’s what I added to my ~/.config/rc.lua:
local theme_name = "arch" local function scale_theme_font() local theme = awful.util.get_themes_dir() .. theme_name .. "/theme.lua" local theme_config = gears.protected_call(dofile, theme) local fs_start, fs_end = string.find(theme_config.font, "%d+$") local scaled_fontsize = tonumber(string.sub(theme_config.font, fs_start, fs_end)) + 5 local scaled_font = string.sub(theme_config.font, 0, (fs_start-1)) .. tostring(scaled_fontsize) theme_config.font = scaled_font return theme_config end local theme = scale_theme_font() beautiful.init(theme)