GNU nano 2.4.2 - 2015.07.05
2015-06-28  Benno Schulenberg  <bensberg@justemail.net>
	* src/browser.c (browser_refresh): Limit the selected file to the
	available ones in the list -- after a refresh the number may have
	decreased.  This fixes Savannah bug #45424.
	* src/text.c (do_deletion): There is no need to check again for the
	line ending -- it was done already in the encompassing 'if'.
	* src/text.c: Unwrap some lines, rewrap some others more logically,
	plus several other esthetic tweaks.
	* doc/syntax/xml.nanorc: Recognize many more kinds of XML files.
	This addresses Debian bug #790017 reported by Emmanuel Bourg.
	Also colour the strings in tags differently, and add some comments.

2015-06-27  Benno Schulenberg  <bensberg@justemail.net>
	* src/text.c (do_undo, add_undo): Skip undoing a backspace *only* when
	it really tried to delete the final, magic newline.
	* src/nano.h, src/text.c: Rename three flags for clarity.
	* src/files.c (replace_buffer): This function is only ever called with
	a temporary file as parameter, so forget the case of an empty filename.
	Also, don't bother putting the pointer at the top of the buffer, as the
	first action after this function is to restore the cursor position.
	* src/files.c: Normalize whitespace and comments.
	* src/nano.h: Remove obsolete execute flag from the shortcut struct.
	* src/global.c (shortcut_init): Remove a duplicate binding of ^T, to
	prevent it being shown twice in the ^G help text.  It will be rebound
	dynamically when for the current syntax another function is available.

2015-06-23  Benno Schulenberg  <bensberg@justemail.net>
	* src/winio.c (edit_draw): Verify that there exists multidata for the
	found starting line before trying to use it.  When a file is inserted
	(^R), it will not have any precalculated multidata associated with it.
	This fixes Savannah bug #45377 reported by Cody A. Taylor.

2015-06-20  Benno Schulenberg  <bensberg@justemail.net>
	* src/search.c (do_research): If nothing was searched for yet during
	this run of nano, take the most recent item from the search history.
	This makes M-W work also right after startup, like <n> in vim/less.
	* src/utils.c (get_homedir): Keep homedir NULL when no home directory
	could be determined, so that nano will show a message about it.  This
	is a fix for Savannah bug #45343.
	* doc/syntax/nanorc.nanorc: Colour key-binding lines affirmatively
	only when the specified menu name is an existing one.
	* doc/syntax/changelog.nanorc: Stop the changed-files colour from
	spilling beyond a blank line.  Also highlight releases.
	* src/nano.c (main), src/rcfile.c: Remove the obsolete long option
	--undo.  And sort --help and the softwrap option more consistently.

2015-06-18  Benno Schulenberg  <bensberg@justemail.net>
	* src/rcfile.c: Allow a tiny nano's ~/.nanorc to enable search and
	position histories.  Also sort the options more strictly.
	* src/nano.h: Delete two unused things, and add two comments.

2015-06-17  Benno Schulenberg  <bensberg@justemail.net>
	* src/text.c (do_undo, add_undo): When undoing a Backspace at the tail
	of the file and nonewlines is not set, then don't add another newline
	but just reposition the cursor.  Also, when doing a Delete at the tail
	of the file, don't add a superfluous undo structure.  This prevents
	the appearance of an extra newline when undoing the Backspace/Delete.
	Patch partially by Mark Majeres.  The problem was first reported in
	https://lists.gnu.org/archive/html/nano-devel/2015-06/msg00003.html.
	* src/text.c (do_undo): Adjust whitespace after the previous change.
	* src/text.c (add_undo): Elide an unneeded variable and correct two
	comments.  And try to put the more frequent condition first.
	* src/text.c (add_undo): Rename the parameter 'current_action' to
	'action', to match the other functions.
	* src/text.c (do_undo, add_undo, update_undo): Improve the visibility
	of the undo-related debugging messages.

2015-06-14  Benno Schulenberg  <bensberg@justemail.net>
	* src/winio.c (edit_draw): Add some debugging code to track which
	multidata codes (for multiline regexes) get assigned to which lines.
	* src/winio.c (edit_draw): Start and end regexes can be very similar;
	so if a found start has been qualified as an end earlier, believe it
	and skip to the next step.  This helps with Python's docstrings.
	* src/winio.c (edit_draw): When the whole line has been coloured,
	don't bother looking for any more starts.  This prevents some lines
	from being erroneously marked as CENDAFTER instead of CWHOLELINE.
	* src/*.c: Don't check for non-NULL before freeing; it's unneeded.

2015-06-11  Benno Schulenberg  <bensberg@justemail.net>
	* src/winio.c (get_key_buffer): Add some debugging code to make it
	easy to see what codes a key stroke produces.

2015-06-07  Benno Schulenberg  <bensberg@justemail.net>
	* doc/texinfo/nano.texi: Show the node with the command-line options
	in the main menu, to make it easy to find.
	* doc/texinfo/nano.texi: Improve some formatting, hyphenation, wording
	and dashes.  And remove some confusing, historical things.
	* doc/man/nano.1, doc/man/nanorc.5, doc/texinfo/nano.texi: Clarify the
	meaning of --backupdir: it doesn't just specify a directory for saving
	backup files, it mainly causes uniquely numbered backups to be made.
	* doc/man/nano.1: Add a section on the non-obvious functioning of the
	cutbuffer and the mark.

2015-06-04  Benno Schulenberg  <bensberg@justemail.net>
	* src/nano.h: Fix compilation with --enable-tiny.
	* nano.spec.in: Add the post-install and pre-uninstall rules for the
	Info document, plus some tweaks.  (Patch was tested by Kamil Dudka.)

2015-06-02  Benno Schulenberg  <bensberg@justemail.net>
	* doc/man/nanorc.5, doc/texinfo/nano.texi: Tweak some wordings, and
	add some missing formatting to the Info document, and fix an mdash.
	* doc/syntax/debian.nanorc: Colour also an optional option.
	This addresses Debian bug #664456 reported by Shawn Landden.
	Also shorten the name of the syntax to "sources.list".
	* doc/syntax/python.nanorc: Require again that the triple quote	that
	starts a docstring is followed by some character -- it is better to
	*not* colour some strings than far too often colour far too much.
	This addresses Debian bug #785508 reported by Alexandre Detiste.

2015-05-31  Mahyar Abbaspour  <mahyar.abaspour@gmail.com>
	* src/prompt.c (get_statusbar_page_start): Prevent a floating-point
	exception when the available length for an answer becomes zero.

2015-05-28  Benno Schulenberg  <bensberg@justemail.net>
	* src/help.c (do_help), src/prompt.c (do_yesno_prompt): Normalize
	the whitespace after the recent changes in logic.
	* src/prompt.c (do_yesno_prompt): Use 'width' instead of hardcoded
	16.  Also always first set the string and then position the cursor.
	* TODO: Mark window resizes and better file-type detection as done.
	* doc/syntax/debian.nanorc: Allow a CD name to contain any character.
	This addresses Debian bug #688892 reported by Dani Möller Montull.

2015-05-28  Mahyar Abbaspour  <mahyar.abaspour@gmail.com>
	* src/nano.c (handle_sigwinch, regenerate_screen), src/global.c,
	src/prompt.c (do_statusbar_input, get_prompt_string, do_yesno_prompt),
	src/browser.c (do_browser, browser_refresh), src/help.c (do_help),
	src/winio.c (get_key_buffer, unget_input, get_input, parse_kbinput),
	src/text.c (do_justify, do_linter), src/nano.h, src/proto.h:
	Handle a SIGWINCH (signalling a change in window size) not when it
	happens but only when checking for input.  Report the SIGWINCH via
	a special key value to the calling routine, to allow not only the
	main editor but also the help viewer and the file browser to adapt
	their display to the new size.  (Patch edited by Benno.)

2015-05-20  Devrim Gündüz  <devrim@gunduz.org>
	* doc/syntax/postgresql.nanorc: New file -- syntax highlighting for
	PostgreSQL, first posted as Savannah patch #8601.  Trimmed by Benno.

2015-05-08  Benno Schulenberg  <bensberg@justemail.net>
	* src/browser.c (browser_refresh): Take the distant possibility of
	terabyte files into account, and in the bargain get rid of the need
	to calculate the number of digits in UINT_MAX.
	* src/files.c (get_next_filename): Limit the number of backup files
	to one hundred thousand -- which should be far more than enough --
	before finding an unused filename takes an annoying amount of time.
	* src/utils.c (digits): Delete this now unneeded function.

2015-05-03  Benno Schulenberg  <bensberg@justemail.net>
	* src/browser.c (browser_refresh): Display an ellipsis only when the
	filename is longer than the available space, not when it still fits.
	* src/browser.c, src/nano.c: Adjust a few comments and line wrappings.
	* doc/syntax/groff.nanorc: Use character classes correctly.

2015-04-28  Benno Schulenberg  <bensberg@justemail.net>
	* src/color.c (color_update): Match the file regex of a syntax against
	the absolute, canonical path instead of against the path the user gave.
	This fixes Savannah bug #44288, reported by Mike Frysinger.
	* doc/syntax/po.nanorc: Improve the colouring of message tags.
	* src/winio.c (get_escape_seq_kbinput): Unwrap a bunch of comments.

2015-04-25  Benno Schulenberg  <bensberg@justemail.net>
	* src/search.c (do_replace_loop): Remove the unintended special
	case for replacing multiple occurrences of a literal ^ or $; see
	https://lists.gnu.org/archive/html/nano-devel/2015-04/msg00065.html.
	* src/search.c (findnextstr): Delete an always-FALSE parameter.
	* src/search.c (findnextstr): Rename the parameter 'whole_word'
	to 'whole_word_only', for clarity.

2015-04-21  Benno Schulenberg  <bensberg@justemail.net>
	* src/browser.c (findnextfile): Save the settings of the global
	case-sens, direction, and regexp flags, and restore them on exit.
	And do this not in do_filesearch() but in findnextfile(), so that
	it will also work for do_fileresearch().
	* src/text.c (do_int_spell_fix): Save and restore the global flags
	in the same short and quick way as above.
	* src/nano.c (main): Initialize the search and replace strings in
	a central place, to get rid of a bunch of ifs.
	* src/search.c (search_init_globals): Elide this tiny function.

2015-04-20  Benno Schulenberg  <bensberg@justemail.net>
	* src/winio.c (need_horizontal_update, need_vertical_update): Fuse
	two identical functions into one: need_screen_update().
	* src/prompt.c (need_statusbar_horizontal_update): Rename function
	to need_statusbar_update() as there is no vertical counterpart.
	* src/search.c (do_search, do_research): Delete redundant reprises
	of a regex search: finding an occurrence only at the very starting
	point of the search necessarily means it is the only occurrence.

2015-04-18  Benno Schulenberg  <bensberg@justemail.net>
	* src/global.c, src/nano.c, doc/man/nanorc.5, doc/texinfo/nano.texi:
	Make the descriptions of the multibuffer feature more accurate.
	* src/winio.c (display_string): Make sure an invalid starting byte
	of a multibyte sequence is properly terminated, so that it doesn't
	pick up lingering bytes of any previous content.  This prevents the
	displaying of ghosts -- characters that aren't really there -- when a
	file contains valid ánd invalid UTF-8 sequences.  For an example see:
	https://lists.gnu.org/archive/html/nano-devel/2015-04/msg00052.html.
	Also make two comments more accurate: an invalid multibyte sequence
	will never be categorized as a control character or anything else.

2015-04-18  Mark Oteiza  <mvoteiza@udel.edu>
	* doc/syntax/{python,ruby,sh,tex}.nanorc: Add a linter definition.
	* doc/syntax/elisp.nanorc: New file; syntax highlighting for Elisp.
	* doc/syntax/guile.nanorc: New file; syntax highlighting for Guile.

2015-04-17  Benno Schulenberg  <bensberg@justemail.net>
	* src/text.c (do_alt_speller, do_linter, do_formatter): Distinguish
	a failure to launch the linter from receiving zero parsable lines;
	add a new function to glue together the invocation-error string.
	* src/global.c (shortcut_init): In the Help Viewer and File Browswer,
	bind the unbound Home and End keys to goto_top and goto_bottom, to
	mimic the behaviour of these keys in file viewers and web browsers.
	Also show ^Y and ^V in the WhereisFile menu instead of M-\ and M-/,
	for similarity with the WhereIs menu.
	* src/global.c (shortcut_init): Arrange the movement keys in the File
	Browser in the order of ascending stride, as in the Help Viewer.

GNU nano 2.4.1 - 2015.04.14
2015-04-13  Benno Schulenberg  <bensberg@justemail.net>
	* src/search.c (do_replace_loop): Fix compilation with --enable-tiny.
	* README: Mention also the Savannah page for reporting bugs.

2015-04-12  Benno Schulenberg  <bensberg@justemail.net>
	* src/browser.c (filesearch_init): Stop M-\ and M-/ in WhereisFile
	menu (reached via ^R ^T ^W) from doing also an unrequested search
	after having performed their function.  Fixes Savannah bug #44790.
	* src/global.c (shortcut_init): Rebind ^Y and ^V in the WhereisFile
	menu from the pointless page_up() and page_down() to the effective
	first_file() and last_file().  Also unbind some other useless keys.
	* src/browser.c (filesearch_init): Remove an unused variable, and
	adjust the introductory comment for the recently tweaked logic.
	* src/rcfile.c (parse_linter, parse_formatter): Use mallocstrcpy()
	in a correct manner; don't let it free an unrelated string.

2015-04-11  Benno Schulenberg  <bensberg@justemail.net>
	* src/search.c (do_replace_loop): Do not split off the marked region
	into a separate partition, but do the replacings in the current one,
	taking good care to stay within the boundaries of the region.  This
	fixes an undo bug where the first part of a line would disappear if
	the region started in the middle of a line.  Bug was reported here:
	https://lists.gnu.org/archive/html/nano-devel/2015-03/msg00077.html.
	Original idea and patch were by Mark Majeres.

2015-04-08  Benno Schulenberg  <bensberg@justemail.net>
	* src/browser.c (browser_select_dirname, findnextfile): Rename
	'currselected' to 'looking_at', for more contrast with 'selected',
	and rename browser_select_filename() to browser_select_dirname().
	* src/text.c: Correct and adjust some comments.

2015-04-07  Benno Schulenberg  <bensberg@justemail.net>
	* src/browser.c (do_fileresearch): Don't search for the empty string
	when nothing was sought yet (when historylog is set).
	* src/browser.c (filesearch_init): Remove an unfitting comment
	(there are no toggles here) and tweak some others.
	* src/search.c (do_search, do_research): Use the same variable as
	in the surrounding code, for consistency.
	* src/browser.c (findnextfile_wrap_reset): Elide this function,
	and rename 'search_last_file' to 'came_full_circle'.
	* src/browser.c (filesearch_init, do_fileresearch): Avoid setting
	'focusing' when searching only for filenames.
	* src/browser.c (findnextfile, do_filesearch, do_fileresearch):
	Greatly simplify the searching for the next matching filename.
	* src/{browser,files,help,prompt,text,winio}.c: Let the function
	bottombars() set the global variable 'currmenu' -- the displayed
	menu must necessarily be the active one.
	* src/browser.c (filesearch_abort): Elide this tiny function.
	* THANKS: Add the names of recent translators, and sort the list.
	* THANKS: A neater layout, plus two table headers.

2015-04-05  Benno Schulenberg  <bensberg@justemail.net>
	* doc/texinfo/nano.texi: Expand on nano's features, condense the
	synopsis, and "online" means something else to most people.

2015-04-03  Benno Schulenberg  <bensberg@justemail.net>
	* README: Update text to the fifth milestone, 2.4.x, plus tweaks.
	* src/rcfile.c: Remove two superfluous (because nested) #ifndefs.
	* src/rcfile.c (parse_rcfile): Ignore any magic when libmagic was
	disabled, and ignore a formatter when spell checking was disabled.

2015-03-28  Benno Schulenberg  <bensberg@justemail.net>
	* src/search.c (search_init_globals, search_replace_abort),
	src/winio.c (edit_redraw), src/proto.h, src/global.c: When finding
	an off-screen string, put it on the center line of the screen and
	not on the bottom or top line.  This restores the old behaviour
	that was unintentionally changed in r5149 six days ago.
	* src/winio.c (edit_refresh): When pasting lines on the bottom line,
	only scroll the required number of lines and not half a screen --
	that is, when smooth scrolling is enabled.
	* doc/syntax/changelog.nanorc: Also colour a series of changed files
	that spans more than one line.

2015-03-27  Mark Majeres  <mark@engine12.com>
	* src/text.c (do_alt_speller): Adjust the end point of the marked
	region for any change in length of the region's last line.

2015-03-27  Benno Schulenberg  <bensberg@justemail.net>
	* doc/syntax/patch.nanorc: Recognize also Debian package diffs.
	Fixes https://bugs.launchpad.net/ubuntu/+source/nano/+bug/1300565
	requested by Rolf Leggewie.
	* src/search.c (do_replace_loop): Adjust some whitespace and wrapping.
	* src/search.c (do_replace_loop): Place a call to edit_refresh better,
	and remove two unneeded ones.  This greatly speeds up nano when doing
	a Replace All with *lots* of occurrences.
	* src/{color,global,nano,text,utils}.c: Normalize some whitespace.
	* src/global.c (strtosc): The linter is only available when colour is.
	* src/global.c, src/text.c: Treat the formatter like a speller,	to fix
	compilation with --disable-speller.  Fixes Savannah bug #44607.

2015-03-25  Benno Schulenberg  <bensberg@justemail.net>
	* doc/syntax/debian.nanorc: Slightly widen and relax the header regex.
	* doc/syntax/python.nanorc: Hashes inside triple-quoted strings should
	not cause comment colouring.  (Inside single-qouted strings neither,
	but then quotes in comments will be coloured like strings.)  This
	solves https://bugs.launchpad.net/ubuntu/+source/nano/+bug/481363.
	* src/global.c (strtomenu): Remove mistaken menu name -- as the
	formatter allows no interaction it needs no associated menu.
	* src/text.c (do_formatter): Remove unneeded statement -- nothing
	has changed the value of 'currmenu'.
	* src/global.c (strtosc), doc/man/nanorc.5: Allow rebinding the
	linter when nano was configured with --disable-speller.

2015-03-23  Benno Schulenberg  <bensberg@justemail.net>
	* src/text.c (do_alt_speller): Avoid the spell checker reporting
	an error when the marked region is zero bytes long.  The message
	is not needed -- it gets printed by the caller.  This generalizes
	the fix for Savannah bug #29393.
	* src/text.c (do_alt_speller): Do not unset the mark before the
	possible bailout because of a zero-sized region.
	* NEWS: Option --noread allows writing, not reading, to named pipes.

2015-03-22  Chris Allegretta <chrisa@asty.org>
	* src/text.c (do_alt_speller): timestamp can just be a time_t.
	Fixes compilation on win32 and macOS.

GNU nano 2.4.0 - 2015.03.22
2015-03-22  Benno Schulenberg  <bensberg@justemail.net>
	* src/chars.c (move_mbleft): Start looking for a multibyte char
	not at the start of the string, but only as far back as such a
	char can possibly be.  Change suggested by Mark Majeres.
	* src/search.c (findnextstr): Step backward or forward not simply
	one byte but one character (possibly multibyte).  Fixes Savannah
	bug #42175, reported by myself, and the finding of ghosts seen in
	https://lists.gnu.org/archive/html/nano-devel/2015-03/msg00055.html.
	* src/winio.c (edit_redraw): Do not center the current line when
	smooth scrolling is used.  This fixes Savannah bug #42654.

2015-03-21  Benno Schulenberg  <bensberg@justemail.net>
	* src/text.c (do_alt_speller): Remove some leftovers.
	* src/search.c: Place some comments better and unwrap some lines.

2015-03-21  Mark Majeres  <mark@engine12.com>
	* src/text.c (do_alt_speller): Restore the positions of the mark
	and the cursor in a better way: to the columns where they were.
	This fixes Savannah bug #44542, reported by Benno Schulenberg.

2015-03-20  Benno Schulenberg  <bensberg@justemail.net>
	* src/nano.c (finish_stdin_pager, cancel_stdin_pager, stdin_pager):
	Normalize the whitespace, remove an old comment, and place another
	one better.
	* src/text.c (do_undo): Make a message equal to another one.  It
	was mistakenly changed in r4950.  (This	is translation-neutral.)
	* src/global.c (shortcut_init): Keep related items together in the
	^G help screen.

2015-03-17  Benno Schulenberg  <bensberg@justemail.net>
	* src/text.c (do_alt_speller): Do not set the modified flag when
	an external spell checker didn't make any changes.  This fixes
	Savannah bug #44320, reported by Cody A. Taylor.

2015-03-14  Benno Schulenberg  <bensberg@justemail.net>
	* src/text.c (do_formatter): Fix a message plus a few comments.

2015-03-14  Mark Majeres  <mark@engine12.com>
	* src/nano.c (renumber): Get out if there is nothing to renumber,
	to prevent do_undo() from falling over trying to renumber emptiness.
	This fixes Savannah bug #44488, reported by Dennis Decker Jensen.

2015-03-08  Benno Schulenberg  <bensberg@justemail.net>
	* src/proto.h, src/nano.c: Fix compilation with --enable-tiny plus
	--enable-nanorc.
	* src/rcfile.c (parse_binding): Fix the rebinding of toggles.
	* doc/man/{nano.1,rnano.1,nanorc.5}, doc/texinfo/nano.texi: Update
	years and version numbers in the docs in anticipation of a release.
	* src/nano.c (version): Drop compile time from version information
	to enable a reproducible build.  Proposed by Jérémy Bobbio and Jordi
	Mallach (https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=774388).

2015-03-07  Benno Schulenberg  <bensberg@justemail.net>
	* doc/man/nanorc.5, doc/texinfo/nano.texi: Add a note about the
	inherent imperfection of using regular expressions for syntax
	highlighting, as suggested by Mike Frysinger in bug #30962.
	* doc/man/nanorc.5: Improve the indentation of some lists.
	* doc/man/nanorc.5, doc/texinfo/nano.texi: Remove the mistaken
	square brackets around the arguments of "header" and "magic" --
	those arguments are not optional.  Also add "formatter" to the
	texinfo document, and slightly improve its punctuation.

GNU nano 2.3.99pre3 - 2015.02.27
2015-02-25  Chris Allegretta <chrisa@asty.org>
	* src/rcfile.c (parse_binding): Add an exception for do_toggle() as
	rebinding toggles broke with r5022.  (Fixed in r5134.)

2015-02-21  Benno Schulenberg  <bensberg@justemail.net>
	* README: Fix the explanation of how to subscribe to a mailing list.
	* doc/syntax/{java,lua,python,ruby}.nanorc: Wrap some overlong lines.

2015-02-18  Mike Frysinger  <vapier@gentoo.org>
	* doc/syntax/sh.nanorc: Recognize also dash, openrc and runscript.

2015-02-16  Mike Frysinger  <vapier@gentoo.org>
	* .gitignore: Ignore the autotools 'compile' file.

2015-02-15  Benno Schulenberg  <bensberg@justemail.net>
	* src/file.c (do_lockfile): Also show the name of the affected file
	when finding a lock file, for when many files are opened at once.
	* src/file.c (do_lockfile): The user does the editing, not the editor.

2015-02-09  Chris Allegretta <chrisa@asty.org>
	* nano.spec.in: Add dependency on texinfo, docdir files for
	RPM file creation.

GNU nano 2.3.99pre2 - 2015.02.06
2015-02-03  Alex Henrie  <alexhenrie24@gmail.com>
	* src/cut.c (do_cut_text): Make sure to set modified even when
	using --enable-tiny.

2015-02-01  Kamil Dudka  <kdudka@redhat.com>
	* src/files.c (write_lockfile): Avoid writing uninitialized bytes to
	the lock file -- a simple null_at() would not initialize the buffer.
	* src/files.c (do_lockfile): Make sure that 'lockprog' and 'lockuser'
	are terminated -- strncpy() does not guarantee that on its own.
	* src/files.c (do_lockfile): Avoid printing a wrong PID on the status
	bar due to treating serialized PID bytes as signed integers.  This
	addresses https://bugzilla.redhat.com/1186384 reported by Don Swaner.
	* src/files.c (write_lockfile): Do not trim the nano version number
	-- snprintf() counts the trailing zero into the size limit.

2015-02-01  Benno Schulenberg  <bensberg@justemail.net>
	* src/winio.c (do_credits): Add a general entry for all translators.
	* src/nano.c (version), src/winio.c (do_credits): Update the copyright
	years to include 2015.

2015-01-13  Chris Allegretta <chrisa@asty.org>
	* src/files.c (open_buffer): Check here for locking and properly
	handle choosing to not open a file when locked instead of in
	open_file().  Fixes Savannah bug #42373 reported by Benno Schulenberg.

GNU nano 2.3.99pre1 - 2015.01.06
2015-01-03  Chris Allegretta <chrisa@asty.org>
	* New formatter code to support syntaxes like
	go which have tools to automatically lint and reformat the text for
	you (gofmt), which is lovely.  rcfile option formatter, function
	text.c:do_formatter() and some other calls.

2014-12-28  Benno Schulenberg  <bensberg@justemail.net>
	* src/files.c (do_lockfile): Gettextize the "File being edited"
	prompt, and improve its wording.
	* src/winio.c (do_credits): Remove the names of past translators
	from the Easter-egg scroll.
	* THANKS: Add a missing	historical translator name.
	* src/winio.c (do_credits): Add Mark to the scroll, for all his
	undo work, colouring nano's interface, and other patches.

2014-11-30  Benno Schulenberg  <bensberg@justemail.net>
	* doc/syntax/spec.nanorc: Colorize %pretrans and %posttrans fully.
	Original patch from Savannah patch #8573 by Daniel Vrátil.

2014-09-21  Benno Schulenberg  <bensberg@justemail.net>
	* doc/syntax/{perl,python,ruby,sh}.nanorc: Recognize also header
	lines of the form "#!/usr/bin/env thing" besides "#!/bin/thing".
	This fixes Savannah bug #43270 reported by Kitty.

2014-08-29  Benno Schulenberg  <bensberg@justemail.net>
	* src/text.c (do_justify): Replace the old get_shortcut() wrapper
	with the new func_from_key().

2014-08-10  Benno Schulenberg  <bensberg@justemail.net>
	* doc/texinfo/nano.texi: Improve some wordings and formatting.

2014-08-07  Benno Schulenberg  <bensberg@justemail.net>
	* doc/syntax/nanorc.nanorc: Remove a mistaken OR which causes a
	'Bad regex, empty (sub)expression' error on some systems.  This
	fixes Savannah bug #42929 reported by Misty De Meo.

2014-08-03  Benno Schulenberg  <bensberg@justemail.net>
	* doc/man/nano.1, doc/man/rnano.1: Tweak the formatting a bit so that
	po4a will create a nicer POT file.
	* doc/man/nanorc.5: Improve some of the wordings and formatting.

2014-08-02  Benno Schulenberg  <bensberg@justemail.net>
	* doc/texinfo/nano.texi: Standardize the formatting of command-line
	options -- each one separately.  Also add some more markup.

2014-08-01  Benno Schulenberg  <bensberg@justemail.net>
	* doc/man/nano.1, doc/man/rnano.1: Separate short and long option
	by a comma instead of putting the long one between parentheses.
	And showing the required quotes around the argument of -Q.

2014-07-31  Benno Schulenberg  <bensberg@justemail.net>
	* src/files.c (do_insertfile): Adjust some indentation.
	* src/prompt.c (do_statusbar_input), src/browser.c (do_browser):
	Reorder a few things, and adjust some whitespace.

2014-07-27  Benno Schulenberg  <bensberg@justemail.net>
	* src/global.c (add_to_sclist): Remove the now unused and unneeded
	addition ability from this builder function of the shortcut list.
	* src/global.c (strtokeytype): Move this to a better place.
	* src/global.c (first_sc_for): Move this too to a better place.
	* src/prompt.c (do_yesno_prompt): Use the new and more direct
	func_from_key() wrapper instead of get_shortcut().
	* src/text.c (do_linter): Likewise.
	* src/files.c (do_insertfile, do_writeout): Likewise.

2014-07-24  Jordi Mallach  <jordi@gnu.org>
	* doc/texinfo/nano.texi, doc/man/nanorc.5: Typo fix.

2014-07-22  Benno Schulenberg  <bensberg@justemail.net>
	* doc/syntax/nanorc.nanorc: Remove 'undo' from the valid options.

2014-07-21  Jordi Mallach  <jordi@gnu.org>
	* doc/nanorc.sample.in: Remove ‘undo’ section which is now obsolete.

GNU nano 2.3.6 - 2014.07.17
2014-07-16  Jordi Mallach  <jordi@gnu.org>
	* doc/man/rnano.1: Additional printing formatting improvement from
	Bjarni Ingi Gislason.

2014-07-16  Jordi Mallach  <jordi@gnu.org>
	* doc/man/fr/nano.1, doc/man/fr/rnano.1: Apply similar escaping fixes
	to French manpages.
	* doc/man/fr/nano.1, doc/man/fr/rnano.1, doc/man/fr/nanorc.5: Recode
	as UTF-8.

2014-07-16  Jordi Mallach  <jordi@gnu.org>
	* doc/syntax/debian.nanorc: Add https, tor and spacewalk to supported
	APT methods.
	* doc/syntax/debian.nanorc: Apply the syntax to apt/sources.list.d/
	entries as well, as reported by Rodolphe Pelloux-Prayer.

2014-07-16  Jordi Mallach  <jordi@gnu.org>
	* doc/man/nano.1, doc/man/rnano.1: Add some escaping and formatting
	fixes as suggested Bjarni Ingi Gislason <bjarniig@rhi.hi.is> in
	Debian bugs #662842 and #726956.

2014-07-16  Benno Schulenberg  <bensberg@justemail.net>
	* src/text.c: Normalize the tabbing.

2014-07-16  Mark Majeres  <mark@engine12.com>
	* src/text.c (do_undo): Make sure renumbering starts far enough back
	after undoing a cut or paste.  This fixes a segmentation fault when
	undoing a repeated cutting and pasting of the first line of a file.
	* src/nano.c (move_to_filestruct, copy_from_filestruct): Fix two leaks.

2014-07-13  David Lawrence Ramsey  <pooka109@gmail.com>
	* ChangeLog: Typo fix.

2014-07-12  Benno Schulenberg  <bensberg@justemail.net>
	* configure.ac: The warning about datarootdir being ignored is
	not merely a warning, it also activates a workaround.

2014-07-11  Mark Majeres  <mark@engine12.com>
	* src/text.c (do_undo, do_redo): Do not speak of "line wrap"
	but instead of "text add" when undoing/redoing text additions
	that caused automatic line breaks.

2014-07-11  Benno Schulenberg  <bensberg@justemail.net>
	* src/files.c (write_lockfile): Refix typo in error message.

GNU nano 2.3.5 - 2014.07.11
2014-07-11  Chris Allegretta <chrisa@asty.org>
	* src/files.c (do_lockfile, open_file): If locking fails,
	allow the lock failure message to be preserved AND
	preserve the filename passed on the cmdline.  Fixes
	Savannah bug #42668.

2014-07-02  Chris Allegretta <chrisa@asty.org>
	* src/files.c (do_lockfile): Check whether the directory
	of the file we're trying to lock exists, and make the
	resulting error message more intuitive.  Fixes
	Savannah bug #42639 reported by Benno Schulenberg.

2014-07-02  Mark Majeres  <mark@engine12.com>
	* src/text.c (undo_cut, redo_cut, update_undo): Handle the
	cases of cutting-from-cursor-to-end-of-line correctly.
	* src/nano.c (do_input): Don't preserve the cutbuffer when
	CUT_TO_END is toggled -- it would intermix two cut types.
	* src/text.c (redo_cut, do_undo, do_redo): Don't forget to
	free the cutbuffer after use.

2014-07-02  Benno Schulenberg  <bensberg@justemail.net>
	* src/proto.h: Add a typedef for a pointer to a function.
	* src/global.c (func_from_key): New wrapper.
	* src/prompt.c (get_prompt_string, do_prompt): Use the new
	wrapper to make the code a bit cleaner.
	* src/help.c (do_help, parse_help_input): Use the wrapper.
	* src/browser.c (do_browser, parse_browser_input): Likewise.
	* src/search.c (search_init, do_gotolinecolumn): Likewise.
	* src/search.c (findnextstr): Replace a call of old wrapper
	'getfuncfromkey()' with	a call of new 'func_from_key()'.
	* src/winio.c (getfuncfromkey): Delete now unneeded wrapper.
	* src/nano.c (usage, main), doc/texinfo/nano.texi: Properly
	exclude the --quiet option when --disable-nanorc was given.

2014-07-01  Benno Schulenberg  <bensberg@justemail.net>
	* src/browser.c (do_browser), src/help.c (do_help): Make sure
	to always set 'currmenu', so that we can rely on it.
	* src/*.c (get_shortcut): Now that 'currmenu' is really global,
	stop passing it around.
	* src/help.c (help_init), src/winio.c (bottombars): There are
	no tagless functions, so there is no need to check.
	* src/prompt.c (do_prompt, get_prompt_string): Don't pass the
	menu, just set it earlier.
	* src/prompt.c (get_prompt_string): Group the arguments better.
	* src/global.c (shortcut_init), src/browser.c (do_filesearch):
	Show that it is possible to have backwards, regular-expressive
	and case-sensitive searching in the file browser.
	* src/browser.c (filesearch_init, do_filesearch): Now delete
	these abilities again and all provisions for them.
	* src/global.c (shortcut_init): Add two defines to make the
	functions list clearer.

2014-06-30  Mark Majeres  <mark@engine12.com>
	* src/cut.c, src/global.c, src/nano.c: Rename 'cut_till_end' to
	'cut_till_eof', and 'do_cut_till_end' to 'do_cut_till_eof', to
	reduce confusion with CUT_TO_END, which is about end-of-line.

2014-06-30  Benno Schulenberg  <bensberg@justemail.net>
	* src/color.c (color_update): When there are no syntaxes, for example
	with --ignorercfiles, do not try to find one, because that would lead
	to the magic database being searched, which slows down startup a lot.
	* src/color.c (color_update): Move some variables to a better place.
	* src/*: Make 'meta_key' and 'func_key' into global variables, instead
	of having them declared everywhere and passing them around endlessly.
	* src/global.c (sc_seq_or): Now fix a bug introduced somewhere after
	2.3.2 where binding a movement function to a Meta key would make the
	corresponding Arrow key stop working (producing a character instead).

2014-06-29  Benno Schulenberg  <bensberg@justemail.net>
	* src/rcfile.c: Fix compilation with --enable-tiny --enable-nanorc.
	* src/winio.c (parse_kbinput, get_escape_seq_kbinput): Make Ctrl-Left
	and Ctrl-Right produce special codes, and map these codes to Prevword
	and Nextword instead of reducing them to a plain Left and Right.  The
	codes 539 and 554 were so chosen because some terminals produce these.

2014-06-29  Mark Majeres  <mark@engine12.com>
	* src/text.c (do_undo): Update the pointer to the bottom of the file
	when undoing line deletions at file's end.

2014-06-28  Benno Schulenberg  <bensberg@justemail.net>
	* src/prompt.c (do_statusbar_input): Remove the useless parameters
	'have_shortcut and 'allow_funcs'; the latter is only ever TRUE.
	* src/global.c (shortcut_init), src/prompt.c (do_statusbar_input):
	Eradicate the execute flag -- it is only FALSE for functions that are
	empty placeholders (so executing them will not do anything anyway) or
	for functions ('total_refresh', 'do_suspend_void') that do not exist
	in menus with a prompt.  The only two exceptions are 'do_cancel' and
	'do_gotolinecolumn_void'.  The first is handled specially, so do that
	too for the second and then get to drop 140 parameters.
	* src/global.c (strtosc): Move recognition of the toggles to the end,
	use a single assignment of do_toggle_void, trim the unneeded braces.

2014-06-27  Benno Schulenberg  <bensberg@justemail.net>
	* src/global.c (shortcut_init): Add default keybindings for Cut,
	PrevWord and NextWord in the prompt input lines; the code for those
	special operations already exists, just the shortcuts were missing.
	* src/rcfile.c (parse_binding): When binding keys, only allow those
	menus where the bound function is actually present.  This reduces
	the meaning of 'all' to "all menus where the function exists".
	* src/rcfile.c (is_universal): New function, returning TRUE for the
	functions that are present in most menus but only listed in MMAIN.
	* doc/man/nanorc.5, doc/texinfo/nano.texi: Update the docs for this.
	* prompt.c (find_statusbar_bracket_match, do_statusbar_find_bracket):
	Remove these functions and thus the ability to search for a matching
	bracket in a prompt input line.  The find_bracket function never had
	a default keybinding outside MMAIN, so is unlikely to have been used.
	* src/prompt.c (do_statusbar_input): Normalize the indentation.
	* src/winio.c: Normalize some whitespace.
	* Makefile.am, nano.spec.in: Stop distributing the BUGS file.
	* BUGS: Remove obsolete file, as all the bugs in it have been fixed
	long ago.  Nowadays bugs are tracked on Savannah.
	* configure.ac: Silence a useless warning about ignoring datarootdir.

2014-06-25  Benno Schulenberg  <bensberg@justemail.net>
	* src/browser.c (do_browser): Allow 'firstfile' and 'lastfile' to be
	rebound to Ctrl keys -- checking meta_key is wrong, the function has
	already been determined, that is all that matters.
	* src/help.c (do_help): Same thing for 'firstline'/'lastline'.

2014-06-23  Benno Schulenberg  <bensberg@justemail.net>
	* src/nano.h, src/move.c (do_up, do_down), src/winio.c (edit_scroll):
	Rename UP_DIR and DOWN_DIR to UPWARD and DOWNWARD, for clarity.
	* src/proto.h, src/global.c, src/search.c: Rename 'no_replace_void()'
	to 'flip_replace_void()', to show what it actually does.
	* doc/man/nanorc.5, doc/texinfo/nano.texi: Update the docs for that.
	* src/global.c (strtosc): Add the bindable function 'gotodir'.
	* doc/man/nanorc.5, doc/texinfo/nano.texi: Document the bindable
	functions 'tofiles','gotodir' and 'flipnewbuffer', and correct
	the description of 'gototext' (not being about the file browser).
	* doc/syntax/nanorc.nanorc: Show Ins and Del as valid rebindable keys.
	* src/help.c (do_help): Normalize the indentation.
	* src/files.c (do_insertfile): Give audible feedback when flipping
	the new buffer to off is not allowed in view mode.

2014-06-22  Benno Schulenberg  <bensberg@justemail.net>
	* src/browser.c (parse_browser_input), src/help.c (parse_help_input):
	Remove two pointless calls of get_shortcut(), and adjust the comments.
	* src/nano.c (do_toggle): When toggling softwrap, only the edit window
	needs to be refreshed, not the entire screen.
	* src/browser.c (do_browser): Remove superfluous abortion variable,
	and place two comments better.
	* src/text.c (do_redo): Rename 'undidmsg' to 'redidmsg', to be apt.

2014-06-22  Mark Majeres  <mark@engine12.com>
	* src/text.c (do_redo): When redoing a line join at the tail
	of the file, make sure openfile->filebot is updated.
	* src/text.c (undo_cut, redo_cut, do_undo, add_undo, update_undo):
	Fix three leaks of the cutbuffer, shorten and regroup some stuff,
	and remove an unneeded iteration of cutbottom.

2014-06-21  Mark Majeres  <mark@engine12.com>
	* src/text.c (undo_cut, add_undo): When undoing a cut-till-eof,
	put the cursor back where the cut started, and not at the end.
	* src/text.c (do_undo): When undoing a line break at the tail
	of the file, make sure openfile->filebot is updated.

2014-06-21  David Lawrence Ramsey  <pooka109@gmail.com>
	* src/move.c, src/nano.c: Miscellaneous whitespace fixes, one
	type fix, and one more #ifdef NANO_TINY.

2014-06-20  Benno Schulenberg  <bensberg@justemail.net>
	* src/proto.h, src/global.c: Remove two obsolete variables and an
	unneeded extern, and regroup some stuff.
	* src/files.c (check_dotnano): Wrap long lines and actually report
	the name that is not a directory.
	* src/*: Miscellaneous whitespace adjustments and comment tweaks.
	* src/files.c: Fix compilation with --enable-tiny --enable-browser.
	* doc/man/nano.1, doc/texinfo/nano.texi: History logging no longer
	depends upon nanorc support, plus many other tweaks.
	* src/global.c (strtosc): Fix compilation with --enable-tiny
	--enable-histories --enable-nanorc.
	* src/text.c: Fix compilation with --enable-tiny --enable-wrapping.
	* src/files.c (do_insertfile): Fix compilation with --enable-tiny
	--enable-histories --enable-multibuffer.
	* src/nano.c: Fix compilation with --enable-tiny --enable-mouse.
	* doc/man/nanorc.5, doc/texinfo/nano.texi: Explain better what "all"
	means when rebinding keys.  This is a fix for Savannah bug #42552.
	* src/nano.c (main): Make +1 and +,1 start on line one column one,
	overriding a historical position.  This fixes Savannah bug #42538.

2014-06-19  Benno Schulenberg  <bensberg@justemail.net>
	* src/nano.c (window_init): Rename 'no_more_space()' to 'more_space()'
	for consistency, and tweak the related comments.
	* src/files.c: Update some comments to match the current status.
	* src/nano (finish, main): Allow -H/--historylog and -P/--poslog to
	function also when -I/--ignorercfiles is given.
	* configure.ac: Add a --disable-histories flag, to disable the code
	for the histories of search/replace strings and cursor positions.
	* doc/texinfo/nano.texi: Document the new configure flag.
	* src/*: Transform many DISABLE_NANORC to the new DISABLE_HISTORIES.
	This completes the fix for Savannah bug #42539.

2014-06-18  Benno Schulenberg  <bensberg@justemail.net>
	* src/text.c: Rename 'to_end' to 'to_eof', to lessen confusion
	with CUT_TO_END (which is about cutting to end-of-line).
	* src/text.c: Upon better thought, elide the unneeded 'to_eof'.
	* src/text.c: And elide a totally unused 'strdata2'.
	* src/text.c: Rename the undo type UNSPLIT to JOIN, for clarity.
	* src/global.c, src/rcfile.c: Rename function_type to key_type.
	* src/text.c (break_line): Remove a condition and a break that
	cancel each other.

2014-06-18  Mark Majeres  <mark@engine12.com>
	* src/text.c (add_undo): Don't start a new undo for CUT when the
	cutbuffer is being preserved, because then the cuts are contiguous
	and will form a single undo item.  And make sure the cutbuffer will
	be cleared when a new undo item for CUT is created.
	* src/cut.c (keeping_cutbuffer): New function, to access the status
	of 'keep_cutbuffer' from the undo/redo code in src/text.c.
	* src/cut.c (do_copy_text): Blow away the contents of the cutbuffer
	if the mark is set or the cursor has moved between two copy commands.

2014-06-17  Mark Majeres  <mark@engine12.com>
	* src/text.c (do_undo, do_redo): After an undo or redo, update the
	'placewewant' (the desired horizontal position of the cursor).

2014-06-17  Benno Schulenberg  <bensberg@justemail.net>
	* src/text.c (do_undo, do_redo): Remove obsolete boolean variable.
	* doc/man/nano.1, doc/man/nanorc.5, doc/texinfo/nano.texi: Replace
	SYSCONFDIR with an absolute path or a circumlocution, as suggested
	by Mike Frysinger, plus some other tweaks.

2014-06-16  David Lawrence Ramsey  <pooka109@gmail.com>
	* src/nano.c (do_exit): Display the message "No file name" on the
	statusbar for two seconds when --tempfile was given and the current
	buffer has no name.  This fixes Savannah bug #41750.

2014-06-16  Benno Schulenberg  <bensberg@justemail.net>
	* configure.ac: For the sake of statically linked systems, make sure
	the compiler also links against libz, which is used by libmagic.
	This fixes Savannah bug #38378, reported by Alan Hourihane.
	* src/nano.c (do_mouse, do_input): Don't bother returning zero when
	the cursor moved, just reset the cutbuffer directly.  This avoids an
	"Unknown Command" message on every cursor-positioning mouse click.
	* src/nano.c (do_mouse): Put a common statement outside of then/else.
	* src/Makefile.am: Remove -I m4; it is needed only at the top level.
	* Makefile.am: Trim the contents of EXTRA_DIST to what is required.
	* doc/man/nano.1, doc/man/nanorc.5, doc/texinfo/nano.texi: Update
	the docs for the changed location of nano's search history.
	* doc/man/nano.1, doc/man/nanorc.5, doc/texinfo/nano.texi: Change
	some wordings, triggered by Savannah bug #52539.

2014-06-14  Mark Majeres  <mark@engine12.com>
	* src/nano.h, src/text.c (undo_cut, update_undo): When undoing a
	backwards cut, put the cursor back in front of it, where it was.

2014-06-13  Benno Schulenberg  <bensberg@justemail.net>
	* src/nano.c (do_input): Repositioning the cursor with the mouse
	(result == 0) should break a series of ^Ks.
	* src/nano.c (do_mouse): Clicking on the titlebar or the statusbar
	should not break a series of ^Ks, thus result must not be zero.
	* src/nano.c (do_input): A toggle should not break a series of ^Ks.
	* src/winio.c (get_shortcut): Do not treat holding both Control and
	Meta the same as holding only Control.
	* src/global.c, src/rcfile.c, src/nano.h, src/nano.c, src/text.c:
	Remove the --undo option, having the undo functions always enabled.
	If wished, the user can unbind them.  This fixes Savannah bug #42456.
	* doc/man/{nano.1,nanorc.5}, doc/texinfo/nano.texi: Update the docs.
	* nano.spec.in: Remove useless info dir file from the build directory,
	don't clean this directory first, it's unnecessary, add a suggestion
	for a pico symlink, and update the license and the source URL.

2014-06-11  Benno Schulenberg  <bensberg@justemail.net>
	* src/winio.c (get_mouseinput): Produce the correct return value for
	when a mouse event reinserted something into the keyboard buffer.
	* src/nano.c (do_input): Do not continue when there is a spurious
	mouse event (a touch of the touchpad, for example) but get out.
	Continuing would result in the cutbuffer being cleared upon the
	next cut.  These two changes together fix Savannah bug #42326.
	* src/nano.c (do_input): Always accept mouse events, also when
	just looking for Unjustify.  This fixes Savannah bug #42322.
	* src/nano.c (do_input): Remove a superfluous switch statement.
	* src/winio.c (get_mouseinput): Set the type of a reinserted key,
	also when it is a function key.  This fixes Savannah bug #42092.

2014-06-10  Benno Schulenberg  <bensberg@justemail.net>
	* src/browser.c, src/files.c, src/nano.c src/prompt.c, src/winio.c:
	A few minimalistic whitespace adjustments.
	* src/rcfile.c (check_bad_binding): Avoid a compiler warning.

2014-06-10  David Lawrence Ramsey  <pooka109@gmail.com>
	* src/winio.c: One more type fix and two tiny message tweaks.

2014-06-09  David Lawrence Ramsey  <pooka109@gmail.com>
	* src/*.c: Cosmetic tweaks of comments and whitespace.
	* src/help.c, src/rcfile.c, src/winio.c: Elide a function call by
	not comparing with an empty string but checking for the final \0.
	* src/files.c, src/nano.c, src/text.c, src/winio.c: Type fixes in
	debugging stuff -- line numbers are long, x positions unsigned long.
	* src/files.c, src/move.c, src/nano.c, src/text.c, src/winio.c:
	Make tiny nano a bit tinier by preening out some soft-wrap stuff.
	* src/global.c, src/nano.c, src/winio.c: A few more cosmetic tweaks
	(whitespace, order, braces, parentheses, and a typo) and type fixes.

2014-06-09  Benno Schulenberg  <bensberg@justemail.net>
	* src/nano.c (do_input): Remove two superfluous false conditions.
	* src/nano.h, src/text.c (add_undo): Avoid a compiler warning with
	--disable-wrapping.

2014-06-09  Mark Majeres  <mark@engine12.com>
	* src/text.c (do_undo, do_redo, add_undo, update_undo, do-wrap):
	Rewrite the line-wrapping code to make use of the existing line-break
	code.  And undo line wraps together with their causal text additions,
	and not as separate actions because the user did not make them.

2014-06-08  Mark Majeres  <mark@engine12.com>
	* src/text.c (do_delete, do_deletion, do_undo, do_redo, update_undo):
	Differentiate between undoing a Delete and undoing a Backspace -- the
	cursor should be in a slightly but significantly different position.

2014-06-04  Benno Schulenberg  <bensberg@justemail.net>
	* src/global.c (shortcut_init), src/files.c (do_insertfile): Rename
	'ext_cmd_void' to 'flip_execute_void' to better match what it does.
	* src/global.c (strtosc), doc/man/nanorc.5, doc/texinfo/nano.texi:
	Add function name 'flipexecute' to enable rebinding ^X in the menus
	Read File and Execute Command.

2014-06-04  David Lawrence Ramsey  <pooka109@gmail.com>
	* src/*.c: Adjustments of whitespace and comments.
	* doc/nanorc.sample.in: Interpunction tweaks.
	* src/global.c (add_to_funcs): Add cast to subnfunc* for nmalloc().
	* src/files.c (do_lockfile): Properly make the variable 'lockfilesize'
	a size_t instead of a ssize_t, since it holds the result of strlen().
	And use charalloc() instead of (char *)nmalloc().
	* src/text.c (do_undo): Use charealloc() and not (char *)nrealloc().
	* src/text.c (add_undo): Make use of null_at() to both null-terminate
	the multibyte character and align it to use only the amount of memory
	necessary.

GNU nano 2.3.4 - 2014.06.02
2014-06-02  Chris Allegretta <chrisa@asty.org>
	* doc/syntax/default.nanorc: Can't do trailing spaces in the
	  default syntax or it will hilight the spaces as you type them
	  into a new file, which for non-programming is infuriating.

2014-05-29  Mark Majeres  <mark@engine12.com>
	* src/text.c (do_delete): For the undo structure, differentiate
	between deleting a newline and any other character.

2014-05-29  Chris Allegretta <chrisa@asty.org>
	* src/chars.c (addstrings): This function needs to be available even
	  on non-utf-8 systems.
	* nano-regress: Added --disable-utf8 to regression check.

GNU nano 2.3.3 - 2014.05.29
2014-05-28  Chris Allegretta <chrisa@asty.org>
	* doc/syntax/mutt.nanorc: Include Benno's awesome signature
	  matcher, modified slightly to also work for quoted sigs.
	* doc/syntax/default.nanorc: Be far more gentle with something
	  which affects every file which doesn't match another syntax, and
	  the user may not be able to override if their distro turns on
	  highlighting by default.

2014-05-28  Benno Schulenberg  <bensberg@justemail.net>
	* src/nano.c (do_input): Remove the three unused parameters 's_or_t',
	'ran_func', and 'finished'.  They are only ever set and never used.
	* src/text.c (do_justify): Adjust a call of do_input().
	* src/browser (do_browser): Actually translate the go-to-dir prompt.
	* src/browser, src/search.c: There is no need to repeat translator
	comments for the same string -- once is enough to get them included.
	Add instead some translator comments for the prompts.
	* src/global.c (shortcut_init): Make ^X in the Read-File menu toggle
	between executing a command and inserting a file.  The mechanism in
	do_insertfile() in files.c is already present -- in the past just
	the wrong function was used in the relevant function-list item:
	'do_insertfile_void' instead of the unintuitive 'ext_cmd_void'.
	* src/browser (filesearch_init): Remove an unneeded format specifier.
	* src/nano.c (usage): Add a translator comment for the --help output.
	* src/global.c (shortcut_init): Elide four unneeded tags.
	* src/global.c (shortcut_init): Make tiny nano just a bit tinier.
	* src/global.c (shortcut_init): Standardize the add_to_funcs() calls,
	breaking always between the menus and the tag.

2014-05-27  Chris Allegretta <chrisa@asty.org>
	* src/winio.c (edit_refresh): wredrawln() is not supported under
	  slang.

2014-05-27  Benno Schulenberg  <bensberg@justemail.net>
	* src/global.c (shortcut_init): Improve the arrangement of help items
	under certain compilation conditions.
	* src/global.c (strtosc): Make tiny nano a bit tinier.
	* src/global.c (strtosc): Allow rebinding 'suspend' in tiny nano.
	* src/winio.c (set_modified): Adjust translator comment to make it
	show up in the POT file, and make it take the "[  ]" into account.

2014-05-26  Benno Schulenberg  <bensberg@justemail.net>
	* src/cut.c (cut_line): Fix compilation with --enable-tiny.
	* src/text.c (do_linter): Avoid a warning with --enable-tiny.
	* src/global.c (shortcut_init): Unwrap some lines, and reorder two.

2014-05-25  Benno Schulenberg  <bensberg@justemail.net>
	* src/global.c: Cut down on the size of tiny nano, by not compiling
	the function strtosc() when --disable-nanorc is given or implied.

2014-05-25  Mark Majeres  <mark@engine12.com>
	* src/chars.c (addstrings): New function, concatenates two allocated
	strings, tacking the second onto the first and freeing the second.
	* src/cut.c (do_uncut_text): Update the undo structure for a paste.
	* src/text.c (undo_cut, redo_cut, add_undo, update_undo): Place the
	cursor after an undo there where it was before the do, and handle
	multibyte characters correctly.

2014-05-23  Benno Schulenberg  <bensberg@justemail.net>
	* src/winio.c (edit_draw): Finally, the proper fix for bug #31743;
	telling ncurses to really redraw the line, without optimization, so
	it will not mistakenly assume that a wide character at the start of
	a line takes up just one column.  This deletes the workaround that
	had the side effect of creating pastes full of trailing whitespace.

2014-05-19  Mark Majeres  <mark@engine12.com>
	* src/winio.c (edit_draw): Paint the current line *after* tickling the
	terminal, so that the character in the final column will be displayed
	properly.  Bug was introduced five days ago.

2014-05-18  Benno Schulenberg  <bensberg@justemail.net>
	* src/nano (precalc_multicolorinfo): Do not match the ^ anchor when
	looking further on in a line.  This prevents an end="^$" from being
	sometimes mistakenly matched.  Fix inspired by Savannah bug #27708.
	* doc/syntax/default.nanorc: New file, example for a default syntax.

2014-05-17  Benno Schulenberg  <bensberg@justemail.net>
	* doc/syntax/json.nanorc: New file, originally from Aapo Rantalainen,
	but edited, extended, and improved.  See Savannah patch #7410.
	* src/winio.c (edit_draw): Do not skip the colour-off commands at the
	end of the loop.  Based on Savannah patch #7550 by Ryan Lothian.
	This fixes bug #26111 reported by Dave Geering <dreamlax@Savannah>.

2014-05-16  Benno Schulenberg  <bensberg@justemail.net>
	* src/text.c, src/winio.c: Remove some more double spaces.
	* doc/syntax/patch.nanorc: Show trailing whitespace on added lines.
