Packages

final case class MetalsServerConfig(globSyntax: GlobSyntaxConfig = GlobSyntaxConfig.default, statusBar: StatusBarConfig = StatusBarConfig.default, slowTask: SlowTaskConfig = SlowTaskConfig.default, executeClientCommand: ExecuteClientCommandConfig = ExecuteClientCommandConfig.default, snippetAutoIndent: Boolean = MetalsServerConfig.binaryOption( "metals.snippet-auto-indent", default = true, ), isExitOnShutdown: Boolean = MetalsServerConfig.binaryOption( "metals.exit-on-shutdown", default = false, ), isHttpEnabled: Boolean = MetalsServerConfig.binaryOption( "metals.http", default = false, ), isInputBoxEnabled: Boolean = MetalsServerConfig.binaryOption( "metals.input-box", default = false, ), isVerbose: Boolean = MetalsServerConfig.binaryOption( "metals.verbose", default = false, ), remoteTimeout: String = System.getProperty(
"metals.timeout",
"1 minute",
)
, openFilesOnRenames: Boolean = false, renameFileThreshold: Int = 300, askToReconnect: Boolean = MetalsServerConfig.binaryOption( "metals.ask-to-reconnect", default = false, ), icons: Icons = Icons.fromString(System.getProperty("metals.icons")), statistics: StatisticsConfig = StatisticsConfig.default, compilers: PresentationCompilerConfigImpl = CompilersConfig(), allowMultilineStringFormatting: Boolean = MetalsServerConfig.binaryOption( "metals.allow-multiline-string-formatting", default = true, ), bloopPort: Option[Int] = Option(System.getProperty("metals.bloop-port")) .filter(_.forall(Character.isDigit(_))) .map(_.toInt), macOsMaxWatchRoots: Int = Option(System.getProperty("metals.macos-max-watch-roots")) .filter(_.forall(Character.isDigit(_))) .map(_.toInt) .getOrElse(32), loglevel: String = sys.props.get("metals.loglevel").map(_.toLowerCase()).getOrElse("info"))
extends Product with Serializable

Configuration parameters for the Metals language server. While these can be used to configure Metals, it's preferable that instead you configure Metals via InitializationOptions.

globSyntax

pattern used for DidChangeWatchedFilesRegistrationOptions.

statusBar

how to handle metals/status notifications.

slowTask

how to handle metals/slowTask requests.

executeClientCommand

whether client provides the ability to support the metals/executeClientCommand command.

snippetAutoIndent

if the client defaults to adding the identation of the reference line that the operation started on (relevant for multiline textEdits)

isExitOnShutdown

whether the client needs Metals to shut down manually on exit.

isHttpEnabled

whether to start the Metals HTTP client interface. This is needed for clients with limited support for UI dialogues that don't implement window/showMessageRequest yet.

isInputBoxEnabled

whether the client supports the metals/inputBox extension.

isVerbose

turn on verbose logging.

remoteTimeout

timeout period for retrieving references while using RemoteLanguageServer.

openFilesOnRenames

whether or not file should be opened when a rename occurs in an unopened file.

renameFileThreshold

amount of files that should be opened during a rename if the openFilesOnRenames is enabled.

askToReconnect

whether the user should be prompted to reconnect after a BuildServer connection is lost.

icons

what icon set to use for messages.

statistics

if all statistics in Metals should be enabled.

compilers

configuration for the PresentationCompilerConfig.

allowMultilineStringFormatting

whether or not multilineStringFormatting should be turned off. By default this is on, but Metals only supports a small subset of this, so it may be problematic for certain clients.

macOsMaxWatchRoots

The maximum number of root directories to watch on MacOS.

Linear Supertypes
java.io.Serializable, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. MetalsServerConfig
  2. Serializable
  3. Product
  4. Equals
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new MetalsServerConfig(globSyntax: GlobSyntaxConfig = GlobSyntaxConfig.default, statusBar: StatusBarConfig = StatusBarConfig.default, slowTask: SlowTaskConfig = SlowTaskConfig.default, executeClientCommand: ExecuteClientCommandConfig = ExecuteClientCommandConfig.default, snippetAutoIndent: Boolean = MetalsServerConfig.binaryOption( "metals.snippet-auto-indent", default = true, ), isExitOnShutdown: Boolean = MetalsServerConfig.binaryOption( "metals.exit-on-shutdown", default = false, ), isHttpEnabled: Boolean = MetalsServerConfig.binaryOption( "metals.http", default = false, ), isInputBoxEnabled: Boolean = MetalsServerConfig.binaryOption( "metals.input-box", default = false, ), isVerbose: Boolean = MetalsServerConfig.binaryOption( "metals.verbose", default = false, ), remoteTimeout: String = System.getProperty(
    "metals.timeout",
    "1 minute",
    )
    , openFilesOnRenames: Boolean = false, renameFileThreshold: Int = 300, askToReconnect: Boolean = MetalsServerConfig.binaryOption( "metals.ask-to-reconnect", default = false, ), icons: Icons = Icons.fromString(System.getProperty("metals.icons")), statistics: StatisticsConfig = StatisticsConfig.default, compilers: PresentationCompilerConfigImpl = CompilersConfig(), allowMultilineStringFormatting: Boolean = MetalsServerConfig.binaryOption( "metals.allow-multiline-string-formatting", default = true, ), bloopPort: Option[Int] = Option(System.getProperty("metals.bloop-port")) .filter(_.forall(Character.isDigit(_))) .map(_.toInt), macOsMaxWatchRoots: Int = Option(System.getProperty("metals.macos-max-watch-roots")) .filter(_.forall(Character.isDigit(_))) .map(_.toInt) .getOrElse(32), loglevel: String = sys.props.get("metals.loglevel").map(_.toLowerCase()).getOrElse("info"))

    globSyntax

    pattern used for DidChangeWatchedFilesRegistrationOptions.

    statusBar

    how to handle metals/status notifications.

    slowTask

    how to handle metals/slowTask requests.

    executeClientCommand

    whether client provides the ability to support the metals/executeClientCommand command.

    snippetAutoIndent

    if the client defaults to adding the identation of the reference line that the operation started on (relevant for multiline textEdits)

    isExitOnShutdown

    whether the client needs Metals to shut down manually on exit.

    isHttpEnabled

    whether to start the Metals HTTP client interface. This is needed for clients with limited support for UI dialogues that don't implement window/showMessageRequest yet.

    isInputBoxEnabled

    whether the client supports the metals/inputBox extension.

    isVerbose

    turn on verbose logging.

    remoteTimeout

    timeout period for retrieving references while using RemoteLanguageServer.

    openFilesOnRenames

    whether or not file should be opened when a rename occurs in an unopened file.

    renameFileThreshold

    amount of files that should be opened during a rename if the openFilesOnRenames is enabled.

    askToReconnect

    whether the user should be prompted to reconnect after a BuildServer connection is lost.

    icons

    what icon set to use for messages.

    statistics

    if all statistics in Metals should be enabled.

    compilers

    configuration for the PresentationCompilerConfig.

    allowMultilineStringFormatting

    whether or not multilineStringFormatting should be turned off. By default this is on, but Metals only supports a small subset of this, so it may be problematic for certain clients.

    macOsMaxWatchRoots

    The maximum number of root directories to watch on MacOS.

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. val allowMultilineStringFormatting: Boolean
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. val askToReconnect: Boolean
  7. val bloopPort: Option[Int]
  8. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
  9. val compilers: PresentationCompilerConfigImpl
  10. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  11. val executeClientCommand: ExecuteClientCommandConfig
  12. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  13. val globSyntax: GlobSyntaxConfig
  14. val icons: Icons
  15. val isExitOnShutdown: Boolean
  16. val isHttpEnabled: Boolean
  17. val isInputBoxEnabled: Boolean
  18. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  19. val isVerbose: Boolean
  20. val loglevel: String
  21. val macOsMaxWatchRoots: Int
  22. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  23. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  24. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  25. val openFilesOnRenames: Boolean
  26. def productElementNames: Iterator[String]
    Definition Classes
    Product
  27. val remoteTimeout: String
  28. val renameFileThreshold: Int
  29. val slowTask: SlowTaskConfig
  30. val snippetAutoIndent: Boolean
  31. val statistics: StatisticsConfig
  32. val statusBar: StatusBarConfig
  33. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  34. def toString(): String
    Definition Classes
    MetalsServerConfig → AnyRef → Any
  35. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  36. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  37. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from java.io.Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped