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 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204
|
XPostitPlus 2.3
by Michael J. Hammel
Naming Convention
-----------------
Throughout this document and all other files in this distribution, the
terms "XPostitPlus", "xpostit+", and "xpostit" all refer to the same
program. "XPostitPlus" is the generic name, "xpostit+" is the binary created,
and "xpostit" is the historic name.
History
-------
This version of xpostit is based on David A. Curry's original version.
When I was getting ready to release the 2.2 version I went and checked out the
R5Contrib tree at ftp.x.org and found a version "3.3.1" from David dated
1991. Thats sometime after I got hold of a copy. The version that I
released was based on his 1.2 version from 1990. Since the trees had
diverged a bit I decided I should give my version another name. From now on, my
tree will be called "XPostitPlus". The version numbering will stayed the same
(2.2) from then on, though. For practicality sake, I'm not going to bother
to change every reference of "xpostit" in the README, docs, or source to
"XPostitPlus". I'll just name the distribution differently so as not to
confuse the two trees. I checked with David on this and he agreed that
changing the name was sufficient as long as I made the following
disclaimer:
XPostitPlus is not supported by David Curry in any way. All bug reports,
patches, etc, should be sent to me, Michael J. Hammel (mjhammel@csn.net)
and not to David!
About XPostitPlus
-----------------
And you thought there was no real way to clutter your desktop.
BWahahahaha! Welcome to XPostitPlus 2.3!
I tried to follow the principle of "KISS" - Keep It Simple, Stupid - so
many of XPostitPlus's features make use of features already available on the
system, such as "mail" or "lpr".
It was built on Slackware 3.0 with a 1.2.13 Linux kernel but has been built
and tested on a number of systems (see below). Quite a few new features
have been added since David's version. Please see the History file for
information about changes and enhancements that I've made.
Systems XPostitPlus is known to build and function on:
------------------------------------------------------
Linux 1.1.78 (Slackware 2.1 a.out) or later
Linux 1.2.1, gcc 2.5.8, X11R6
Linux 1.3.64, XFree-3.1.2, gcc-2.7.2 ELF
SunOS 4.1.3
SunOS 4.1.4, X11R6 patch 13
SunOS 4.3.1
Solaris 2.4
AIX 3.2.5
FreeBSD 2.0.5 (it will probably work just fine on 2.1.0 as well)
NetBSD 1.1
BSDI BSD/OS (version unknown) - I ran xpostit 2.1 on one of these, but
don't have access to it anymore. I don't suspect 2.2 broke any
compatibility.
DEC Alpha running Digital Unix v3.0 (might get some compiler warnings
about incompatible pointer types, but it should run just fine)
SGI IRIX 5.3
HPUX 9.05 using gcc and the Interworks X11R5 distribution
SCO OpenServer 5 (5.0.0 and 5.0.2) with the stock development system
and X libraries
XPostitPlus should work with any R5 or R6 release of X11. It may work on R4,
since it was originally written for R4, but I haven't tried it on one of
those systems in a few years. Of course, if you're still using R4 you
probably also have a large collection of BetaMax and 8-Track tapes. To
each his own.
I'd be interested in hearing from anyone who tries this on a different OS.
See my email address at the end of this README file.
Support issues
--------------
I'll support this as long as you provide a list of what you did in order to
reproduce a particular problem. Read the man page first, though. The code
is fairly simple. If you're not familiar with X, this probably
isn't a bad way to get started.
I don't particularly like the style of the code, but I didn't clean it up,
I just added the features (along the style of the original source). Its
not bad, its just not how I would have done it. :-)
To Build:
---------
1. If you
a. don't use a window manager (who are you and what planet did you
come from?)
b. you don't have an ICCCM compliant window manager (get one)
c. you use a feature of your window manager which causes transients to
not use the window managers title bar for a window.
Then
edit Imakefile and uncomment the DEFINE statement:
DEFINE = -DNOWM
If you define this then a title bar is created in the individual
note windows.
If you don't do this (which is what most people will choose to do) then
the titles for individual notes will be placed (if possible) in the title
bar of the window manager frame for that note. This is handy for things
like the fvwm window list, since the names of the windows are taken from
their title bars.
2. If you still use <sys/dir.h>, then edit Imakefile and uncomment the
DEFINE statement:
DEFINE = -DUSE_DIR
I think this is mostly outdated, but there may be some systems that
still use it. Linux just points sys/dir.h to dirent.h.
3. If you want to be prompted when exiting to save notes, and you don't
use the -sv option to automatically save on exit, uncomment the
DEFINE statement:
DEFINES = -DPROMPT_FOR_SAVE
If you don't do this then notes will only be saved on exit if you use
the -sv option or have set the equivalent resource in your application
defaults file.
3. run "xmkmf" - this creates the Makefile
4. run "make depend" - this will force the recreatation of app_defaults.h
if you change XPostitPlus.ad, so you don't have to install the XPostitPlus.ad
file if you don't want to. If you want to ensure that this gets done
properly, make sure app_defaults.h does not exist before doing either
this or the next step.
5. run "make"
6. You can run "make install", but I don't like that rule. I don't like
putting binaries I've built (not part of the OS) into system directories
since it makes it harder to do backups prior to doing system upgrades.
7. You can run "make install-man", but again I don't like that one. To
build the man page by hand, run "nroff -man xpostit+.man > xpostit.1"
and copy the output file to wherever you like your man pages.
If app_defaults.h doesn't get built automatically you should be able to
run "make app_defaults.h" before you run "make".
If you don't have xmkmf you can try hacking the Makefile.Linux, but I
haven't a clue how much work this involves. If your willing to do this
you're probably better off trying to find xmkmf, imake and the config files
necessary for your particular flavor of Unix. Or maybe you could hack up a
GNU autoconf configuration. Good luck. :-)
Note: Makefile.Linux is a Makefile built on my Linux box and should run on
any Linux box built after Linux 1.1.78. And probably lots that were built
before that, too. :-)
Things to do:
------------------
1. rubber banding placement: make sure windows are completely in view on
visible screen.
Legal Mumbo Jumbo
------------------
From David's Version 3.3.1 version of xpostit (which is not the version
from which my version has evolved, BTW):
Copyright 1991 by David A. Curry
Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
the above copyright notice appear in all copies and that both that copyright
notice and this permission notice appear in supporting documentation. The
author makes no representations about the suitability of this software for
any purpose. It is provided "as is" without express or implied warranty.
I've never contacted David about this software, so I can't say exactly what
the copyright is. Since David released the code for general use, I'll just
say that you can use the software for non-commercial use in any way you see
fit as long as any modification you make are not redistributed without first
contacting me about them. I only make this provision so I don't get
swamped with email about someone else's version for which I have no
knowledge or control over. If you'd like to make a commercial version of
this software, contact me. I just want to make sure I get a copy of any
future releases (and that I get a little credit for having done some work
on this). :-)
If you wish to include it on a CD-ROM (or in any other media) of
freely-available software you may do so as long as the source is also
distributed in its original form and any compiled versions you make are clearly
marked as yours. Again, I just do this to make sure I don't end up
supporting someone elses work.
I think this is basically what the GNU CopyLeft says, isn't it? Dammit
Jim! I'm an engineer, not a lawyer!
Michael J. Hammel
mjhammel@csn.net
Last updated: 09/14/96
|