aboutsummaryrefslogtreecommitdiff
path: root/man/man7/face.html
blob: db220326d8314b53ea0112501fb9b6f00f695e9c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
<head>
<title>face(7) - Plan 9 from User Space</title>
<meta content="text/html; charset=utf-8" http-equiv=Content-Type>
</head>
<body bgcolor=#ffffff>
<table border=0 cellpadding=0 cellspacing=0 width=100%>
<tr height=10><td>
<tr><td width=20><td>
<tr><td width=20><td><b>FACE(7)</b><td align=right><b>FACE(7)</b>
<tr><td width=20><td colspan=2>
    <br>
<p><font size=+1><b>NAME     </b></font><br>

<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>

    face &ndash; face files<br>
    
</table>
<p><font size=+1><b>DESCRIPTION     </b></font><br>

<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>

    The directories <tt><font size=+1>/usr/$user/lib/face</font></tt> and <tt><font size=+1>/lib/face</font></tt> contain a hierarchy
    of images of people. In those directories are subdirectories named
    by the sizes of the corresponding image files: <tt><font size=+1>48x48x1</font></tt> (48 by
    48 pixels, one bit per pixel); <tt><font size=+1>48x48x2</font></tt> (48 by 48 pixels, two (grey)
    bits per pixel); <tt><font size=+1>48x48x4</font></tt> (48 by 48
    pixels, four (grey) bits per pixel); <tt><font size=+1>48x48x8</font></tt> (48 by 48 pixels,
    eight (color-mapped) bits per pixel); <tt><font size=+1>512x512x8</font></tt> (512 by 512 pixels,
    eight (color-mapped) bits per pixel); <tt><font size=+1>512x512x24</font></tt> (512 by 512 pixels,
    twenty-four bits per pixel (3 times 8 bits per color)). The large
    files serve no special purpose; they are stored as
    images (see <a href="../man7/image.html"><i>image</i>(7)</a>). The small files are the &#8216;icons&#8217; displayed
    by <tt><font size=+1>faces</font></tt> and <tt><font size=+1>seemail</font></tt> (see Plan 9&#8217;s <i>faces</i>(1)); for depths less
    than 4, their format is special. 
    <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
    
    One- and two-bit deep icons are stored as text, one line of the
    file to one scan line of display. Each line is divided into 8-bit,
    16-bit, or 32-bit big-endian words, stored as a list of comma-separated
    hexadecimal C constants, such as:<br>
    
    <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>

        <tt><font size=+1>0x9200, 0x1bb0, 0x003e,<br>
        
        <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
        </font></tt>
        
    </table>
    This odd format is historical and the programs that read it are
    somewhat forgiving about blanks and the need for commas. 
    <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
    
    The files <tt><font size=+1>lib/face/*/.dict</font></tt> hold a correspondence between users
    at machines and face files. The format is<br>
    
    <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>

        <i>machine</i>/<i>user directory</i>/<i>file</i>.<i>ver <br>
        
        <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
        </i>
        
    </table>
    The <i>machine</i> is the domain name of the machine sending the message,
    and <i>user</i> the name of the user sending it. The <i>directory</i> is a further
    subdirectory of (say) <tt><font size=+1>/lib/face/48x48x1</font></tt>, named by a single letter
    corresponding to the first character of the user names. The <i>file</i>
    is the name of the file, typically but not
    always the user name, and <i>ver</i> is a number to distinguish different
    images, for example to distinguish the image for Bill Gates from
    the image for Bill Joy, both of which might otherwise be called
    <tt><font size=+1>b/bill</font></tt>. For example, Bill Gates might be represented by the line<br>
    
    <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>

        <tt><font size=+1>microsoft.com/bill b/bill.1<br>
        
        <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
        </font></tt>
        
    </table>
    If multiple entries exist for a user in the various <tt><font size=+1>.dict</font></tt> files,
    <i>faces</i> chooses the highest pixel size less than or equal to that
    of the display on which it is running. 
    <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
    
    Finally, or rather firstly, the file <tt><font size=+1>/lib/face/.machinelist</font></tt> contains
    a list of machine/domain pairs, one per line, to map any of a
    set of machines to a single domain name to be looked up in the
    <tt><font size=+1>.dict</font></tt> files. The machine name may be a regular expression, so
    for example the entry<br>
    
    <table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>

        <tt><font size=+1>.*research\.bell&#8722;labs\.com &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;astro<br>
        
        <table border=0 cellpadding=0 cellspacing=0><tr height=5><td></table>
        </font></tt>
        
    </table>
    maps any of the machines in Bell Labs Research into the shorthand
    name <tt><font size=+1>astro</font></tt>, which then appears as a domain name in the <tt><font size=+1>.dict</font></tt> files.<br>
    
</table>
<p><font size=+1><b>SEE ALSO     </b></font><br>

<table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>

    <a href="../man1/mail.html"><i>mail</i>(1)</a>, <a href="../man1/tweak.html"><i>tweak</i>(1)</a>, <a href="../man7/image.html"><i>image</i>(7)</a><br>
    
</table>

<td width=20>
<tr height=20><td>
</table>
<!-- TRAILER -->
<table border=0 cellpadding=0 cellspacing=0 width=100%>
<tr height=15><td width=10><td><td width=10>
<tr><td><td>
<center>
<a href="../../"><img src="../../dist/spaceglenda100.png" alt="Space Glenda" border=1></a>
</center>
</table>
<!-- TRAILER -->
</body></html>