-extern void manage(Window w, XWindowAttributes *wa);
-extern void unmanage(Client *c);
-extern Client *getclient(Window w);
-extern void focus(Client *c);
-extern void update_name(Client *c);
-extern void draw_client(Client *c);
-extern void resize(Client *c, Bool inc);
-extern void update_size(Client *c);
-extern Client *gettitle(Window w);
-extern void craise(Client *c);
-extern void lower(Client *c);
-extern void ckill(Arg *arg);
-extern void nextc(Arg *arg);
-extern void prevc(Arg *arg);
-extern void max(Arg *arg);
-extern void floating(Arg *arg);
-extern void tiling(Arg *arg);
-extern void ttrunc(Arg *arg);
-extern void tappend(Arg *arg);
-extern void view(Arg *arg);
-extern void zoom(Arg *arg);
-extern void gravitate(Client *c, Bool invert);
-
-/* draw.c */
-extern void drawtext(const char *text, Bool border);
-extern unsigned long initcolor(const char *colstr);
-extern void initfont(const char *fontstr);
-extern unsigned int textnw(char *text, unsigned int len);
-extern unsigned int textw(char *text);
-extern unsigned int texth(void);
-
-/* dev.c */
-extern void update_keys(void);
-extern void keypress(XEvent *e);
-extern void mresize(Client *c);
-extern void mmove(Client *c);
+void attach(Client *c); /* attaches c to global client list */
+void ban(Client *c); /* bans c */
+void configure(Client *c); /* send synthetic configure event */
+void detach(Client *c); /* detaches c from global client list */
+void focus(Client *c); /* focus c if visible && !NULL, or focus top visible */
+void killclient(const char *arg); /* kill sel nicely */
+void manage(Window w, XWindowAttributes *wa); /* manage new client */
+void resize(Client *c, int x, int y,
+ int w, int h, Bool sizehints); /* resize with given coordinates c*/
+void unban(Client *c); /* unbans c */
+void unmanage(Client *c); /* unmanage c */
+void updatesizehints(Client *c); /* update the size hint variables of c */
+void updatetitle(Client *c); /* update the name of c */
+
+/* event.c */
+void grabkeys(void); /* grab all keys defined in config.h */