hls-plugin-api-1.2.0.1: Haskell Language Server API for plugin communication
Safe HaskellNone
LanguageHaskell2010

Ide.PluginUtils

Synopsis

Documentation

data WithDeletions Source #

Instances

Instances details
Eq WithDeletions Source # 
Instance details

Defined in Ide.PluginUtils

normalize :: Range -> Range Source #

Extend to the line below and above to replace newline character.

diffText :: ClientCapabilities -> (Uri, Text) -> Text -> WithDeletions -> WorkspaceEdit Source #

Generate a WorkspaceEdit value from a pair of source Text

diffText' :: Bool -> (Uri, Text) -> Text -> WithDeletions -> WorkspaceEdit Source #

A pure version of diffText for testing

getClientConfig :: MonadLsp Config m => m Config Source #

Returns the current client configuration. It is not wise to permanently cache the returned value of this function, as clients can at runitime change their configuration.

getPluginConfig :: MonadLsp Config m => PluginId -> m PluginConfig Source #

Returns the current plugin configuration. It is not wise to permanently cache the returned value of this function, as clients can change their configuration at runtime.

pluginEnabled :: PluginMethod m => SMethod m -> PluginId -> Config -> Bool Source #

Parse the configuration to check if this plugin is enabled

fullRange :: Text -> Range Source #

Gets the range that covers the entire text

getPid :: IO Text Source #

Get the operating system process id for the running server instance. This should be the same for the lifetime of the instance, and different from that of any other currently running instance.

allLspCmdIds :: Text -> [(PluginId, [PluginCommand ideState])] -> [Text] Source #

usePropertyLsp :: (HasProperty s k t r, MonadLsp Config m) => KeyNameProxy s -> PluginId -> Properties r -> m (ToHsType t) Source #

Returns the value of a property defined by the current plugin.