I am creating a new conky config and I use some fonts with symbols as icons in the left side and the information I want to display at the right side. To align the font and the information, I use a negative voffset:
${if_existing /proc/net/route wlan0}
${goto 40}${font}${addr wlan0}${goto 125}${wireless_essid wlan0}${font}
${goto 40}Up${goto 60}${upspeed wlan0}${goto 110}Down${goto 145}${downspeed wlan0}${font}$
${voffset -28}${font Web Symbols:size=15}u${font}
${endif}
I repeat a number of times that "Web Symbols" font usage with the same negative voffset along the cong file. I expected the window to have - at maximum - 200px but it growed much bigger.
I made a few tests, removed the negative voffsets and found out that the Conky window has exactly the same size with or without the negative voffsets, leaving a huge amount of empty space in the bottom of the window. As far as I see it, the blank space in the end should be removed.
My most relevant window settings are these:
own_window_class Conky
own_window yes
own_window_type conky
own_window_argb_visual yes
own_window_transparent no
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
alignment top_right
gap_x 10
gap_y 10
minimum_size 200 200
maximum_width 200
border_margin 0
So, assuming I expect the window to have 200x200px (more than enough to show the visible information), the questions:
- Is this a bug, a feature or I am doing something wrong?
- Do you see a workaround to fix this problem?
Edit: Full conkyrc file
###########################
# - Conky settings - #
###########################
update_interval 1
total_run_times 0
net_avg_samples 1
cpu_avg_samples 1
if_up_strictness link
imlib_cache_size 0
double_buffer yes
no_buffers yes
format_human_readable
temperature_unit celsius
#####################
# - Text settings - #
#####################
use_xft yes
xftfont Bitstream Charter:size=9
override_utf8_locale yes
text_buffer_size 2048
#############################
# - Window specifications - #
#############################
own_window_class Conky
own_window yes
own_window_type desktop
own_window_argb_visual yes
own_window_transparent no
own_window_colour 000000
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
alignment top_right
gap_x 10
gap_y 10
minimum_size 200 200
maximum_width 200
default_bar_size 40 10
default_graph_size 40 10
draw_graph_borders no
#########################
# - Graphics settings - #
#########################
draw_shades no
default_color white
color0 FFFFFF
color1 5DA271
color2 D4A0A7
color3 6AE6BC
TEXT
#############
# - CLOCK - #
#############
${font Digital\-7:size=40}${time %H:%M:%S}${font}${color}
${goto 40}${font Digital\-7:size=15}${time %d %B %Y}${font}${color}
###################################
# - Host & Active wireless name - #
###################################
${goto 40}${color3}${nodename}${font}${color}
${voffset -35}${font In my room:size=15}${color0}R${font}${color}
###############
# - NETWORK - #
###############
${if_existing /proc/net/route wlan0}
${goto 40}${font}${color3}${addr wlan0}${goto 125}${color2}${wireless_essid wlan0}${font}${color}
${goto 40}${color1}Up${goto 60}${color2}${upspeed wlan0}${goto 110}${color1}Down${goto 145}${color2}${downspeed wlan0}${font}${color}
${voffset -28}${font Web Symbols:size=15}${color0}u${font}${color}
${endif}${if_existing /proc/net/route eth0}
${goto 40}${font}${color3}${addr eth0}${goto 125}${color2}${wireless_essid eth0}${font}${color}
${goto 40}${color1}Up${goto 60}${color2}${upspeed eth0}${goto 110}${color1}Down${goto 145}${color2}${downspeed eth0}${font}${color}
${voffset -28}${font Web Symbols:size=15}${color0}J${font}${color}
${endif}${if_existing /proc/net/route tun0}
${goto 40}${font}${color3}${addr tun0}${goto 125}${color2}${wireless_essid tun0}${font}${color}
${goto 40}${color1}Up${goto 60}${color2}${upspeed tun0}${goto 110}${color1}Down${goto 145}${color2}${downspeed tun0}${font}${color}
${voffset -28}${font Web Symbols:size=15}${color0}K${font}${color}
${endif}
As far as I saw, there's no way to prevent the empty space by the end of the window.
The best solution/workaround is to create an image of the size you want and use it as background, leaving Conky window transparent.