Initial revision
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@2 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
This commit is contained in:
commit
a2ea193bd4
226
ABOUT-NLS
Normal file
226
ABOUT-NLS
Normal file
@ -0,0 +1,226 @@
|
||||
Notes on the Free Translation Project
|
||||
*************************************
|
||||
|
||||
Free software is going international! The Free Translation Project
|
||||
is a way to get maintainers of free software, translators, and users all
|
||||
together, so that will gradually become able to speak many languages.
|
||||
A few packages already provide translations for their messages.
|
||||
|
||||
If you found this `ABOUT-NLS' file inside a distribution, you may
|
||||
assume that the distributed package does use GNU `gettext' internally,
|
||||
itself available at your nearest GNU archive site. But you do *not*
|
||||
need to install GNU `gettext' prior to configuring, installing or using
|
||||
this package with messages translated.
|
||||
|
||||
Installers will find here some useful hints. These notes also
|
||||
explain how users should proceed for getting the programs to use the
|
||||
available translations. They tell how people wanting to contribute and
|
||||
work at translations should contact the appropriate team.
|
||||
|
||||
When reporting bugs in the `intl/' directory or bugs which may be
|
||||
related to internationalization, you should tell about the version of
|
||||
`gettext' which is used. The information can be found in the
|
||||
`intl/VERSION' file, in internationalized packages.
|
||||
|
||||
One advise in advance
|
||||
=====================
|
||||
|
||||
If you want to exploit the full power of internationalization, you
|
||||
should configure it using
|
||||
|
||||
./configure --with-included-gettext
|
||||
|
||||
to force usage of internationalizing routines provided within this
|
||||
package, despite the existence of internationalizing capabilities in the
|
||||
operating system where this package is being installed. So far, only
|
||||
the `gettext' implementation in the GNU C library version 2 provides as
|
||||
many features (such as locale alias or message inheritance) as the
|
||||
implementation here. It is also not possible to offer this additional
|
||||
functionality on top of a `catgets' implementation. Future versions of
|
||||
GNU `gettext' will very likely convey even more functionality. So it
|
||||
might be a good idea to change to GNU `gettext' as soon as possible.
|
||||
|
||||
So you need not provide this option if you are using GNU libc 2 or
|
||||
you have installed a recent copy of the GNU gettext package with the
|
||||
included `libintl'.
|
||||
|
||||
INSTALL Matters
|
||||
===============
|
||||
|
||||
Some packages are "localizable" when properly installed; the
|
||||
programs they contain can be made to speak your own native language.
|
||||
Most such packages use GNU `gettext'. Other packages have their own
|
||||
ways to internationalization, predating GNU `gettext'.
|
||||
|
||||
By default, this package will be installed to allow translation of
|
||||
messages. It will automatically detect whether the system provides
|
||||
usable `catgets' (if using this is selected by the installer) or
|
||||
`gettext' functions. If neither is available, the GNU `gettext' own
|
||||
library will be used. This library is wholly contained within this
|
||||
package, usually in the `intl/' subdirectory, so prior installation of
|
||||
the GNU `gettext' package is *not* required. Installers may use
|
||||
special options at configuration time for changing the default
|
||||
behaviour. The commands:
|
||||
|
||||
./configure --with-included-gettext
|
||||
./configure --with-catgets
|
||||
./configure --disable-nls
|
||||
|
||||
will respectively bypass any pre-existing `catgets' or `gettext' to use
|
||||
the internationalizing routines provided within this package, enable
|
||||
the use of the `catgets' functions (if found on the locale system), or
|
||||
else, *totally* disable translation of messages.
|
||||
|
||||
When you already have GNU `gettext' installed on your system and run
|
||||
configure without an option for your new package, `configure' will
|
||||
probably detect the previously built and installed `libintl.a' file and
|
||||
will decide to use this. This might be not what is desirable. You
|
||||
should use the more recent version of the GNU `gettext' library. I.e.
|
||||
if the file `intl/VERSION' shows that the library which comes with this
|
||||
package is more recent, you should use
|
||||
|
||||
./configure --with-included-gettext
|
||||
|
||||
to prevent auto-detection.
|
||||
|
||||
By default the configuration process will not test for the `catgets'
|
||||
function and therefore they will not be used. The reasons are already
|
||||
given above: the emulation on top of `catgets' cannot provide all the
|
||||
extensions provided by the GNU `gettext' library. If you nevertheless
|
||||
want to use the `catgets' functions use
|
||||
|
||||
./configure --with-catgets
|
||||
|
||||
to enable the test for `catgets' (this causes no harm if `catgets' is
|
||||
not available on your system). If you really select this option we
|
||||
would like to hear about the reasons because we cannot think of any
|
||||
good one ourself.
|
||||
|
||||
Internationalized packages have usually many `po/LL.po' files, where
|
||||
LL gives an ISO 639 two-letter code identifying the language. Unless
|
||||
translations have been forbidden at `configure' time by using the
|
||||
`--disable-nls' switch, all available translations are installed
|
||||
together with the package. However, the environment variable `LINGUAS'
|
||||
may be set, prior to configuration, to limit the installed set.
|
||||
`LINGUAS' should then contain a space separated list of two-letter
|
||||
codes, stating which languages are allowed.
|
||||
|
||||
Using This Package
|
||||
==================
|
||||
|
||||
As a user, if your language has been installed for this package, you
|
||||
only have to set the `LANG' environment variable to the appropriate
|
||||
ISO 639 `LL' two-letter code prior to using the programs in the
|
||||
package. For example, let's suppose that you speak German. At the
|
||||
shell prompt, merely execute `setenv LANG de' (in `csh'),
|
||||
`export LANG; LANG=de' (in `sh') or `export LANG=de' (in `bash'). This
|
||||
can be done from your `.login' or `.profile' file, once and for all.
|
||||
|
||||
An operating system might already offer message localization for
|
||||
many of its programs, while other programs have been installed locally
|
||||
with the full capabilities of GNU `gettext'. Just using `gettext'
|
||||
extended syntax for `LANG' would break proper localization of already
|
||||
available operating system programs. In this case, users should set
|
||||
both `LANGUAGE' and `LANG' variables in their environment, as programs
|
||||
using GNU `gettext' give preference to `LANGUAGE'. For example, some
|
||||
Swedish users would rather read translations in German than English for
|
||||
when Swedish is not available. This is easily accomplished by setting
|
||||
`LANGUAGE' to `sv:de' while leaving `LANG' to `sv'.
|
||||
|
||||
Translating Teams
|
||||
=================
|
||||
|
||||
For the Free Translation Project to be a success, we need interested
|
||||
people who like their own language and write it well, and who are also
|
||||
able to synergize with other translators speaking the same language.
|
||||
Each translation team has its own mailing list, courtesy of Linux
|
||||
International. You may reach your translation team at the address
|
||||
`LL@li.org', replacing LL by the two-letter ISO 639 code for your
|
||||
language. Language codes are *not* the same as the country codes given
|
||||
in ISO 3166. The following translation teams exist, as of December
|
||||
1997:
|
||||
|
||||
Chinese `zh', Czech `cs', Danish `da', Dutch `nl', English `en',
|
||||
Esperanto `eo', Finnish `fi', French `fr', German `de', Hungarian
|
||||
`hu', Irish `ga', Italian `it', Indonesian `id', Japanese `ja',
|
||||
Korean `ko', Latin `la', Norwegian `no', Persian `fa', Polish
|
||||
`pl', Portuguese `pt', Russian `ru', Slovenian `sl', Spanish `es',
|
||||
Swedish `sv', and Turkish `tr'.
|
||||
|
||||
For example, you may reach the Chinese translation team by writing to
|
||||
`zh@li.org'.
|
||||
|
||||
If you'd like to volunteer to *work* at translating messages, you
|
||||
should become a member of the translating team for your own language.
|
||||
The subscribing address is *not* the same as the list itself, it has
|
||||
`-request' appended. For example, speakers of Swedish can send a
|
||||
message to `sv-request@li.org', having this message body:
|
||||
|
||||
subscribe
|
||||
|
||||
Keep in mind that team members are expected to participate
|
||||
*actively* in translations, or at solving translational difficulties,
|
||||
rather than merely lurking around. If your team does not exist yet and
|
||||
you want to start one, or if you are unsure about what to do or how to
|
||||
get started, please write to `translation@iro.umontreal.ca' to reach the
|
||||
coordinator for all translator teams.
|
||||
|
||||
The English team is special. It works at improving and uniformizing
|
||||
the terminology in use. Proven linguistic skill are praised more than
|
||||
programming skill, here.
|
||||
|
||||
Available Packages
|
||||
==================
|
||||
|
||||
Languages are not equally supported in all packages. The following
|
||||
matrix shows the current state of internationalization, as of December
|
||||
1997. The matrix shows, in regard of each package, for which languages
|
||||
PO files have been submitted to translation coordination.
|
||||
|
||||
Ready PO files cs da de en es fi fr it ja ko nl no pl pt ru sl sv
|
||||
.----------------------------------------------------.
|
||||
bash | [] [] [] | 3
|
||||
bison | [] [] [] | 3
|
||||
clisp | [] [] [] [] | 4
|
||||
cpio | [] [] [] [] [] [] | 6
|
||||
diffutils | [] [] [] [] [] | 5
|
||||
enscript | [] [] [] [] [] [] | 6
|
||||
fileutils | [] [] [] [] [] [] [] [] [] [] | 10
|
||||
findutils | [] [] [] [] [] [] [] [] [] | 9
|
||||
flex | [] [] [] [] | 4
|
||||
gcal | [] [] [] [] [] | 5
|
||||
gettext | [] [] [] [] [] [] [] [] [] [] [] | 12
|
||||
grep | [] [] [] [] [] [] [] [] [] [] | 10
|
||||
hello | [] [] [] [] [] [] [] [] [] [] [] | 11
|
||||
id-utils | [] [] [] | 3
|
||||
indent | [] [] [] [] [] | 5
|
||||
libc | [] [] [] [] [] [] [] | 7
|
||||
m4 | [] [] [] [] [] [] | 6
|
||||
make | [] [] [] [] [] [] | 6
|
||||
music | [] [] | 2
|
||||
ptx | [] [] [] [] [] [] [] [] | 8
|
||||
recode | [] [] [] [] [] [] [] [] [] | 9
|
||||
sh-utils | [] [] [] [] [] [] [] [] | 8
|
||||
sharutils | [] [] [] [] [] [] | 6
|
||||
tar | [] [] [] [] [] [] [] [] [] [] [] | 11
|
||||
texinfo | [] [] [] | 3
|
||||
textutils | [] [] [] [] [] [] [] [] [] | 9
|
||||
wdiff | [] [] [] [] [] [] [] [] | 8
|
||||
`----------------------------------------------------'
|
||||
17 languages cs da de en es fi fr it ja ko nl no pl pt ru sl sv
|
||||
27 packages 6 4 25 1 18 1 26 2 1 12 20 9 19 7 4 7 17 179
|
||||
|
||||
Some counters in the preceding matrix are higher than the number of
|
||||
visible blocks let us expect. This is because a few extra PO files are
|
||||
used for implementing regional variants of languages, or language
|
||||
dialects.
|
||||
|
||||
For a PO file in the matrix above to be effective, the package to
|
||||
which it applies should also have been internationalized and
|
||||
distributed as such by its maintainer. There might be an observable
|
||||
lag between the mere existence a PO file and its wide availability in a
|
||||
distribution.
|
||||
|
||||
If December 1997 seems to be old, you may fetch a more recent copy
|
||||
of this `ABOUT-NLS' file on most GNU archive sites.
|
||||
|
15
AUTHORS
Normal file
15
AUTHORS
Normal file
@ -0,0 +1,15 @@
|
||||
This file lists people who have made significant contribution to the nano
|
||||
editor. Please see the ChangeLog for specific changes by author.
|
||||
-------------------------------------------------------------------------
|
||||
|
||||
Chris Allegretta <chrisa@asty.org>
|
||||
* Main program author and maintainer
|
||||
|
||||
Jordi Mallach <jordi@sindominio.net>
|
||||
* Debian package maintainer, fellow bug squasher.
|
||||
* Internationalization support head, es.po maintainer.
|
||||
|
||||
Adam Rogoyski <rogoyski@cs.utexas.edu>
|
||||
* New write_file() function, read_file() optimization, mouse
|
||||
support, resize support, nohelp (-x) option, justify function,
|
||||
follow symlink option and bugfixes, and much more.
|
36
BUGS
Normal file
36
BUGS
Normal file
@ -0,0 +1,36 @@
|
||||
- Marked cutting sometimes leaves a newline in the file unintelligently,
|
||||
such as when all of a line is selected but the mark doesn't proceed to
|
||||
the new line. (8)
|
||||
{ I know I posted this, but is it really a bug, Pico 3.5 seems to behave
|
||||
in the same way. I must be scatterbrained or something.
|
||||
- Rob Siemborski }
|
||||
|
||||
- Certains are not lined up properly when there are tabs in them at
|
||||
certain col values. (9) [FIXED]
|
||||
- edit_refresh() and update_line() do not handle selecting text when the
|
||||
cursor is beyond COLS (10)
|
||||
- no way to do a replace with the empty string. (11)
|
||||
- Spelling support is not elegant like pico's integration of the 'spell'
|
||||
program. Nano only uses ispell (for now) (12)
|
||||
- Moving to the end of a line when close to a multiple of COLS and at
|
||||
least COLS * 2 does not make the screen jump early like it would for
|
||||
if we were around COLS (bugs in edit_refresh, update_line) (13)
|
||||
[FIXED, mostly]
|
||||
- When at the very bottom of the edit window, do_wrap goes berzerk and
|
||||
puts the curor somewhere bad, subsequent keystrokes crash the program
|
||||
(14) [FIXED, mostly]
|
||||
- Doing a replacement of a substring of the replace string (e.g. replacing
|
||||
"ed" with "fred" causes an infinite loop. (15) [FIXED]
|
||||
- Cutting a file with marked text and both marker ends on the same line
|
||||
causes a random segfault (16)
|
||||
- Cutting more than one line resets the KEEP_CUTBUFFER flag in 0.9.3
|
||||
Error is in bitwise assignment (nano.h). (17) [FIXED]
|
||||
- The wrapping code does not work right for lines like the following:
|
||||
* *
|
||||
Error is in do_wrap, must be rewritten (18).
|
||||
- Wrapping a line with autoindent mode sometimes causes a segfault (19).
|
||||
- Nano fails to follow symlinks, even though -l isn't being used (20).
|
||||
[Bug in global flag init, FIXED]
|
||||
- When using --help or --version, the SIGINT character gets lost. (21) [FIXED]
|
||||
- When inserting files, the display sometimes fails to display properly
|
||||
until a pageup/down occurs (22).
|
340
COPYING
Normal file
340
COPYING
Normal file
@ -0,0 +1,340 @@
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
License is intended to guarantee your freedom to share and change free
|
||||
software--to make sure the software is free for all its users. This
|
||||
General Public License applies to most of the Free Software
|
||||
Foundation's software and to any other program whose authors commit to
|
||||
using it. (Some other Free Software Foundation software is covered by
|
||||
the GNU Library General Public License instead.) You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
this service if you wish), that you receive source code or can get it
|
||||
if you want it, that you can change the software or use pieces of it
|
||||
in new free programs; and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
anyone to deny you these rights or to ask you to surrender the rights.
|
||||
These restrictions translate to certain responsibilities for you if you
|
||||
distribute copies of the software, or if you modify it.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must give the recipients all the rights that
|
||||
you have. You must make sure that they, too, receive or can get the
|
||||
source code. And you must show them these terms so they know their
|
||||
rights.
|
||||
|
||||
We protect your rights with two steps: (1) copyright the software, and
|
||||
(2) offer you this license which gives you legal permission to copy,
|
||||
distribute and/or modify the software.
|
||||
|
||||
Also, for each author's protection and ours, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
software. If the software is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original, so
|
||||
that any problems introduced by others will not reflect on the original
|
||||
authors' reputations.
|
||||
|
||||
Finally, any free program is threatened constantly by software
|
||||
patents. We wish to avoid the danger that redistributors of a free
|
||||
program will individually obtain patent licenses, in effect making the
|
||||
program proprietary. To prevent this, we have made it clear that any
|
||||
patent must be licensed for everyone's free use or not licensed at all.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License applies to any program or other work which contains
|
||||
a notice placed by the copyright holder saying it may be distributed
|
||||
under the terms of this General Public License. The "Program", below,
|
||||
refers to any such program or work, and a "work based on the Program"
|
||||
means either the Program or any derivative work under copyright law:
|
||||
that is to say, a work containing the Program or a portion of it,
|
||||
either verbatim or with modifications and/or translated into another
|
||||
language. (Hereinafter, translation is included without limitation in
|
||||
the term "modification".) Each licensee is addressed as "you".
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running the Program is not restricted, and the output from the Program
|
||||
is covered only if its contents constitute a work based on the
|
||||
Program (independent of having been made by running the Program).
|
||||
Whether that is true depends on what the Program does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Program's
|
||||
source code as you receive it, in any medium, provided that you
|
||||
conspicuously and appropriately publish on each copy an appropriate
|
||||
copyright notice and disclaimer of warranty; keep intact all the
|
||||
notices that refer to this License and to the absence of any warranty;
|
||||
and give any other recipients of the Program a copy of this License
|
||||
along with the Program.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy, and
|
||||
you may at your option offer warranty protection in exchange for a fee.
|
||||
|
||||
2. You may modify your copy or copies of the Program or any portion
|
||||
of it, thus forming a work based on the Program, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) You must cause the modified files to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
b) You must cause any work that you distribute or publish, that in
|
||||
whole or in part contains or is derived from the Program or any
|
||||
part thereof, to be licensed as a whole at no charge to all third
|
||||
parties under the terms of this License.
|
||||
|
||||
c) If the modified program normally reads commands interactively
|
||||
when run, you must cause it, when started running for such
|
||||
interactive use in the most ordinary way, to print or display an
|
||||
announcement including an appropriate copyright notice and a
|
||||
notice that there is no warranty (or else, saying that you provide
|
||||
a warranty) and that users may redistribute the program under
|
||||
these conditions, and telling the user how to view a copy of this
|
||||
License. (Exception: if the Program itself is interactive but
|
||||
does not normally print such an announcement, your work based on
|
||||
the Program is not required to print an announcement.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Program,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Program, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Program.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Program
|
||||
with the Program (or with a work based on the Program) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may copy and distribute the Program (or a work based on it,
|
||||
under Section 2) in object code or executable form under the terms of
|
||||
Sections 1 and 2 above provided that you also do one of the following:
|
||||
|
||||
a) Accompany it with the complete corresponding machine-readable
|
||||
source code, which must be distributed under the terms of Sections
|
||||
1 and 2 above on a medium customarily used for software interchange; or,
|
||||
|
||||
b) Accompany it with a written offer, valid for at least three
|
||||
years, to give any third party, for a charge no more than your
|
||||
cost of physically performing source distribution, a complete
|
||||
machine-readable copy of the corresponding source code, to be
|
||||
distributed under the terms of Sections 1 and 2 above on a medium
|
||||
customarily used for software interchange; or,
|
||||
|
||||
c) Accompany it with the information you received as to the offer
|
||||
to distribute corresponding source code. (This alternative is
|
||||
allowed only for noncommercial distribution and only if you
|
||||
received the program in object code or executable form with such
|
||||
an offer, in accord with Subsection b above.)
|
||||
|
||||
The source code for a work means the preferred form of the work for
|
||||
making modifications to it. For an executable work, complete source
|
||||
code means all the source code for all modules it contains, plus any
|
||||
associated interface definition files, plus the scripts used to
|
||||
control compilation and installation of the executable. However, as a
|
||||
special exception, the source code distributed need not include
|
||||
anything that is normally distributed (in either source or binary
|
||||
form) with the major components (compiler, kernel, and so on) of the
|
||||
operating system on which the executable runs, unless that component
|
||||
itself accompanies the executable.
|
||||
|
||||
If distribution of executable or object code is made by offering
|
||||
access to copy from a designated place, then offering equivalent
|
||||
access to copy the source code from the same place counts as
|
||||
distribution of the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
4. You may not copy, modify, sublicense, or distribute the Program
|
||||
except as expressly provided under this License. Any attempt
|
||||
otherwise to copy, modify, sublicense or distribute the Program is
|
||||
void, and will automatically terminate your rights under this License.
|
||||
However, parties who have received copies, or rights, from you under
|
||||
this License will not have their licenses terminated so long as such
|
||||
parties remain in full compliance.
|
||||
|
||||
5. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Program or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Program (or any work based on the
|
||||
Program), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Program or works based on it.
|
||||
|
||||
6. Each time you redistribute the Program (or any work based on the
|
||||
Program), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute or modify the Program subject to
|
||||
these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties to
|
||||
this License.
|
||||
|
||||
7. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Program at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Program by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Program.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under
|
||||
any particular circumstance, the balance of the section is intended to
|
||||
apply and the section as a whole is intended to apply in other
|
||||
circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system, which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
8. If the distribution and/or use of the Program is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Program under this License
|
||||
may add an explicit geographical distribution limitation excluding
|
||||
those countries, so that distribution is permitted only in or among
|
||||
countries not thus excluded. In such case, this License incorporates
|
||||
the limitation as if written in the body of this License.
|
||||
|
||||
9. The Free Software Foundation may publish revised and/or new versions
|
||||
of the General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Program
|
||||
specifies a version number of this License which applies to it and "any
|
||||
later version", you have the option of following the terms and conditions
|
||||
either of that version or of any later version published by the Free
|
||||
Software Foundation. If the Program does not specify a version number of
|
||||
this License, you may choose any version ever published by the Free Software
|
||||
Foundation.
|
||||
|
||||
10. If you wish to incorporate parts of the Program into other free
|
||||
programs whose distribution conditions are different, write to the author
|
||||
to ask for permission. For software which is copyrighted by the Free
|
||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
||||
make exceptions for this. Our decision will be guided by the two goals
|
||||
of preserving the free status of all derivatives of our free software and
|
||||
of promoting the sharing and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
||||
REPAIR OR CORRECTION.
|
||||
|
||||
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) 19yy <name of author>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program is interactive, make it output a short notice like this
|
||||
when it starts in an interactive mode:
|
||||
|
||||
Gnomovision version 69, Copyright (C) 19yy name of author
|
||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, the commands you use may
|
||||
be called something other than `show w' and `show c'; they could even be
|
||||
mouse-clicks or menu items--whatever suits your program.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the program, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
||||
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1989
|
||||
Ty Coon, President of Vice
|
||||
|
||||
This General Public License does not permit incorporating your program into
|
||||
proprietary programs. If your program is a subroutine library, you may
|
||||
consider it more useful to permit linking proprietary applications with the
|
||||
library. If this is what you want to do, use the GNU Library General
|
||||
Public License instead of this License.
|
667
ChangeLog
Normal file
667
ChangeLog
Normal file
@ -0,0 +1,667 @@
|
||||
nano-0.9.10 - 06/04/2000
|
||||
- es.po:
|
||||
- Translation updates (Jordi).
|
||||
- AUTHORS, nano.1.html, TODO, README:
|
||||
- Documentation and email address updates (Jordi).
|
||||
- nano.c:
|
||||
main():
|
||||
- Moved Adam's termio code down to after getopt() and before initscr()
|
||||
to stop people losing their SIGINT character when using args that
|
||||
exit nano before it runs (--version, --help, etc).
|
||||
|
||||
nano-0.9.9 - 05/31/2000
|
||||
- Makeile.am:
|
||||
- Added proper lines for defining LOCALEDIR.
|
||||
- configure.in:
|
||||
- Spelling fixes (Jordi Mallach)
|
||||
- Removed CFLAGS changes for gcc, reduces portability according to
|
||||
some, and it certainly doesn't seem to decrease exe size.
|
||||
- es.po:
|
||||
- Spanish ranslation updates (Jordi Mallach)
|
||||
- POTFILES.in:
|
||||
- Added global.c file, was screwing up translations (i.e. they
|
||||
weren't getting done).
|
||||
- cut.c:
|
||||
add_to_cutbuffer():
|
||||
- Added totsize increment.
|
||||
- Cut fixes and optimizations (Rob Siemborski).
|
||||
do_uncut_text():
|
||||
- Added totsize increment in several places.
|
||||
- nano.c:
|
||||
headers:
|
||||
- Removed LOCALEDIR define.
|
||||
do_justify():
|
||||
- Added edit_refresh() call (bug discovered by Adam).
|
||||
page_down_center():
|
||||
- Added call to edit_update(current) for last case. Removed
|
||||
increment of current_y since it's now just wasteful.
|
||||
do_enter():
|
||||
- Added totsize increment.
|
||||
renumber(), renumber_all():
|
||||
- Removed totsize-- and totsize init in renumber_all.
|
||||
do_mouse():
|
||||
- Added edit_refresh() call to show hilight updates. Removed
|
||||
unnecessary wrefresh(edit).
|
||||
main():
|
||||
- Moved up locale calls so that translated --help messages would
|
||||
actually get translated.
|
||||
do_backspace(), do_delete():
|
||||
- Added decrement of totsize.
|
||||
init_help_msg():
|
||||
- New function, initializes help text if NANO_SMALL isn't set (fixes
|
||||
broken i18n).
|
||||
read_file():
|
||||
- malloc call changed to nmalloc (Rob Siemborski).
|
||||
- winio.c:
|
||||
total_refresh():
|
||||
- Completely rewrote function, not quite so braindamaged now.
|
||||
|
||||
nano-0.9.8 - 05/18/2000
|
||||
- nano.c:
|
||||
main():
|
||||
- Added awesome code that disables the CINTR and CQUIT
|
||||
character (Adam Rogoyski). Removed raw()/noraw() calls so that
|
||||
nano gets input in 'normal' mode, which is the Right Way(tm) to
|
||||
do it. ^S, ^Z and ^Q now work properly as a result, as well as
|
||||
^C. New variable term, global bariable oldterm to save previous
|
||||
term settings, and changes to finish() and die().
|
||||
- Added extra #ifdefs in getopt code, so that above code and
|
||||
flag init is run even if GETOPT_LONG is not #defined.
|
||||
- Added memset line before sigactions. (Adam Rogoyski)
|
||||
do_suspend():
|
||||
Removed function, see above for why.
|
||||
- winio.c:
|
||||
update_line(), center_cursor():
|
||||
- Removed wrefresh(edit) from bottom of functions. wrefresh
|
||||
should now only be called once, at the bottom of the main()
|
||||
loop.
|
||||
- global.c:
|
||||
shortcut_init():
|
||||
- Removed suspend sc_init call and suspend message because suspend is no
|
||||
longer needed in the shortcut list to work properly.
|
||||
|
||||
nano-0.9.7 - 05/14/2000
|
||||
- nano.c:
|
||||
do_home(), do_end():
|
||||
- Added calls to update_line for the current line, fixes
|
||||
lack of update (bug discovered by Alberto Garcэa).
|
||||
main():
|
||||
- Added SET(FOLLOW_SYMLINKS) before getopt call, fixes not
|
||||
following symlinks even when -l isn't set, and "no changes"
|
||||
error when nano is called from crontab -e (Adam Rogoyski).
|
||||
- cut.c:
|
||||
do_cut_text():
|
||||
- Added edit_update_top to cut when mark is set, fixes lack of
|
||||
display update (bug discovered by Ken Tyler).
|
||||
|
||||
nano-0.9.6 - 05/08/2000
|
||||
- New Italian translation (it.po), by Daniele Medri.
|
||||
- nano.c:
|
||||
page_up(), page_down():
|
||||
- Added reset of placewewant to 0, as it should be.
|
||||
do_up(), do_down():
|
||||
- Added call to update_line() for line we move from and line we
|
||||
move to, in order to keep the highlighting correct.
|
||||
do_wrap():
|
||||
- Added var chop, new code to wrap lines more like Pico, mostly.
|
||||
THIS STILL DEFINITELY NEEDS TO BE REWRITTEN!
|
||||
- winio.c:
|
||||
do_help():
|
||||
- Added edit_refresh() before exit.
|
||||
update_cursor():
|
||||
- Removed cursor updating which really wasn't needed anyway.
|
||||
edit_update():
|
||||
- Removed yucky code that didn't work, this function now just
|
||||
computes edittop and editbot and calls edit_refresh() to do the
|
||||
rest, which removes a lot of dupliicate code..
|
||||
|
||||
nano-0.9.5 - 05/01/2000
|
||||
- Removed bytes from file struct because it was computationally wasteful.
|
||||
- cut.c:
|
||||
do_uncut_text():
|
||||
- Added call to edit_refresh().
|
||||
- nano.c:
|
||||
do_backspace():
|
||||
- Added reset of editbot when deleting the last line of the file
|
||||
(bug discovered by Adam).
|
||||
do_char():
|
||||
- Removed call to reset_cursor().
|
||||
do_delete():
|
||||
- Added similar check as to do_backspace().
|
||||
do_enter():
|
||||
- Added call to edit_refresh().
|
||||
do_left(), right():
|
||||
- Added call to update_line(), still redundant but better...
|
||||
do_up(), do_down():
|
||||
- Added refresh calls both for current line and line to which
|
||||
we are moving.
|
||||
main():
|
||||
- Removed inefficient call to edit_refresh() after every keystroke.
|
||||
It is now up each function to leave the screen in a good state.
|
||||
- winio.c:
|
||||
do_cursorpos()
|
||||
- Rewritten to not use bytes from filestruct by an incremental sum.
|
||||
update_line(), reset_cursor():
|
||||
- Optimized calls to xplustabs() through a single variable.
|
||||
- update_line() now takes a new arg, an index into the string
|
||||
for where to update the line from. Needed for new update
|
||||
code.
|
||||
- configure.in:
|
||||
- Better checks for slang, allows argument to --with-slang.
|
||||
(Albert Chin-A-Young)
|
||||
- Removed -Iintl from CFLAGS in gcc check.
|
||||
- Makefile.am:
|
||||
- Addition of -Iintl for gettext (Albert Chin-A-Young)
|
||||
|
||||
nano-0.9.4 - 04/25/2000
|
||||
- Fixed calls to no_help and changed them to the more consistent
|
||||
ISSET(NO_HELP). Fixed return val of no_help to be what it should (2,
|
||||
not 1. Code to temporarily disable NO_HELP when in the
|
||||
help system. (Adam Rogoyski)
|
||||
- cut.c:
|
||||
do_marked_cut(), do_cut(), do_uncut():
|
||||
- Commented out unnecessary bits when NANO_SMALL is being used.
|
||||
- winio.c:
|
||||
xpt(), strlenpt(), actual_x():
|
||||
- Added check for value of data[i] & 0x80, if so do not make
|
||||
character 2 chars wide (orig. by Chris, 0x80 check by Adam).
|
||||
edit_refresh():
|
||||
- New check for temp == NULL (bad thing), if so go back to the
|
||||
previous line. New filestruct var hold points to prev line.
|
||||
Fixes segfault when paging down to the end of a file.
|
||||
- nano.c:
|
||||
write_file():
|
||||
- Added check for if file exists and is not equal to the current
|
||||
filename, prompt for overwrite (Adam Rogoyski).
|
||||
do_down():
|
||||
- Removed check for current->next == NULL, now checks return value
|
||||
of do_down before setting current_x = 0 (discovered by Adam).
|
||||
do_justify():
|
||||
- Fixed segfault when reaching the last line (tried to assign
|
||||
currrent->next->data when current->next == NULL) (discovered
|
||||
by Adam).
|
||||
- utils.c:
|
||||
- Removed extra macro defs that are now in nano.h.
|
||||
- nano.h:
|
||||
- Changed macro SET() to use |= instead of ^=. Fixes bug in
|
||||
cut code when cutting more than one line, and cutbuffer gets
|
||||
blown away when it shouldnt.
|
||||
|
||||
nano-0.9.3 - 04/29/2000
|
||||
- cut.c:
|
||||
do_marked_cut():
|
||||
- Fixed off by one error in cut code for marked text.
|
||||
do_cut_text():
|
||||
- Removed check for being on the last line, part of
|
||||
magic line code.
|
||||
add_to_cutbuffer():
|
||||
- Moved tmp->prev = inptr line to part where cutbuffer != NULL.
|
||||
- Added inptr->prev = NULL for case where cutbuffer == NULL.
|
||||
- nano.c:
|
||||
do_backspace(), do_char():
|
||||
- Removed "magic line" code. It was basically causing more bugs
|
||||
than it was helping for the sake of compatibillity. This fixes
|
||||
at least one known segfault condition.
|
||||
do_enter():
|
||||
- Added setting editbot to new node if the new node is the last
|
||||
node in the file.
|
||||
write_file():
|
||||
- Changed writing file bahavior. Now, if last line of the file
|
||||
has any data on it, we write a newline on it, else we dont.
|
||||
- winio.c:
|
||||
add_marked_sameline():
|
||||
- New code that checks for whether the begin and end of the marker
|
||||
are on different lines. Missing previously.
|
||||
edit_add():
|
||||
- added some more checks for text length. Cleaned up some mvwaddnstrs that
|
||||
could be written more simply as waddnstrs.
|
||||
edit_refresh():
|
||||
- Removed check for temp == filebot, it is now treated like any other line.
|
||||
Fixes a bug where selected text on the last line shows normally.
|
||||
xpt():
|
||||
- Removed an extra computation for tabs variable that was incorrect.
|
||||
xplustabs():
|
||||
- Since xpt now actualy works, this func is now just a wrapper for
|
||||
xpt(current, current_x)
|
||||
- nano.1, nano.1.html:
|
||||
- Added -l option to man pages.
|
||||
- configure.in:
|
||||
- New option --enable-tiny, #defines NANO_SMALL in config.h.
|
||||
Disables call to gettext in functions and other i18n stuff in
|
||||
nano.c, the detailed help mode, the resize functions, and the
|
||||
justify code which no one ever uses.
|
||||
- New option --with-slang. Enables slang libraries instead of
|
||||
ncurses, requires slcurses.h for wrapper functions. (Based
|
||||
on patches for 0.8.7 by Glenn McGrath).
|
||||
|
||||
nano-0.9.2 - 04/15/2000
|
||||
- This release just fixes the serious segfault problem if nano is
|
||||
invoked any way other than using the absolute path. The bug was
|
||||
in the new code for checking whether nano is invoked as pico.
|
||||
|
||||
nano-0.9.1 - 04/14/2000
|
||||
- Added pico compatibility for ^T when in search or switch to switch
|
||||
to the opposite function. Added one to REPLACE_LIST_LEN and
|
||||
WHEREIS_LIST_LEN in nano.h, new args to sc_init_one in global.c and
|
||||
new strings that will have to be gettex()ed. New argument 'replacing'
|
||||
to search_init(). Handlers in do_replace and do_search().
|
||||
- New write code, now follows symbolic links instead of replacing them
|
||||
with the new file. New option (-l, --nofollow) to enable the old
|
||||
(incorrect, but secure) behavior (Adam Rogoyski).
|
||||
- nano.c:
|
||||
do_wrap():
|
||||
- Fixed another bug relating to wrapping, and which would cause
|
||||
a segfault *sigh*.
|
||||
do_replace():
|
||||
- Incremented current_x by the length of the replacement
|
||||
text inside the main repalce loop. Fixes bug #15.
|
||||
add_marked_sameline():
|
||||
- New function, handles marked text when start & end of marker is
|
||||
on one line, also supports most marked text when cursor > COLS.
|
||||
main():
|
||||
- Code to check if nano is invoked as 'pico', and if so
|
||||
automatically set pico_msgs (Robert Jones).
|
||||
|
||||
nano-0.9.0 - 04/07/2000
|
||||
- nano.1, nano.1.html: Updated man page with my email address and homepage.
|
||||
- winio.c:
|
||||
reset_cursor(), update_line():
|
||||
- Changed update algorithm for x value to (COLS - 7) multiple when x
|
||||
value > (COLS - 2).
|
||||
- edit_refresh():
|
||||
- Removed inner loop code, now calls update_line() for each line
|
||||
in question, MUCH nicer.
|
||||
- xplustabs(), xpt():
|
||||
- Removed redundant increment of tabs when collumn no % 8 == 0.
|
||||
- Added check for data[i] < 32, most of such bits are 2 chars wide.
|
||||
- update_line():
|
||||
- Fixed a stupid call to strlenpt with col when we should have
|
||||
been using actual_col. Ugh.
|
||||
|
||||
nano-0.8.9 - 03/22/2000
|
||||
- nano.c:
|
||||
empty_line(), no_spaces(), justify_format(), do_justify():
|
||||
Actually added these (screwup applying patch).
|
||||
do_justify(): Added call to set_modified().
|
||||
|
||||
nano-0.8.8 - 03/12/2000
|
||||
- Preliminary internationalization support. Many many functions modified
|
||||
to use gettext (via _() macro). es.po file included. (Jordi Mallach)
|
||||
New dirs po/ and intl/, changes to configure.in and Automake.am to
|
||||
support i18n.
|
||||
- nano.c:
|
||||
includes: Ddded sys/param.h and limits.h. (Adam Rogoyski).
|
||||
statics: Changed some things that were not necessarily static
|
||||
(Adam Rogoyski).
|
||||
nrealloc(): New function, similar to nmalloc(). Changed calls from
|
||||
realloc() to nrealloc (Adam Rogoyski).
|
||||
empty_line(), no_spaces(), justify_format(), do_justify():
|
||||
New functions for justify function (Adam Rogoyski).
|
||||
- winio.c:
|
||||
blank_edit(): Added wrefresh call to edit so that screen updates (like
|
||||
on ^L) actually work.
|
||||
xplustabs(), xpt(), strlenpt(): Fixed off-by-one buglets (Adam Rogoyski).
|
||||
|
||||
nano-0.8.7 - 03/01/2000
|
||||
- main.c:
|
||||
do_wrap(): Better fix for segfaults, and fix for lisnes being wrapped
|
||||
to a single character on one line when no good place to
|
||||
break the line exists, and for wrapping lines longer than COLS.
|
||||
- nano.1.html:
|
||||
Html version of man page, now included in dist. For
|
||||
the benefit of nano packages in Linux distributions.
|
||||
|
||||
nano-0.8.6 - 02/24/2000
|
||||
- gobal.c:
|
||||
shortcut_init():
|
||||
Added shortcuts for goto_line and do_replace when using
|
||||
pico_msgs. Oops.
|
||||
- nano.c:
|
||||
statics: Changed fill back to 0 from 71 by default (Adam Rogoyski).
|
||||
do_wrap(): Added check for backing up past tabs, which we shouldnt do.
|
||||
Removed check for backing up past spaces first.
|
||||
main(): Added for loop to check for alt keys instead of hard list.
|
||||
do_enter(): Fix for bug #14, added call to reset_cursor and messed
|
||||
up do_char quite a bit.
|
||||
version(): Added time and date stamp for compile on version message.
|
||||
Added mail and web page info.
|
||||
- README: Updated mailing list info.
|
||||
|
||||
nano-0.8.5 - 02/18/2000
|
||||
- nano.c:
|
||||
main(): Finally fixed tilde being input on page up/down keys in
|
||||
certain terminal types. Fix was input 26->91->5[34] check
|
||||
for 126, if so make the kbinput PAGE UP/DOWN, else unget
|
||||
the keystroke and continue. Added #include <ioctl.h> for
|
||||
ioctl call.
|
||||
handle_hup():
|
||||
Handler for hangup signal. Belated include of patch from
|
||||
Tim Sherwood.
|
||||
- winio.c:
|
||||
edit_refresh():
|
||||
Temporary fix for selecting text when temp == current.
|
||||
edit_refresh() is now unmanagably complex, and must be
|
||||
revamped.
|
||||
check_statblank():
|
||||
Added check for constupdate, makes things less choppy
|
||||
(Adam Rogoyski)
|
||||
|
||||
nano-0.8.4 - 02/11/2000
|
||||
- Moved global variables that were only (or mostly) used in one file into
|
||||
its proper file as a static. Affects cut.c, nano.c, global.c (Andy Kahn).
|
||||
- global.c:
|
||||
shortcut_init():
|
||||
Removed redundant NANO_CONTROL_H from backspace shortcut,
|
||||
added char 127 which should have been there.
|
||||
- nano.c:
|
||||
main(): Fix for loops looping until MAIN_LEN, added -1 to stop
|
||||
segfaults (Adam Rogoyski).
|
||||
- Makefile.am: Added all source filenames (Adam Rogoyski).
|
||||
- nano.1: Fixed mail addressed and added mailing list address.
|
||||
- README: Updated my email address and the nano web page.
|
||||
|
||||
nano-0.8.3 - 02/08/2000
|
||||
- New pico mode (-p, --pico), toggles (more) compatibility with the
|
||||
Pico messages displayed in the shortcut list. Note that there are still
|
||||
small differences in this mode.
|
||||
- nano.h: New shortcut struct format, for the benefit of i18n and
|
||||
our help menu. Removed shortcut message macros, they are
|
||||
now all in shortcut_init in global.c.
|
||||
- nano.c:
|
||||
do_wrap(): Removed resetting of current_x when we are in fact
|
||||
wrapping to the next line, fixes a bug in -i mode.
|
||||
do_enter():
|
||||
Rewrote the autoindent mode code to be a lot less pretty,
|
||||
but a lot more magical.
|
||||
main():
|
||||
Removed case for ignoring char 126 (~). That's kind of
|
||||
important, we'll have to fix handling that sequence when
|
||||
pageing up/down on a terminal some other way... Revamped
|
||||
main switch loop in much snazzier fashion based on the
|
||||
shortcut list.
|
||||
- winio.c:
|
||||
New function display_main_list. Affects all functions
|
||||
that used to call bottombars() with main_list. Added
|
||||
because we now only call bottombars with the macro
|
||||
MAIN_VISIBLE instead of MAIN_LIST_LEN, because of the
|
||||
changes to the main_list shortcut list (see global.c below).
|
||||
New function do_help, our preliminary dynamic help system.
|
||||
- Many many funcs:
|
||||
Changed from int to void to allow one uniform type to call
|
||||
from the shortcut struct. Also a few functions that do
|
||||
not simple have void argument have new functions called
|
||||
funcname_void(void) to be called from the shortcut list.
|
||||
do_cut_text and do_uncut_text were changed to void
|
||||
arguments because they were never called with a filestruct
|
||||
other than *current anyway.
|
||||
- global.c:
|
||||
Shortcut list main_list was expanded to cover all
|
||||
shortcuts that could be caught in the main loop.
|
||||
Consequently there is a new macro MAIN_VISIBLE which tells
|
||||
how many items in the main list to actually show.
|
||||
|
||||
nano-0.8.2 - 02/02/2000
|
||||
- Added initial mouse (-m, --mouse) support. New global variable
|
||||
use_mouse. (Adam Rogoyski)
|
||||
|
||||
- nano.c: Set intial value of fill to COLS - 8 rather than just 72
|
||||
regardless. (Adam Rogoyski).
|
||||
do_delete():
|
||||
Deleted call to do_backspace() when on the end of a line,
|
||||
because it won't update the line properly.
|
||||
do_backspace():
|
||||
Removed unnecessary pointer manipulation that was being
|
||||
handled by unlink_node().
|
||||
open_file():
|
||||
Added check for trying to open a directory (currently we
|
||||
segfault on this). Bug pointed out by Chad Ziccardi.
|
||||
|
||||
nano-0.8.1 - 01/28/2000
|
||||
- Implemented Pico's -r (fill) mode, command line flag -r or --fill. New
|
||||
global variable fill, affects check_wrap(), do_wrap(), main(), usage(),
|
||||
global.c and proto.h.
|
||||
- nano.c:
|
||||
write_file(): Added (incredibly) necessary check for EPERM when
|
||||
link() fails. This allows us to actually save
|
||||
files via rename() on filesystems that dont
|
||||
support hard links (AIEEEEEE).
|
||||
do_goto():
|
||||
Fixed a stupid mistake where we were calling
|
||||
bottombars() with replace_list instead of goto_list.
|
||||
- nano.h:
|
||||
New char *help in shortcut structure for help
|
||||
feature. Added NANO_*_MSG and NANO_*_HELP #deifnes
|
||||
for help function and i18n.
|
||||
- global.c:
|
||||
New functions shortcut_init (called in nano.c) and
|
||||
sc_init_one() to initialize the shortcuts without
|
||||
using {}s (for i18n).
|
||||
|
||||
nano-0.8.0 - 01/25/2000
|
||||
- View flag (-v, --view) implemented. Global variable view_mode, affects
|
||||
main loop of nano.c and new_file(). (me)
|
||||
- nano.c:
|
||||
split checks for TERMIOS_H and TERMIO_H up so we
|
||||
can (theoretically) include them both, which is good.
|
||||
handle_sigwinch():
|
||||
Added check for ncurses.h. (Andy Kahn)
|
||||
do_spell():
|
||||
We now only try ispell because we don't as of yet
|
||||
handle the 'spell' program the right way, now that
|
||||
I finally know what the right way is =-). Added
|
||||
call to edit_update(fileage) to stop segfaults.
|
||||
global_init():
|
||||
Added initialization of edit* filestruct pointers
|
||||
to stop segfaults on spell check.
|
||||
usage():
|
||||
Check for getopt_long, and if no leave out the
|
||||
GNU options everyone seems to love so much (Andy Kahn)
|
||||
main():
|
||||
Added checks for getopt_long (Andy Kahn)
|
||||
We ignore character 126 because it gets put into
|
||||
the buffer when we page up/down on a vt terminal.
|
||||
write_file():
|
||||
Fixes for umask (Adam Rogoyski). Renamed tmpfile
|
||||
variable to tmp. Documented the tmp opttion
|
||||
better in the function comments. Fixed my
|
||||
stupidly commented out check for tmp on setting
|
||||
umask which I really like =>
|
||||
- nano.h:
|
||||
Made desc variable in shortcut struct a pointer
|
||||
instead of a fixed-length string.
|
||||
- utils.c:
|
||||
Fixed check for config.h before nano.h.
|
||||
- configure.in:
|
||||
New checks for getopt_long, getopt.h, removed
|
||||
CFLAGS and LDFLAGS changes. Gonna have to run
|
||||
strip manually now =-) (Andy Kahn)
|
||||
Added check for HAVE_WRESIZE, new file acconfig.h (me).
|
||||
|
||||
nano-0.7.9 - 01/24/2000
|
||||
- New autoindent feature. Command flag 'i' or '--autoindent'. New
|
||||
function do_char() to clean up character output, global
|
||||
variable autoindent in global.c. (Graham Mainwaring)
|
||||
- New flag 't' or '--tempfile', like Pico's -t mode, automatically saves
|
||||
files on exit without prompting. Affects do_writeout(). Also
|
||||
do_writeout() now takes a parameter for if exiting.
|
||||
Global variable temp_opt in global.c (Graham Mainwaring)
|
||||
- Preliminary spell program support. Added command flag '-s' or
|
||||
'--speller' for alternative speller command. Added function do_spell()
|
||||
and exit_spell() to nano.c. New global variable alt_speller.
|
||||
- nano.c:
|
||||
main(): We now ignore input of decimal 410 because these get entered
|
||||
when we resize the screen. Sorted options in getopt()
|
||||
switch statement.
|
||||
usage(): Sorted options and changed tabs to make room for -s option.
|
||||
write_file(): Now takes a second parameter 'tmpfile', uses mask 0600 and
|
||||
doesn't print the number of lines written on the statusbar.
|
||||
global_init():
|
||||
Added more initializations to globals to support do_spell().
|
||||
|
||||
nano-0.7.8 - 01/23/2000
|
||||
- Stubbed justify function. Affects main() in nano.c and nano.h defines.
|
||||
- Added Fkey equivalents for Pico compatibilty. Affects nano.h defines
|
||||
and main() in nano.c
|
||||
- Removed redundant reset_cursor() calls from the blank() routines.
|
||||
- nano.c:
|
||||
main(): Fixed typo in main while loop for NANO_ALT_REPLACE_KEY.
|
||||
Removed check for isprint() characters in main while loop
|
||||
for people with odd character sets *shrug*. Added some X
|
||||
window F-key combos.
|
||||
read_line(): New function, consolidates of most of the special
|
||||
sections of the file reading code. (Rob Siemborski)
|
||||
do_replace(): Many scattered fixes. (Rob Siemborski)
|
||||
write_file(): Added check for empty filename.
|
||||
- winio.c:
|
||||
nanogetstr(): Fixes for deleting at places other than the end of the
|
||||
buffer, cut support. (Adam Rogoyski)
|
||||
blank_edit(): New function, blanks edit buffer. Added call to it in
|
||||
total_refresh().
|
||||
- configure: Checks for glib if snprintf of vsnprintf aren't available
|
||||
(Andy Kahn). Changed warning message when no termcap lib
|
||||
is found.
|
||||
|
||||
nano-0.7.7 - 01/19/2000
|
||||
- Option '-v' for version moved to '-V', because -v is Pico's "read only"
|
||||
mode (affects getopt() in main() and usage() function in nano.c
|
||||
- New flag -c, always show cursor position. Affects main() in nano.c and
|
||||
statusbar() in winio.c
|
||||
- Option '-x' doesn't show help window at the bottom of the editor.
|
||||
New variable no_help in nano.h and proto.h, affects main(), usage(),
|
||||
and global_init() in nano.c, blank_bottombars(), clear_bottomwin(),
|
||||
bottombars(), and do_yesno() in winio.c (I had to apply this patch by
|
||||
hand =P) (Adam Rogoyski)
|
||||
- nano.c:
|
||||
handle_sigwinch(): New function (Adam Rogoyski), handles resizing.
|
||||
page_up(), page_down():
|
||||
- New functions. We now set the cursor at the top right corner,
|
||||
not at the center line, and page up and down a full screen
|
||||
rather than a half screen. Original functions renamed to
|
||||
page_up_center() and page_down_center().
|
||||
main():
|
||||
- Added check for keystroke key sequence 407 or NANO_CONTROL_Z
|
||||
in main while loop because suspend mode was broken. This should
|
||||
fix it, at least for now.
|
||||
- Added long option support (By popular harassment ;-) - Added
|
||||
#include for getopt.h, changed getopt() to getopt_long().
|
||||
Options added so far: --version (-V), --nowrap (-w), --suspend
|
||||
(-z), --help (-h), --nohelp (-x).
|
||||
- Rewrote signal statements (Adam Rogoyski)
|
||||
|
||||
nano 0.7.6 - 01/15/2000
|
||||
- New ChangeLog format
|
||||
- nano.c:
|
||||
main(): Bound CONTROL_H to backspace (oops)
|
||||
Added more Alt-[-key combinations, for page up & down.
|
||||
read_bytes(): New function (Adam Rogoyski)
|
||||
read_file(): Optimizations - malloc()s *buf a little at a time rather
|
||||
than one huge buffer, and replaced the strcat at the end
|
||||
with an index variable. Added call to read_bytes().
|
||||
do_next_word(): New function, binding is control-space (0) (me)
|
||||
|
||||
- winio.c:
|
||||
bottombars(): Fixed non-expanding shortcut keys at bottom of screen.
|
||||
(formula is extra space needed = COLS / 6 - 13).
|
||||
actual_x() & strlenpt():
|
||||
Added bug#9 fix - when tabs % 8 == 0, we should only
|
||||
increment tabs by 1.
|
||||
titlebar(): Fixed overrun in titlebar on very long filenames.
|
||||
|
||||
0.7.5 Pico 'last line' feature added (Rob Siemborski & me). Eliminated
|
||||
writing a newline at EOF. do_cursorpos and do_replace are now not
|
||||
directly bound to signals but picked up as their control sequences
|
||||
in raw mode. Bug fix in do_backspace. Fixed bug #9 (woohoo!)
|
||||
0.7.4 Optimized (obfuscated?) edit_refresh. Malloc() calls checked for
|
||||
available memory, align bug fixed (Big Gaute).
|
||||
|
||||
--- As of version 0.7.4 TIP is renamed to nano.
|
||||
|
||||
0.7.3 Fixed a double blank_statusbar() when jumping to first and last
|
||||
lines. Took out unnecessary updates in load_file. Bug fix in
|
||||
do_left. Missing updates to totlines, fixed bug #7 (last line not
|
||||
having a newline at the end doesnt get read, bugfix in do_replace
|
||||
with replace all, more/better comments (Robert Siemborski)
|
||||
0.7.2 Our first patch accepted into the source! configure fixes
|
||||
and optimizations (Erik Anderson). Added missing stdarg.h to winio.c.
|
||||
Bug fix in update_line for editing long lines. Fixed arguments
|
||||
being put into the filename when none is specified. Preliminary
|
||||
+line command argument function.
|
||||
0.7.1 configure tweak for better FreeBSD support. Removed refresh() from
|
||||
edit_refresh to stop cursor "jumping" during screen updates. This
|
||||
will probably cause a bug or two. Replace is now Alt-R (@R) and
|
||||
Goto line is Alt-G (@G), but they have control key aliases of ^\ and
|
||||
^_ respectively. Made Control-F,B,N,P work like they do in Pico.
|
||||
Control-G will become the Help key, but for now is stubbed out.
|
||||
0.7.0 Fixed missing stdlib.h from cut.c. Fixed a few message bugs in
|
||||
findnextstr. Bound Control-D to Delete. Refixed segfault on zero
|
||||
length file. Added Esc-[-A,B,C,D cursor key sequences.
|
||||
0.6.9 Preliminary cursor position function. Split up tip.c more, made
|
||||
new files cut.c and winio.c. Fixed a bug in cut_marked_segment
|
||||
that was leaving out a character.
|
||||
0.6.8 By request, optchr in main() is now an int. Removed unneeded
|
||||
globals. Bound functions for next/prev page, and wrote functions
|
||||
do_home and do_end.
|
||||
0.6.7 Bugfix in do_uncut_text for totlines. Broke up open_file and
|
||||
created read_file. Implemented Insert File. Fixes in tipgetstr
|
||||
for erroneous keystrokes. Added leave_cursor arg to do_yesno().
|
||||
0.6.6 Fixes in do_search(), do_replace(), do_writeout, and do_exit() for
|
||||
aborted searches and more Pico-compatible messages. statusq() now
|
||||
returns -2 on a blank entry instead of -1. Bug fix in actual_x().
|
||||
0.6.5 More BSD compatibility. Fixed two bugs in do_uncut_text
|
||||
regarding buffers with filebot in them. Fixins in do_backspace
|
||||
and do_enter. Removed unused variables. Removed strip_newline.
|
||||
0.6.4 Took out the awful newlines from each string buffers. This will
|
||||
certainly cause more bugs. Fixes in do_exit(). Better empty file
|
||||
handling (I hope).
|
||||
0.6.3 Implemented ^E. Removed now unneeded wrapline from filestruct.
|
||||
do_enter() rewritten.
|
||||
0.6.2 Better default file permissions. Complete rewrite of do_wrap().
|
||||
Better handling of editing with cursor near COLS - 1.
|
||||
0.6.1 Starting to implement wrapping toggle. Fix for unhandled control
|
||||
codes being entered into the buffer. Bug fix in actual_x; more
|
||||
> COLS - 1 functionality, especially on lines with TABs. Fixed being
|
||||
locked into cutbuffer when cutting more than one marked screen of text.
|
||||
0.6.0 We have TABs!!! To do this, placewewant is now set to the actual
|
||||
width on the screen we want to be, not an index of current->data.
|
||||
New functions xplustabs and actual_x convert the actual place
|
||||
the cursor should be on the screen to and from the place in the
|
||||
string.
|
||||
0.5.5 Changed do_right to test do_down before setting current_x to 0,
|
||||
eliminiating the "looping" on the last line when holding the right
|
||||
arrow. Preliminary support for longer than COLS - 1 lines.
|
||||
Wrote do_delete.
|
||||
0.5.4 Fixed a big in total_update that wasn't repainting the screen properly.
|
||||
tipgetstr is much more messy but text is now more editable ;)
|
||||
Fixed crash on entering a new file, hopefully. Awful stub for tab
|
||||
handling, only in do_right() to save me some sanity.
|
||||
0.5.3 Added check for malloc.h. Implementing uncut from marker slowly.
|
||||
Fixed a few bugs in do_uncut when not uncutting from marked text.
|
||||
I would not trust your data with the mark code right now, but then
|
||||
we're not at version 1.0 yet so dont trust anything ;)
|
||||
0.5.2 Added reset_cursor() before end of update_line so cursor doesnt
|
||||
jump after each keystroke entered. Select text stubbed. Fixed
|
||||
a bug in total_refresh(). Setting a mark will hilight properly,
|
||||
but does not actually affect what gets put in the cutbuffer (yet).
|
||||
0.5.1 Writing a file out causes modified to be set back to 0. Good.
|
||||
Set_modified function written. Cut and uncut text now set
|
||||
modified when called.
|
||||
0.5.0 Half way there! Implemented write out, save function seems
|
||||
stable. Changed statusbar blank routing to not refresh, a separte
|
||||
program calls it and then refreshes. Made the program not clear
|
||||
the srceen on exit, just the bottom two lines (like Pico).
|
||||
0.4.2 Implemented replace all in replace function. Crude exit function
|
||||
(asks yes or no if modified but does not write to file).
|
||||
0.4.1 Implementing search & replace. Fixed crash on deleting at top of
|
||||
edit buffer. Implemented "timeout" of statusbar messages.
|
||||
Implemented ^A and ^E (beginning and end of line).
|
||||
0.4.0 Split code into global.c and proto.h to allow for better multiple
|
||||
file handling. Added #defines for the majority of the shortcut
|
||||
kets in tip.h for easy modification.
|
||||
0.3.1 Write edit_refresh which doesn't move the screen around, just
|
||||
updates what's there already. do_wrap() and do_enter() added.
|
||||
0.3.0 Preliminary cutbuffer (cut and uncut) support.
|
||||
0.2.7 Check for Modification added. do_search() works.
|
||||
0.2.5 Rewrite of file data struct.
|
||||
0.2 Read in data to buffer, bound keystrokes to stub functions,
|
||||
initial cursor movement on screen. Initial autoconf support.
|
||||
0.1 Initial program setup w/ncurses
|
182
INSTALL
Normal file
182
INSTALL
Normal file
@ -0,0 +1,182 @@
|
||||
Basic Installation
|
||||
==================
|
||||
|
||||
These are generic installation instructions.
|
||||
|
||||
The `configure' shell script attempts to guess correct values for
|
||||
various system-dependent variables used during compilation. It uses
|
||||
those values to create a `Makefile' in each directory of the package.
|
||||
It may also create one or more `.h' files containing system-dependent
|
||||
definitions. Finally, it creates a shell script `config.status' that
|
||||
you can run in the future to recreate the current configuration, a file
|
||||
`config.cache' that saves the results of its tests to speed up
|
||||
reconfiguring, and a file `config.log' containing compiler output
|
||||
(useful mainly for debugging `configure').
|
||||
|
||||
If you need to do unusual things to compile the package, please try
|
||||
to figure out how `configure' could check whether to do them, and mail
|
||||
diffs or instructions to the address given in the `README' so they can
|
||||
be considered for the next release. If at some point `config.cache'
|
||||
contains results you don't want to keep, you may remove or edit it.
|
||||
|
||||
The file `configure.in' is used to create `configure' by a program
|
||||
called `autoconf'. You only need `configure.in' if you want to change
|
||||
it or regenerate `configure' using a newer version of `autoconf'.
|
||||
|
||||
The simplest way to compile this package is:
|
||||
|
||||
1. `cd' to the directory containing the package's source code and type
|
||||
`./configure' to configure the package for your system. If you're
|
||||
using `csh' on an old version of System V, you might need to type
|
||||
`sh ./configure' instead to prevent `csh' from trying to execute
|
||||
`configure' itself.
|
||||
|
||||
Running `configure' takes awhile. While running, it prints some
|
||||
messages telling which features it is checking for.
|
||||
|
||||
2. Type `make' to compile the package.
|
||||
|
||||
3. Optionally, type `make check' to run any self-tests that come with
|
||||
the package.
|
||||
|
||||
4. Type `make install' to install the programs and any data files and
|
||||
documentation.
|
||||
|
||||
5. You can remove the program binaries and object files from the
|
||||
source code directory by typing `make clean'. To also remove the
|
||||
files that `configure' created (so you can compile the package for
|
||||
a different kind of computer), type `make distclean'. There is
|
||||
also a `make maintainer-clean' target, but that is intended mainly
|
||||
for the package's developers. If you use it, you may have to get
|
||||
all sorts of other programs in order to regenerate files that came
|
||||
with the distribution.
|
||||
|
||||
Compilers and Options
|
||||
=====================
|
||||
|
||||
Some systems require unusual options for compilation or linking that
|
||||
the `configure' script does not know about. You can give `configure'
|
||||
initial values for variables by setting them in the environment. Using
|
||||
a Bourne-compatible shell, you can do that on the command line like
|
||||
this:
|
||||
CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure
|
||||
|
||||
Or on systems that have the `env' program, you can do it like this:
|
||||
env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure
|
||||
|
||||
Compiling For Multiple Architectures
|
||||
====================================
|
||||
|
||||
You can compile the package for more than one kind of computer at the
|
||||
same time, by placing the object files for each architecture in their
|
||||
own directory. To do this, you must use a version of `make' that
|
||||
supports the `VPATH' variable, such as GNU `make'. `cd' to the
|
||||
directory where you want the object files and executables to go and run
|
||||
the `configure' script. `configure' automatically checks for the
|
||||
source code in the directory that `configure' is in and in `..'.
|
||||
|
||||
If you have to use a `make' that does not supports the `VPATH'
|
||||
variable, you have to compile the package for one architecture at a time
|
||||
in the source code directory. After you have installed the package for
|
||||
one architecture, use `make distclean' before reconfiguring for another
|
||||
architecture.
|
||||
|
||||
Installation Names
|
||||
==================
|
||||
|
||||
By default, `make install' will install the package's files in
|
||||
`/usr/local/bin', `/usr/local/man', etc. You can specify an
|
||||
installation prefix other than `/usr/local' by giving `configure' the
|
||||
option `--prefix=PATH'.
|
||||
|
||||
You can specify separate installation prefixes for
|
||||
architecture-specific files and architecture-independent files. If you
|
||||
give `configure' the option `--exec-prefix=PATH', the package will use
|
||||
PATH as the prefix for installing programs and libraries.
|
||||
Documentation and other data files will still use the regular prefix.
|
||||
|
||||
In addition, if you use an unusual directory layout you can give
|
||||
options like `--bindir=PATH' to specify different values for particular
|
||||
kinds of files. Run `configure --help' for a list of the directories
|
||||
you can set and what kinds of files go in them.
|
||||
|
||||
If the package supports it, you can cause programs to be installed
|
||||
with an extra prefix or suffix on their names by giving `configure' the
|
||||
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
|
||||
|
||||
Optional Features
|
||||
=================
|
||||
|
||||
Some packages pay attention to `--enable-FEATURE' options to
|
||||
`configure', where FEATURE indicates an optional part of the package.
|
||||
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
|
||||
is something like `gnu-as' or `x' (for the X Window System). The
|
||||
`README' should mention any `--enable-' and `--with-' options that the
|
||||
package recognizes.
|
||||
|
||||
For packages that use the X Window System, `configure' can usually
|
||||
find the X include and library files automatically, but if it doesn't,
|
||||
you can use the `configure' options `--x-includes=DIR' and
|
||||
`--x-libraries=DIR' to specify their locations.
|
||||
|
||||
Specifying the System Type
|
||||
==========================
|
||||
|
||||
There may be some features `configure' can not figure out
|
||||
automatically, but needs to determine by the type of host the package
|
||||
will run on. Usually `configure' can figure that out, but if it prints
|
||||
a message saying it can not guess the host type, give it the
|
||||
`--host=TYPE' option. TYPE can either be a short name for the system
|
||||
type, such as `sun4', or a canonical name with three fields:
|
||||
CPU-COMPANY-SYSTEM
|
||||
|
||||
See the file `config.sub' for the possible values of each field. If
|
||||
`config.sub' isn't included in this package, then this package doesn't
|
||||
need to know the host type.
|
||||
|
||||
If you are building compiler tools for cross-compiling, you can also
|
||||
use the `--target=TYPE' option to select the type of system they will
|
||||
produce code for and the `--build=TYPE' option to select the type of
|
||||
system on which you are compiling the package.
|
||||
|
||||
Sharing Defaults
|
||||
================
|
||||
|
||||
If you want to set default values for `configure' scripts to share,
|
||||
you can create a site shell script called `config.site' that gives
|
||||
default values for variables like `CC', `cache_file', and `prefix'.
|
||||
`configure' looks for `PREFIX/share/config.site' if it exists, then
|
||||
`PREFIX/etc/config.site' if it exists. Or, you can set the
|
||||
`CONFIG_SITE' environment variable to the location of the site script.
|
||||
A warning: not all `configure' scripts look for a site script.
|
||||
|
||||
Operation Controls
|
||||
==================
|
||||
|
||||
`configure' recognizes the following options to control how it
|
||||
operates.
|
||||
|
||||
`--cache-file=FILE'
|
||||
Use and save the results of the tests in FILE instead of
|
||||
`./config.cache'. Set FILE to `/dev/null' to disable caching, for
|
||||
debugging `configure'.
|
||||
|
||||
`--help'
|
||||
Print a summary of the options to `configure', and exit.
|
||||
|
||||
`--quiet'
|
||||
`--silent'
|
||||
`-q'
|
||||
Do not print messages saying which checks are being made. To
|
||||
suppress all normal output, redirect it to `/dev/null' (any error
|
||||
messages will still be shown).
|
||||
|
||||
`--srcdir=DIR'
|
||||
Look for the package's source code in directory DIR. Usually
|
||||
`configure' can determine that directory automatically.
|
||||
|
||||
`--version'
|
||||
Print the version of Autoconf used to generate the `configure'
|
||||
script, and exit.
|
||||
|
||||
`configure' also accepts some other, not widely useful, options.
|
19
Makefile.am
Normal file
19
Makefile.am
Normal file
@ -0,0 +1,19 @@
|
||||
bin_PROGRAMS = nano
|
||||
nano_SOURCES = cut.c \
|
||||
global.c \
|
||||
nano.c \
|
||||
nano.h \
|
||||
proto.h \
|
||||
utils.c \
|
||||
winio.c
|
||||
|
||||
man_MANS = nano.1
|
||||
nano_LDADD = @INTLLIBS@
|
||||
|
||||
EXTRA_DIST = AUTHORS BUGS COPYING ChangeLog INSTALL NEWS README \
|
||||
TODO install-sh missing mkinstalldirs nano.1 nano.1.html
|
||||
|
||||
SUBDIRS = po intl
|
||||
|
||||
localedir = $(datadir)/locale
|
||||
INCLUDES = -Iintl -DLOCALEDIR=\"$(localedir)\" -I@includedir@
|
505
Makefile.in
Normal file
505
Makefile.in
Normal file
@ -0,0 +1,505 @@
|
||||
# Makefile.in generated automatically by automake 1.4 from Makefile.am
|
||||
|
||||
# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
|
||||
SHELL = @SHELL@
|
||||
|
||||
srcdir = @srcdir@
|
||||
top_srcdir = @top_srcdir@
|
||||
VPATH = @srcdir@
|
||||
prefix = @prefix@
|
||||
exec_prefix = @exec_prefix@
|
||||
|
||||
bindir = @bindir@
|
||||
sbindir = @sbindir@
|
||||
libexecdir = @libexecdir@
|
||||
datadir = @datadir@
|
||||
sysconfdir = @sysconfdir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
localstatedir = @localstatedir@
|
||||
libdir = @libdir@
|
||||
infodir = @infodir@
|
||||
mandir = @mandir@
|
||||
includedir = @includedir@
|
||||
oldincludedir = /usr/include
|
||||
|
||||
DESTDIR =
|
||||
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
|
||||
top_builddir = .
|
||||
|
||||
ACLOCAL = @ACLOCAL@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
transform = @program_transform_name@
|
||||
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
CATALOGS = @CATALOGS@
|
||||
CATOBJEXT = @CATOBJEXT@
|
||||
CC = @CC@
|
||||
CURSES_LIB = @CURSES_LIB@
|
||||
DATADIRNAME = @DATADIRNAME@
|
||||
GENCAT = @GENCAT@
|
||||
GLIB_CFLAGS = @GLIB_CFLAGS@
|
||||
GLIB_CONFIG = @GLIB_CONFIG@
|
||||
GLIB_LIBS = @GLIB_LIBS@
|
||||
GMOFILES = @GMOFILES@
|
||||
GMSGFMT = @GMSGFMT@
|
||||
GT_NO = @GT_NO@
|
||||
GT_YES = @GT_YES@
|
||||
INCLUDE_LOCALE_H = @INCLUDE_LOCALE_H@
|
||||
INSTOBJEXT = @INSTOBJEXT@
|
||||
INTLDEPS = @INTLDEPS@
|
||||
INTLLIBS = @INTLLIBS@
|
||||
INTLOBJS = @INTLOBJS@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MKINSTALLDIRS = @MKINSTALLDIRS@
|
||||
MSGFMT = @MSGFMT@
|
||||
PACKAGE = @PACKAGE@
|
||||
POFILES = @POFILES@
|
||||
POSUB = @POSUB@
|
||||
RANLIB = @RANLIB@
|
||||
USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
|
||||
USE_NLS = @USE_NLS@
|
||||
VERSION = @VERSION@
|
||||
l = @l@
|
||||
|
||||
bin_PROGRAMS = nano
|
||||
nano_SOURCES = cut.c global.c nano.c nano.h proto.h utils.c winio.c
|
||||
|
||||
|
||||
man_MANS = nano.1
|
||||
nano_LDADD = @INTLLIBS@
|
||||
|
||||
EXTRA_DIST = AUTHORS BUGS COPYING ChangeLog INSTALL NEWS README TODO install-sh missing mkinstalldirs nano.1 nano.1.html
|
||||
|
||||
|
||||
SUBDIRS = po intl
|
||||
|
||||
localedir = $(datadir)/locale
|
||||
INCLUDES = -Iintl -DLOCALEDIR=\"$(localedir)\" -I@includedir@
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
|
||||
CONFIG_HEADER = config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
PROGRAMS = $(bin_PROGRAMS)
|
||||
|
||||
|
||||
DEFS = @DEFS@ -I. -I$(srcdir) -I.
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBS = @LIBS@
|
||||
nano_OBJECTS = cut.o global.o nano.o utils.o winio.o
|
||||
nano_DEPENDENCIES =
|
||||
nano_LDFLAGS =
|
||||
CFLAGS = @CFLAGS@
|
||||
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||
CCLD = $(CC)
|
||||
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
|
||||
man1dir = $(mandir)/man1
|
||||
MANS = $(man_MANS)
|
||||
|
||||
NROFF = nroff
|
||||
DIST_COMMON = README ./stamp-h.in ABOUT-NLS AUTHORS COPYING ChangeLog \
|
||||
INSTALL Makefile.am Makefile.in NEWS TODO acconfig.h aclocal.m4 \
|
||||
config.h.in configure configure.in install-sh missing mkinstalldirs
|
||||
|
||||
|
||||
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
|
||||
|
||||
TAR = tar
|
||||
GZIP_ENV = --best
|
||||
SOURCES = $(nano_SOURCES)
|
||||
OBJECTS = $(nano_OBJECTS)
|
||||
|
||||
all: all-redirect
|
||||
.SUFFIXES:
|
||||
.SUFFIXES: .S .c .o .s
|
||||
$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
|
||||
cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps Makefile
|
||||
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
cd $(top_builddir) \
|
||||
&& CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
|
||||
|
||||
$(ACLOCAL_M4): configure.in
|
||||
cd $(srcdir) && $(ACLOCAL)
|
||||
|
||||
config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
$(SHELL) ./config.status --recheck
|
||||
$(srcdir)/configure: $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
|
||||
cd $(srcdir) && $(AUTOCONF)
|
||||
|
||||
config.h: stamp-h
|
||||
@if test ! -f $@; then \
|
||||
rm -f stamp-h; \
|
||||
$(MAKE) stamp-h; \
|
||||
else :; fi
|
||||
stamp-h: $(srcdir)/config.h.in $(top_builddir)/config.status
|
||||
cd $(top_builddir) \
|
||||
&& CONFIG_FILES= CONFIG_HEADERS=config.h:config.h.in \
|
||||
$(SHELL) ./config.status
|
||||
@echo timestamp > stamp-h 2> /dev/null
|
||||
$(srcdir)/config.h.in: $(srcdir)/stamp-h.in
|
||||
@if test ! -f $@; then \
|
||||
rm -f $(srcdir)/stamp-h.in; \
|
||||
$(MAKE) $(srcdir)/stamp-h.in; \
|
||||
else :; fi
|
||||
$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) acconfig.h
|
||||
cd $(top_srcdir) && $(AUTOHEADER)
|
||||
@echo timestamp > $(srcdir)/stamp-h.in 2> /dev/null
|
||||
|
||||
mostlyclean-hdr:
|
||||
|
||||
clean-hdr:
|
||||
|
||||
distclean-hdr:
|
||||
-rm -f config.h
|
||||
|
||||
maintainer-clean-hdr:
|
||||
|
||||
mostlyclean-binPROGRAMS:
|
||||
|
||||
clean-binPROGRAMS:
|
||||
-test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
|
||||
|
||||
distclean-binPROGRAMS:
|
||||
|
||||
maintainer-clean-binPROGRAMS:
|
||||
|
||||
install-binPROGRAMS: $(bin_PROGRAMS)
|
||||
@$(NORMAL_INSTALL)
|
||||
$(mkinstalldirs) $(DESTDIR)$(bindir)
|
||||
@list='$(bin_PROGRAMS)'; for p in $$list; do \
|
||||
if test -f $$p; then \
|
||||
echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \
|
||||
$(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \
|
||||
else :; fi; \
|
||||
done
|
||||
|
||||
uninstall-binPROGRAMS:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
list='$(bin_PROGRAMS)'; for p in $$list; do \
|
||||
rm -f $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \
|
||||
done
|
||||
|
||||
.c.o:
|
||||
$(COMPILE) -c $<
|
||||
|
||||
.s.o:
|
||||
$(COMPILE) -c $<
|
||||
|
||||
.S.o:
|
||||
$(COMPILE) -c $<
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.o core *.core
|
||||
|
||||
clean-compile:
|
||||
|
||||
distclean-compile:
|
||||
-rm -f *.tab.c
|
||||
|
||||
maintainer-clean-compile:
|
||||
|
||||
nano: $(nano_OBJECTS) $(nano_DEPENDENCIES)
|
||||
@rm -f nano
|
||||
$(LINK) $(nano_LDFLAGS) $(nano_OBJECTS) $(nano_LDADD) $(LIBS)
|
||||
|
||||
install-man1:
|
||||
$(mkinstalldirs) $(DESTDIR)$(man1dir)
|
||||
@list='$(man1_MANS)'; \
|
||||
l2='$(man_MANS)'; for i in $$l2; do \
|
||||
case "$$i" in \
|
||||
*.1*) list="$$list $$i" ;; \
|
||||
esac; \
|
||||
done; \
|
||||
for i in $$list; do \
|
||||
if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
|
||||
else file=$$i; fi; \
|
||||
ext=`echo $$i | sed -e 's/^.*\\.//'`; \
|
||||
inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
|
||||
inst=`echo $$inst | sed '$(transform)'`.$$ext; \
|
||||
echo " $(INSTALL_DATA) $$file $(DESTDIR)$(man1dir)/$$inst"; \
|
||||
$(INSTALL_DATA) $$file $(DESTDIR)$(man1dir)/$$inst; \
|
||||
done
|
||||
|
||||
uninstall-man1:
|
||||
@list='$(man1_MANS)'; \
|
||||
l2='$(man_MANS)'; for i in $$l2; do \
|
||||