      (if (or (<= p low) (liquid-is-split ch)) 
 	 p 
          (liquid-id-start-pos low (- p 1)))))
+
 
 (defun column-number-at-pos (pos)
   "Find the column of position pos"

	 (str (get-string-from-file filePath)))
    (json-read-from-string str)))


(defvar liquid-annot-table)
(setq liquid-annot-table (get-json-from-file "/Users/rjhala/tmp/.liquid/flycheck_Foo.hs.json"))

(defun liquid-annot (table row col)
  "Get annotation from table from identifier at row, col"
  (let* ((r    (format "%d" row))
	 (c    (format "%d" col))
	 (tys  (assoc "types" table))
	 (ro   (assoc r tys)))
    (cdr (assoc "ann" (assoc c ro)))))

;; If you want the separate balloon-popup
(defun liquid-popup-tip (text)
  (if (and (functionp 'ac-quick-help-use-pos-tip-p)
           (ac-quick-help-use-pos-tip-p))
      (pos-tip-show text 'popup-tip-face nil nil 300 popup-tip-max-width)
    (popup-tip text)))

;; If you just want the ascii-popup
;; (defun liquid-popup-tip (text)
;;   (popup-tip text))


(defun liquid-splitters () 
  '( ?\s  ?\t ?\n ?\( ?\) ?\[ ?\] ))

(require 'json)
(require 'ring)
(require 'etags)
;; (require 'flymake)
;; (require 'eldoc)
(require 'pos-tip nil t)
;; (require 'log4e)
;; (require 'yaxception)
(require 'thingatpt)
(require 'button-lock)



(cl-defstruct position file row col)

