Skip to content

Commit 4d38748

Browse files
committed
Group ghcide plugins
1 parent daa8983 commit 4d38748

File tree

3 files changed

+32
-30
lines changed

3 files changed

+32
-30
lines changed

exe/Plugins.hs

+19-23
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,14 @@
22
{-# LANGUAGE OverloadedStrings #-}
33
module Plugins where
44

5-
import Ide.Types (IdePlugins)
5+
import Ide.Types (IdePlugins)
66
import Ide.PluginUtils (pluginDescToIdePlugins)
77

88
-- fixed plugins
99
import Ide.Plugin.Example as Example
1010
import Ide.Plugin.Example2 as Example2
1111
import Development.IDE (IdeState)
12-
import Development.IDE.Plugin.HLS.GhcIde as GhcIde
13-
import Development.IDE.Plugin.Completions as Completions
14-
import Development.IDE.Plugin.TypeLenses as TypeLenses
12+
import Development.IDE.Plugin.HLS.GhcIde as GhcIde
1513

1614
-- haskell-language-server optional plugins
1715

@@ -91,55 +89,53 @@ idePlugins includeExamples = pluginDescToIdePlugins allPlugins
9189
then basePlugins ++ examplePlugins
9290
else basePlugins
9391
basePlugins =
94-
[ GhcIde.descriptor "ghcide"
95-
, TypeLenses.descriptor "type-lenses"
96-
, Completions.descriptor "completions"
92+
GhcIde.descriptors ++
9793
#if pragmas
98-
, Pragmas.descriptor "pragmas"
94+
Pragmas.descriptor "pragmas" :
9995
#endif
10096
#if floskell
101-
, Floskell.descriptor "floskell"
97+
Floskell.descriptor "floskell" :
10298
#endif
10399
#if fourmolu
104-
, Fourmolu.descriptor "fourmolu"
100+
Fourmolu.descriptor "fourmolu" :
105101
#endif
106102
#if tactic
107-
, Tactic.descriptor "tactic"
103+
Tactic.descriptor "tactic" :
108104
#endif
109105
#if ormolu
110-
, Ormolu.descriptor "ormolu"
106+
Ormolu.descriptor "ormolu" :
111107
#endif
112108
#if stylishHaskell
113-
, StylishHaskell.descriptor "stylish-haskell"
109+
StylishHaskell.descriptor "stylish-haskell" :
114110
#endif
115111
#if retrie
116-
, Retrie.descriptor "retrie"
112+
Retrie.descriptor "retrie" :
117113
#endif
118114
#if AGPL && brittany
119-
, Brittany.descriptor "brittany"
115+
Brittany.descriptor "brittany" :
120116
#endif
121117
#if class
122-
, Class.descriptor "class"
118+
Class.descriptor "class" :
123119
#endif
124120
#if haddockComments
125-
, HaddockComments.descriptor "haddockComments"
121+
HaddockComments.descriptor "haddockComments" :
126122
#endif
127123
#if eval
128-
, Eval.descriptor "eval"
124+
Eval.descriptor "eval" :
129125
#endif
130126
#if importLens
131-
, ExplicitImports.descriptor "importLens"
127+
ExplicitImports.descriptor "importLens" :
132128
#endif
133129
#if moduleName
134-
, ModuleName.descriptor "moduleName"
130+
ModuleName.descriptor "moduleName" :
135131
#endif
136132
#if hlint
137-
, Hlint.descriptor "hlint"
133+
Hlint.descriptor "hlint" :
138134
#endif
139135
#if splice
140-
, Splice.descriptor "splice"
136+
Splice.descriptor "splice" :
141137
#endif
142-
]
138+
[]
143139
examplePlugins =
144140
[Example.descriptor "eg"
145141
,Example2.descriptor "eg2"

ghcide/exe/Main.hs

+1-6
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,6 @@ import Development.IDE.Types.Diagnostics
2828
import Development.IDE.Types.Options
2929
import Development.IDE.Types.Logger
3030
import Development.IDE.Plugin
31-
import Development.IDE.Plugin.Completions as Completions
32-
import Development.IDE.Plugin.TypeLenses as TypeLenses
3331
import Development.IDE.Plugin.Test as Test
3432
import Development.IDE.Session (loadSession)
3533
import Development.Shake (ShakeOptions (shakeThreads))
@@ -90,10 +88,7 @@ main = do
9088
dir <- IO.getCurrentDirectory
9189

9290
let hlsPlugins = pluginDescToIdePlugins $
93-
[ GhcIde.descriptor "ghcide"
94-
, TypeLenses.descriptor "type-lenses"
95-
, Completions.descriptor "ghcide-completions"
96-
] ++
91+
GhcIde.descriptors ++
9792
[ Test.blockCommandDescriptor "block-command" | argsTesting]
9893

9994
pid <- T.pack . show <$> getProcessID

ghcide/src/Development/IDE/Plugin/HLS/GhcIde.hs

+12-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
-- | Exposes the ghcide features as an HLS plugin
55
module Development.IDE.Plugin.HLS.GhcIde
66
(
7-
descriptor
7+
descriptors
88
) where
99
import Development.IDE
1010
import Development.IDE.LSP.HoverDefinition
@@ -13,6 +13,17 @@ import Ide.PluginUtils
1313
import Ide.Types
1414
import Language.Haskell.LSP.Types
1515
import Text.Regex.TDFA.Text()
16+
import qualified Development.IDE.Plugin.CodeAction as CodeAction
17+
import qualified Development.IDE.Plugin.Completions as Completions
18+
import qualified Development.IDE.Plugin.TypeLenses as TypeLenses
19+
20+
descriptors :: [PluginDescriptor IdeState]
21+
descriptors =
22+
[ descriptor "ghcide-hover-and-symbols",
23+
CodeAction.descriptor "ghcide-code-actions",
24+
Completions.descriptor "ghcide-completions",
25+
TypeLenses.descriptor "ghcide-type-lenses"
26+
]
1627

1728
-- ---------------------------------------------------------------------
1829

0 commit comments

Comments
 (0)