There is a program to edit X fonts. It is called "xfed", and is found in "xcontrib": attach xcontrib /mit/xcontrib/${hosttype}bin/xfed (file) The file should be a font file in bdf format. You can find existing files in /mit/x11/src/fonts/bdf. For example, the cursor fonts (which might be a good place to start from) are in /mit/x11/src/fonts/bdf/misc/cursor.bdf. Once you have edited the font to look like you want, you need to compile it to snf form (the snf format is machine dependent, so you must do this for each machine you will use the fonts on). Use the program "bdftosnf" to do this: bdftosnf -t file.bdf > file.snf Then put the .snf file (or files, if there is more than one font) into a directory and run "mkfontdir" in it. This creates a file called "fonts.dir" which the X server will read to find out which files contain which fonts. You can use "xset" to tell the X server where to look for fonts: xset fp+ (name of directory) The directory and files must be world readable. If you come up with a font that might be of general interest, I can install it in "xcontrib". The bdf file format is human readable; you will want to edit it a bit before using it. A line in the bdf file contains the name of the field and its value (e.g. "FONT cursor" says that this file has a font named "cursor"). Fields you will want to change: FONT name of font (this should be unique) ENCODING The numeric value of the character. You should set these to values that correspond to letters or other printable characters. (This field actually has two numbers; leave the first one as "-1".) Once you have set your font path to conain your font, you can use @font in zwgc to print characters from it: @(@font(mysymbols)a) prints symbol number 98 in the font named "mysymbols". The @() around this is to make it return to the orignal font.