
On 5 Aug 2010, at 21:12, David Virebayre wrote:
For example, .
Here's an example without, and with candy :
listeEtageres = flip zip [1..] -- on les numérote . nub -- on élimine les doublons . sort -- on les trie . map simple -- on ne garde que le type et la position $ listeEtagTot -- on part de la liste totale des étagères where simple (_arm,tpe,pos) = (tpe,pos) f n (t,p) = (n,t,p) -------------------------------- listeEtageres = flip zip [1..] -- on les numérote ∘nub -- on élimine les doublons ∘sort -- on les trie ∘map simple -- on ne garde que le type et la position $ listeEtagTot -- on part de la liste totale des étagères where simple (_arm,tpe,pos) = (tpe,pos) f n (t,p) = (n,t,p) -------------------------------------------
I can't think of a solution to this that will work for people who don't care about non candy alignment and want " . " to appear as a single character. I am afraid for the foreseeable you only have two options 1) Turn of candy 2) Edit your candy configuration file
Does your existing editor handle candy better? If so how? It doesn't handle them at all :)
Switch it off then. You won't miss it :-)
Thanks for the feedback, please let us know if you think of anything else.
This is an example of how i'm confused. In this example, I'm trying to load a single file. It's for test purposes only, I only need it made by ghc --make, I don't need a cabal package.
$ cd code/euler $ leksah Euler.hs
Ok so the problem here is that for leksah to work properly we really want a .cabal file. The other issue is that you can only have one cabal file per directory. This came up recently on the Leksah group and I have been pondering what to do. Can you try out this... ~/haskell/test$ cat ~/bin/cabal_quick_init #!/bin/sh SOURCE_FILE=$1 CABAL_NAME=`basename -s .lhs $SOURCE_FILE` CABAL_NAME=`basename -s .hs $CABAL_NAME` echo Creating Cabal Package $CABAL_NAME echo For file $SOURCE_FILE mkdir $CABAL_NAME.package || exit cd $CABAL_NAME.package || exit cabal init -n -p $CABAL_NAME --is-executable --source-dir=.. || exit sed -e "s/-- *[mM]ain-[iI]s *\:/Main-is:$SOURCE_FILE/" -i "" $CABAL_NAME.cabal || exit ~/haskell/test$ cabal_quick_init Euler.hs Creating Cabal Package Euler For file Euler.hs Generating LICENSE... Warning: unknown license type, you must put a copy in LICENSE yourself. Generating Setup.hs... Generating Euler.cabal... Warning: no synopsis given. You should edit the .cabal file and add one. You may want to edit the .cabal file and add a Description field. This will make a Euler/Euler.cabal file. You can then simply add that .cabal file to your workspace (right click in the Workspace pane). If this works I will add something like it in Leksah as Package -> Cabalize Existing Code. You will then be asked to choose a Main source file and if you need the package to be in a subdirectory. I'll try to fix "leksah Euler.hs" so it does the following * if the file belongs to an package in the workspace open the file and activate the package * if not ask the user if they want to simply open it or cabalize it
So I understand why the package menus didn't work, but there was no alert while I was in leksah. And it did crash when I clicked on Package->Edit flags (reproductible)
Now I create a workspace since I have to. On the browser I still don't have access to my file. Make workspace does nothing, and tells me nothing. I suspect I need a package.
This is a bit crap. We have been thinking of adding a default workspace. But perhaps a better/simple solution is to prompt the user whenever this happens and ask if they would like to create a workspace or open an existing one.
So I'm creating a package. When I click save, it creates a Main.hs file for me. Right now I'm kind of annoyed, I just wanted to edit Euler.hs, add another problem to it, compile, run, and get on with something else. That's usually where I close leksah, and lauch kate.
For another programs (that compile fine with ghc --make), I didn't bother making the package. But I had to find out the package dependencies by building, checking where it fails, and trying to add a package to the dependency list. Maybe there's a better way, didn't find it.
We do plan to fix this in the same way we resolve missing imports. I had a look to see if I could do it when a user cabalizes the source, but "ghc --make -v" does not include the packages automatically loaded in its output. Instead we will need to wait for the error then resolve it when the user presses Ctrl+R. Hamish