xref: /plan9-contrib/sys/src/cmd/acme/fns.h (revision 588d0145e19f8596f2f4442d05dd8a9eda147983)
159cc4ca5SDavid du Colombier #pragma	varargck	argpos	warning	2
259cc4ca5SDavid du Colombier 
359cc4ca5SDavid du Colombier void	warning(Mntdir*, char*, ...);
459cc4ca5SDavid du Colombier 
559cc4ca5SDavid du Colombier #define	fbufalloc()	emalloc(BUFSIZE)
659cc4ca5SDavid du Colombier #define	fbuffree(x)	free(x)
759cc4ca5SDavid du Colombier 
87dd7cddfSDavid du Colombier void	plumblook(Plumbmsg*m);
97dd7cddfSDavid du Colombier void	plumbshow(Plumbmsg*m);
107dd7cddfSDavid du Colombier void	putsnarf(void);
117dd7cddfSDavid du Colombier void	getsnarf(void);
127dd7cddfSDavid du Colombier int	tempfile(void);
137dd7cddfSDavid du Colombier void	scrlresize(void);
147dd7cddfSDavid du Colombier Font*	getfont(int, int, char*);
157dd7cddfSDavid du Colombier char*	getarg(Text*, int, int, Rune**, int*);
167dd7cddfSDavid du Colombier char*	getbytearg(Text*, int, int, char**);
17219b2ee8SDavid du Colombier void	new(Text*, Text*, Text*, int, int, Rune*, int);
1859cc4ca5SDavid du Colombier void	undo(Text*, Text*, Text*, int, int, Rune*, int);
19671dfc47SDavid du Colombier char*	getname(Text*, Text*, Rune*, int, int);
20219b2ee8SDavid du Colombier void	scrsleep(uint);
21219b2ee8SDavid du Colombier void	savemouse(Window*);
22*588d0145SDavid du Colombier int	restoremouse(Window*);
237dd7cddfSDavid du Colombier void	clearmouse(void);
2459cc4ca5SDavid du Colombier void	allwindows(void(*)(Window*, void*), void*);
2559cc4ca5SDavid du Colombier uint loadfile(int, uint, int*, int(*)(void*, uint, Rune*, int), void*);
26*588d0145SDavid du Colombier void	movetodel(Window*);
277dd7cddfSDavid du Colombier 
284fec87e5SDavid du Colombier Window*	errorwin(Mntdir*, int);
29673c3d8aSDavid du Colombier Window*	errorwinforwin(Window*);
307dd7cddfSDavid du Colombier Runestr cleanrname(Runestr);
3159cc4ca5SDavid du Colombier void	run(Window*, char*, Rune*, int, int, char*, char*, int);
327dd7cddfSDavid du Colombier void fsysclose(void);
33219b2ee8SDavid du Colombier void	setcurtext(Text*, int);
34219b2ee8SDavid du Colombier int	isfilec(Rune);
357dd7cddfSDavid du Colombier void	rxinit(void);
367dd7cddfSDavid du Colombier int rxnull(void);
377dd7cddfSDavid du Colombier Runestr	dirname(Text*, Rune*, int);
387dd7cddfSDavid du Colombier void	error(char*);
397dd7cddfSDavid du Colombier void	cvttorunes(char*, int, Rune*, int*, int*, int*);
40219b2ee8SDavid du Colombier void*	tmalloc(uint);
417dd7cddfSDavid du Colombier void	tfree(void);
427dd7cddfSDavid du Colombier void	killprocs(void);
437dd7cddfSDavid du Colombier void	killtasks(void);
44219b2ee8SDavid du Colombier int	runeeq(Rune*, uint, Rune*, uint);
457dd7cddfSDavid du Colombier int	ALEF_tid(void);
467dd7cddfSDavid du Colombier void	iconinit(void);
47219b2ee8SDavid du Colombier Timer*	timerstart(int);
48219b2ee8SDavid du Colombier void	timerstop(Timer*);
497dd7cddfSDavid du Colombier void	timercancel(Timer*);
507dd7cddfSDavid du Colombier void	timerinit(void);
51219b2ee8SDavid du Colombier void	cut(Text*, Text*, Text*, int, int, Rune*, int);
52219b2ee8SDavid du Colombier void	paste(Text*, Text*, Text*, int, int, Rune*, int);
53219b2ee8SDavid du Colombier void	get(Text*, Text*, Text*, int, int, Rune*, int);
54219b2ee8SDavid du Colombier void	put(Text*, Text*, Text*, int, int, Rune*, int);
5559cc4ca5SDavid du Colombier void	putfile(File*, int, int, Rune*, int);
56219b2ee8SDavid du Colombier void	fontx(Text*, Text*, Text*, int, int, Rune*, int);
57219b2ee8SDavid du Colombier int	isalnum(Rune);
58219b2ee8SDavid du Colombier void	execute(Text*, uint, uint, int, Text*);
59219b2ee8SDavid du Colombier int	search(Text*, Rune*, uint);
60219b2ee8SDavid du Colombier void	look3(Text*, uint, uint, int);
6159cc4ca5SDavid du Colombier void	editcmd(Text*, Rune*, uint);
62219b2ee8SDavid du Colombier uint	min(uint, uint);
63219b2ee8SDavid du Colombier uint	max(uint, uint);
64219b2ee8SDavid du Colombier Window*	lookfile(Rune*, int);
65219b2ee8SDavid du Colombier Window*	lookid(int, int);
667dd7cddfSDavid du Colombier char*	runetobyte(Rune*, int);
677dd7cddfSDavid du Colombier Rune*	bytetorune(char*, int*);
687dd7cddfSDavid du Colombier void	fsysinit(void);
69219b2ee8SDavid du Colombier Mntdir*	fsysmount(Rune*, int, Rune**, int);
703df12bc6SDavid du Colombier void		fsysincid(Mntdir*);
71219b2ee8SDavid du Colombier void		fsysdelid(Mntdir*);
727dd7cddfSDavid du Colombier Xfid*		respond(Xfid*, Fcall*, char*);
73219b2ee8SDavid du Colombier int		rxcompile(Rune*);
747dd7cddfSDavid du Colombier int		rgetc(void*, uint);
757dd7cddfSDavid du Colombier int		tgetc(void*, uint);
76219b2ee8SDavid du Colombier int		isaddrc(int);
777dd7cddfSDavid du Colombier int		isregexc(int);
787dd7cddfSDavid du Colombier void *emalloc(uint);
7959cc4ca5SDavid du Colombier void *erealloc(void*, uint);
8059cc4ca5SDavid du Colombier char	*estrdup(char*);
8159cc4ca5SDavid du Colombier Range		address(Mntdir*, Text*, Range, Range, void*, uint, uint, int (*)(void*, uint),  int*, uint*);
8259cc4ca5SDavid du Colombier int		rxexecute(Text*, Rune*, uint, uint, Rangeset*);
837dd7cddfSDavid du Colombier int		rxbexecute(Text*, uint, Rangeset*);
84d9306527SDavid du Colombier Window*	makenewwindow(Text *t);
85219b2ee8SDavid du Colombier int	expand(Text*, uint, uint, Expand*);
867dd7cddfSDavid du Colombier Rune*	skipbl(Rune*, int, int*);
877dd7cddfSDavid du Colombier Rune*	findbl(Rune*, int, int*);
88e288d156SDavid du Colombier char*	edittext(Window*, int, Rune*, int);
894fec87e5SDavid du Colombier void		flushwarnings(void);
90219b2ee8SDavid du Colombier 
917dd7cddfSDavid du Colombier #define	runemalloc(a)		(Rune*)emalloc((a)*sizeof(Rune))
9259cc4ca5SDavid du Colombier #define	runerealloc(a, b)	(Rune*)erealloc((a), (b)*sizeof(Rune))
93219b2ee8SDavid du Colombier #define	runemove(a, b, c)	memmove((a), (b), (c)*sizeof(Rune))
94