| 1 | ;;; -*-emacs-lisp-*- |
| 2 | |
| 3 | (skel-include "skelrc.c") |
| 4 | |
| 5 | (defun skelrc-mxd-header () |
| 6 | (if buffer-file-name |
| 7 | (file-name-sans-extension (file-name-nondirectory buffer-file-name))) |
| 8 | (skel-lookup 'mxd-header-name)) |
| 9 | |
| 10 | (setq skel-alist |
| 11 | (append |
| 12 | '((preamble . "[[prologue]][[includes]][[structures]]") |
| 13 | (prologue . "@mxd prologue \"[[header-name]].h\";\n\n") |
| 14 | (header-name . (skelrc-mxd-header)) |
| 15 | (c++-guard . "#ifdef __cplusplus\n extern \"C\" {\n#endif\n\n") |
| 16 | (includes . "[[includes-banner]]\n\n[[headers]]") |
| 17 | (includes-banner . (skelrc-banner "Header files")) |
| 18 | (headers . "") |
| 19 | (structures . "[[struct-banner]]\n\n@mxd {\n\n}\n\n") |
| 20 | (struct-banner . (skelrc-banner "Data structures")) |
| 21 | (postamble . "[[epilogue]]\n") |
| 22 | (epilogue . "\n@mxd epilogue;")) |
| 23 | skel-alist)) |