Thanks! That indeed does work.

I'm a bit surprised though that there isn't already an internal boolean set somewhere; checking for a string in the arguments sounds a bit fragile.

On Tue, Nov 24, 2015 at 12:28 AM, Aycan İrican <iricanaycan@gmail.com> wrote:
How about `GHC.Environment.getFullArgs` which includes “—interactive” when you’re in GHCi?


> On 24 Nov 2015, at 09:37, Levent Erkok <erkokl@gmail.com> wrote:
>
> I'm working on a plugin, and would like to be able to tell if it's GHC or GHCi that's running.
>
> I tried:
>
>    df   <- getDynFlags
>    let isGHCi = ghcMode df == CompManager
>
> Alas, while that correctly tells apart "ghci" from "ghc -c", it also returns True when ghc is called without the "-c" argument.
>
> Is there a better/more robust way of figuring out whether we're in an interactive session?
>
> -Levent.
> _______________________________________________
> ghc-devs mailing list
> ghc-devs@haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs