Benno Schulenberg 5a635db262 chars: reduce searching time with roughly 85 percent for plain ASCII
Make case-insensitive searching in a UTF-8 locale eight times faster
when the actual characters involved are plain ASCII.

This makes us faster than 'less', and as fast as Vim and Emacs.

The disadvantage of this change is that searching for a string that
begins with a multibyte character is nearly ten times slower than
searching for one that begins with an ASCII character.  This may be
unsettling when searching a huge file first for a simple ASCII string
and later for a UTF-8 one.  Doing this second search, the user might
get impatient: "Why is it taking so long?"

(This patch fell through the cracks four years ago, when I worked on
the searching code.  It sat in a branch on top of other changes that
I never applied because I made different improvements.  The speedup
at the time, on that machine, was only around sixty percent, though.
But measuring it now again on the same machine, it clocks in at an
82 percent reduction with -O0 and an 87 percent reduction with -O2.)
2020-09-01 19:35:34 +02:00

          GNU nano -- a simple editor, inspired by Pico

Overview

    The nano project was started because of a few "problems" with the
    wonderfully easy-to-use and friendly Pico text editor.

    First and foremost was its license: the Pine suite does not use
    the GPL, and (before using the Apache License) it had unclear
    restrictions on redistribution.  Because of this, Pine and Pico
    were not included in many GNU/Linux distributions.  Furthermore,
    some features (like go-to-line-number or search-and-replace) were
    unavailable for a long time or require a command-line flag.  Yuck.

    Nano aimed to solve these problems by: 1) being truly free software
    by using the GPL, 2) emulating the functionality of Pico as closely
    as is reasonable, and 3) including extra functionality by default.

    Nowadays, nano wants to be a generally useful editor with sensible
    defaults (linewise scrolling, no automatic line breaking).

    The nano editor is an official GNU package.  For more information on
    GNU and the Free Software Foundation, please see https://www.gnu.org/.

How to compile and install nano

    Download the latest nano source tarball, then:

        tar -xvf nano-x.y.tar.gz
        cd nano-x.y
        ./configure
        make
        make install

    It's that simple.  Use --prefix with configure to override the
    default installation directory of /usr/local.

    If you haven't configured with the --disable-nanorc option, after
    installation you may want to copy the doc/sample.nanorc file to
    your home directory, rename it to ".nanorc", and then edit it
    according to your taste.

Web Page

    https://nano-editor.org/

Mailing Lists

    There are three nano-related mailing-lists.

    + info-nano@gnu.org is a very low traffic list used to announce
      new nano versions or other important info about the project.
    + help-nano@gnu.org is for those seeking to get help without
      wanting to hear about the technical details of its development.
    + nano-devel@gnu.org is the list used by the people that make nano
      and a general development discussion list, with moderate traffic.

    To subscribe, send email to <name>-request@gnu.org with a subject
    of "subscribe", where <name> is the list you want to subscribe to.

Bug Reports

    To report a bug, please file a description of the problem on nano's
    bug tracker (https://savannah.gnu.org/bugs/?group=nano -- hover on
    "Bugs", then click "Submit new").  The issue may have already been
    reported, so please look first.

Current Status

    Since version 2.5.0, GNU nano has abandoned the distinction between
    a stable and a development branch: it is now on a "rolling" release
    -- fixing bugs and adding new features go hand in hand.

Copyright Years

    When in any file of this package a copyright notice mentions a
    year range (such as 1999-2011), it is a shorthand for a list of
    all the years in that interval.
Description
No description provided
Readme 46 MiB
Languages
C 96%
M4 3.1%
Shell 0.4%
Makefile 0.4%
Perl 0.1%