summaryrefslogtreecommitdiffstats
path: root/doc/rofi-theme.5.markdown
diff options
context:
space:
mode:
Diffstat (limited to 'doc/rofi-theme.5.markdown')
-rw-r--r--doc/rofi-theme.5.markdown86
1 files changed, 43 insertions, 43 deletions
diff --git a/doc/rofi-theme.5.markdown b/doc/rofi-theme.5.markdown
index bec95423..99e98e5f 100644
--- a/doc/rofi-theme.5.markdown
+++ b/doc/rofi-theme.5.markdown
@@ -4,7 +4,7 @@
**rofi-theme** - Rofi theme format files
-## GETTING STARTED WITH THEMING
+## Getting started with theming
The easiest way to get started theming rofi is by modifying your existing theme.
@@ -150,7 +150,7 @@ If you want to see the complete theme, including the modification you can run:
rofi -dump-theme
```
-## DEFAULT THEME LOADING
+## Default theme loading
By default, rofi loads the default theme. This theme is **always** loaded.
The default configuration contains:
@@ -174,14 +174,14 @@ To see the default theme, run the following command:
rofi -no-config -dump-theme
```
-## DESCRIPTION
+## Description
The need for a new theme format was motivated by the fact that the way rofi handled widgets has changed. From a very
static drawing of lines and text to a nice structured form of packing widgets. This change made it possible to provide a
more flexible theme framework. The old theme format and config file are not flexible enough to expose these options in a
user-friendly way. Therefore, a new file format has been created, replacing the old one.
-## FORMAT SPECIFICATION
+## Format specification
## Encoding
@@ -370,7 +370,7 @@ The current theme format supports different types:
Some of these types are a combination of other types.
-## String
+### String
* Format: `"[:print:]+"`
@@ -392,7 +392,7 @@ text {
The following special characters can be escaped: `\b`, `\f`, `\n`, `\r`, `\t`, `\v`, `\` and `"`.
-## Integer
+### Integer
* Format: `[-+]?[:digit:]+`
@@ -404,7 +404,7 @@ For examples:
lines: 12;
```
-## Real
+### Real
* Format: `[-+]?[:digit:]+(\.[:digit:]+)?`
@@ -418,7 +418,7 @@ real: 3.4;
The following is not valid: `.3`, `3.` or scientific notation: `3.4e-3`.
-## Boolean
+### Boolean
* Format: `(true|false)`
@@ -431,7 +431,7 @@ For example:
dynamic: false;
```
-## Image
+### Image
**rofi** support a limited set of background-image formats.
@@ -446,7 +446,7 @@ dynamic: false;
Where the `path` is a string, and `stop` color is of type color.
-## Color
+### Color
**rofi** supports the color formats as specified in the CSS standard (1,2,3 and some of CSS 4)
@@ -502,7 +502,7 @@ background-color: transparent;
text-color: Black;
```
-## Text style
+### Text style
* Format: `(bold|italic|underline|strikethrough|none)`
@@ -524,7 +524,7 @@ The following options are available on pango 1.50.0 and up:
* `capitalize`: Capitalize the text.
-## Line style
+### Line style
* Format: `(dash|solid)`
@@ -533,7 +533,7 @@ It currently supports:
* `dash`: a dashed line, where the gap is the same width as the dash
* `solid`: a solid line
-## Distance
+### Distance
* Format: `{Integer}px`
* Format: `{Real}em`
@@ -559,7 +559,7 @@ For example:
On a full-HD (1920x1080) monitor, it defines a padding of 192 pixels on the left
and right side and 108 pixels on the top and bottom.
-### Calculating sizes
+#### Calculating sizes
Rofi supports some maths in calculating sizes. For this it uses the CSS syntax:
@@ -586,7 +586,7 @@ It supports the following operations:
It uses the C precedence ordering.
-## Padding
+### Padding
* Format: `{Integer}`
* Format: `{Distance}`
@@ -604,7 +604,7 @@ The different number of fields in the formats are parsed like:
* 4 fields: `top`, `right`, `bottom`, `left`
-## Border
+### Border
* Format: `{Integer}`
* Format: `{Distance}`
@@ -622,7 +622,7 @@ style property.
> When no unit is specified, pixels are assumed.
-## Position
+### Position
Indicate a place on the window/monitor.
@@ -638,7 +638,7 @@ Indicate a place on the window/monitor.
* Format: `(center|east|north|west|south|north east|north west|south west|south east)`
-## Visibility
+### Visibility
It is possible to hide widgets:
@@ -649,7 +649,7 @@ inputbar {
```
-## Reference
+### Reference
* Format: `@{PROPERTY NAME}`
@@ -690,32 +690,32 @@ If the property `width` is set globally (`*{}`) that value is used, if the prope
`width` is not set, the default value is used.
-## Orientation
+### Orientation
* Format: `(horizontal|vertical)`
Specify the orientation of the widget.
-## Cursor
+### Cursor
* Format: `(default|pointer|text)`
Specify the type of mouse cursor that is set when the mouse pointer is over the widget.
-## List of keywords
+### List of keywords
* Format: `[ keyword, keyword ]`
A list starts with a '[' and ends with a ']'. The entries in the list are comma-separated.
The `keyword` in the list refers to an widget name.
-## List of values
+### List of values
* Format: `[ value, value, ... ]`
An list starts with a '[' and ends with a ']'. The entries in the list are comma-separated.
-## Environment variable
+### Environment variable
* Format: `${:alnum:}`
@@ -742,7 +742,7 @@ window {
If environment WIDTH is set, then that value is parsed, otherwise the default value (`40%`).
-## Inherit
+### Inherit
* Format: `inherit`
@@ -755,7 +755,7 @@ mainbox {
```
-## ELEMENTS PATHS
+## Elements paths
Element paths exists of two parts, the first part refers to the actual widget by name.
Some widgets have an extra state.
@@ -780,11 +780,11 @@ element selected {
}
```
-## SUPPORTED ELEMENT PATH
+### Supported element paths
-## Name
+### Name
-The current widgets available in **rofi**:
+The default widgets available in **rofi** and the default hierarchic:
* `window`
* `overlay`: the overlay widget.
@@ -813,7 +813,7 @@ Note that these path names match the default theme. Themes that provide a custom
elements, and structure.
-## State
+### State
State: State of widget
@@ -821,7 +821,7 @@ Optional flag(s) indicating state of the widget, used for theming.
These are appended after the name or class of the widget.
-### Example:
+#### Example:
`button selected.normal { }`
@@ -829,7 +829,7 @@ These are appended after the name or class of the widget.
Currently only the entrybox and scrollbar have states:
-### Entrybox:
+#### Entrybox:
`{visible modifier}.{state}`
@@ -857,17 +857,17 @@ nametotextbox selected.active {
Sets all selected textboxes marked active to the given text and background color.
Note that a state modifies the original element, it therefore contains all the properties of that element.
-### Scrollbar
+#### Scrollbar
The scrollbar uses the `handle` state when drawing the small scrollbar handle.
This allows the colors used for drawing the handle to be set independently.
-## SUPPORTED PROPERTIES
+## Widget properties
The following properties are currently supported:
-### all widgets:
+### all widgets
* **enabled**: enable/disable rendering of the widget
* **padding**: padding
@@ -887,7 +887,7 @@ The following properties are currently supported:
* **cursor**: cursor
Type of mouse cursor that is set when the mouse pointer is hovered over the widget.
-### window:
+### window
* **font**: string
The font used in the window
@@ -912,21 +912,21 @@ The following properties are currently supported:
The offset of the window to the anchor point, allowing you to push the window left/right/up/down
-### scrollbar:
+### scrollbar
* **background-color**: color
* **handle-width**: distance
* **handle-color**: color
* **border-color**: color
-### box:
+### box
* **orientation**: orientation
Set the direction the elements are packed.
* **spacing**: distance
Distance between the packed elements.
-### textbox:
+### textbox
* **background-color**: color
* **border-color**: the color used for the border around the widget.
@@ -959,7 +959,7 @@ The following properties are currently supported:
* **text-outline-width**: The width of the border around the text. (Double)
* **text-outline-color**: The color to use for the text outline. (Color)
-### listview:
+### listview
* **columns**: integer
Number of columns to show (at least 1)
* **fixed-height**: boolean
@@ -990,7 +990,7 @@ The following properties are currently supported:
Each element is a `box` called `element`. Each `element` can contain an `element-icon` and `element-text`.
-### listview text highlight:
+#### listview text highlight
The `element-text` widget in the `listview` is the one used to show the text.
On this widget set the `highlight` property (only place this property is used) to change
@@ -1291,7 +1291,7 @@ If both dummy widgets are set to expand, `child` will be centered. Depending on
remaining space will be equally divided between both dummy and child widget (expand enabled), or both dummy widgets
(expand disabled).
-## DEBUGGING
+## Debugging
To get debug information from the parser, run rofi like:
@@ -1434,7 +1434,7 @@ A name is resolved as a filename by appending the `.rasi` extension.
-## EXAMPLES
+## Examples
Several examples are installed together with **rofi**. These can be found in `{datadir}/rofi/themes/`, where
`{datadir}` is the install path of **rofi** data. When installed using a package manager, this is usually: `/usr/share/`.