about summary refs log tree commit diff
path: root/users/grfn/emacs.d/sql-strings.el
diff options
context:
space:
mode:
Diffstat (limited to 'users/grfn/emacs.d/sql-strings.el')
-rw-r--r--users/grfn/emacs.d/sql-strings.el75
1 files changed, 0 insertions, 75 deletions
diff --git a/users/grfn/emacs.d/sql-strings.el b/users/grfn/emacs.d/sql-strings.el
deleted file mode 100644
index eef397a24ea6..000000000000
--- a/users/grfn/emacs.d/sql-strings.el
+++ /dev/null
@@ -1,75 +0,0 @@
-;;; -*- lexical-binding: t; -*-
-
-;;; https://www.emacswiki.org/emacs/StringAtPoint
-(defun ourcomments-string-or-comment-bounds-1 (what)
-  (save-restriction
-    (widen)
-    (let* ((here (point))
-           ;; Fix-me: when on end-point, how to handle that and which should be last hit point?
-           (state (parse-partial-sexp (point-min) (1+ here)))
-           (type (if (nth 3 state)
-                     'string
-                   (if (nth 4 state)
-                       'comment)))
-           (start (when type (nth 8 state)))
-           end)
-      (unless start
-        (setq state (parse-partial-sexp (point-min) here))
-        (setq type (if (nth 3 state)
-                       'string
-                     (if (nth 4 state)
-                         'comment)))
-        (setq start (when type (nth 8 state))))
-      (unless (or (not what)
-                  (eq what type))
-        (setq start nil))
-      (if (not start)
-          (progn
-            (goto-char here)
-            nil)
-        (setq state (parse-partial-sexp (1+ start) (point-max)
-                                        nil nil state 'syntax-table))
-        (setq end (point))
-        (goto-char here)
-        (cons start end)))))
-
-(defun ourcomments-bounds-of-string-at-point ()
-  "Return bounds of string at point if any."
-  (ourcomments-string-or-comment-bounds-1 'string))
-
-(put 'string 'bounds-of-thing-at-point 'ourcomments-bounds-of-string-at-point)
-
-(defun -sanitize-sql-string (str)
-  (->> str
-       (downcase)
-       (s-trim)
-       (replace-regexp-in-string
-        (rx (or (and string-start (or "\"\"\""
-                                      "\""))
-                (and (or "\"\"\""
-                         "\"")
-                     string-end)))
-        "")
-       (s-trim)))
-
-(defun sql-string-p (str)
-  "Returns 't if STR looks like a string literal for a SQL statement"
-  (setq str (-sanitize-sql-string str))
-  (or (s-starts-with? "select" str)))
-
-;;; tests
-
-(require 'ert)
-
-(ert-deftest sanitize-sql-string-test ()
-  (should (string-equal "select * from foo;"
-                        (-sanitize-sql-string
-                         "\"\"\"SELECT * FROM foo;\n\n\"\"\""))))
-
-(ert-deftest test-sql-string-p ()
-  (dolist (str '("SELECT * FROM foo;"
-                 "select * from foo;"))
-    (should (sql-string-p str)))
-
-  (dolist (str '("not a QUERY"))
-    (should-not (sql-string-p str))))