X-Git-Url: http://git.lukelau.me/?a=blobdiff_plain;f=example%2FMain.hs;h=29795fa22e52b76279d1ae98eca5c5f111eb72cd;hb=7d0ddb8022d9cccc68a99008dd55c1d39ddda3e7;hp=8080991051ec609e297498b6d491ef14470c76af;hpb=9db776483f617de170b6798d5ea8a9f997c0d098;p=lsp-test.git diff --git a/example/Main.hs b/example/Main.hs index 8080991..29795fa 100644 --- a/example/Main.hs +++ b/example/Main.hs @@ -1,16 +1,18 @@ import Language.Haskell.LSP.Test -import qualified Language.Haskell.LSP.TH.DataTypesJSON as LSP -import qualified Data.Text.IO as T -import Control.Lens -import Control.Monad +import Language.Haskell.LSP.TH.DataTypesJSON +import Data.Proxy + import Control.Monad.IO.Class -import System.Directory -import System.Environment -main = do - files <- getArgs - forM_ files $ \fp -> session $ do - file <- liftIO $ canonicalizePath fp - openDocument file - symbols <- documentSymbols file - liftIO $ mapM_ T.putStrLn (symbols ^.. traverse . LSP.name) +main = runSession "hie --lsp" "test/recordings/renamePass" $ do + + docItem <- getDocItem "Desktop/simple.hs" "haskell" + docId <- TextDocumentIdentifier <$> getDocUri "Desktop/simple.hs" + + sendNotification TextDocumentDidOpen (DidOpenTextDocumentParams docItem) + + sendRequest TextDocumentDocumentSymbol (DocumentSymbolParams docId) + + skipMany loggingNotification + + anyResponse >>= liftIO . print