[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));
}
}
);