undo font2
This commit is contained in:
parent
fe4f097307
commit
0434ad857b
|
@ -6,12 +6,6 @@
|
||||||
* font: see http://freedesktop.org/software/fontconfig/fontconfig-user.html
|
* font: see http://freedesktop.org/software/fontconfig/fontconfig-user.html
|
||||||
*/
|
*/
|
||||||
static char *font = "Liberation Mono:pixelsize=12:antialias=true:autohint=true";
|
static char *font = "Liberation Mono:pixelsize=12:antialias=true:autohint=true";
|
||||||
/* Spare fonts */
|
|
||||||
static char *font2[] = {
|
|
||||||
/* "Inconsolata for Powerline:pixelsize=12:antialias=true:autohint=true", */
|
|
||||||
/* "Hack Nerd Font Mono:pixelsize=11:antialias=true:autohint=true", */
|
|
||||||
};
|
|
||||||
|
|
||||||
static int borderpx = 2;
|
static int borderpx = 2;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
101
x.c
101
x.c
|
@ -157,8 +157,6 @@ static void xhints(void);
|
||||||
static int xloadcolor(int, const char *, Color *);
|
static int xloadcolor(int, const char *, Color *);
|
||||||
static int xloadfont(Font *, FcPattern *);
|
static int xloadfont(Font *, FcPattern *);
|
||||||
static void xloadfonts(const char *, double);
|
static void xloadfonts(const char *, double);
|
||||||
static int xloadsparefont(FcPattern *, int);
|
|
||||||
static void xloadsparefonts(void);
|
|
||||||
static void xunloadfont(Font *);
|
static void xunloadfont(Font *);
|
||||||
static void xunloadfonts(void);
|
static void xunloadfonts(void);
|
||||||
static void xsetenv(void);
|
static void xsetenv(void);
|
||||||
|
@ -308,7 +306,6 @@ zoomabs(const Arg *arg)
|
||||||
{
|
{
|
||||||
xunloadfonts();
|
xunloadfonts();
|
||||||
xloadfonts(usedfont, arg->f);
|
xloadfonts(usedfont, arg->f);
|
||||||
xloadsparefonts();
|
|
||||||
cresize(0, 0);
|
cresize(0, 0);
|
||||||
redraw();
|
redraw();
|
||||||
xhints();
|
xhints();
|
||||||
|
@ -1053,101 +1050,6 @@ xloadfonts(const char *fontstr, double fontsize)
|
||||||
FcPatternDestroy(pattern);
|
FcPatternDestroy(pattern);
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
|
||||||
xloadsparefont(FcPattern *pattern, int flags)
|
|
||||||
{
|
|
||||||
FcPattern *match;
|
|
||||||
FcResult result;
|
|
||||||
|
|
||||||
match = FcFontMatch(NULL, pattern, &result);
|
|
||||||
if (!match) {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!(frc[frclen].font = XftFontOpenPattern(xw.dpy, match))) {
|
|
||||||
FcPatternDestroy(match);
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
frc[frclen].flags = flags;
|
|
||||||
/* Believe U+0000 glyph will present in each default font */
|
|
||||||
frc[frclen].unicodep = 0;
|
|
||||||
frclen++;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
xloadsparefonts(void)
|
|
||||||
{
|
|
||||||
FcPattern *pattern;
|
|
||||||
double sizeshift, fontval;
|
|
||||||
int fc;
|
|
||||||
char **fp;
|
|
||||||
|
|
||||||
if (frclen != 0)
|
|
||||||
die("can't embed spare fonts. cache isn't empty");
|
|
||||||
|
|
||||||
/* Calculate count of spare fonts */
|
|
||||||
fc = sizeof(font2) / sizeof(*font2);
|
|
||||||
if (fc == 0)
|
|
||||||
return;
|
|
||||||
|
|
||||||
/* Allocate memory for cache entries. */
|
|
||||||
if (frccap < 4 * fc) {
|
|
||||||
frccap += 4 * fc - frccap;
|
|
||||||
frc = xrealloc(frc, frccap * sizeof(Fontcache));
|
|
||||||
}
|
|
||||||
|
|
||||||
for (fp = font2; fp - font2 < fc; ++fp) {
|
|
||||||
|
|
||||||
if (**fp == '-')
|
|
||||||
pattern = XftXlfdParse(*fp, False, False);
|
|
||||||
else
|
|
||||||
pattern = FcNameParse((FcChar8 *)*fp);
|
|
||||||
|
|
||||||
if (!pattern)
|
|
||||||
die("can't open spare font %s\n", *fp);
|
|
||||||
|
|
||||||
if (defaultfontsize > 0) {
|
|
||||||
sizeshift = usedfontsize - defaultfontsize;
|
|
||||||
if (sizeshift != 0 &&
|
|
||||||
FcPatternGetDouble(pattern, FC_PIXEL_SIZE, 0, &fontval) ==
|
|
||||||
FcResultMatch) {
|
|
||||||
fontval += sizeshift;
|
|
||||||
FcPatternDel(pattern, FC_PIXEL_SIZE);
|
|
||||||
FcPatternDel(pattern, FC_SIZE);
|
|
||||||
FcPatternAddDouble(pattern, FC_PIXEL_SIZE, fontval);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
FcPatternAddBool(pattern, FC_SCALABLE, 1);
|
|
||||||
|
|
||||||
FcConfigSubstitute(NULL, pattern, FcMatchPattern);
|
|
||||||
XftDefaultSubstitute(xw.dpy, xw.scr, pattern);
|
|
||||||
|
|
||||||
if (xloadsparefont(pattern, FRC_NORMAL))
|
|
||||||
die("can't open spare font %s\n", *fp);
|
|
||||||
|
|
||||||
FcPatternDel(pattern, FC_SLANT);
|
|
||||||
FcPatternAddInteger(pattern, FC_SLANT, FC_SLANT_ITALIC);
|
|
||||||
if (xloadsparefont(pattern, FRC_ITALIC))
|
|
||||||
die("can't open spare font %s\n", *fp);
|
|
||||||
|
|
||||||
FcPatternDel(pattern, FC_WEIGHT);
|
|
||||||
FcPatternAddInteger(pattern, FC_WEIGHT, FC_WEIGHT_BOLD);
|
|
||||||
if (xloadsparefont(pattern, FRC_ITALICBOLD))
|
|
||||||
die("can't open spare font %s\n", *fp);
|
|
||||||
|
|
||||||
FcPatternDel(pattern, FC_SLANT);
|
|
||||||
FcPatternAddInteger(pattern, FC_SLANT, FC_SLANT_ROMAN);
|
|
||||||
if (xloadsparefont(pattern, FRC_BOLD))
|
|
||||||
die("can't open spare font %s\n", *fp);
|
|
||||||
|
|
||||||
FcPatternDestroy(pattern);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
xunloadfont(Font *f)
|
xunloadfont(Font *f)
|
||||||
{
|
{
|
||||||
|
@ -1245,9 +1147,6 @@ xinit(int cols, int rows)
|
||||||
usedfont = (opt_font == NULL)? font : opt_font;
|
usedfont = (opt_font == NULL)? font : opt_font;
|
||||||
xloadfonts(usedfont, 0);
|
xloadfonts(usedfont, 0);
|
||||||
|
|
||||||
/* spare fonts */
|
|
||||||
xloadsparefonts();
|
|
||||||
|
|
||||||
/* colors */
|
/* colors */
|
||||||
xw.cmap = XDefaultColormap(xw.dpy, xw.scr);
|
xw.cmap = XDefaultColormap(xw.dpy, xw.scr);
|
||||||
xloadcols();
|
xloadcols();
|
||||||
|
|
Loading…
Reference in New Issue