Cody Goodman | 15 Jun 04:59 2016
Picon
Gravatar

How can I set a minibuffers modemap?

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
yi-devel-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
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 yi-devel+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
For more options, visit https://groups.google.com/d/optout.
Cody Goodman | 13 Jun 01:30 2016
Picon
Gravatar

Replacing my daily editor with Yi

I've become a bit disenchanted with instabilities, lack of speed, and various other pain points in emacs. I also love Haskell and the idea of Yi.

I'm making it my goal to use Yi as my daily editor as quickly as possible so that I can dogfood it and make it work for my use cases.

Can anyone give me any advice, offer suggestions, or let me know if I'm about to duplicate any work that's already been done, as well as let me know if there are any dragons lurking within my list of goals here I might not know about?

Here is a list of things I need in Yi to do so in org format:

* Features needed (in order or priority)
** TODO use space as a leader key (probably easy enough)
** TODO fuzzy file finder
*** I navigate emacs/helm (spacemacs) style from within my editor
*** improvements to current file finder
**** helm style buffer
**** project level file finding
***** like http://tuhdo.github.io/static/helm_projectile.gif
** TODO go mode
*** can possibly take advantage of http://hackage.haskell.org/package/language-go
** TODO minimal org-mode clone
*** org features used
**** hide extra *'s and provide face for last *
**** move node
**** promote/demote node
**** highlighting TODO's
**** cycling TODO's
** TODO compilation buffer
*** MUST be at least as fast as emacs compilation buffer, one of my emacs pain points was the compilation buffer being slow when it encountered long lines
*** basic workflow is a function to give a command, a function to repeat a command, and within the buffer a key to repeat the command
*** nice to have features
**** highlighting filenames/linenumbers and letting user hit enter on an error to navigate to that file
** TODO helm style buffer list
*** fuzzy find within buffer list
** TODO projectile clone
*** maybe not a full clone, but at least narrow fuzzy find results to a project level within a project
* Features wanted
** TODO helm-swoop equivalent
** TODO which-key clone
** TODO haskell-mode or intero-mode clone
*** can I piggyback off of ide-backend or similar here?

--
--
Yi development mailing list
yi-devel-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
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 yi-devel+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
For more options, visit https://groups.google.com/d/optout.
Cody Goodman | 11 Jun 23:50 2016
Picon
Gravatar

Is Yi concurrent yet?

does Yi have concurrency yet or would something like a compilation buffer halt it?

--
--
Yi development mailing list
yi-devel-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
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 yi-devel+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
For more options, visit https://groups.google.com/d/optout.
Cody Goodman | 11 Jun 23:47 2016
Picon
Gravatar

Best way to debug Yi plugins

I'm hacking around on the yi-fuzzy-package and doing println style debugging using "error" since I couldn't get initDebug/logPrintLnMsg to work, is there a better way to debug? I've used the ghci debugger before but it when I run yi it takes up the terminal the repl is in ;)

--
--
Yi development mailing list
yi-devel-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
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 yi-devel+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
For more options, visit https://groups.google.com/d/optout.
Cody Goodman | 11 Jun 23:49 2016
Picon
Gravatar

Is Yi concurrent yet?

does Yi have concurrency yet or would something like a compilation buffer halt it?

--
--
Yi development mailing list
yi-devel-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
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 yi-devel+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
For more options, visit https://groups.google.com/d/optout.
Cody Goodman | 11 Jun 23:48 2016
Picon
Gravatar

How can I change the size of minibuffers created by plugins?

How can I change the size of the minibuffer spawned at the bottom of the yi window for fuzzy-file-find? I'm guessing it's based on RegionStyle? Is changing the size different for vim/emacs modes?

--
--
Yi development mailing list
yi-devel-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
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 yi-devel+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
For more options, visit https://groups.google.com/d/optout.
Michał J Gajda | 29 May 08:05 2016
Picon
Gravatar

yi-devel@... - 1 update in 1 topic

Is there an async version of this?

--
--
Yi development mailing list
yi-devel-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
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 yi-devel+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
For more options, visit https://groups.google.com/d/optout.
Boris D. | 25 May 22:45 2016
Picon

New syntax mode

Hi, 

Can a new syntax mode be added through the plugin mechanism, or does it need to be baked into the editor itself?

--
--
Yi development mailing list
yi-devel-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
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 yi-devel+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
For more options, visit https://groups.google.com/d/optout.
taranlynn0 | 29 Feb 02:17 2016
Picon

Setting Yi Config Variables and other stuff

How do you set Yi Config Variables? The documentation for configVars says to configVariableA, but I can't find it's documentation. I specifically want to set the indentation settings (IndentSettings). Also, is there anyway to add vim ex commands, and syntax highlighting and indenting for new languages in the user config?

--
--
Yi development mailing list
yi-devel-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
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 yi-devel+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
For more options, visit https://groups.google.com/d/optout.
Michael King | 26 Aug 19:08 2015
Picon

yi-language failes to install

When compiling the yi-language package while installing yi on ubuntu 14.04, I get the following errors:

[9 of 32] Compiling Yi.Lexer.Abella  ( dist/dist-sandbox-ffaf3582/build/Yi/Lexer/Abella.hs, dist/dist-sandbox-ffaf3582/build/Yi/Lexer/Abella.o )

src/Yi/Lexer/common.hsinc:55:40-53:
    Couldn't match expected type `Int#' with actual type `Bool'
    In the expression: (offset >=# 0#)
    In the first argument of `(&&)', namely
      `(tagToEnum# (offset >=# 0#))'
    In the expression:
      (tagToEnum# (offset >=# 0#)) && (tagToEnum# (check ==# ord_c))

src/Yi/Lexer/common.hsinc:55:73-88:
    Couldn't match expected type `Int#' with actual type `Bool'
    In the expression: (check ==# ord_c)
    In the second argument of `(&&)', namely
      `(tagToEnum# (check ==# ord_c))'
    In the expression:
      (tagToEnum# (offset >=# 0#)) && (tagToEnum# (check ==# ord_c))
Failed to install yi-language-0.2.0
cabal: Error: some packages failed to install:
yi-language-0.2.0 failed during the building phase. The exception was:
ExitFailure 1


My Cabal version is 1.22.4.0 and cabal-instal version is 1.22.6.0.

I am relatively new to haskell and excited to try out yi.  Thank you for your time.

Michael K.

--
--
Yi development mailing list
yi-devel-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
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 yi-devel+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
For more options, visit https://groups.google.com/d/optout.
Steven L. | 1 Aug 07:11 2015
Picon

could not compile YI with pango .. need help

Hi All,

I could compile and execute YI without pango.  This is on a Debian 8 (Jessie)
But when I try to compile YI with pango, I got lot of error about profiling libraries.

My cabal commands :
cabal configure -fpango -f-vty --enable-executable-profiling --enable-library-profiling --ghc-options=-auto-all
cabal build

Errors :
[145 of 147] Compiling Yi.Boot          ( src/library/Yi/Boot.hs, dist/build/Yi/Boot.o ) [flags changed]
[146 of 147] Compiling Yi.Config.Simple ( src/library/Yi/Config/Simple.hs, dist/build/Yi/Config/Simple.o ) [flags changed]
[147 of 147] Compiling Yi               ( src/library/Yi.hs, dist/build/Yi.o ) [flags changed]

src/library/Yi.hs:42:8-21:
    Could not find module ‘Data.Prototype’
    Perhaps you haven't installed the profiling libraries for package ‘oo-prototypes-0.1.0.0’?
    Use -v to see a list of the files searched for.

src/library/Yi.hs:59:8-15:
    Could not find module ‘Yi.Style’
    Perhaps you haven't installed the profiling libraries for package ‘yi-language-0.2.0’?
    Use -v to see a list of the files searched for.

src/library/Yi.hs:60:8-23:
    Could not find module ‘Yi.Style.Library’
    Perhaps you haven't installed the profiling libraries for package ‘yi-language-0.2.0’?
    Use -v to see a list of the files searched for.

src/library/Yi/Boot.hs:18:18-28:
    Could not find module ‘Config.Dyre’
    Perhaps you haven't installed the profiling libraries for package ‘dyre-0.8.12’?
    Use -v to see a list of the files searched for.

--
--
Yi development mailing list
yi-devel-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
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 yi-devel+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
For more options, visit https://groups.google.com/d/optout.

Gmane