
On 27 Aug 2009, at 09:17, Johan Tibell wrote:
Hi Thomas,
This is really cool stuff. I played with it this morning and found a potential bug. Both the emacs and vim client libraries refer to the binary "scion_server" but the binary that gets built and put in ~/.cabal/bin is called "scion-server" (note the dash). I worked around the problem by putting this in my .emacs:
Right, I changed that before the release and apparently forgot to change a few places. Will be fixed in the next minor version.
(setq scion-program "scion-server")
Also, I tried to play with the scion-open-cabal-project function. I'm not sure I understand how it's intended to be used. Does it make sure that if you compile a file using C-c C-x C-l the right source directories are used? Could you give a usage example?
I eventually want to get rid of it and let scion-load figure out itself when the project needs to be reconfigured. At the moment you have to delete the .dist-scion directory if you changed your .cabal file. :/
One problem I frequently have with emacs-mode is that you can't use it to load a file if
* your sources don't live in the same directory as the Cabal file, or
Actually, the latest version of haskell-mode has some heuristics. It sets the working directory to where the .cabal file lives.
* the file needs preprocessing (e.g. it's a .hsc) file.
Now when we have the Cabal file loaded would it be possible to have Cabal compile the project and then try to load the .hs file generated from the .hsc file that is currently opened?
Right, so those files should be generated, but it's quite difficult to update them automatically and recompile the necessary files. Also, some preprocessers don't add the proper {-# LINE #-} markers, so the error messages will be all wrong. So, I think it should work this way: User opens a .hsc / .y / .x file, Scion figures out that the file needs preprocessing, loads the generated file and highlights the error messages and highlights them in the original file.
Thanks!
-- Johan
/ Thomas -- Push the envelope. Watch it bend.

On Thu, Aug 27, 2009 at 11:44 AM, Thomas
Schilling
On 27 Aug 2009, at 09:17, Johan Tibell wrote:
Also, I tried to play with the scion-open-cabal-project function. I'm not sure I understand how it's intended to be used. Does it make sure that if you compile a file using C-c C-x C-l the right source directories are used? Could you give a usage example?
I eventually want to get rid of it and let scion-load figure out itself when the project needs to be reconfigured. At the moment you have to delete the .dist-scion directory if you changed your .cabal file. :/
My question was probably a bit unclear so let me try to clarify it. What's the purpose of scion-open-cabal-project? Does it set the include path used for subsequent scion-loads? What's the ".dist-scion" directory and how does it differ from the normal "dist" directory?
One problem I frequently have with emacs-mode is that you can't use it to load a file if
* your sources don't live in the same directory as the Cabal file, or
Actually, the latest version of haskell-mode has some heuristics. It sets the working directory to where the .cabal file lives.
Right. I meant if I don't root my source files in the same directory as the Cabal file it won't work. Cheers, Johan
participants (2)
-
Johan Tibell
-
Thomas Schilling