Function: combobulate-query-builder
combobulate-query-builder is an interactive and natively compiled
function defined in combobulate-query.el.
Signature
(combobulate-query-builder)
Documentation
Open an interactive query builder buffer.
Design and test tree-sitter queries interactively with syntax highlighting and node completion.
Key Bindings
combobulate-key-map C-c o B q combobulate-options-key-map B q combobulate-query-key-map q
Source Code
;; Defined in /nix/store/b5fvrwzi3zvkabyzx0in6gw1cj963z46-emacs-packages-deps/share/emacs/site-lisp/combobulate-query.el
;;;###autoload
(defun combobulate-query-builder ()
"Open an interactive query builder buffer.
Design and test tree-sitter queries interactively with syntax
highlighting and node completion."
(interactive)
(let* ((target-buffer (current-buffer))
(builder-buffer (get-buffer-create combobulate-query-builder-buffer-name)))
(when (eq target-buffer builder-buffer)
(user-error "This buffer cannot be use as target buffer"))
(with-current-buffer target-buffer
(setq combobulate-query-builder-target-buffer-name target-buffer)
(combobulate-query-builder-change-parser)
(add-hook 'combobulate-query-builder-after-change-functions
#'combobulate-query-builder--after-change nil :local))
(with-current-buffer builder-buffer
(erase-buffer)
(combobulate-query-mode)
(add-hook 'after-change-functions #'combobulate-query-builder--after-change nil t)
(add-hook 'kill-buffer-hook #'combobulate-query-builder--clean-target-buffer nil t)
(if combobulate-query-default-query
(combobulate-query-builder-insert combobulate-query-default-query)
(newline)
(insert "()")
(forward-char -1)))
(display-buffer builder-buffer
`(display-buffer-below-selected
(window-height . fit-window-to-buffer)
(window-min-height . 3)
(inhibit-same-window . t)))
;; Switch focus to the query builder window.
(select-window (get-buffer-window builder-buffer))))