%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
;ELC ;;; Compiled ;;; in Emacs version 25.2.1 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. ;;; This file does not contain utf-8 non-ASCII characters, ;;; and so can be loaded in Emacs versions earlier than 23. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\300\302!\210\300\303!\210\300\304!\210\300\305!\210\306\307\310\311\312\313\314\315\314\316& \210\317\320\321\322\323DD\324\325\326\314\307\327\330& \210\317\331\321\322\332DD\333\325\326\314\307\334\335& \210\317\336\321\322\337DD\340\325\326\314\307\327\330& \210\317\341\321\322\342DD\343\325\326\314\307\327\330& \210\317\344\321\322\345DD\346\312\347\325\350\314\307\327\351&\210\317\352\321\322\353DD\354\312\355\325\356\314\307\327\330&\210\357\360\361\362\363\364\325\365&\207" [require cl-lib comint custom thingatpt view custom-declare-group SQL nil "Running a SQL interpreter from within Emacs buffers." :version "20.4" :group languages processes custom-declare-variable sql-user funcall function #[0 "\300\207" [#1=""] 1 #1#] "Default username." :type string :safe stringp sql-password #[0 "\300\207" [#1#] 1 #1#] "Default password.\nIf you customize this, the value will be stored in your init\nfile. Since that is a plaintext file, this could be dangerous." :risky t sql-database #[0 "\300\207" [#1#] 1 #1#] "Default database." sql-server #[0 "\300\207" [#1#] 1 #1#] "Default server or host." sql-port #[0 "\300\207" [0] 1] "Default port for connecting to a MySQL or Postgres server." "24.1" number numberp sql-default-directory #[0 "\300\207" [nil] 1] "Default directory for SQL processes." "25.1" (choice (const nil) string) define-widget sql-login-params lazy "Widget definition of the login parameters list" :tag "Login Parameters" (set :tag "Login Parameters" (choice :tag "user" :value user (const user) (list :tag "Specify a default" (const user) (list :tag "Default" :inline t (const :default) string))) (const password) (choice :tag "server" :value server (const server) (list :tag "Specify a default" (const server) (list :tag "Default" :inline t (const :default) string)) (list :tag "file" (const :format #1# server) (const :format #1# :file) regexp) (list :tag "completion" (const :format #1# server) (const :format #1# :completion) (restricted-sexp :match-alternatives (listp stringp)))) (choice :tag "database" :value database (const database) (list :tag "Specify a default" (const database) (list :tag "Default" :inline t (const :default) string)) (list :tag "file" (const :format #1# database) (const :format #1# :file) regexp) (list :tag "completion" (const :format #1# database) (const :format #1# :completion) (restricted-sexp :match-alternatives (listp stringp)))) (const port))] 12) #@39 Product under `sql-interactive-mode'. (defvar sql-interactive-product nil (#$ . 2858)) #@66 Connection name if interactive session started by `sql-connect'. (defvar sql-connection nil (#$ . 2951)) #@5532 An alist of product specific configuration settings. Without an entry in this list a product will not be properly highlighted and will not support `sql-interactive-mode'. Each element in the list is in the following format: (PRODUCT FEATURE VALUE ...) where PRODUCT is the appropriate value of `sql-product'. The product name is then followed by FEATURE-VALUE pairs. If a FEATURE is not specified, its VALUE is treated as nil. FEATURE may be any one of the following: :name string containing the displayable name of the product. :free-software is the product Free (as in Freedom) software? :font-lock name of the variable containing the product specific font lock highlighting patterns. :sqli-program name of the variable containing the product specific interactive program name. :sqli-options name of the variable containing the list of product specific options. :sqli-login name of the variable containing the list of login parameters (i.e., user, password, database and server) needed to connect to the database. :sqli-comint-func function of two arguments, PRODUCT and OPTIONS, that will open a comint buffer and connect to the database. PRODUCT is the first argument to be passed to `sql-comint', and OPTIONS should be included in its second argument. The function should use the values of `sql-user', `sql-password', `sql-database', `sql-server' and `sql-port' to . Do product specific configuration of comint in this function. See `sql-comint-oracle' for an example of such a function. :list-all Command string or function which produces a listing of all objects in the database. If it's a cons cell, then the car produces the standard list of objects and the cdr produces an enhanced list of objects. What "enhanced" means is dependent on the SQL product and may not exist. In general though, the "enhanced" list should include visible objects from other schemas. :list-table Command string or function which produces a detailed listing of a specific database table. If its a cons cell, then the car produces the standard list and the cdr produces an enhanced list. :completion-object A function that returns a list of objects. Called with a single parameter--if nil then list objects accessible in the current schema, if not-nil it is the name of a schema whose objects should be listed. :completion-column A function that returns a list of columns. Called with a single parameter--if nil then list objects accessible in the current schema, if not-nil it is the name of a schema whose objects should be listed. :prompt-regexp regular expression string that matches the prompt issued by the product interpreter. :prompt-length length of the prompt on the line. :prompt-cont-regexp regular expression string that matches the continuation prompt issued by the product interpreter. :input-filter function which can filter strings sent to the command interpreter. It is also used by the `sql-send-string', `sql-send-region', `sql-send-paragraph' and `sql-send-buffer' functions. The function is passed the string sent to the command interpreter and must return the filtered string. May also be a list of such functions. :statement name of a variable containing a regexp that matches the beginning of SQL statements. :terminator the terminator to be sent after a `sql-send-string', `sql-send-region', `sql-send-paragraph' and `sql-send-buffer' command. May be the literal string or a cons of a regexp to match an existing terminator in the string and the terminator to be used if its absent. By default ";". :syntax-alist alist of syntax table entries to enable special character treatment by font-lock and imenu. Other features can be stored but they will be ignored. However, you can develop new functionality which is product independent by using `sql-get-product-feature' to lookup the product specific settings. (defvar sql-product-alist '((ansi :name "ANSI" :font-lock sql-mode-ansi-font-lock-keywords :statement sql-ansi-statement-starters) (db2 :name "DB2" :font-lock sql-mode-db2-font-lock-keywords :sqli-program sql-db2-program :sqli-options sql-db2-options :sqli-login sql-db2-login-params :sqli-comint-func sql-comint-db2 :prompt-regexp "^db2 => " :prompt-length 7 :prompt-cont-regexp "^db2 (cont\\.) => " :input-filter sql-escape-newlines-filter) (informix :name "Informix" :font-lock sql-mode-informix-font-lock-keywords :sqli-program sql-informix-program :sqli-options sql-informix-options :sqli-login sql-informix-login-params :sqli-comint-func sql-comint-informix :prompt-regexp "^> " :prompt-length 2 :syntax-alist ((123 . "<") (125 . ">"))) (ingres :name "Ingres" :font-lock sql-mode-ingres-font-lock-keywords :sqli-program sql-ingres-program :sqli-options sql-ingres-options :sqli-login sql-ingres-login-params :sqli-comint-func sql-comint-ingres :prompt-regexp "^\\* " :prompt-length 2 :prompt-cont-regexp "^\\* ") (interbase :name "Interbase" :font-lock sql-mode-interbase-font-lock-keywords :sqli-program sql-interbase-program :sqli-options sql-interbase-options :sqli-login sql-interbase-login-params :sqli-comint-func sql-comint-interbase :prompt-regexp "^SQL> " :prompt-length 5) (linter :name "Linter" :font-lock sql-mode-linter-font-lock-keywords :sqli-program sql-linter-program :sqli-options sql-linter-options :sqli-login sql-linter-login-params :sqli-comint-func sql-comint-linter :prompt-regexp "^SQL>" :prompt-length 4) (ms :name "Microsoft" :font-lock sql-mode-ms-font-lock-keywords :sqli-program sql-ms-program :sqli-options sql-ms-options :sqli-login sql-ms-login-params :sqli-comint-func sql-comint-ms :prompt-regexp "^[0-9]*>" :prompt-length 5 :syntax-alist ((64 . "_")) :terminator ("^go" . "go")) (mysql :name "MySQL" :free-software t :font-lock sql-mode-mysql-font-lock-keywords :sqli-program sql-mysql-program :sqli-options sql-mysql-options :sqli-login sql-mysql-login-params :sqli-comint-func sql-comint-mysql :list-all "SHOW TABLES;" :list-table "DESCRIBE %s;" :prompt-regexp "^mysql> " :prompt-length 6 :prompt-cont-regexp "^ -> " :syntax-alist ((35 . "< b")) :input-filter sql-remove-tabs-filter) (oracle :name "Oracle" :font-lock sql-mode-oracle-font-lock-keywords :sqli-program sql-oracle-program :sqli-options sql-oracle-options :sqli-login sql-oracle-login-params :sqli-comint-func sql-comint-oracle :list-all sql-oracle-list-all :list-table sql-oracle-list-table :completion-object sql-oracle-completion-object :prompt-regexp "^SQL> " :prompt-length 5 :prompt-cont-regexp "^\\(?:[ ][ ][1-9]\\|[ ][1-9][0-9]\\|[1-9][0-9]\\{2\\}\\)[ ]\\{2\\}" :statement sql-oracle-statement-starters :syntax-alist ((36 . "_") (35 . "_")) :terminator ("\\(^/\\|;\\)$" . "/") :input-filter sql-placeholders-filter) (postgres :name "Postgres" :free-software t :font-lock sql-mode-postgres-font-lock-keywords :sqli-program sql-postgres-program :sqli-options sql-postgres-options :sqli-login sql-postgres-login-params :sqli-comint-func sql-comint-postgres :list-all ("\\d+" . "\\dS+") :list-table ("\\d+ %s" . "\\dS+ %s") :completion-object sql-postgres-completion-object :prompt-regexp "^\\w*=[#>] " :prompt-length 5 :prompt-cont-regexp "^\\w*[-(][#>] " :input-filter sql-remove-tabs-filter :terminator ("\\(^\\s-*\\\\g$\\|;\\)" . "\\g")) (solid :name "Solid" :font-lock sql-mode-solid-font-lock-keywords :sqli-program sql-solid-program :sqli-options sql-solid-options :sqli-login sql-solid-login-params :sqli-comint-func sql-comint-solid :prompt-regexp "^" :prompt-length 0) (sqlite :name "SQLite" :free-software t :font-lock sql-mode-sqlite-font-lock-keywords :sqli-program sql-sqlite-program :sqli-options sql-sqlite-options :sqli-login sql-sqlite-login-params :sqli-comint-func sql-comint-sqlite :list-all ".tables" :list-table ".schema %s" :completion-object sql-sqlite-completion-object :prompt-regexp "^sqlite> " :prompt-length 8 :prompt-cont-regexp "^ \\.\\.\\.> " :terminator ";") (sybase :name "Sybase" :font-lock sql-mode-sybase-font-lock-keywords :sqli-program sql-sybase-program :sqli-options sql-sybase-options :sqli-login sql-sybase-login-params :sqli-comint-func sql-comint-sybase :prompt-regexp "^SQL> " :prompt-length 5 :syntax-alist ((64 . "_")) :terminator ("^go" . "go")) (vertica :name "Vertica" :sqli-program sql-vertica-program :sqli-options sql-vertica-options :sqli-login sql-vertica-login-params :sqli-comint-func sql-comint-vertica :list-all ("\\d" . "\\dS") :list-table "\\d %s" :prompt-regexp "^\\w*=[#>] " :prompt-length 5 :prompt-cont-regexp "^\\w*[-(][#>] ")) (#$ . 3064)) (defvar sql-indirect-features '(:font-lock :sqli-program :sqli-options :sqli-login :statement)) (byte-code "\301\302\303\304\305DD\306\307\310\311\312\313\314\315\316\317\320\321\"BE\322BB\257\323\324\325\326& \210\301\327\303\304\330DD\331\307\317\320\332\"B\325\326\333\334& \210\335\336\327\"\210\301\337\303\304\340DD\341\307\342\323\343\325\326& \210\301\344\303\304\345DD\346\307\347\323\350\325\326& \207" [sql-product-alist custom-declare-variable sql-connection-alist funcall function #[0 "\300\207" [nil] 1] "An alist of connection parameters for interacting with a SQL product.\nEach element of the alist is as follows:\n\n (CONNECTION (SQL-VARIABLE VALUE) ...)\n\nWhere CONNECTION is a case-insensitive string identifying the\nconnection, SQL-VARIABLE is the symbol name of a SQL mode\nvariable, and VALUE is the value to be assigned to the variable.\nThe most common SQL-VARIABLE settings associated with a\nconnection are: `sql-product', `sql-user', `sql-password',\n`sql-port', `sql-server', and `sql-database'.\n\nIf a SQL-VARIABLE is part of the connection, it will not be\nprompted for during login. The command `sql-connect' starts a\npredefined SQLi session using the parameters from this list.\nConnections defined here appear in the submenu SQL->Start... for\nmaking new SQLi sessions." :type alist :key-type (string :tag "Connection") :value-type set group (const :tag "Product" sql-product) choice mapcar #[257 "\300\301\302A\303\"\206 \304\305@!!\306@DF\207" [const :tag plist-get :name capitalize symbol-name quote] 6 "\n\n(fn PROD-INFO)"] ((group (const :tag "Username" sql-user) string) (group (const :tag "Password" sql-password) string) (group (const :tag "Server" sql-server) string) (group (const :tag "Database" sql-database) string) (group (const :tag "Port" sql-port) integer) (repeat :inline t (list :tab "Other" (symbol :tag " Variable Symbol") (sexp :tag "Value Expression")))) :version "24.1" :group SQL sql-product #[0 "\300\207" [ansi] 1] "Select the SQL database product used.\nThis allows highlighting buffers properly when you open them." #[257 "\300\301\302A\303\"\206 \304\305@!!@F\207" [const :tag plist-get :name capitalize symbol-name] 6 "\n\n(fn PROD-INFO)"] :safe symbolp defvaralias sql-dialect sql-electric-stuff #[0 "\300\207" [nil] 1] "Treat some input as electric.\nIf set to the symbol `semicolon', then hitting `;' will send current\ninput in the SQLi buffer to the process.\nIf set to the symbol `go', then hitting `go' on a line by itself will\nsend current input in the SQLi buffer to the process.\nIf set to nil, then you must use \\[comint-send-input] in order to send\ncurrent input in the SQLi buffer to the process." (choice (const :tag "Nothing" nil) (const :tag "The semicolon `;'" semicolon) (const :tag "The string `go' by itself" go)) "20.8" sql-send-terminator #[0 "\300\207" [nil] 1] "When non-nil, add a terminator to text sent to the SQL interpreter.\n\nWhen text is sent to the SQL interpreter (via `sql-send-string',\n`sql-send-region', `sql-send-paragraph' or `sql-send-buffer'), a\ncommand terminator can be automatically sent as well. The\nterminator is not sent, if the string sent already ends with the\nterminator.\n\nIf this value is t, then the default command terminator for the\nSQL interpreter is sent. If this value is a string, then the\nstring is sent.\n\nIf the value is a cons cell of the form (PAT . TERM), then PAT is\na regexp used to match the terminator in the string and TERM is\nthe terminator to be sent. This form is useful if the SQL\ninterpreter has more than one way of submitting a SQL command.\nThe PAT regexp can match any of them, and TERM is the way we do\nit automatically." (choice (const :tag "No Terminator" nil) (const :tag "Default Terminator" t) (string :tag "Terminator String") (cons :tag "Terminator Pattern and String" (string :tag "Terminator Pattern") (string :tag "Terminator String"))) "22.2"] 16) #@170 When non-nil, the current buffer contains database names. Globally should be set to nil; it will be non-nil in `sql-mode', `sql-interactive-mode' and list all buffers. (defvar sql-contains-names nil (#$ . 17167)) #@75 Maximum number of seconds you are willing to wait for a login connection. (defvar sql-login-delay 7.5 (#$ . 17387)) (byte-code "\300\301\302\303\304DD\305\306\307\310\311&\207" [custom-declare-variable sql-pop-to-buffer-after-send-region funcall function #[0 "\300\207" [nil] 1] "When non-nil, pop to the buffer SQL statements are sent to.\n\nAfter a call to `sql-sent-string', `sql-send-region',\n`sql-send-paragraph' or `sql-send-buffer', the window is split\nand the SQLi buffer is shown. If this variable is not nil, that\nbuffer's window will be selected by calling `pop-to-buffer'. If\nthis variable is nil, that buffer is shown using\n`display-buffer'." :type boolean :group SQL] 8) #@277 Define interesting points in the SQL buffer for `imenu'. This is used to set `imenu-generic-expression' when SQL mode is entered. Subsequent changes to `sql-imenu-generic-expression' will not affect existing SQL buffers because imenu-generic-expression is a local variable. (defvar sql-imenu-generic-expression '(("Rules/Defaults" "^\\s-*create\\s-+\\(?:\\w+\\s-+\\)*\\(?:rule\\|default\\)\\(?:if\\s-+not\\s-+exists\\s-+\\)?\\s-+\\(\\(?:\\w+\\s-*[.]\\s-*\\)*\\w+\\)" 1) ("Sequences" "^\\s-*create\\s-+\\(?:\\w+\\s-+\\)*sequence\\s-+\\(?:if\\s-+not\\s-+exists\\s-+\\)?\\(\\(?:\\w+\\s-*[.]\\s-*\\)*\\w+\\)" 1) ("Triggers" "^\\s-*create\\s-+\\(?:\\w+\\s-+\\)*trigger\\s-+\\(?:if\\s-+not\\s-+exists\\s-+\\)?\\(\\(?:\\w+\\s-*[.]\\s-*\\)*\\w+\\)" 1) ("Functions" "^\\s-*\\(?:create\\s-+\\(?:\\w+\\s-+\\)*\\)?function\\s-+\\(?:if\\s-+not\\s-+exists\\s-+\\)?\\(\\(?:\\w+\\s-*[.]\\s-*\\)*\\w+\\)" 1) ("Procedures" "^\\s-*\\(?:create\\s-+\\(?:\\w+\\s-+\\)*\\)?proc\\(?:edure\\)?\\s-+\\(?:if\\s-+not\\s-+exists\\s-+\\)?\\(\\(?:\\w+\\s-*[.]\\s-*\\)*\\w+\\)" 1) ("Packages" "^\\s-*create\\s-+\\(?:\\w+\\s-+\\)*package\\s-+\\(?:body\\s-+\\)?\\(?:if\\s-+not\\s-+exists\\s-+\\)?\\(\\(?:\\w+\\s-*[.]\\s-*\\)*\\w+\\)" 1) ("Types" "^\\s-*create\\s-+\\(?:\\w+\\s-+\\)*type\\s-+\\(?:body\\s-+\\)?\\(?:if\\s-+not\\s-+exists\\s-+\\)?\\(\\(?:\\w+\\s-*[.]\\s-*\\)*\\w+\\)" 1) ("Indexes" "^\\s-*create\\s-+\\(?:\\w+\\s-+\\)*index\\s-+\\(?:if\\s-+not\\s-+exists\\s-+\\)?\\(\\(?:\\w+\\s-*[.]\\s-*\\)*\\w+\\)" 1) ("Tables/Views" "^\\s-*create\\s-+\\(?:\\w+\\s-+\\)*\\(?:table\\|view\\)\\s-+\\(?:if\\s-+not\\s-+exists\\s-+\\)?\\(\\(?:\\w+\\s-*[.]\\s-*\\)*\\w+\\)" 1)) (#$ . 18087)) (byte-code "\300\301\302\303\304DD\305\306\307\310\311&\210\300\312\302\303\313DD\314\306\315\310\311&\210\300\316\302\303\317DD\320\306\321\310\311&\210\300\322\302\303\323DD\324\306\321\310\311&\210\300\325\302\303\326DD\327\306\321\310\311&\210\300\330\302\303\331DD\332\333\334\306\321\310\311& \210\300\335\302\303\336DD\337\333\334\306\315\310\311& \210\300\340\302\303\341DD\342\306\343\310\311&\210\300\344\302\303\345DD\346\306\347\333\350\310\311& \210\300\351\302\303\352DD\353\306\354\333\334\310\311& \210\300\355\302\303\356DD\357\333\334\306\315\310\311& \210\300\360\302\303\361DD\362\333\334\306\363\310\311& \210\300\364\302\303\365DD\366\333\367\306\363\310\311& \210\300\370\302\303\371DD\372\306\343\310\311&\210\300\373\302\303\374DD\375\306\376\333\377\310\311& \210\300\201@ \302\303\201A DD\201B \306\354\333\334\310\311& \210\300\201C \302\303\201D DD\201E \306\343\310\311&\210\300\201F \302\303\201G DD\201H \306\201I \333\377\310\311& \210\300\201J \302\303\201K DD\201L \306\354\333\334\310\311& \210\300\201M \302\303\201N DD\201O \306\343\310\311&\210\300\201P \302\303\201Q DD\201R \306\354\333\334\310\311& \210\300\201S \302\303\201T DD\201U \306\343\310\311&\210\300\201V \302\303\201W DD\201X \306\201Y \333\377\310\311& \210\300\201Z \302\303\201[ DD\201\\ \306\354\333\334\310\311& \210\300\201] \302\303\201^ DD\201_ \306\343\310\311&\210\300\201` \302\303\201a DD\201b \306\354\333\334\310\311& \210\300\201c \302\303\201d DD\201e \306\343\310\311&\210\300\201f \302\303\201g DD\201h \306\354\333\334\310\311& \210\300\201i \302\303\201j DD\201k \306\343\310\311&\210\300\201l \302\303\201m DD\201n \306\201o \333\201p \310\311& \210\300\201q \302\303\201r DD\201s \306\354\333\334\310\311& \210\300\201t \302\303\201u DD\201v \306\343\310\311&\210\300\201w \302\303\201x DD\201y \306\201z \333\377\310\311& \210\300\201{ \302\303\201| DD\201} \306\354\333\334\310\311& \210\300\201~ \302\303\201 DD\201\200 \306\343\310\311&\210\300\201\201 \302\303\201\202 DD\201\203 \306\201\204 \333\377\310\311& \210\300\201\205 \302\303\201\206 DD\201\207 \306\354\333\334\310\311& \210\300\201\210 \302\303\201\211 DD\201\212 \306\343\310\311&\210\300\201\213 \302\303\201\214 DD\201\215 \306\201\216 \333\377\310\311& \210\300\201\217 \302\303\201\220 DD\201\221 \306\354\333\334\310\311& \210\300\201\222 \302\303\201\223 DD\201\224 \306\343\310\311&\210\300\201\225 \302\303\201\226 DD\201\227 \306\201\230 \333\201\231 \310\311& \210\300\201\232 \302\303\201\233 DD\201\234 \306\354\333\334\310\311& \207" [custom-declare-variable sql-input-ring-file-name funcall function #[0 "\300\207" [nil] 1] "If non-nil, name of the file to read/write input history.\n\nYou have to set this variable if you want the history of your commands\nsaved from one Emacs session to the next. If this variable is set,\nexiting the SQL interpreter in an SQLi buffer will write the input\nhistory to the specified file. Starting a new process in a SQLi buffer\nwill read the input history from the specified file.\n\nThis is used to initialize `comint-input-ring-file-name'.\n\nNote that the size of the input history is determined by the variable\n`comint-input-ring-size'." :type (choice (const :tag "none" nil) (file)) :group SQL sql-input-ring-separator #[0 "\300\207" [#1="\n--\n"] 1 #1#] "Separator between commands in the history file.\n\nIf set to \"\\n\", each line in the history file will be interpreted as\none command. Multi-line commands are split into several commands when\nthe input ring is initialized from a history file.\n\nThis variable used to initialize `comint-input-ring-separator'.\n`comint-input-ring-separator' is part of Emacs 21; if your Emacs\ndoes not have it, setting `sql-input-ring-separator' will have no\neffect. In that case multiline commands will be split into several\ncommands when the input history is read, as if you had set\n`sql-input-ring-separator' to \"\\n\"." string sql-interactive-mode-hook #[0 "\300\207" [nil] 1] "Hook for customizing `sql-interactive-mode'." hook sql-mode-hook #[0 "\300\207" [nil] 1] "Hook for customizing `sql-mode'." sql-set-sqli-hook #[0 "\300\207" [nil] 1] "Hook for reacting to changes of `sql-buffer'.\n\nThis is called by `sql-set-sqli-buffer' when the value of `sql-buffer'\nis changed." sql-login-hook #[0 "\300\207" [nil] 1] "Hook for interacting with a buffer in `sql-interactive-mode'.\n\nThis hook is invoked in a buffer once it is ready to accept input\nfor the first time." :version "24.1" sql-ansi-statement-starters #[0 "\300\207" ["\\(?:alter\\|create\\|d\\(?:elete\\|rop\\)\\|grant\\|insert\\|merge\\|revoke\\|select\\|update\\)"] 1] "Regexp of keywords that start SQL commands.\n\nAll products share this list; products should define a regexp to\nidentify additional keywords in a variable defined by\nthe :statement feature." sql-oracle-program #[0 "\300\207" [#2="sqlplus"] 1 #2#] "Command to start sqlplus by Oracle.\n\nStarts `sql-interactive-mode' after doing some setup.\n\nOn Windows, \"sqlplus\" usually starts the sqlplus \"GUI\". In order\nto start the sqlplus console, use \"plus33\" or something similar.\nYou will find the file in your Orant\\bin directory." file sql-oracle-options #[0 "\300\207" [("-L")] 1] "List of additional options for `sql-oracle-program'." (repeat string) "24.4" sql-oracle-login-params #[0 "\300\207" [(user password database)] 1] "List of login parameters needed to connect to Oracle." sql-login-params sql-oracle-statement-starters #[0 "\300\207" ["\\(?:begin\\|declare\\|with\\)"] 1] "Additional statement starting keywords in Oracle." sql-oracle-scan-on #[0 "\300\207" [t] 1] "Non-nil if placeholders should be replaced in Oracle SQLi.\n\nWhen non-nil, Emacs will scan text sent to sqlplus and prompt\nfor replacement text for & placeholders as sqlplus does. This\nis needed on Windows where SQL*Plus output is buffered and the\nprompts are not shown until after the text is entered.\n\nYou need to issue the following command in SQL*Plus to be safe:\n\n SET DEFINE OFF\n\nIn older versions of SQL*Plus, this was the SET SCAN OFF command." boolean sql-db2-escape-newlines #[0 "\300\207" [nil] 1] "Non-nil if newlines should be escaped by a backslash in DB2 SQLi.\n\nWhen non-nil, Emacs will automatically insert a space and\nbackslash prior to every newline in multi-line SQL statements as\nthey are submitted to an interactive DB2 session." "24.3" sql-sqlite-program #[0 "\300\301!\206 \300\302!\206 \302\207" [executable-find "sqlite3" "sqlite"] 2] "Command to start SQLite.\n\nStarts `sql-interactive-mode' after doing some setup." sql-sqlite-options #[0 "\300\207" [nil] 1] "List of additional options for `sql-sqlite-program'." (repeat string) "20.8" sql-sqlite-login-params #[0 "\300\207" [((database :file ".*\\.\\(db\\|sqlite[23]?\\)"))] 1] "List of login parameters needed to connect to SQLite." sql-mysql-program #[0 "\300\207" [#3="mysql"] 1 #3#] "Command to start mysql by TcX.\n\nStarts `sql-interactive-mode' after doing some setup." sql-mysql-options #[0 "\300\207" [nil] 1] "List of additional options for `sql-mysql-program'.\nThe following list of options is reported to make things work\non Windows: \"-C\" \"-t\" \"-f\" \"-n\"." (repeat string) sql-mysql-login-params #[0 "\300\207" [(user password database server)] 1] "List of login parameters needed to connect to MySQL." sql-solid-program #[0 "\300\207" [#4="solsql"] 1 #4#] "Command to start SOLID SQL Editor.\n\nStarts `sql-interactive-mode' after doing some setup." sql-solid-login-params #[0 "\300\207" [(user password server)] 1] "List of login parameters needed to connect to Solid." sql-sybase-program #[0 "\300\207" [#5="isql"] 1 #5#] "Command to start isql by Sybase.\n\nStarts `sql-interactive-mode' after doing some setup." sql-sybase-options #[0 "\300\207" [nil] 1] "List of additional options for `sql-sybase-program'.\nSome versions of isql might require the -n option in order to work." (repeat string) sql-sybase-login-params #[0 "\300\207" [(server user password database)] 1] "List of login parameters needed to connect to Sybase." sql-informix-program #[0 "\300\207" [#6="dbaccess"] 1 #6#] "Command to start dbaccess by Informix.\n\nStarts `sql-interactive-mode' after doing some setup." sql-informix-login-params #[0 "\300\207" [(database)] 1] "List of login parameters needed to connect to Informix." sql-ingres-program #[0 "\300\207" [#7="sql"] 1 #7#] "Command to start sql by Ingres.\n\nStarts `sql-interactive-mode' after doing some setup." sql-ingres-login-params #[0 "\300\207" [(database)] 1] "List of login parameters needed to connect to Ingres." sql-ms-program #[0 "\300\207" [#8="osql"] 1 #8#] "Command to start osql by Microsoft.\n\nStarts `sql-interactive-mode' after doing some setup." sql-ms-options #[0 "\300\207" [("-w" "300" "-n")] 1] "List of additional options for `sql-ms-program'." (repeat string) "22.1" sql-ms-login-params #[0 "\300\207" [(user password server database)] 1] "List of login parameters needed to connect to Microsoft." sql-postgres-program #[0 "\300\207" [#9="psql"] 1 #9#] "Command to start psql by Postgres.\n\nStarts `sql-interactive-mode' after doing some setup." sql-postgres-options #[0 "\300\207" [("-P" "pager=off")] 1] "List of additional options for `sql-postgres-program'.\nThe default setting includes the -P option which breaks older versions\nof the psql client (such as version 6.5.3). The -P option is equivalent\nto the --pset option. If you want the psql to prompt you for a user\nname, add the string \"-u\" to the list of options. If you want to\nprovide a user name on the command line (newer versions such as 7.1),\nadd your name with a \"-U\" prefix (such as \"-Umark\") to the list." (repeat string) sql-postgres-login-params #[0 "\300\301\302 E\303\301\302 E\304BB\207" [user :default user-login-name database (server)] 4] "List of login parameters needed to connect to Postgres." sql-interbase-program #[0 "\300\207" [#10="isql"] 1 #10#] "Command to start isql by Interbase.\n\nStarts `sql-interactive-mode' after doing some setup." sql-interbase-options #[0 "\300\207" [nil] 1] "List of additional options for `sql-interbase-program'." (repeat string) sql-interbase-login-params #[0 "\300\207" [(user password database)] 1] "List of login parameters needed to connect to Interbase." sql-db2-program #[0 "\300\207" [#11="db2"] 1 #11#] "Command to start db2 by IBM.\n\nStarts `sql-interactive-mode' after doing some setup." sql-db2-options #[0 "\300\207" [nil] 1] "List of additional options for `sql-db2-program'." (repeat string) sql-db2-login-params #[0 "\300\207" [nil] 1] "List of login parameters needed to connect to DB2." sql-linter-program #[0 "\300\207" [#12="inl"] 1 #12#] "Command to start inl by RELEX.\n\nStarts `sql-interactive-mode' after doing some setup." sql-linter-options #[0 "\300\207" [nil] 1] "List of additional options for `sql-linter-program'." (repeat string) "21.3" sql-linter-login-params #[0 "\300\207" [(user password database server)] 1] "Login parameters to needed to connect to Linter."] 10) #@28 History of usernames used. (defvar sql-user-history nil (#$ . 30814)) #@28 History of databases used. (defvar sql-database-history nil (#$ . 30890)) #@26 History of servers used. (defvar sql-server-history nil (#$ . 30970)) #@27 History of products used. (defvar sql-product-history nil (#$ . 31046)) #@30 History of connections used. (defvar sql-connection-history nil (#$ . 31124)) #@368 Current SQLi buffer. The global value of `sql-buffer' is the name of the latest SQLi buffer created. Any SQL buffer created will make a local copy of this value. See `sql-interactive-mode' for more on multiple sessions. If you want to change the SQLi buffer a SQL mode sends its SQL strings to, change the local value of `sql-buffer' using \[sql-set-sqli-buffer]. (defvar sql-buffer nil (#$ . 31209)) #@119 Prompt used to initialize `comint-prompt-regexp'. You can change `sql-prompt-regexp' on `sql-interactive-mode-hook'. (defvar sql-prompt-regexp nil (#$ . 31620)) #@129 Prompt used to set `left-margin' in `sql-interactive-mode'. You can change `sql-prompt-length' on `sql-interactive-mode-hook'. (defvar sql-prompt-length 0 (#$ . 31789)) #@51 Prompt pattern of statement continuation prompts. (defvar sql-prompt-cont-regexp nil (#$ . 31965)) #@92 Buffer-local string used to possibly rename the SQLi buffer. Used by `sql-rename-buffer'. (defvar sql-alternate-buffer-name nil (#$ . 32070)) #@354 Return non-nil if the process associated with buffer is live. BUFFER can be a buffer object or a buffer name. The buffer must be a live buffer, have a running process attached to it, be in `sql-interactive-mode', and, if PRODUCT or CONNECTION are specified, it's `sql-product' or `sql-connection' must match. (fn BUFFER &optional PRODUCT CONNECTION) (defalias 'sql-buffer-live-p #[769 "\2056 \302!\262\2056 \303!\2056 \304!\2056 rq\210\305\306!\2055 \203- =\2055 \211?\2065 \211 =)\207" [sql-product sql-connection get-buffer buffer-live-p comint-check-proc derived-mode-p sql-interactive-mode] 5 (#$ . 32220)]) #@71 Mode map used for `sql-interactive-mode'. Based on `comint-mode-map'. (defvar sql-interactive-mode-map (byte-code "\301 \302\303!\203 \303\"\210\202 \302\304!\203 \304C\"\210\302\305!\203' \305\306\"\210\307\310\311#\210\307\312\313#\210\307\314\315#\210\307\316\315#\210\307\317\320#\210\307\321\322#\210\307\323\324#\210\211\207" [comint-mode-map make-sparse-keymap fboundp set-keymap-parent set-keymap-parents set-keymap-name sql-interactive-mode-map define-key "\n" sql-accumulate-and-indent "" sql-copy-column "O" sql-magic-go "o" ";" sql-magic-semicolon "\fa" sql-list-all "\ft" sql-list-table] 5) (#$ . 32851)) #@31 Mode map used for `sql-mode'. (defvar sql-mode-map (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307#\210\301\310\311#\210\301\312\313#\210\301\314\315#\210\301\316\317#\210\301\320\321#\210\301\322\323#\210\301\324\325#\210\301\326\327#\210\211\207" [make-sparse-keymap define-key "" sql-send-paragraph "" sql-send-region "" sql-send-string "" sql-send-buffer "" sql-send-line-and-next " " sql-product-interactive "" sql-show-sqli-buffer "\fa" sql-list-all "\ft" sql-list-table [remap beginning-of-defun] sql-beginning-of-statement [remap end-of-defun] sql-end-of-statement] 5) (#$ . 33494)) #@22 Menu for `sql-mode'. (defvar sql-mode-menu nil (#$ . 34133)) (byte-code "\302\303\304\305\306\307\310\311\312\313\314\312\315\316\317\320\321\322\323\324\325\326 \"B\257$\207" [sql-mode-map sql-product-alist easy-menu-do-define sql-mode-menu "Menu for `sql-mode'." "SQL" ["Send Paragraph" sql-send-paragraph (sql-buffer-live-p sql-buffer)] ["Send Region" sql-send-region (and mark-active (sql-buffer-live-p sql-buffer))] ["Send Buffer" sql-send-buffer (sql-buffer-live-p sql-buffer)] ["Send String" sql-send-string (sql-buffer-live-p sql-buffer)] "--" ["List all objects" sql-list-all (and (sql-buffer-live-p sql-buffer) (sql-get-product-feature sql-product :list-all))] ["List table details" sql-list-table (and (sql-buffer-live-p sql-buffer) (sql-get-product-feature sql-product :list-table))] ["Start SQLi session" sql-product-interactive :visible (not sql-connection-alist) :enable (sql-get-product-feature sql-product :sqli-comint-func)] ("Start..." :visible sql-connection-alist :filter sql-connection-menu-filter "--" ["New SQLi Session" sql-product-interactive (sql-get-product-feature sql-product :sqli-comint-func)]) ["--" :visible sql-connection-alist] ["Show SQLi buffer" sql-show-sqli-buffer t] ["Set SQLi buffer" sql-set-sqli-buffer t] ["Pop to SQLi buffer after send" sql-toggle-pop-to-buffer-after-send-region :style toggle :selected sql-pop-to-buffer-after-send-region] ["--" nil nil] "Product" mapcar #[257 "\211A\262\242\300\301\"\206 \302\303!!\304\305\306\"!\211\307\310\305\311\"\312\313\314 DD\257M\210\315\316\317\320\321\322\314DE&\207" [plist-get :name capitalize symbol-name intern format "sql-highlight-%s-keywords" lambda nil "Highlight %s SQL keywords." (interactive) sql-set-product quote vector :style radio :selected eq sql-product] 14 "\n\n(fn PROD-INFO)"]] 24) #@34 Menu for `sql-interactive-mode'. (defvar sql-interactive-mode-menu nil (#$ . 35952)) (byte-code "\301\302\303\304$\210\305\306\307\310#\207" [sql-interactive-mode-map easy-menu-do-define sql-interactive-mode-menu "Menu for `sql-interactive-mode'." ("SQL" ["Rename Buffer" sql-rename-buffer t] ["Save Connection" sql-save-connection (not sql-connection)] "--" ["List all objects" sql-list-all (sql-get-product-feature sql-product :list-all)] ["List table details" sql-list-table (sql-get-product-feature sql-product :list-table)]) define-abbrev-table sql-mode-abbrev-table (("ins" "insert" nil nil t) ("upd" "update" nil nil t) ("del" "delete" nil nil t) ("sel" "select" nil nil t) ("proc" "procedure" nil nil t) ("func" "function" nil nil t) ("cr" "create" nil nil t)) "Abbrev table used in `sql-mode' and `sql-interactive-mode'."] 5) #@61 Syntax table used in `sql-mode' and `sql-interactive-mode'. (defvar sql-mode-syntax-table (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307#\210\301\310\311#\210\301\312\311#\210\301\313\314#\210\301\315\316#\210\317\320\321\322\323\324!\325\"\326\327%\330\331\332\"\262\"\210\211\207" [make-syntax-table modify-syntax-entry 47 ". 14" 42 ". 23" 45 ". 12b" 10 "> b" 12 39 "\"" 34 "." mapc make-byte-code 257 "\301\302\300#\207" vconcat vector [modify-syntax-entry "."] 5 "\n\n(fn C)" "!#$%&+,.:;<=>?@\\|" append nil] 8) (#$ . 36794)) #@188 Pattern to match the names of top-level objects. The pattern matches the name in a CREATE, DROP or ALTER statement. The format of variable should be a valid `font-lock-keywords' entry. (defvar sql-mode-font-lock-object-name '("^\\s-*\\(?:create\\|drop\\|alter\\)\\s-+\\(?:\\w+\\s-+\\)*\\(?:table\\|view\\|\\(?:package\\|type\\)\\(?:\\s-+body\\)?\\|proc\\(?:edure\\)?\\|function\\|trigger\\|sequence\\|rule\\|default\\)\\s-+\\(?:if\\s-+not\\s-+exists\\s-+\\)?\\(\\w+\\(?:\\s-*[.]\\s-*\\w+\\)*\\)" 1 font-lock-function-name-face) (#$ . 37360)) #@89 Generation of regexp matching any one of KEYWORDS. (fn FACE BOUNDARIES &rest KEYWORDS) (defalias 'sql-font-lock-keywords-builder #[642 "\206 \300\301\262@\302\303\"AQB\207" [("\\b" . "\\b") nil regexp-opt t] 9 (#$ . 37910)]) (defalias 'sql-regexp-abbrev #[257 "\300\301\"G\302\303\211\204 \202? \304O\262\305\\\262T\262\211X\203<