aboutsummaryrefslogtreecommitdiffstats
path: root/doc/info/xpybar.texinfo
blob: c8e277aad0ad6bee264289e5d84fba1539b21575 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
\input texinfo   @c -*-texinfo-*-

@c %**start of header
@setfilename xpybar.info
@settitle xpybar
@afourpaper
@documentencoding UTF-8
@documentlanguage en
@finalout
@c %**end of header


@dircategory Desktop environment
@direntry
* xpybar: (xpybar).                  Highly extensible minimalistic dock panel
@end direntry


@copying
Copyright @copyright{} 2015 Mattias Andrée

@quotation
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with no
Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
Texts. A copy of the license is included in the section entitled
``GNU Free Documentation License''.
@end quotation
@end copying

@ifnottex
@node Top
@top xpybar -- Highly extensible minimalistic dock panel
@insertcopying
@end ifnottex

@titlepage
@title xpybar
@subtitle Highly extensible minimalistic dock panel
@author by Mattias Andrée (maandree)

@page
@center `Monitor. @b{Everything.}'
@center `Makes sense to me.'
@vskip 0pt plus 1filll
@insertcopying
@page
@end titlepage

@contents



@menu
* Overview::                           Brief overview of @command{xpybar}.
* Invoking::                           Executing @command{xpybar}.
* Configuration scripting interface::  Configuring @command{xpybar}.
* GNU Free Documentation License::     Copying and sharing this manual.
@end menu



@node Overview
@chapter Overview
@command{xpybar} is a minimalistic dock panel with high extensibility.
Its source code is designed so that all parts of it can be replaced by
a configuration script. This is one of the reasons @command{xpybar} is
written in Python. Backwards compatibility will never break on
point-releases.

@command{xpybar} itself is very small, but it comes with a large array
of extensions (installed to @file{/usr/share/xpybar/plugins}). The
extensions come with associated configuration script examples
(installed to @command{/usr/share/xpybar/examples/plugins}.) There are
some additional examples in @command{/usr/share/xpybar/examples}.



@node Invoking
@chapter Invoking

@command{xpybar} recognises the following options:
@table @option{}
@item -c
@itemx --configurations FILE
Select configuration script. If not used, the program will search for
a file named @file{xpybarrc} or @file{.xpybarrc} (depending on the
directory) in the usual configuration directories.

The configuration script must be written in Python 3,
it will be loaded as part of the xpybar's source code itself.


@item -h
@itemx -?
@itemx --help
Print this help information.

@item -v
@itemx --version
Print program name and version.

@item -C
@itemx --copying
@itemx --copyright
Print copyright information.

@item -W
@itemx --warranty
Print non-warranty information.

@item --
Anything after @option{--} will be available to the configuration
script via the variable @code{config_file}, which is a list.
@end table



@node Configuration scripting interface
@chapter Configuration scripting interface

@code{xpybar} is configured by reimplement functions (and
running some code.) You can find the source code and read it at
@url{https://github.com/maandree/xpybar/tree/master/src/}.
If the documentation is not clear enough, please file a bug
att @url{https://github.com/maandree/xpybar/issues} or to
@code{maandree@@member.fsf.org}.

Graphic-functions are found in @file{x.py} and @file{__main__.py}.
You will also find some basic functions @file{__main__.py}.
Functions and classes that are useful for configurations
are located in @file{util.py}.

Please also refer to the example configuration scripts.



@node GNU Free Documentation License
@appendix GNU Free Documentation License
@include fdl.texinfo

@bye