Mercurial > emacs
annotate lib-src/vcdiff @ 52242:f5ada28bb9f0
Patch by Michael Mauger <mmaug@yahoo.com>
Version 1.8.0 of sql-mode.
Simplify selection of SQL products to define highlighting and
interactive mode. Includes detailed instructions on adding
support for new products.
* sql.el (sql-product): New variable. Identifies SQL product for
use in highlighting and interactive mode.
(sql-interactive-product): New variable. SQL product for
sql-interactive-mode.
(sql-product-support): New variable. Specifies product-specific
parameters to drive highlighting and interactive mode.
(sql-imenu-generic-expression): Add more object types.
(sql-sqlite-options): Correct comment.
(sql-ms-program): Use "osql" rather than "isql".
(sql-prompt-regexp, sql-prompt-length): Update comment.
(sql-mode-menu): Add "Start SQLi session" entry. Replace
Highlighting submenu with Product menu. Fix Send Region entry.
(sql-mode-abbrev-table): Add abbreviations. Support of
SYSTEM-FLAG on define-abbrev. Support was removed with last
check-in; it now handles older Emacsen without the SYSTEM-FLAG.
(sql-mode-font-lock-object-name): Add font-lock pattern for object
names.
(sql-mode-ansi-font-lock-keywords): Set as default value.
(sql-mode-oracle-font-lock-keywords): Set as default value.
Support Oracle 9i keywords.
(sql-mode-postgres-font-lock-keywords): Set as default value.
(sql-mode-linter-font-lock-keywords): Set as default value.
(sql-mode-ms-font-lock-keywords): New variable. Support Microsoft
SQLServer 2000.
(sql-mode-sybase-font-lock-keywords)
(sql-mode-interbase-font-lock-keywords)
(sql-mode-sqlite-font-lock-keywords)
(sql-mode-strong-font-lock-keywords)
(sql-mode-mysql-font-lock-keywords)
(sql-mode-db2-font-lock-keywords): New variables. Default to ANSI
keywords.
(sql-mode-font-lock-defaults): Update comment.
(sql-product-feature): New function. Returns feature associated
with a product from `sql-product-support' alist.
(sql-product-font-lock): New function. Set font-lock support
based on `sql-product'.
(sql-add-product-keywords): New function. Add font-lock rules to
product-specific keyword variables.
(sql-set-product): New function. Set `sql-product' and apply
appropriate font-lock highlighting.
(sql-highlight-product): New function. Set font-lock support
based on a product. Also set mode name to include product name.
(sql-highlight-ansi-keywords, sql-highlight-oracle-keywords)
(sql-highlight-postgres-keywords, sql-highlight-linter-keywords):
Use `sql-set-product'.
(sql-highlight-ms-keywords)
(sql-highlight-sybase-keywords)
(sql-highlight-interbase-keywords)
(sql-highlight-strong-keywords)
(sql-highlight-mysql-keywords)
(sql-highlight-sqlite-keywords)
(sql-highlight-db2-keywords): New functions. Use
`sql-set-product'.
(sql-get-login): Prompt in the same order as the tokens.
(sql-mode): Uses `sql-product-highlight' and
`sql-product-font-lock'.
(sql-product-interactive): New function. Common portions of
product-specific interactive mode wrappers.
(sql-interactive-mode): Rewritten to use product features.
(sql-oracle, sql-sybase, sql-informix, sql-sqlite, sql-mysql)
(sql-solid, sql-ingres, sql-ms, sql-postgres, sql-interbase)
(sql-db2, sql-linter): Use `sql-product-interactive'.
(sql-connect-oracle, sql-connect-sybase, sql-connect-informix)
(sql-connect-sqlite, sql-connect-mysql, sql-connect-solid)
(sql-connect-ingres, sql-connect-postgres)
(sql-connect-interbase, sql-connect-db2, sql-connect-linter): New
functions. Format command line parameters and invoke comint on
the appropriate interpreter. Code was in the corresponding
`sql-xyz' function before.
(sql-connect-ms): New function. Support -E argument to use
operating system credentials for authentication.
| author | Alex Schroeder <alex@gnu.org> |
|---|---|
| date | Mon, 18 Aug 2003 17:29:23 +0000 |
| parents | c8fb06423da0 |
| children | 695cf19ef79e d7ddb3e565de |
| rev | line source |
|---|---|
|
12507
da322c027bf0
Replace `#!/bin/sh' with `#! /bin/sh', for benefit of systems
Paul Eggert <eggert@twinsun.com>
parents:
5211
diff
changeset
|
1 #! /bin/sh |
| 928 | 2 # |
| 3 # Enhanced sccs diff utility for use with vc mode. | |
| 4 # This version is more compatible with rcsdiff(1). | |
| 5 # | |
| 36226 | 6 # Copyright (C) 1992, 1993, 1995, 1997, 2001 |
| 7 # Free Software Foundation, Inc. | |
| 8 # | |
| 9 # This file is part of GNU Emacs. | |
| 10 # | |
| 11 # GNU Emacs is free software; you can redistribute it and/or modify | |
| 12 # it under the terms of the GNU General Public License as published by | |
| 13 # the Free Software Foundation; either version 2, or (at your option) | |
| 14 # any later version. | |
| 15 # | |
| 16 # GNU Emacs is distributed in the hope that it will be useful, | |
| 17 # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 18 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 19 # GNU General Public License for more details. | |
| 20 # | |
| 21 # You should have received a copy of the GNU General Public License | |
| 22 # along with GNU Emacs; see the file COPYING. If not, write to the | |
| 23 # Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
| 24 # Boston, MA 02111-1307, USA. | |
| 25 # | |
| 26 # $Id: vcdiff,v 1.6 1997/01/01 05:33:42 eggert Exp $ | |
| 928 | 27 # |
| 28 | |
| 29 DIFF="diff" | |
| 5211 | 30 usage="$0: Usage: vcdiff [--brief] [-q] [-r<sid1>] [-r<sid2>] [diffopts] sccsfile..." |
| 928 | 31 |
|
16804
0ba6599135d6
(PATH): Add /usr/xpg4/bin,
Paul Eggert <eggert@twinsun.com>
parents:
12507
diff
changeset
|
32 PATH=$PATH:/usr/ccs/bin:/usr/sccs:/usr/xpg4/bin # common SCCS hangouts |
|
4653
8e72792f2d18
Append /usr/ccs/bin and /usr/sccs to PATH.
Paul Eggert <eggert@twinsun.com>
parents:
3933
diff
changeset
|
33 |
| 3933 | 34 echo= |
|
16804
0ba6599135d6
(PATH): Add /usr/xpg4/bin,
Paul Eggert <eggert@twinsun.com>
parents:
12507
diff
changeset
|
35 sid1= sid2= |
| 928 | 36 |
| 37 for f | |
| 38 do | |
| 39 case $f in | |
| 40 -*) | |
| 41 case $f in | |
| 5211 | 42 --brief) |
| 43 DIFF=cmp;; | |
| 3933 | 44 -q) |
| 45 echo=:;; | |
| 928 | 46 -r?*) |
| 47 case $sid1 in | |
|
16804
0ba6599135d6
(PATH): Add /usr/xpg4/bin,
Paul Eggert <eggert@twinsun.com>
parents:
12507
diff
changeset
|
48 '') |
| 928 | 49 sid1=$f |
| 50 ;; | |
| 51 *) | |
| 52 case $sid2 in | |
| 53 ?*) echo "$usage" >&2; exit 2 ;; | |
| 54 esac | |
| 55 sid2=$f | |
| 56 ;; | |
| 57 esac | |
| 58 ;; | |
| 59 *) | |
| 60 options="$options $f" | |
| 61 ;; | |
| 62 esac | |
| 63 shift | |
| 64 ;; | |
| 65 *) | |
| 66 break | |
| 67 ;; | |
| 68 esac | |
| 69 done | |
| 70 | |
| 71 case $# in | |
| 72 0) | |
| 73 echo "$usage" >&2 | |
| 74 exit 2 | |
| 75 esac | |
| 76 | |
| 77 | |
| 78 rev1= rev2= status=0 | |
| 79 trap 'status=2; exit' 1 2 13 15 | |
| 80 trap 'rm -f $rev1 $rev2 || status=2; exit $status' 0 | |
| 81 | |
| 82 for f | |
| 83 do | |
| 84 s=2 | |
| 85 | |
| 86 case $f in | |
| 87 s.* | */s.*) | |
| 88 if | |
| 89 rev1=/tmp/geta$$ | |
| 90 get -s -p -k $sid1 "$f" > $rev1 && | |
| 91 case $sid2 in | |
| 92 '') | |
| 93 workfile=`expr " /$f" : '.*/s.\(.*\)'` | |
| 94 ;; | |
| 95 *) | |
| 96 rev2=/tmp/getb$$ | |
| 97 get -s -p -k $sid2 "$f" > $rev2 | |
| 98 workfile=$rev2 | |
| 99 esac | |
| 100 then | |
| 3933 | 101 $echo $DIFF $options $sid1 $sid2 $workfile >&2 |
| 928 | 102 $DIFF $options $rev1 $workfile |
| 103 s=$? | |
| 104 fi | |
| 105 ;; | |
| 106 *) | |
| 107 echo "$0: $f is not an SCCS file" >&2 | |
| 108 esac | |
| 109 | |
| 110 if test $status -lt $s | |
| 111 then status=$s | |
| 112 fi | |
| 113 done |
