You are not logged in.
I added a bunch of status icons and a few other symbols to the excellent tamsyn font, 8x15 (with bold) and renamed it tamsynmod. It's in the aur https://aur.archlinux.org/packages.php?ID=53507 . It's just about perfect for my netbook screen. I made a similar font a while back called terminusmod. I like it and it works good in the terminal and dwm but didn't work in Awesome, gtk, etc. I decided to take another look at it and try to figure it out and basically what was happening is that I used bdfedit to draw the icons (because I can't figure out how to draw them in gbdfed), and it wasn't retaining all of the original characteristics of the font. On tamsynmod, I still drew the icons with bdfedit and then cut and pasted them into tamsyn with gbdfed and it seems to work fine now. Tamsynmod should work in Awesome, etc. now. I'll try to add some more sizes to tamsynmod and fix terminusmod in the next week or two. Here's a few screenshots.
Last edited by stlarch (2011-10-29 09:11:09)
Offline
Nice job.
Only problem I see, you seem to put the special symbols in the range of U+00A0 ~ U+00FF, but most of them are assigned characters in Unicode. This is not desirable, since characters in this range are widely used « such as U+00AB and U+00BB »
Does Unicode define some range specially for "custom symbols", where it is guaranteed that no defined characters will ever be? If we could use only those "not a character" code points for our custom symbols, there would be no conflicts, which would be nice.
Last edited by lolilolicon (2011-12-17 12:21:57)
This silver ladybug at line 28...
Offline
Hi lolilolicon. Tamsyn only contains the basic set of ascii characters for now. I'm not sure if you can use anything beyond 0xFF, which would be ideal. I'll play around with it when I have some time and see if I can figure any more out about it.
Offline
The icons in this font look and function beautifully, thank you!
Offline
The icons in this font look and function beautifully, thank you!
Thanks, glad you like it.
Here's a useful trick I discovered while making my DWM statusbar script:
If you're using @stlarch's Tamsynmod font and also want to use some Unicode symbols that the default "fixed" font supports, then specify both fonts in your DWM font definition:
static const char font[] = "-*-tamsynmod-medium-r-*-*-14-*-*-*-*-*-*-*" "," "-*-fixed-medium-r-*-*-14-*-*-*-*-*-*-*";
Cheers.
Offline
I thought I would add this for informational purposes.
Offline
I added the 7x12 and 7x14 and made a few other improvements. I'll probably do the 8x17 and 6x11 too soon.
Last edited by stlarch (2011-11-24 18:52:20)
Offline
Got the 6x11 done and updated the aur.
Offline
Hey stlarch, did you change the glyph codes in the latest update? A few of the glyphs I use in my DWM config now appear as boxes. Could you post a new screenshot with the glyph codes? Thanks.
Offline
Oh I see now, the 8x15r font has all the symbols, whereas the newer ones lack some. I used FontForge to open up the PCF files directly, since I couldn't install pcf2bdf from AUR successfully.
Offline
Hi sunaku. I finished up the 8x17, cleaned up some things and added a couple more icons. The smaller sizes don't have all of the icons that the 15 and 17 have. There just isn't enough space. I'll see what I can do.
Offline
I added more icons and tried to clean up a couple of the existing ones. I updated the aur. Here's some screenshots of the 11, 12, 14 and 15 (17 is the same as 15):
If you want to modify or add something else, it's pretty easy to do with gbdfed. Thanks to OK100's patch, you can now draw with it. Here's a link to a brief explanation of how to do it: https://bbs.archlinux.org/viewtopic.php?id=92895
Offline
I updated it again. I did some smaller ones and tried to do a variety of everything I could come up with. I got rid of the dice on the 15 and 17 and made some other changes. I aligned everything to the right to keep it more uniform. You may have to update your scripts. Each size turned out a little different. I did the best I could with them. Here's some screenshots of each size for reference (the screenshots are of termsyn, but they are the same):
Last edited by stlarch (2011-12-16 08:42:47)
Offline
Very nice @stlarch! I have only one suggestion: since we have to use Unicode to address these glyphs anyway, why not put them in the Private Use Area blocks instead of having them conflict with the Extended Latin charset?
Last edited by sunaku (2011-12-17 05:38:51)
Offline
Hey. It sounds good to me. Let me look into it and see what I can do.
Offline
I was experimenting with that idea this morning and I created two fonts called "stlarch" that only contain your status icons in the E000-F8FF private use area: stlarch-14.bdf and stlarch-16.bdf.
I'm able to use these fonts in DWM as follows:
static const char font[] =
"-*-stlarch-*-*-*-*-16-*-*-*-*-*-*-*"
","
"-*-fixed-medium-r-*-*-14-*-*-*-*-*-*-*"
;
Now, the stlarch font serves up the status icons from its private use range, and the fixed font serves up all other characters (which of course are not found in the stlarch font). Cheers
Offline
^^Ahh, I see. Awesome. Maybe I'll include something like the ones you made in the future. Thank you.^^
Offline
I was experimenting with that idea this morning and I created two fonts called "stlarch" that only contain your status icons in the E000-F8FF private use area: stlarch-14.bdf and stlarch-16.bdf.
I'm able to use these fonts in DWM as follows:
static const char font[] = "-*-stlarch-*-*-*-*-16-*-*-*-*-*-*-*" "," "-*-fixed-medium-r-*-*-14-*-*-*-*-*-*-*" ;
Now, the stlarch font serves up the status icons from its private use range, and the fixed font serves up all other characters (which of course are not found in the stlarch font). Cheers
How does one test with the stlarch font? After installing it I tired running urxvt like:
$ urxvt -fn "-*-stlarch-*-*-*-*-16-*-*-*-*-*-*-*"
Then in that term I tired:
$ echo -e "\xE000"
But wasn't able to see the icons, what am I missing?
Offline
On my system:
> xlsfonts | grep stlarch
-misc-stlarch-medium-r-normal--0-0-100-100-c-0-iso10646-1
-misc-stlarch-medium-r-normal--14-120-100-100-c-100-iso10646-1
-misc-stlarch-medium-r-normal--16-140-100-100-c-80-iso10646-1
> grep stlarch ~/.fonts/fonts.dir
stlarch-14.bdf -misc-stlarch-medium-r-normal--14-120-100-100-c-100-iso10646-1
stlarch-16.bdf -misc-stlarch-medium-r-normal--16-140-100-100-c-80-iso10646-1
> ls ~/.fonts/stlarch*bdf
/home/sunny/.fonts/stlarch-14.bdf
/home/sunny/.fonts/stlarch-16.bdf
> xset q | grep -A1 Font
Font Path:
/home/sunny/.fonts,/usr/share/fonts/misc/,/usr/share/fonts/TTF/,/usr/share/fonts/Type1/,/usr/share/fonts/100dpi/,/usr/share/fonts/75dpi/,built-ins
Perhaps the font wasn't installed correctly on your system?
Edit: I see now, I didn't give any installation instructions. Do this:
Download the fonts to your ~/.fonts directory and run:
mkfontdir ~/.fonts
xset +fp ~/.fonts
xset fp rehash
Now, any new applications you launch can use them.
Last edited by sunaku (2011-12-25 02:42:36)
Offline
This is what I have as well. Did you try my test above using urxvt -fn and echo -e "\xE000" ?
Offline
Yes, and this is what I see:
Plus all this output in the terminal where I ran urxt:
> urxvt -fn "-*-stlarch-*-*-*-*-16-*-*-*-*-*-*-*"
urxvt: unable to calculate font width for ':slant=0:weight=100:pixelsize=16:minspace=True:lang=ru', ignoring.
urxvt: unable to calculate font width for ':slant=0:weight=100:pixelsize=16:minspace=True:lang=ru', ignoring.
urxvt: unable to calculate font width for ':slant=0:weight=100:pixelsize=16:minspace=True:lang=ar', ignoring.
urxvt: unable to calculate font width for ':slant=0:weight=100:pixelsize=16:minspace=True:lang=el', ignoring.
urxvt: unable to calculate font width for ':slant=0:weight=100:pixelsize=16:minspace=True:lang=he', ignoring.
urxvt: unable to calculate font width for ':slant=0:weight=100:pixelsize=16:minspace=True:lang=tr', ignoring.
urxvt: unable to calculate font width for ':slant=0:weight=100:pixelsize=16:minspace=True:lang=se', ignoring.
urxvt: unable to calculate font width for ':slant=0:weight=100:pixelsize=16:minspace=True:lang=th', ignoring.
urxvt: unable to calculate font width for 'AR PL KaitiM GB:slant=0:weight=100:pixelsize=16:minspace=True', ignoring.
urxvt: unable to calculate font width for 'AR PL SungtiL GB:slant=0:weight=100:pixelsize=16:minspace=True', ignoring.
urxvt: unable to calculate font width for ':slant=0:weight=100:pixelsize=16:minspace=True:lang=zh', ignoring.
urxvt: unable to calculate font width for 'AR PL Mingti2L Big5:slant=0:weight=100:pixelsize=16:minspace=True', ignoring.
urxvt: unable to calculate font width for 'AR PL KaitiM Big5:slant=0:weight=100:pixelsize=16:minspace=True', ignoring.
urxvt: unable to calculate font width for 'Bitstream Vera Sans Mono:slant=0:weight=100:pixelsize=16:antialias=False:autohint=True:minspace=True', ignoring.
urxvt: unable to calculate font width for 'Courier New:slant=0:weight=100:pixelsize=16:antialias=False:autohint=True:minspace=True', ignoring.
urxvt: unable to calculate font width for 'Andale Mono:slant=0:weight=100:pixelsize=16:antialias=False:autohint=False:minspace=True', ignoring.
urxvt: unable to calculate font width for 'Arial Unicode MS:slant=0:weight=100:pixelsize=16:antialias=False:autohint=False:minspace=True', ignoring.
urxvt: unable to calculate font width for 'FreeMono:slant=0:weight=100:pixelsize=16:autohint=True:minspace=True', ignoring.
urxvt: unable to calculate font width for ':slant=0:weight=200:pixelsize=16:minspace=True:lang=ru', ignoring.
urxvt: unable to calculate font width for ':slant=0:weight=200:pixelsize=16:minspace=True:lang=ru', ignoring.
urxvt: unable to calculate font width for ':slant=0:weight=200:pixelsize=16:minspace=True:lang=ar', ignoring.
urxvt: unable to calculate font width for ':slant=0:weight=200:pixelsize=16:minspace=True:lang=el', ignoring.
urxvt: unable to calculate font width for ':slant=0:weight=200:pixelsize=16:minspace=True:lang=he', ignoring.
urxvt: unable to calculate font width for ':slant=0:weight=200:pixelsize=16:minspace=True:lang=tr', ignoring.
urxvt: unable to calculate font width for ':slant=0:weight=200:pixelsize=16:minspace=True:lang=se', ignoring.
urxvt: unable to calculate font width for ':slant=0:weight=200:pixelsize=16:minspace=True:lang=th', ignoring.
urxvt: unable to calculate font width for 'AR PL KaitiM GB:slant=0:weight=200:pixelsize=16:minspace=True', ignoring.
urxvt: unable to calculate font width for 'AR PL SungtiL GB:slant=0:weight=200:pixelsize=16:minspace=True', ignoring.
urxvt: unable to calculate font width for ':slant=0:weight=200:pixelsize=16:minspace=True:lang=zh', ignoring.
urxvt: unable to calculate font width for 'AR PL Mingti2L Big5:slant=0:weight=200:pixelsize=16:minspace=True', ignoring.
urxvt: unable to calculate font width for 'AR PL KaitiM Big5:slant=0:weight=200:pixelsize=16:minspace=True', ignoring.
urxvt: unable to calculate font width for 'Bitstream Vera Sans Mono:slant=0:weight=200:pixelsize=16:antialias=False:autohint=True:minspace=True', ignoring.
urxvt: unable to calculate font width for 'Courier New:slant=0:weight=200:pixelsize=16:antialias=False:autohint=True:minspace=True', ignoring.
urxvt: unable to calculate font width for 'Andale Mono:slant=0:weight=200:pixelsize=16:antialias=False:autohint=False:minspace=True', ignoring.
urxvt: unable to calculate font width for 'Arial Unicode MS:slant=0:weight=200:pixelsize=16:antialias=False:autohint=False:minspace=True', ignoring.
urxvt: unable to calculate font width for 'FreeMono:slant=0:weight=200:pixelsize=16:autohint=True:minspace=True', ignoring.
Offline
Yes this is what I am seeing. How does one display the icons? Do you have an example shell script you use with xsetroot?
Offline
I just emit the raw unicode chars into the config.h file for my tags and my layouts while setting my font appropriately.
My statusbar script uses dzen2, where I insert sm4tik's XBM status icons directly, so it doesn't use stlarch font.
Offline
While using stlarch I was not able to get the icons to output from a bash script, so I decided to test with tamsyn. I installed tamsyn-font 1.8-1. To test I loaded the font with:
$ urxvt -fn "-misc-tamsyn-medium-r-normal-*-15-*-*-*-*-*-iso8859-*"
and ran
$ for i in a{0..9}; do echo -e "${i}: \x$i"; done
a0:
a1: ¡
a2: ¢
a3: £
a4: ¤
a5: ¥
a6: ¦
a7: §
a8: ¨
a9:
What am I missing?
Offline
The stlarch font only defines a few glyphs in the Unicode Private Use Area. In short, it is useless by itself and must be combined with another font to give you BOTH icons and normal text. In DWM, you can specify multiple X fonts separated by commas: X will look for the glyphs in the first font and if it doesn't find them, it moves on to the next font. This way, stlarch will serve up its icon glyphs while the other combined font will serve up all other glyphs.
Offline
I understand this. As said, "I was not able to get the icons [from stlarch] to output from a bash script". I use the output of the bash script with xsetroot to set the status bar in dwm.
@stlarch - I don't understand why my test doesn't work with tamsym, any ideas?
Last edited by steve___ (2011-12-27 18:12:50)
Offline