emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[nongnu] elpa/geiser-kawa 6b2187d 1/2: fix: completion with company-mode


From: ELPA Syncer
Subject: [nongnu] elpa/geiser-kawa 6b2187d 1/2: fix: completion with company-mode.
Date: Mon, 20 Sep 2021 12:57:35 -0400 (EDT)

branch: elpa/geiser-kawa
commit 6b2187d696b90f01e83cdeaaf81f68de5309c44a
Author: spellcard199 <spellcard199@protonmail.com>
Commit: spellcard199 <spellcard199@protonmail.com>

    fix: completion with company-mode.
    
    geiser:completions used to return a list of symbols, which works fine with
    completion-at-point, but company-mode wants a list of strings, which is what
    geiser:completions returns now.
---
 src/main/java/kawageiser/GeiserCompleteSymbol.java | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/main/java/kawageiser/GeiserCompleteSymbol.java 
b/src/main/java/kawageiser/GeiserCompleteSymbol.java
index 979c910..ce6b73d 100644
--- a/src/main/java/kawageiser/GeiserCompleteSymbol.java
+++ b/src/main/java/kawageiser/GeiserCompleteSymbol.java
@@ -6,6 +6,7 @@
 
 package kawageiser;
 
+import gnu.kawa.functions.Format;
 import gnu.lists.IString;
 import gnu.lists.LList;
 import gnu.mapping.Environment;
@@ -20,13 +21,16 @@ public class GeiserCompleteSymbol {
     }
 
     public static LList getCompletions(IString prefix, Environment env) {
-        ArrayList<Symbol> resultArrList = new ArrayList<>();
+        ArrayList<String> resultArrList = new ArrayList<>();
         env.enumerateAllLocations().forEachRemaining(
                 loc -> {
                     Symbol sym = loc.getKeySymbol();
                     String symName = sym.getName();
                     if (symName.contains(prefix)) {
-                        resultArrList.add(sym);
+                        // Emacs' completion-at-point works fine with a list 
of symbols,
+                        // but completion through company-mode works only if 
we display a list
+                        // of strings, each delimited by double-quotes.
+                        resultArrList.add(Format.formatToString(0, "~S", 
symName));
                     }
                 }
         );



reply via email to

[Prev in Thread] Current Thread [Next in Thread]