Subversion Repositories planix.SVN

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 - 1
#include "a.h"
2
 
3
/*
4
 * Section 3 - page control (mostly irrelevant).
5
 */
6
 
7
/* page offset */
8
void
9
po(int o)
10
{
11
	nr(L(".o0"), getnr(L(".o")));
12
	nr(L(".o"), o);
13
}
14
 
15
void
16
r_po(int argc, Rune **argv)
17
{
18
	if(argc == 1){
19
		po(getnr(L(".o0")));
20
		return;
21
	}
22
	if(argv[1][0] == '+')
23
		po(getnr(L(".o"))+evalscale(argv[1]+1, 'v'));
24
	else if(argv[1][0] == '-')
25
		po(getnr(L(".o"))-evalscale(argv[1]+1, 'v'));
26
	else
27
		po(evalscale(argv[1], 'v'));
28
}
29
 
30
/* .ne - need vertical space */
31
/* .mk - mark current vertical place */
32
/* .rt - return upward */
33
 
34
void
35
t3init(void)
36
{
37
	nr(L(".o"), eval(L("1i")));
38
	nr(L(".o0"), eval(L("1i")));
39
	nr(L(".p"), eval(L("11i")));
40
 
41
	addreq(L("pl"), r_warn, -1);
42
	addreq(L("bp"), r_nop, -1);
43
	addreq(L("pn"), r_warn, -1);
44
	addreq(L("po"), r_po, -1);
45
	addreq(L("ne"), r_nop, -1);
46
	addreq(L("mk"), r_nop, -1);
47
	addreq(L("rt"), r_warn, -1);
48
}
49