ghcid
Very low feature GHCi based IDE (by ndmitchell)
xmonad-contrib
Contributed modules for xmonad (by xmonad)
ghcid | xmonad-contrib | |
---|---|---|
12 | 50 | |
1,119 | 572 | |
- | 0.7% | |
4.0 | 8.7 | |
2 months ago | 2 days ago | |
Haskell | Haskell | |
BSD 3-clause "New" or "Revised" License | BSD 3-clause "New" or "Revised" License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
ghcid
Posts with mentions or reviews of ghcid.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-04-08.
-
Anyone know the best way to use haskell for arch linux?
You can use ghcid. It compiles the code, and shows if there are any errors as you save your file. Have two terminals. One for editing your file...other one with ghcid ($ ghcid path/to/filename.hs). Right click on the ghcid terminal and click `always on top`. That way, It will be always visible as you are typing and saving code.
-
Static-ls - a low memory Haskell language server based on hiedb and hiefiles
With a combination of ghcid, an hiedb filewatcher and the -fdefer-type-errors flag you can get pretty solid IDE behavior. Currently only ghc 9.4.4 is supported but happy to personally help people set this up if interested!
-
What's the best Editor+Tests experience we can get with Haskell?
With an editor integration, you could rig it up to where you could right-click on a Spec, choose "Run spec" from a context menu, and have your editor add that comment to and save dev.hs. Another editor integration could read and parse the contents of ghcid.txt. We have this already for the compiler output, but it doesn't yet parse the test output. But sans an editor integration, you will still see the test output in the console where Ghcid is running.
-
What's the best way to use a REPL for TDD?
Sounds like you want ghcid. You can use it run tests on a successful build, and it will watch files in your project and quick-rebuild when there are changes. There shouldn't be any need to modify your Cabal files or test dependencies.
- Open source projects for beginners
-
TDD for AoC?
In addition, for Haskell, I usually have ghcid running, which likewise re-runs on every file change, but gives faster feedback about any type errors than the full compiler, and also is configured to evaluate
-
Automatically reloading ghci when a file changes
Have you looked into ghcid? https://github.com/ndmitchell/ghcid
-
Most braindead easy end to end haskell workflow?
VS Code + Haskell extension is usually best, but ghcid is an alternative which is much simpler, easier to set up, less pretty and powerful but still pretty easy and effective to use. Here's a workflow:
-
How to cabal?
In general, though, I recommend just looking at the cabal files for various libraries and executables. Something like ghcid is good, since it contains a library, an executable, and a test suite.
-
Fast way to run Haskell script from nvim?
you should also checkout the ghci vim plugin https://github.com/ndmitchell/ghcid/tree/master/plugins/nvim
xmonad-contrib
Posts with mentions or reviews of xmonad-contrib.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-10-21.
-
defToggleStrutsKey not working
This should now also be fixed in HEAD: https://github.com/xmonad/xmonad-contrib/commit/90f4a96f933a8ecc014b6def54fb929ee9e73e49
-
How to check xmonad version?
If you're on NixOS then definitely look into /u/LSLeary's excellent flake! (docs)
-
XMonad on NixOS
Perhaps you're not aware of the module exposed by the xmonad-contrib flake? It can do most of the setup for you. See the NixOS Modules section of https://github.com/xmonad/xmonad-contrib/blob/master/NIX.md.
-
Custom gsConfig for spawnSelected
Seems there was a documentation bug in that module. Does this fix help?
- Most Recently Used (MRU)
- Normalize the Fraction Between Master and Slave Windows
-
Mimic LeftWM's CenterdMainFluid in Xmonad?
There is X.L.CenteredIfSingle. However, it didn't land in 0.17.0, so you'll have to either wait for 0.17.1 (dropping soon, I promise!), compile xmonad from git, or just copy the file as-is (which should be doable) into your configuration.
-
Applying window decorations in xmonad while there is onlmore than one window
Btw there is an alternative way to implement smart bar using `AltMax` from xmonad-contrib but I'm not using it because of this [known bug](https://github.com/xmonad/xmonad-contrib/issues/75).
- Key bind to remove borders around windows??
-
Custom Xomobar output
Note that the linked solution is a bit buggy (see here). But regarding your question, it's as simple as it gets. You could maybe replace (getModeName <$> (XS.get :: X ModeName)) with XS.gets getModeNameand maybe defining it somewhere else (e.g. logMode :: Logger), but that's really it. You could wait for #703 to be merged (whenever that may be), or just take the code from there (PSA: still in a rough state, undocumented, and very likely will change) and roll with it: it is xmonad after all, your config is going to be compiled anyway!
What are some alternatives?
When comparing ghcid and xmonad-contrib you can also consider the following projects:
ghci-ng
polybar - A fast and easy-to-use status bar
stack - The Haskell Tool Stack
picom - A lightweight compositor for X11
ghcide - A library for building Haskell IDE tooling
xmonad - The core of xmonad, a small but functional ICCCM-compliant tiling window manager
hlint - Haskell source code suggestions
xmobar - A minimalistic status bar
castle - A tool to manage shared cabal-install sandboxes.
dotfiles
hadolint - Dockerfile linter, validate inline bash, written in Haskell
spotifywm - Set Spotify's WM_NAME before opening the window