diff options
author | Bruce Momjian <bruce@momjian.us> | 2006-09-07 00:10:46 +0000 |
---|---|---|
committer | Bruce Momjian <bruce@momjian.us> | 2006-09-07 00:10:46 +0000 |
commit | 8dc8f44f588d683ab0af8abb130a7711221f5e21 (patch) | |
tree | 2d5af8239a40a06580ead76d1a933476f3e05ead /src | |
parent | c84db61c083d26dfed8feaaa582aab8c336c797e (diff) | |
download | postgresql-8dc8f44f588d683ab0af8abb130a7711221f5e21.tar.gz postgresql-8dc8f44f588d683ab0af8abb130a7711221f5e21.zip |
Update Emacs/vim editor info.
Diffstat (limited to 'src')
-rw-r--r-- | src/tools/editors/emacs.samples | 78 | ||||
-rw-r--r-- | src/tools/editors/vim.samples | 18 |
2 files changed, 96 insertions, 0 deletions
diff --git a/src/tools/editors/emacs.samples b/src/tools/editors/emacs.samples new file mode 100644 index 00000000000..a4d00bedc4f --- /dev/null +++ b/src/tools/editors/emacs.samples @@ -0,0 +1,78 @@ +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; +;;; This file contains several examples of how to set up emacs and/or xemacs +;;; to edit PostgreSQL code. +;;; +;;; Whichever set you choose would go in your .emacs file or equivalent. +;;; +;;; You only need one of these. +;;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +;;; This set is known to work with old versions of emacs + +(setq auto-mode-alist + (cons '("\\(postgres\\|pgsql\\).*\\.[ch]\\'" . pgsql-c-mode) + auto-mode-alist)) +(setq auto-mode-alist + (cons '("\\(postgres\\|pgsql\\).*\\.cc\\'" . pgsql-c-mode) + auto-mode-alist)) + +(defun pgsql-c-mode () + ;; sets up formatting for PostgreSQL C code + (interactive) + (c-mode) + (setq-default tab-width 4) + (c-set-style "bsd") ; set c-basic-offset to 4, plus other stuff + (c-set-offset 'case-label '+) ; tweak case indent to match PG custom + (setq indent-tabs-mode t)) ; make sure we keep tabs when indenting + + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +;;; Similar approach, known to work with xemacs +;;; Use of a named style makes it easy to use the style elsewhere + +(c-add-style "pgsql" + '("bsd" + (indent-tabs-mode . t) + (c-basic-offset . 4) + (tab-width . 4) + (c-offsets-alist . + ((case-label . +))) + ) + nil ) ; t = set this mode, nil = don't + +(defun pgsql-c-mode () + (c-mode) + (c-set-style "pgsql") +) + +(setq auto-mode-alist + (cons '("\\(postgres\\|pgsql\\).*\\.[chyl]\\'" . pgsql-c-mode) + auto-mode-alist)) +(setq auto-mode-alist + (cons '("\\(postgres\\|pgsql\\).*\\.cc\\'" . pgsql-c-mode) + auto-mode-alist)) + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +;;; Slightly different approach - use a hook instead of a mode + +(add-hook 'c-mode-hook + (function + (lambda nil + (if (string-match "pgsql" buffer-file-name) + (progn + (c-set-style "bsd") + (setq c-basic-offset 4) + (setq tab-width 4) + (c-set-offset 'case-label '+) + (setq indent-tabs-mode t) + ) + )))) + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; diff --git a/src/tools/editors/vim.samples b/src/tools/editors/vim.samples new file mode 100644 index 00000000000..210d9a360aa --- /dev/null +++ b/src/tools/editors/vim.samples @@ -0,0 +1,18 @@ + +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" +" These settings are appropriate for editing PostgreSQL code with vim +" +" You would copy this into your .vimrc or equivalent +" +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" + +:if match(getcwd(), "/pgsql") >=0 || match(getcwd(), "/postgresql") >= 0 + +: set cinoptions=(0 +: set tabstop=4 +: set shiftwidth=4 + +:endif + +""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" |