I've been hacking at the yi-fuzzy-open plugin to make it more like helm
from emacs. I succeeded in getting the completions to be inside of a bigger
buffer, but I can't seem to set the modemap of the minibuffer so that
typing in it updates the buffer.
Here is the code I'm using:
fuzzyOpenWithDepth :: Int -> YiM ()
fuzzyOpenWithDepth d = case () of
_ | d <= 0 -> printMsg "You need at least depth of 1 for
fuzzyOpenWithDepth"
| otherwise -> do
fileList <- fmap (fmap FileItem) (liftBase (getRecursiveContents d "."))
bufList <- fmap (fmap (BufferItem . ident . attributes)) (withEditor (gets
(M.elems . buffers)))
ffBufRef <- withEditor (newEmptyBufferE fileFinderBufferId)
let initialState =
FuzzyState (fileList <> V.fromList bufList)
(Just 0)
""
withGivenBuffer ffBufRef $ do
putBufferDyn initialState
promptRef <- withEditor (spawnMinibufferE ">" (const localKeymap))
-- TODO this doesn't seem to make the minibuffer work correctly and typing
in it does not work
withGivenBuffer promptRef $ do
modifyMode $ modeKeymapA .~ topKeymapA %~ const localKeymap
withEditor $ do
switchToBufferE promptRef
renderE initialState
--
--
Yi development mailing list
[email protected]
http://groups.google.com/group/yi-devel
---
You received this message because you are subscribed to the Google Groups
"yi.devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.