From 42ba97c086c473f8abc52108ca6ceb276525e027 Mon Sep 17 00:00:00 2001 From: Anastasios Grammenos Date: Tue, 22 Sep 2020 16:35:27 +0300 Subject: company-mode backend --- fcomp.el | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'fcomp.el') diff --git a/fcomp.el b/fcomp.el index 66eaf7c..40a0e5b 100644 --- a/fcomp.el +++ b/fcomp.el @@ -101,7 +101,7 @@ (setq fcomp--query "") (setq fcomp--output ""))) -(defun fcomp--autocomplete (word point) +(defun fcomp--autocomplete (word point &optional x) "Start fcomp process and orchistrate it's output." (let ((term (if (empty-string-p word) (format "%s" "-au") @@ -128,11 +128,25 @@ (process-send-string proc "\n") (process-send-eof proc) (if (accept-process-output proc nil nil t) - (fcomp--handle-output) + (if x + (message "%s" "blabla") + (fcomp--handle-output)) (progn (message "No completion for %s" word) (delete-process proc))))) +(defun fcomp-get-canditates (word) + "" + (progn + (let ((table (copy-syntax-table (syntax-table)))) + (modify-syntax-entry ?- "w" table) + (modify-syntax-entry ?_ "w" table) + (when (not (empty-string-p fcomp-extra-valid-chars)) + (mapc (lambda (char) (modify-syntax-entry char "w" table)) fcomp-extra-valid-chars)) + (with-syntax-table table + (fcomp--autocomplete word (point) t))) + (remove "" (split-string fcomp--output "\n")))) + (defun fcomp-autocomplete () "Autocompete using fcomp.c -- cgit v1.2.3