;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; 
;;; banners.el--
;;;     banners for PGLITE and Mariposa source code
;;;
;;; Copyright (c) 1994, Regents of the University of California
;;; 
;;;
;;; For uniformity and the appearance of good engineering, every source file
;;; has a standardized banner. To facilitate creating a new file, the following
;;; keyboard macros are available:
;;;
;;;    insert-banner-h     - for header files (.h's)
;;;    insert-banner-c     - for source files (.c's)
;;;    insert-banner-sh    - for shell scripts
;;;    insert-banner-mk    - for makefiles
;;;
;;; In addition, the following are available
;;;
;;;    insert-comments     - for comments of functions
;;;    insert-divider      - for dividing code into sections (if necessary)
;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;
; this is where the templates reside
;
(setq BANNER_DIR "/private/pglite/template/")

(fset 'insert-banner-h
   "\C-[<\C-[xbanner-h-msg-insert\C-m\C-n\C-n\C-f\C-f\C-f\C-[xmy-file-name\C-m\C-d\C-d\C-n\C-e")
(fset 'insert-banner-c
   "\C-[<\C-[xbanner-c-msg-insert\C-m\C-n\C-n\C-f\C-f\C-f\C-[xmy-file-name\C-m\C-d\C-d\C-n\C-e")
(fset 'insert-banner-sql
   "\C-[<\C-[xbanner-sql-msg-insert\C-m\C-n\C-n\C-f\C-f\C-f\C-[xmy-file-name\C-m\C-d\C-d\C-d\C-d\C-d\C-n\C-e")
(fset 'insert-banner-sh
   "\C-[<\C-[xbanner-sh-msg-insert\C-m\C-n\C-n\C-n\C-f\C-f\C-[xmy-file-name\C-m\C-d\C-d\C-d\C-n\C-e")
(fset 'insert-banner-mk
   "\C-[<\C-[xbanner-mk-msg-insert\C-m\C-n\C-n\C-n\C-e ")

(defun insert-comments ()
  (interactive)
  (insert-file (concat BANNER_DIR "comments")))
(defun insert-divider ()
  (interactive)
  (insert-file (concat BANNER_DIR "divider")))

;
; the following are supporting functions
;
(defun banner-h-msg-insert ()
  "Inserts a banner message for header (.h) files."
  (interactive)
  (insert-file (concat BANNER_DIR "banner.h")))
(defun banner-c-msg-insert ()
  "Inserts a banner message for C source (.c) files."
  (interactive)
  (insert-file (concat BANNER_DIR "banner.c")))
(defun banner-sql-msg-insert ()
  "Inserts a banner message for C source (.c) files."
  (interactive)
  (insert-file (concat BANNER_DIR "banner.sql")))
(defun banner-sh-msg-insert ()
  "Inserts a banner message for shell scripts."
  (interactive)
  (insert-file (concat BANNER_DIR "banner.sh")))
(defun banner-mk-msg-insert ()
  "Inserts a banner message for makefiles."
  (interactive)
  (insert-file (concat BANNER_DIR "banner.mk")))

(defun my-file-name ()
  "Inserts the file name of the buffer."
  (interactive)
  (insert (file-name-nondirectory (buffer-file-name))))



