WMPINBOARD(1) | wmpinboard | WMPINBOARD(1) |
NAME¶
wmpinboard - a Window Maker dock app resembling a miniature pinboardSYNOPSIS¶
wmpinboard [options]
OPTIONS¶
wmpinboard's command-line options can be roughly divided into four groups: configuration directives, run-time options, command-line actions, and general options. Generally, wmpinboard supports GNU-style long options (which may be abbreviated unambiguously) as well as short ones for parameters used more commonly.- `--font=FONT'
- Makes wmpinboard use the specified font;
`FONT' can be one of the shortcuts listed when
running the program with " `--help'" as a
parameter, or a complete X descriptor of a fixed size 6x10 font. The
pinboard must be empty in order for this option to be applicable.
For more details, see the section on "FREQUENTLY ASKED
QUESTIONS".
- `--theme=FILE'
- Configures wmpinboard to load the specified theme when started
interactively the next time. `FILE' is the location
of a wmpinboard theme file (typically with a file name extension of
.wmpbtheme). If it can't be loaded when run interactively, the
program will revert to its default theme. If `FILE'
is an empty string or "default", the use of a custom theme will
be deactivated.
Themes affect wmpinboard's appearance, in particular, its pinboard,
edit mode and alarm panel pixmaps, the latter's digits, and possibly the
location of the pinboard mode label area (via which notes are created).
For downloading themes, or if you're inclined to create one yourself and
need instructions, check out the program's home page (see the section on
"AUTHOR" or wmpinboard's
"`--help'" output for the URL). The themes
kit containing instructions and samples on how to create theme files for
wmpinboard that can be downloaded there is also included with the
source package of the program.
- `--alarm-cmd=CMD'
- Configures `CMD' as the command to be executed on
alarms. E.g., you could use "`xkbbell'" to cause the program to
beep on such occassions, or make it run some sound-playing program. To
reset the alarm command to none, make `CMD' a
zero-length string.
- `-d DISPLAY' or `--display=DISPLAY'
- Uses the specified X display rather than the default one.
- `-c' or `--click-to-focus'
- This turns on some emulation of a click-based keyboard focus mode. See the
section on "FREQUENTLY ASKED QUESTIONS".
- `-t TIME' or `--timeout=TIME'
- Sets the edit mode timeout (i.e., the number of seconds of idleness after
which edit mode is terminated automatically) to
`TIME' seconds. The compile-time default is 60s, but
this may have been changed for your particular build; run with
`-v' if in doubt to check that. Specifying a value
of 0 (zero) will disable the timeout.
- `-n' or `--normal-state'
- Forces wmpinboard to run in so-called NormalState, which is
preferred by AfterStep's Wharf.
- `-w' or `--withdrawn-state'
- Forces the program to run in so-called WithdrawnState, as desired by the
Window Maker dock. This option and the previous one are mutually
exclusive. Note also that wmpinboard tries to auto-detect whether
Window Maker is running and sets itself up accordingly. Using
`-n' or `-w' should only be
necessary in case those heuristics fail on your system for some reason or
other.
- `--light'
- Use this switch to suppress animations.
- `--dump'
- This dumps the contents of all notes, replacing line breaks by spaces
(unless preceded by a hyphen) and shortening sequences of blanks. The list
of dumped strings will be sorted by color groups. If you use special
characters in your notes, make sure your terminal's running with the same
character set as wmpinboard, or what you'll see might have a
garbage-like quality.
Each line of output represents one note and is prefixed by the internal
number currently identifying the respective note and, if an alarm
is configured for the respective note, time and date (or
"daily").
- `--dump-raw'
- Unlike the "cooked" dump described above, this just dumps the
raw contents of all notes without applying any kind of formatting. May
come in handy if your notes happen to contain E-mail addresses or other
things for which lines 10 characters wide are too narrow.
- `--del=NUMBER'
- This option will remove the note identified by
`NUMBER' from the pinboard.
`NUMBER' is a number determined by the output of
either dump option, which should be consulted right before using this one,
since note numbers may change when notes are moved around on the board or
others are removed.
- `--add=STRING'
- When run with this option, wmpinboard will add a new note (provided
the maximal number of notes has not yet been reached) at a random position
on the board, with contents `STRING', word-wrapping
the text at the end of the note's lines where necessary (after white space
and hyphens). If due to this wrapping, the entire string cannot be stored
on the note, the remainder will be discarded silently.
In order to create a note with a certain color, the string can be prefixed
by a color code specifying the group of colors which a random color is to
be selected from (code letters are recognized case-insensitively):
%G - green %Y - yellow/white %R - reddish %B - blue
Alternatively or additionally, you may specify a position code as "%1" through "%9", defining an approximate position on the board where the note is to be placed. Each of the nine figures corresponds to a ninth of the board with its index assigned in accordance with the layout of your keypad (i.e., "%1" meaning lower left, "%9" upper right corner, and so forth). Thus,wmpinboard --add '%g%5test'
will place a green note saying "test" at the center of the board. (Note: The "%" character can be escaped by a second one if you want to add an un-prefixed string starting with a percent character.)
- `--add-raw=STRING'
- Via this option, a new note can be added from the command line (provided
that this won't exceed the maximum number of notes).
`STRING' specifies the raw contents of the
note, as printed by `--dump-raw'. The same set of
color group and position codes as for the previous option applies.
- `-h' or `--help'
- This prints a help screen listing command line options together with brief
descriptions.
- `-i' or `--info'
- Prints information about the current user configuration (font, theme,
alarm command) and some useless statistics.
- `-v' or `--version'
- This prints some more detailed version information, in particular, which compile-time settings this binary was built with.
DESCRIPTION¶
wmpinboard operates in basically two different modes, namely, the pinboard view and edit mode. Furthermore, a panel of buttons granting access to extended options can be popped up in edit mode, which in turn allows you to display the alarm panel to configure alarm settings for the current note.- •
- Add a note, by left-clicking on the board's "TO DO"
label. This creates a new, blank, randomly-colored note at a random
position on the board and puts wmpinboard in edit mode (see
below). If you prefer to place a new note at a certain position before
being prompted to enter its contents, this can be done by moving the mouse
cursor after having clicked on the label. This will realize the note and
allow you to drag it to a position of your choice. wmpinboard will
switch to edit mode as soon as you release the mouse button.
- •
- Edit/view a note, by left-clicking on a note. This switches
to edit mode (described below).
- •
- Move a note, by dragging it using the right mouse button. This also
raises the note in question on top of all others. Depending on its
horizontal position, the note will be tilted automatically. As a
side-effect, a single brief right-click can be used to raise a note on top
of overlapping ones without moving it.
By dragging a note with the left mouse button, you can move it without
changing its level with respect to other notes, i.e., without raising it
on top of all others.
- •
- Enter text. wmpinboard supports user-selectable fonts and dead keys, so you should be able to enter any characters that are usually accessible via your keyboard and have them displayed correctly. Furthermore, the cursor can be moved around using the arrow keys (or EMACS-style via [Ctrl]-[N]/[P]/[F]/[B], if you are so inclined). Alternatively, it can be placed explicitly by left-clicking where you want it to be. Other special keys that are supported include:
- [PgUp]/[PgDn]
- Places the cursor on character 1/59, respectively.
- [Home]/[End]
- Places the cursor at the textual start or end of the current line.
- [Del]
- Deletes the character currently under the text cursor and shifts the
remaining text on the current line to the left; if the current line is
blank, removes it and shifts all lines below up by one line.
- [Backspace]
- See [Del], but affects the character on the left of the cursor.
- [Ins]
- Toggles inserting/overwriting of existing text; the current mode is
indicated by a cursor change (block cursor means insert mode).
- [Enter]
- In insert mode, wraps the current line at the cursor's position; in
overwrite mode (underscore cursor), merely moves the cursor to the start
of the next line.
- [Ctrl]-[Y], -[Z]
- Removes an entire (intermediate) line, shifting those below up by one, and
places the cursor at the start of the current line.
- [Esc]
- Quits edit mode and returns to the pinboard view.
- [Shift]-[Left]/[Right]
- Cycles through all notes currently on the pinboard.
- [Shift]-[Up]/[Down]
- Cycles through all notes that are roughly the same color as the
current one. For this purpose, colors have internally been divided into
four groups: green, white/yellow, reddish, blue.
- ([Shift]-)[Tab]
- Cycles (backwards) through availabe note colors.
- •
- Cut'n'paste text. Despite the limitations implied, wmpinboard has support for cutting & pasting to and from the X clipboard:
- •
- In order to copy text to the clipboard, select the desired segment via
either the left or the right mouse button: the left one will copy the text
post-formatted as done by the command line switch
`--dump' (see the section on "OPTIONS");
the right button will copy the raw selection. Similarly, a left double
click will select the word (i.e., all adjoining non-blank characters) at
the respective position, a right one will do the same but neglect line
breaks as delimiters. Additionally, you can copy a note's entire raw
contents by pressing [Ctrl]-[R]; [Ctrl]-[C] will do the same with applied
post-formatting.
- •
- To paste the clipboard's contents, press the middle button wherever the insertion is supposed to happen. This will insert the clipboard's current contents, trying to word-wrap the text (at white space and after hyphens). If in insert mode, following text will be shifted towards the end of the note, trying to word-wrap that as well. If you wish to paste something without word-wrapping (e.g., an URL containing a hyphen), paste it via [Ctrl]-[I] (think [i]nsert). This will paste the clipboard's raw contents at the current location of the cursor, shifting subsequent text if in insert mode (not trying to word-wrap that either).
Obvious limitations you should be aware of include:
- •
- As is usually the case (about wmpinboard, anyway), size matters. As
you know, a note can hold only up to 59 characters, so trying to paste
longer strings will result in those being truncated.
- •
- If the text to be pasted is formatted in some way or other, this won't be
the case any more after it has been pasted: wmpinboard replaces new
line characters by blanks and, when pasting using the mouse, tries to
word-wrap text.
- •
- The information stored in the cut buffer needn't necessarily be compatible with wmpinboard in that it may be encoded with another character set.
- •
- Leave edit mode. This is achieved by left-clicking on the
triangle in the lower right-hand side corner. If the note is completely
empty, it will be removed from the board. In any case, this returns to the
pinboard view.
- •
- Pop up a panel with some further options to choose from.
This is done by right-clicking on the aforementioned triangle. To learn
what the panel is there for, see the corresponding section below.
- •
- Draw a sketch. This mode can be activated via the panel, and
deactivated by either right-clicking somewhere on the note or opening the
panel again. While in drawing mode, the mouse pointer is
pencil-shaped, and drawing can be done by keeping the left mouse button
pressed and dragging the mouse, just as you'd expect. Sketch and text may
overlap each other, but keyboard input is ignored while in drawing mode.
- •
- Erase a sketch. Just like DRAWing mode, this mode is entered via the panel, and can be quit just like the former. In erase mode, the text is hidden, so you needn't guess whether a pixel belongs to an entered character or a drawn sketch. Note that the erase cursor's point is slightly larger than the one used when drawing.
+---+---+---+---+ ⎪ a ⎪ c ⎪ e ⎪ g ⎪ +---+---+---+---+ ⎪ b ⎪ d ⎪ f ⎪ h ⎪ +---+---+---+---+The buttons bear tiny icons which are meant to suggest what they do, which isn't all that easy on a 12x12 pixels area. `:^)' Here's a description of what each button does:
- (a)
- Left-clicking on this button opens and closes the alarm panel (see
below), which allows you to configure alarm settings for the note being
edited. When the alarm panel is visible, the alarm is activated. To
turn it off, press the button again and make the panel disappear.
- (b)
- This button allows one to cycle through all colors available for notes (20
of them). Clicking on it won't close the panel, so this can be done
repeatedly. Using the left mouse button traverses the colors in ascending,
using the right button in descending order. Note: colors can also
be changed via a keyboard shortcut in edit mode (see that section).
- (c)
- This button closes the panel and returns to edit mode, with
the sketch- drawing feature enabled (see above).
- (d)
- Closes the panel and returns to edit mode, with the sketch-
erasing feature enabled (see above). Don't panic if entered text
vanishes all of a sudden when you do this: this is because
wmpinboard intentionally hides it to eradicate the need for you to
make wild guesses as to what's entered text and which pixels belong to a
sketch.
- (e)
- This button removes all entered text on the current note and places the
text cursor on the very first character. Besides, it closes the
panel, thus returning to edit mode.
- (f)
- Pressing this button completely removes a drawn sketch on the current note
and returns to edit mode.
- (g)
- This option removes the *entire* note from the board and returns to
pinboard view.
- (h)
- This button merely closes the panel (and thus puts you back in
edit mode). The same can be achieved by simply right-clicking in
this view.
FREQUENTLY ASKED QUESTIONS¶
- •
- Q: Is a "pinboard" this small really of any use?
A: Of course the limited size imposes certain restrictions, but if
you think about it, you'll agree that a real life pinboard reminds you of
things by the mere existence of notes being pinned to it. In order to read
what they say, you have to step close and, possibly, detach the note.
Quite similarly, wmpinboard reminds you of things by facing you with
colored representations of notes on your screen. To find out what it was
you intended them to remind you of, all you have to do is click on a note,
which will then be displayed full size. Furthermore, the alarm feature
introduced in a later version allows for even more explicit reminders and
thus renders wmpinboard even more powerful in a way than any
real-life cork board. `:-)'
By choosing from a variety of possible colors, you can assign particular
colors to certain kinds of reminders, which may further enhance
wmpinboard's usability. Moreover, you can place certain notes on
certain areas of the board to emphasize their category, urgency, etc. It's
up to you what to make of it.
Finally, by adding drawing capabilities, I've definitely overcome the
contents quantity barrier imposed by the maximum number of 59 characters,
for as everyone knows, a picture is worth more than a thousand words.
*grin*
- •
- Q: I don't live in an English-speaking country, so what about
extended characters (umlauts, accents, cyrillic alphabet)?
A: wmpinboard allows you to use an arbitrary 8bit X font,
provided that its characters are of a fixed size of 6x10 (or, deprecated
but possible, anything <= 7x10) pixels. The default font is
"6x10" (more precisely, it's called
"-misc-fixed-medium-r-normal--10-100-75-75-c-*-ISO8859-1"), an
ISO8859-1 (Latin1) font which should be part of every XFree installation.
In order to make wmpinboard use another font, run it as
$ wmpinboard --font=FONT
where FONT is either a shortcut for a compiled-in font name (see the section on "OPTIONS" for a list of those) or a valid, complete X font descriptor. This is a configuration directive, meaning that no other instance of wmpinboard may be running at the time. Note that this only works if there are no more notes on the board. It's intentionally been made impossible to change the font while there are notes saved in wmpinboard's data file, since this might result in garbage being displayed. Of course even a font specified via a shortcut has to exist on your system in order to be usable. If a configured custom font cannot be loaded or has invalid dimensions, wmpinboard will try to revert. Note that this won't affect the font name saved along with the data, though.
- •
- Q: How can I disable those vexing, superfluous animations?
A:
$ wmpinboard --light
- •
- Q: Why aren't those animations smooth all of the time? Sometimes it
looks like they're being skipped entirely.
A: This presumably is a multitasking issue: depending on the current
system load and wmpinboard's/the X server's recent CPU usage
history, it may take a moment until the scheduling has been adapted to the
suddenly increased CPU load implied by displaying the animation, and short
as it is, it may already be finished until this has happened, i.e., it's
the X server lagging behind in updating the program's display if
wmpinboard's been idle for some time prior to that. It may sound
paradoxical, but the effect is the more likely to show the lower the
system's load is. I don't see a way to avoid this effect--either this, or
you turn off animations altogether.
- •
- Q: When I leave wmpinboard idle in edit mode for some time,
edit mode is terminated automatically. Is that intended?
A: Yes. After 60 idle seconds (that's the default; see the section
on "OPTIONS") in edit mode (no mouse click and no keyboard
input), edit mode is terminated automatically. If the note being edited
happens to be blank, it will be discarded (or removed if an existing note
is being edited).
This timeout can, however, be adjusted according to your preferences or
turned off using the `-t' parameter. See the section
on "OPTIONS" for this.
- •
- Q: When does wmpinboard save its data? A: Notes data is saved on each of these occasions:
- •
- whenever edit mode is terminated
- •
- when you switch notes in edit mode (via [Shift]-[arrow key])
- •
- when a note has been moved on the board
- •
- when an interactive instance is running and you run wmpinboard from
the command line, making it dump, add, or delete notes
- •
- when killed via SIGINT or SIGTERM and edit mode is active
Notes are saved to a file called .wmpinboarddata in your home directory
(see the section on "FILES").
- •
- Q: I've tried my best and littered the entire pinboard with quite a
lot of notes. Now I can't seem to be able to add another one.
A: There's a compile-time limit of 20 notes. I think more notes on
this tiny a board really don't make any sense.
- •
- Q: I've explicitly configured my window manager for click-based rather than mouse-following focus, but wmpinboard's focus follows the mouse regardless. Can I change this? A: By default, wmpinboard actively claims the keyboard input focus (if it's in note edit mode) whenever the pointer is moved over the application's area. Since wmpinboard is a dock applet, i.e., a withdrawn rather than a "real" X window, it can't be assigned a focus in the same way as to the latter ones. However, running wmpinboard with the parameter `-c' will make it emulate some sort of click-based focusing. This means, it actively claims the keyboard focus only on these occasions:
- •
- when a new note is created (not when you click on an existing
note--you'll have to explicitly click on the editing area to make it claim
focus; this way, you can just view a note without any change to keyboard
focus)
- •
- when you click somewhere on the text area in edit mode
Once keyboard-focused, wmpinboard will keep it until another window is
explicitly focused (usually by clicking on its title bar or border). To focus
wmpinboard again when it's lost focus, you'll have to click on its text
area in edit mode. This click will only focus the application and not have the
usual cursor-positioning effect.
This feature is to be considered experimental since I'm not sure of how much use
it really is. A mouse-following focus is the recommended mode of
operation.
- •
- Q: I've noticed that after a while, some sort of darker stains
appear on my notes. Is that a bug in some drawing routine?
A: No, this is not a bug. These "stains" are meant to
resemble creases, caused by frequent handling of a particular note (wear
& tear, you see?). In fact, they're added with a certain probability
whenever you view a note by clicking on it (note that leafing through
notes via [Shift]-[arrow keys] is not affected), when you
clear its textual or drawn contents via the edit mode panel (very
outwearing, that ;-) ), and when a note is moved. This
feature can be disabled at compile time by running configure with
`--disable-creases' as a parameter.
To prevent the question, no, worn-out notes cannot be ironed to get rid of
the creases. Sorry. `:-p'
- •
- Q: Is wmpinboard compatible with AfterStep's
Wharf?
A: wmpinboard tries to autodetect whether Window Maker
is running and sets itself up accordingly. If this doesn't work for you
for some reason, you can explicitly make it run in either Withdrawn- or
NormalState using the `-w' or
`-n' flag, respectively. See the section on
"OPTIONS".
Swallowing evidently works with AfterStep 1.6.10; I don't know about
earlier versions. A Wharf config line you might try is this:
*Wharf wmpinboard nil MaxSwallow "wmpinboard" wmpinboard &
Besides, wmpinboard has been reported to work with Blackbox.
- •
- Q: I have X running at a color depth of 8 bits, i.e., in palette
mode, and wmpinboard obviously requires too many colors and thus
looks real messy (or doesn't run at all, complaining about "not
enough free color cells"). What can I do about this?
A: As of version 0.99.1, the recommended solution is to upgrade
whatever component of your system restricts you to a palette mode.
- •
- Q: Can I run multiple instances of wmpinboard as the same
user, simultaneously?
A: No, this is certainly not a good idea. The run-time behavior may
be unpredictable, and your data file can get corrupted. Therefore, any
wmpinboard process that's to be run interactively first checks
whether another interactive instance is running, and if so, refuses to
run.
- •
- Q: I've just upgraded from a pre-0.7 version of wmpinboard
and noticed that its data file format has changed completely since. Is
there a way to upgrade and yet keep my existing notes?
A: There's a Perl script doing the conversion included with
the distribution (the source one, anyway). If your package didn't include
that, feel free to mail to the author (see the section on
"AUTHOR" at the end of this documentation).
- •
- Q: I find a mere 59 characters per note to be a real limitation.
How about making wmpinboard pop up an external window with more
room for that? Or how about assigning that job to an external editor?
A: There's a variety of comprehensive programs for keeping notes out
there, offering this functionality but being rather heavy-weight since
they are linked against one GUI library or another ( CoolNotes or
KNotes come to mind). On the other hand, I couldn't find a
WM-conforming reminder I could omnipresently stick to my desktop
anywhere, so I wrote wmpinboard. I wanted it to be small, neat,
easy to use, and yet useful in a way.
I hope that's about what the program is currently like. And I'd prefer to
keep it like that rather than inflate it by linking against a GUI
library--eventually, the note editing code would outweigh the rest of the
application by a factor, and people would probably still create notes
mostly shorter than 60 characters. If you restrict your memos to keywords
and abbreviations, that's quite a lot.
I want wmpinboard to remain an applet in that it doesn't open up
external windows and use (if just temporarily) additional desktop space. I
explicitly wrote it to have something omnipresent at a fixed position on
my desktop. I find it preferable to have the notes pop up in place rather
than somewhere else on the screen.
Personally, I use other programs for larger notes too; wmpinboard has
been designed for things smaller in size and greater in urgency, it's in
no way meant to be a comprehensive knowledge base application of any kind.
Summing up, I think a dock applet should be small both regarding its
on-screen representation and the resources it uses. That's why I don't
intend to add any pop-up dialogs or similar things to wmpinboard.
- •
- Q: I've tried the program, yet I can't help finding it utterly
useless. What shall I do?
A: The solution is simple. Just don't use it.
- •
- Q: Will your answer to this question be "no"? A: Nope.
HINTS¶
- •
- A good way of making the best of the organizational features offered by wmpinboard is to use certain colors and locations on the pinboard to indicate urgency and contents of a note. For example, you might use each of the color groups for a certain kind of reminder, because that enables you to leaf through all notes with related contents via [Shift]-[arrow keys] in edit mode. Besides, you might assign each corner of the board a specific urgency, altogether allowing you to derive a note's type from its color and its urgency from its location on the board. Thanks again to the ability to leaf through all notes belonging to the same group of colors, notes with similar contents will still be clustered in a way.
UNDOCUMENTED FEATURES¶
This piece of documentation doesn't cover any undocumented features.FILES¶
- ~/.wmpinboarddata
- the user's wmpinboard data file
- ~/.wmpinboarddata.new
- temporary file created momentarily when saving data
ENVIRONMENT VARIABLES¶
- $HOME
- the user's home directory
RESTRICTIONS¶
- •
- wmpinboard relies on a dock app tile size of at least 64x64 pixels.
In fact, using smaller tiles renders the applet rather useless, as, e.g.,
opening the edit mode panel becomes impossible.
- •
- Unpredictable effects may be the results if a command line action is taken
while an alarm is running and others are due simultaneously. If just a
single alarm is active and no others are due, that alarm will be cancelled
when the two instances of wmpinboard synchronize. If more instances
are due during the process, a race conditions arises that can't be solved
satisfactorily due to the program's internal structure and organization.
Still, in theory, nothing critical will happen, and the most you'll lose
will be an alarm or two.
- •
- wmpinboard data files are not designed to be portable across
architectures. Due to differences in data type representations that are
likely otherwise, a datafile can only be reliably used by program binaries
running on machines of the same architecture.
- •
- Certainly of no interest to anyone, but mentioned for the sake of completeness: wmpinboard's alarm features will start to fail past 04:14:07 on Jan 19, 2037, which is due to the legacy Un*x time format.
BUGS¶
If you stumble on any bugs, feel free to mail the author. The same goes if you encounter any problems running/using the program. Be sure to include any information you consider relevant, i.e., at a minimum, the version of wmpinboard you're using as well as your OS and X versions. Also, further suggestions are always welcome. Please check the TODO file that's part of the distribution to see if what you're about to suggest isn't already on my "to do" list, or has been suggested earlier and was rejected for one reason or other.SEE ALSO¶
wmaker(1)AUTHOR¶
wmpinboard is copyrighted (c) 1998-2000 by Marco Goetze, <gomar@mindless.com>. It is distributed under the terms of the GNU General Public License, revision 2 or any later revision thereof. Use at your own risk. New releases of and themes for wmpinboard can be found at <http://www.tu-ilmenau.de/~gomar/stuff/wmpinboard/>, or that was true at least by the time this document was last updated.0.99.3 | 3rd Berkeley Distribution |