X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=docs%2Fi3bar-protocol.html;h=a9478fc3ac4fb4849c0ece3c2b5f98f0ce301200;hb=90423e9260dc217408b999bea3de1e29085dd56c;hp=b2fd9f444ef5fd4caadf452545491ecdca082474;hpb=3b669adf6e67997ea586e57d692b858f64648658;p=i3%2Fi3.github.io diff --git a/docs/i3bar-protocol.html b/docs/i3bar-protocol.html index b2fd9f4..a9478fc 100644 --- a/docs/i3bar-protocol.html +++ b/docs/i3bar-protocol.html @@ -2,15 +2,15 @@ "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> - + - + i3: i3bar input protocol @@ -22,8 +22,9 @@ window.onload = function(){asciidoc.footnotes();}
@@ -40,7 +41,7 @@ provides support for colors, urgency, shortening and easy manipulation.

-

1. Rationale for chosing JSON

+

1. Rationale for choosing JSON

Before describing the protocol, let’s cover why JSON is a building block of this protocol.

@@ -103,7 +104,7 @@ consists of a single JSON hash:

All features example:

-
{ "version": 1, "stop_signal": 10, "cont_signal": 12 }
+
{ "version": 1, "stop_signal": 10, "cont_signal": 12, "click_events": true }

(Note that before i3 v4.3 the precise format had to be {"version":1}, byte-for-byte.)

@@ -176,6 +177,15 @@ cont_signal The default value (if none is specified) is SIGCONT.

+
+click_events +
+
+

+ If specified and true i3bar will write an infinite array (same as above) + to your stdin. +

+
@@ -186,9 +196,8 @@ full_text

- The most simple block you can think of is one which just includes the - only required key, the full_text key. i3bar will display the string - value and that’s it. + The full_text will be displayed by i3bar on the status line. This is the + only required key.

@@ -221,6 +230,22 @@ color

+background +
+
+

+ Overrides the background color for this particular block. +

+
+
+border +
+
+

+ Overrides the border color for this particular block. +

+
+
min_width
@@ -230,6 +255,10 @@ min_width will be padded to the left and/or the right side, according to the align key. This is useful when you want to prevent the whole status line to shift when value take more or less space between each iteration. + The value can also be a string. In this case, the width of the text given + by min_width determines the minimum width of the block. This is useful + when you want to set a sensible minimum width regardless of which font you + are using, and at what particular size.

@@ -237,7 +266,7 @@ align

- Align text on the center (default), right or left of the block, when + Align text on the center, right or left (default) of the block, when the minimum width of the latter, specified by the min_width key, is not reached.

@@ -264,6 +293,38 @@ urgent space (for non-root users). The presentation of urgency is up to i3bar.

+
+separator +
+
+

+ A boolean which specifies whether a separator line should be drawn + after this block. The default is true, meaning the separator line will + be drawn. Note that if you disable the separator line, there will still + be a gap after the block, unless you also use separator_block_width. +

+
+
+separator_block_width +
+
+

+ The amount of pixels to leave blank after the block. In the middle of + this gap, a separator line will be drawn unless separator is + disabled. Normally, you want to set this to an odd value (the default + is 9 pixels), since the separator line is drawn in the middle. +

+
+
+markup +
+
+

+ A string that indicates how the text of the block should be parsed. Set to + "pango" to use Pango markup. + Set to "none" to not use any markup (default). +

+

If you want to put in your own entries into a block, prefix the key with an underscore (_). i3bar will ignore all keys it doesn’t understand, and prefixing @@ -277,6 +338,16 @@ of the i3bar protocol.

"_ethernet_vendor": "Intel" } +

In the following example, the longest (widest) possible value of the block is +used to set the minimum width:

+
+
+
{
+ "full_text": "CPU 4%",
+ "min_width": "CPU 100%",
+ "align": "left"
+}
+

An example of a block which uses all possible entries follows:

Example:

@@ -285,11 +356,65 @@ of the i3bar protocol.

"full_text": "E: 10.0.0.1 (1000 Mbit/s)", "short_text": "10.0.0.1", "color": "#00ff00", + "background": "#1c1c1c", + "border": "#ee0000", "min_width": 300, "align": "right", "urgent": false, "name": "ethernet", - "instance": "eth0" + "instance": "eth0", + "separator": true, + "separator_block_width": 9 +} + + +
+

2.3. Click events

+

If enabled i3bar will send you notifications if the user clicks on a block and +looks like this:

+
+
+name +
+
+

+ Name of the block, if set +

+
+
+instance +
+
+

+ Instance of the block, if set +

+
+
+x, y +
+
+

+ X11 root window coordinates where the click occurred +

+
+
+button +
+
+

+ X11 button ID (for example 1 to 3 for left/middle/right mouse button) +

+
+
+

Example:

+
+
+
{
+ "name": "ethernet",
+ "instance": "eth0",
+ "button": 1,
+ "x": 1320,
+ "y": 1400
 }