@@ -18,25 +18,24 @@ import Development.IDE.Types.Logger
1818import Development.IDE.Core.Service
1919import Development.IDE.Types.Location
2020
21+import Control.Monad.Extra
2122import qualified Data.Set as S
2223
2324import Development.IDE.Core.FileStore
2425import Development.IDE.Core.OfInterest
2526
2627
27−whenUriFile :: IdeState -> Uri -> (NormalizedFilePath -> IO ()) -> IO ()
28−whenUriFile ide uri act = case LSP.uriToFilePath uri of
29− Just file -> act $ toNormalizedFilePath file
30− Nothing -> logWarning (ideLogger ide) $ "Unknown scheme in URI: " <> getUri uri
28+whenUriFile :: Uri -> (NormalizedFilePath -> IO ()) -> IO ()
29+whenUriFile uri act = whenJust (LSP.uriToFilePath uri) $ act . toNormalizedFilePath
3130
3231setHandlersNotifications :: PartialHandlers
3332setHandlersNotifications = PartialHandlers $ \WithMessage{..} x -> return x
3433 {LSP.didOpenTextDocumentNotificationHandler = withNotification (LSP.didOpenTextDocumentNotificationHandler x) $
3534 \_ ide (DidOpenTextDocumentParams TextDocumentItem{_uri}) -> do
3635 setSomethingModified ide
37− whenUriFile ide _uri $ \file ->
36+ whenUriFile _uri $ \file -> do
3837 modifyFilesOfInterest ide (S.insert file)
39− logInfo (ideLogger ide) $ "Opened text document: " <> getUri _uri
38+ logInfo (ideLogger ide) $ "Opened text document: " <> getUri _uri
4039
4140 ,LSP.didChangeTextDocumentNotificationHandler = withNotification (LSP.didChangeTextDocumentNotificationHandler x) $
4241 \_ ide (DidChangeTextDocumentParams VersionedTextDocumentIdentifier{_uri} _) -> do
@@ -51,7 +50,7 @@ setHandlersNotifications = PartialHandlers $ \WithMessage{..} x -> return x
5150 ,LSP.didCloseTextDocumentNotificationHandler = withNotification (LSP.didCloseTextDocumentNotificationHandler x) $
5251 \_ ide (DidCloseTextDocumentParams TextDocumentIdentifier{_uri}) -> do
5352 setSomethingModified ide
54− whenUriFile ide _uri $ \file ->
53+ whenUriFile _uri $ \file -> do
5554 modifyFilesOfInterest ide (S.delete file)
56− logInfo (ideLogger ide) $ "Closed text document: " <> getUri _uri
55+ logInfo (ideLogger ide) $ "Closed text document: " <> getUri _uri
5756 }