will be padded to the left and/or the right side, according to the +align+
key. This is useful when you want to prevent the whole status line to shift
when value take more or less space between each iteration.
+ The value can also be a string. In this case, the width of the text given
+ by +min_width+ determines the minimum width of the block. This is useful
+ when you want to set a sensible minimum width regardless of which font you
+ are using, and at what particular size.
align::
Align text on the +center+ (default), +right+ or +left+ of the block, when
the minimum width of the latter, specified by the +min_width+ key, is not
}
------------------------------------------
+In the following example, the longest (widest) possible value of the block is
+used to set the minimum width:
+
+------------------------------------------
+{
+ "full_text": "CPU 4%",
+ "min_width": "CPU 100%",
+ "align": "left"
+}
+------------------------------------------
+
An example of a block which uses all possible entries follows:
*Example*:
} else {
ctx->block.align = ALIGN_CENTER;
}
+ } else if (strcasecmp(ctx->last_map_key, "min_width") == 0) {
+ i3String *text = i3string_from_utf8_with_length((const char *)val, len);
+ ctx->block.min_width = (uint32_t)predict_text_width(text);
+ i3string_free(text);
}
return 1;
}