/status-bar

Status bar for Atom

Primary LanguageCoffeeScriptMIT LicenseMIT

Atom and all repositories under Atom will be archived on December 15, 2022. Learn more in our official announcement

Status Bar package

OS X Build Status Windows Build Status Dependency Status

Display information about the current editor such as cursor position, file path, grammar, current branch, ahead/behind commit counts, and line diff count.

Configuration

The status bar package accepts the following configuration values:

  • status-bar.cursorPositionFormat — A string that describes the format to use for the cursor position status bar tile. It defaults to %L:%C. In the format string, %L represents the 1-based line number and %C represents the 1-based column number.

  • status-bar.selectionCountFormat — A string that describes the format to use for the selection count status bar tile. It defaults to (%L, %C). In the format string, %L represents the 1-based line count and %C represents the 1-based character count.

API

This package provides a service that you can use in other Atom packages. To use it, include status-bar in the consumedServices section of your package.json:

{
  "name": "my-package",
  "consumedServices": {
    "status-bar": {
      "versions": {
        "^1.0.0": "consumeStatusBar"
      }
    }
  }
}

Then, in your package's main module, call methods on the service:

module.exports =
  activate: -> # ...

  consumeStatusBar: (statusBar) ->
    @statusBarTile = statusBar.addLeftTile(item: myElement, priority: 100)

  deactivate: ->
    # ...
    @statusBarTile?.destroy()
    @statusBarTile = null

The status-bar API has four methods:

  • addLeftTile({ item, priority }) - Add a tile to the left side of the status bar. Lower priority tiles are placed further to the left.
  • addRightTile({ item, priority }) - Add a tile to the right side of the status bar. Lower priority tiles are placed further to the right.

The item parameter to these methods can be a DOM element, a jQuery object, or a model object for which a view provider has been registered in the the view registry.

  • getLeftTiles() - Retrieve all of the tiles on the left side of the status bar.
  • getRightTiles() - Retrieve all of the tiles on the right side of the status bar

All of these methods return Tile objects, which have the following methods:

  • getPriority() - Retrieve the priority that was assigned to the Tile when it was created.
  • getItem() - Retrieve the Tile's item.
  • destroy() - Remove the Tile from the status bar.