X-Git-Url: https://git.lukelau.me/?a=blobdiff_plain;f=test%2Fdummy-server%2FMain.hs;h=7c73e3b019ecb676583410b1efd1e78a153d1ccb;hb=aa0ac8a0a985651741e11efc3af3973db88cf80f;hp=95b98c9576c8163cbda8d60c2eed164a2a445892;hpb=cf9e06e2eb79b113ff861866690f14166d1fa4e7;p=lsp-test.git diff --git a/test/dummy-server/Main.hs b/test/dummy-server/Main.hs index 95b98c9..7c73e3b 100644 --- a/test/dummy-server/Main.hs +++ b/test/dummy-server/Main.hs @@ -1,14 +1,12 @@ -{-# LANGUAGE DataKinds #-} +{-# LANGUAGE TypeInType #-} {-# LANGUAGE OverloadedStrings #-} import Control.Monad import Control.Monad.Reader -import Data.Aeson -import Data.Default +import Data.Aeson hiding (defaultOptions) import qualified Data.HashMap.Strict as HM import Data.List (isSuffixOf) -import Language.LSP.Control -import Language.LSP.Core +import Language.LSP.Server import Language.LSP.Types import System.Directory import System.FilePath @@ -17,18 +15,16 @@ import UnliftIO.Concurrent main = do handlerEnv <- HandlerEnv <$> newEmptyMVar <*> newEmptyMVar - let initCbs = - InitializeCallbacks + runServer $ ServerDefinition { doInitialize = \env _req -> pure $ Right env, onConfigurationChange = const $ pure $ Right (), staticHandlers = handlers, interpretHandler = \env -> Iso (\m -> runLspT env (runReaderT m handlerEnv)) - liftIO + liftIO, + options = defaultOptions {executeCommandCommands = Just ["doAnEdit"]} } - options = def {executeCommandCommands = Just ["doAnEdit"]} - run initCbs options data HandlerEnv = HandlerEnv { relRegToken :: MVar (RegistrationToken WorkspaceDidChangeWatchedFiles),