master
fns.h
ohmu
·
2026-09-23
1/*
2#pragma varargck argpos warning 2
3#pragma varargck argpos warningew 2
4*/
5
6void warning(Mntdir*, char*, ...);
7void warningew(Window*, Mntdir*, char*, ...);
8
9#define fbufalloc() emalloc(BUFSIZE)
10#define fbuffree(x) free(x)
11
12void plumblook(Plumbmsg *m);
13void plumbshow(Plumbmsg*m);
14void acmeputsnarf(void);
15void acmegetsnarf(void);
16int tempfile(void);
17void scrlresize(void);
18Font* getfont(int, int, char*);
19char* getarg(Text*, int, int, Rune**, int*);
20char* getbytearg(Text*, int, int, char**);
21void new(Text*, Text*, Text*, int, int, Rune*, int);
22void undo(Text*, Text*, Text*, int, int, Rune*, int);
23void scrsleep(uint);
24void savemouse(Window*);
25int restoremouse(Window*);
26void clearmouse(void);
27void allwindows(void(*)(Window*, void*), void*);
28uint loadfile(int, uint, int*, int(*)(void*, uint, Rune*, int), void*, DigestState*);
29void movetodel(Window*);
30
31Window* errorwin(Mntdir*, int);
32Window* errorwinforwin(Window*);
33Runestr cleanrname(Runestr);
34void run(Window*, char*, Rune*, int, int, char*, char*, int);
35void fsysclose(void);
36void setcurtext(Text*, int);
37int isfilec(Rune);
38void rxinit(void);
39int rxnull(void);
40Runestr dirname(Text*, Rune*, int);
41void error(char*);
42void cvttorunes(char*, int, Rune*, int*, int*, int*);
43void* tmalloc(uint);
44void tfree(void);
45void killprocs(void);
46void killtasks(void);
47int runeeq(Rune*, uint, Rune*, uint);
48int ALEF_tid(void);
49
50Image *tilebit(uint32_t tilebg, char *bgkey, uint32_t tilefg, char *fgkey);
51void iconinit(void);
52int ispastel(char *color);
53Timer* timerstart(int);
54void timerstop(Timer*);
55void timercancel(Timer*);
56void timerinit(void);
57void cut(Text*, Text*, Text*, int, int, Rune*, int);
58void paste(Text*, Text*, Text*, int, int, Rune*, int);
59void get(Text*, Text*, Text*, int, int, Rune*, int);
60void put(Text*, Text*, Text*, int, int, Rune*, int);
61void putfile(File*, int, int, Rune*, int);
62void fontx(Text*, Text*, Text*, int, int, Rune*, int);
63#undef isalnum
64#define isalnum acmeisalnum
65int isalnum(Rune);
66void execute(Text*, uint, uint, int, Text*);
67int search(Text*, Rune*, uint);
68void look3(Text*, uint, uint, int);
69void editcmd(Text*, Rune*, uint);
70uint min(uint, uint);
71uint max(uint, uint);
72Window* lookfile(Rune*, int);
73Window* lookid(int, int);
74char* runetobyte(Rune*, int);
75Rune* bytetorune(char*, int*);
76void fsysinit(void);
77Mntdir* fsysmount(Rune*, int, Rune**, int);
78void fsysdelid(Mntdir*);
79void fsysincid(Mntdir*);
80Xfid* respond(Xfid*, Fcall*, char*);
81int rxcompile(Rune*);
82int rgetc(void*, uint);
83int tgetc(void*, uint);
84int isaddrc(int);
85int isregexc(int);
86void *emalloc(uint);
87void *erealloc(void*, uint);
88char *estrdup(char*);
89Range address(uint, Text*, Range, Range, void*, uint, uint, int (*)(void*, uint), int*, uint*);
90int rxexecute(Text*, Rune*, uint, uint, Rangeset*);
91int rxbexecute(Text*, uint, Rangeset*);
92Window* makenewwindow(Text *t);
93int expand(Text*, uint, uint, Expand*);
94Rune* skipbl(Rune*, int, int*);
95Rune* findbl(Rune*, int, int*);
96char* edittext(Window*, int, Rune*, int);
97void flushwarnings(void);
98void startplumbing(void);
99long nlcount(Text*, long, long, long*);
100long nlcounttopos(Text*, long, long, long);
101
102Runestr runestr(Rune*, uint);
103Range range(int, int);
104
105#define runemalloc(a) (Rune*)emalloc((a)*sizeof(Rune))
106#define runerealloc(a, b) (Rune*)erealloc((a), (b)*sizeof(Rune))
107#define runemove(a, b, c) memmove((a), (b), (c)*sizeof(Rune))
108
109int ismtpt(char*);