Imported Upstream version 2.3.1
[platform/upstream/nano.git] / ChangeLog
1 GNU nano 2.3.1 - 2011.05.10
2 2011-05-10 Chris Allegretta <chrisa@asty.org>
3         * text.c (do_enter): Only increment totsize by the auto-indented amount, size the previous line's size was
4           already counted.  Fixes bug reported by Robert Spanjaard.
5
6 2011-05-08 Chris Allegretta <chrisa@asty.org>
7         * doc/syntax/Makefile.am: Finally get around to sorting the syntax file list
8
9 2011-05-08 Matthew Wild <mattj100@Savannah>
10         * doc/syntax/spec.nanorc: New lua syntax highlighting config
11
12 2011-03-28 Asterios Dramis <asterios.dramis@gmail.com>
13         * doc/syntax/spec.nanorc: New RPM spec file highlighting config
14
15 2011-03-12 Chris Allegretta <chrisa@asty.org>
16         * po/*: Sync latest translation fixes, add an update_linguas.sh script.  Rename
17           existing update.pl to update_sources.pl to make it more specific.
18       
19 2011-03-04 Chris Allegretta <chrisa@asty.org>
20         * color.c (color_update): Add check for whether the file even exists
21           before we try to run the magic check on it.  Fixes error messages to stderr
22           when reading in files that don't exist, reported by Mike Frysinger.
23
24 2011-03-03 Chris Allegretta <chrisa@asty.org>
25         * color.c (color_update): Remove unneeded debugging message from
26           libmagic commit.  Fixed extra messages going to stderr reported by Mike Frysinger.
27
28 GNU nano 2.3.0 - 2011.02.26
29 2011-02-26 Chris Allegretta <chrisa@asty.org>
30         * Change RAW in function_type enum to RAWINPUT, to fix compilation on AIX, 
31           reported by Richard G  Daniel <skunk@iskunk.org>.
32
33 2011-02-23 Chris Allegretta <chrisa@asty.org>
34         * Fix some more severe warnings from 'g++ -pedantic', from patch originally 
35           by Eitan Adler <lists@eitanadler.com>
36
37 2011-02-23 Kamil Dudka <kdudka@redhat.com>
38         * doc/man/nanorc.5: Fix small typo
39
40 2011-02-22 Chris Allegretta <chrisa@asty.org>
41         * color.c (nfreeregex): Fix that we were trying to set the pointer passed by value
42           to NULL.  Fixes crashes on file save reported by Ken Tyler and Matthieu Lejeune. 
43
44 2011-02-18 Chris Allegretta <chrisa@asty.org>
45         * New saved cursor position history option.  Command line option -P or --poslog, rc file
46           entry "poslog".  Search history changes to ~/.nano/search_history, cursor position log
47           is ~/.nano/filepos_history.  Added checks to move the legacy .nano_history file to the new
48           location.  Several new functions to files.c: load_poshistory(), save_poshistory(), 
49           check_poshistory(), update_poshistory(), and reworking of histfilename().  New FAQ entry
50           4.15 discussing the change and offering an interoperability workaround.
51         * files.c (load_history): Set last_search to the last search value we loaded from history,
52           so do_research will succeed without needing to manually load the last seach in.  Fixes
53           bug reported by Matthieu Lejeune.
54
55 2011-02-12 Chris Allegretta <chrisa@asty.org>
56         * Initial libmagic implementation, adapted from Eitan Adler <eitanadlerlist@gmail.com>.
57           New nanorc entry "magic" to enable this functionality, nanorc file and man page updates.
58
59 2011-02-06 Chris Allegretta <chrisa@asty.org>
60         * src/*: Retire iso_me_harder_funcmap based on suggestion by <bernd.spaeth@gmx.net>
61           This does add 20KB to nano's executable size but it gets rid of a lot of indirection
62           that makes people stomach turn.  There are several new stub functions and need of more
63           tidying as a result of this.
64         * files.c (write_file): Fix problems with writing the backup file (albeit interactively)
65           with new function prompt_failed_backupwrite(), allows more secure handling of problems
66           with failing to write the backup file compared to 'allow_insecure_backup'.
67         * winio.c (edit_redraw): Removed unused variable
68
69 2010-11-15 Chris Allegretta <chrisa@asty.org>
70         * Add a section to the FAQ about using nanorc on Win32 systems.
71
72 2010-11-12 Chris Allegretta <chrisa@asty.org>
73         * Add check for RESTRICTED mode back to speller, suspend and insert file
74           routines, since adding key bindings broke the fact that they should be
75           disabled in restricted mode.  Fixes Savannah bug 31625 reported by
76           Charlie Somerville.
77
78 GNU nano 2.2.5 - 2010.08.05
79 2010-08-04 Lauri Kasanen <curaga@operamail.comcuraga@operamail.com>
80         * doc/syntax/mgp.nanorc: New Magicpoint syntax highlighting definition
81
82 2010-08-04 Peter <exodus@savannah>
83         * doc/syntax/tex.nanorc: No longer highlight escaped comments
84
85 2010-06-20 Chris Allegretta <chrisa@asty.org>
86         * New rc file option allow_insecure_backup, allows the previous security
87           fixes for backup files to be overridden if you're really positive
88           you want to.  Fixes Savannah bug 29732 by Brian Szymanski <skibrianski>.
89
90 2010-05-23 Chris Allegretta <chrisa@asty.org>
91         * files.c (write_file): Don't even try to chown() the backup
92           file unless we're root, since it's probably going to fail if
93           we're editing a file we don't own.  Fixes Savannah bug
94           29514: [nano 2.2.2] backup should ignore chown errors.
95
96 GNU nano 2.2.4 - 2010.04.15
97 2010-04-07 Chris Allegretta <chrisa@asty.org>
98         * doc/man/nano.1,nanorc.5: Remove the backup file warnings now
99           that a sufficient security fix exists for the backup file code.
100
101 2010-04-14 Chris Allegretta <chrisa@asty.org>
102         * text.c (do_alt_speller): Skip invoking the alt speller if the file size 
103           is 0 bytes.  Fixes Savannah bug 29393 reported by Mike Frysinger.
104         * files.c (wirte_file): Don't set current_stat when tmp == TRUE, check
105           whether current_stat is set when trying to use it, and don't do the
106           modification check if the filename changed, since we have no way
107           of knowing about it in that case.  Fixes Savannah bug 29392, reported
108           by Mike Frysinger.  [CVE-2010-1160]
109
110 2010-04-13 Felipe Bugno <necron@bol.com.br>
111         * doc/syntax/cmake.nanorc: Added cmake syntax highlighting file.
112
113 2010-04-09 Chris Allegretta <chrisa@asty.org>
114         * files.c (do_writeout): Better security fixes for backup file writing, 
115           mangled from submission by Dan Rosenberg <dan.j.rosenberg at gmail> 
116           [CVE-2010-1161]
117
118 2010-04-08 Chris Allegretta <chrisa@asty.org>
119         * files.c (do_writeout): Previous fixes should not cause a crash 
120           when saving a new file.  Discovered by Mike Frysinger <vapier@gentoo.org>.
121
122 2010-04-07 Chris Allegretta <chrisa@asty.org>
123         * doc/man/nano.1,nanorc.5: Add warnings about using backup
124           mode as root due to the Dan Rosenberg security analysis.
125  
126 2010-04-02 Chris Allegretta <chrisa@asty.org>
127         * files.c (do_writeout): Expand modification check to include both the
128           original file's device ID and inode number as reasons to warn the 
129           user that the file has been modified.  Also abort on writing a backup
130           file when its owner doesn't match the edited file. Based on security 
131           analysis on nano by Dan Rosenberg. [CVE-2010-1160]
132
133
134 2010-03-21 Chris Allegretta <chrisa@asty.org>
135         * nano.c (page_stdin et al): Don't attempt to reset/reopen the terminal
136           settings when reading stdin if it was aborted with SIGINT.  May fix Savannah
137           bug 29114 reported by  Mike Frysinger.
138
139 2010-03-21 Mike Frysinger <vapier@gentoo.org>
140         * doc/syntax/c.nanorc: Add additional support for #include_next and #pragma
141
142 2010-03-21 Chris Allegretta <chrisa@asty.org>
143         * move.c (do_page_up, do_page_down()): Explicitly set current_y to 0 when paging 
144           up when not in smooth scroll mode, as previous fixes would otherwise cause 
145           the cursor to not really be moved to the stop of the screen.
146
147 2010-03-07 Chris Allegretta <chrisa@asty.org>
148         * configure.ac, nano.c (handle_sigwinch): Create check for whether LINES and
149           COLS can safely be redefined.  Fixes compilation issues with cygwin, and likely
150           with newer versions of ncurses, fixes Savannah bug 28984 repoted by Andy Koppe
151           and Eric Oliver via mailing list.
152         * winio.c (get_mouseinput) - fix stray semicolon in code, also reported in
153           bug 28984.
154
155 GNU nano 2.2.3 - 2010.02.11
156 2010-01-28 Chris Allegretta <chrisa@asty.org>
157         * move.c (do_page_up, do_page_down): Fix for smooth mode not preserving cusor 
158           position.  Part one of fix for Savannah bug 21178 by Mike Frysinger.
159
160 GNU nano 2.2.2 - 2010.01.17
161 2010-01-17 Chris Allegretta <chrisa@asty.org>
162         * nano.c (main), prompt.c (do_statusbar_input): Handle problems with an unmapped 
163           function due to key rebinding, fixes crashes on FreeBSD repoted by Eitan 
164           Adler <eitanadlerlist@gmail.com>.
165
166 2010-01-14 Chris Allegretta <chrisa@asty.org>
167         * files.c (do_writeout): Fix for crash / incorrect external modification warning
168           due to earlier fix in r4467.
169
170 2010-01-12 Chris Allegretta <chrisa@asty.org>
171         * move.c (do_page_up, do_page_down): Fix issues with not enough scrolling down/up
172           and cursor centering.
173         * winio.c (edit_scroll): Remove lots of needless checking of line length for 
174           soft wrapping code.
175         * winio.c (edit_update) - Remove extra code for when updating with old_current outside
176           of the new buffer boundary and centering issues.
177
178 2010-01-05 Tito <farmatito@tiscali.it>
179         * search.c (update_history): Fix bad length check causing search crash on armel platform.
180
181 2010-01-04 Chris Allegretta <chrisa@asty.org>
182         * winio.c: edit_update, edit_redraw: Fix search not scrolling to the middle of the screen
183           (reported by alpha@qzx.com) and places where we rely on maxrows but should not.
184
185 2009-12-26 Jordi Mallach <jordi@gnu.org>
186         * doc/man/nano.1: Avoid a groff warning by prepending a zero-width
187         space to a line starting with '.
188
189 2009-12-22 Chris Allegretta <chrisa@asty.org>
190         * files.c (write_file): Fix compatibility with previous stat fix and tiny mode.
191
192 2009-12-22 David Lawrence Ramsey <pooka109@gmail.com>
193         * global.c: Add new strings for forward/back in the file browser.  New variables
194           nano_forwardfile_msg and nano_backfile_msg.
195
196 2009-12-20 Chris Allegretta <chrisa@asty.org>
197         * files.c (is_file_writable): remove assert check for f, since it's not
198           initialized at the time.  Fixes Savannah bug 28309, reported by Zoltan Kovacs.
199
200 2009-12-20 Brian Szymanski <skibrianski via Savannah>
201         * src/files.c (write_file): Check stat struct exists, and if not use just obtained stat data.
202           Fixes Ubuntu bug 471568, "reproducible crash in nano on trying to save to a file 
203           different than the one specified on the command line".
204
205 2009-12-15 Chris Allegretta <chrisa@asty.org>
206         * doc/nanorc.sample.in - Remove erroneous 'set suspendenable' as it's actually a 
207           key binding (e.g. 'bind M-Z suspendenable all') and not a settable flag.  Fixes
208           Savannah bug 28299 reported by Mike Frysinger.
209
210 GNU nano 2.2.1 - 2009.12.12
211 2009-12-12 Chris Allegretta <chrisa@asty.org>
212         * text.c (do_delete), nano.c (do_output): Add check for length of current line 
213           before and after adding/deleting text, and do full refresh if it is now
214           a different multiple of COLS.  Also get rid of superfluous do_refresh
215           vars now that we have edit_refresh_needed.
216
217 2009-12-09 David Lawrence Ramsey <pooka109@gmail.com>
218         * global.c (shortcut_init), browser.c (do_browser): Fix M-W not being bound to 
219           research in either main menu or browser.
220
221 2009-12-09 Chris Allegretta <chrisa@asty.org>
222         * files.c (read_file) - Add parameter for whether we should even try to check
223           file writability, as the message is useless when we're inserting into an 
224           existing buffer.  Fixes Savannah bug 28219.
225
226 2009-12-07 David Lawrence Ramsey <pooka109@gmail.com>
227         * global.c (shortcut_init): Many fixes for keybindings code oversights, including
228           restore page up/down and GotoDir to browser, 
229         * browser.c (do_browser): Fix breaking out of a submenu (e.g. gotodir) breaks out
230           of browser altogether.
231         * doc/nanorc.sample.in: Add missing entries for fortran/ObjC/OCaml entries.
232
233 2009-12-03 David Lawrence Ramsey <pooka109@gmail.com>
234         * global.c (shortcut_init) - Remove help shortcut from help shortcut list :-)  Tweaked 
235           to reorder exit shortcut to end of list to not mess up prev/next shortcut symmetry.
236
237 2009-12-03 Eitan Adler <eitanadlerlist@gmail.com>
238         * doc/syntax/makefile.nanorc - Fix poor regex for all alpha characters which sometimes leads to
239           error messages, reported by gibboris@gmail.com.
240
241 2009-12-02 Chris Allegretta <chrisa@asty.org>
242         * text.c (add_undo, do_undo, do_redo) - Do not execute cases for SPLIT when DISABLE_WRAPPING
243           is defined.  Fixes Savannah bug 28151 (anon).
244
245 2009-12-02 Jordi Mallach <jordi@gnu.org>
246         * doc/man/nano.1: Fix escaping of hyphens for the -$ option.
247
248 2009-12-01 Kamil Dudka <kdudka@redhat.com>
249         * chars.c, file.c - Better handle unused results for things like mbtowc(), new
250           macro IGNORE_CALL_RESULT.
251
252 2009-12-01 Chris Allegretta <chrisa@asty.org>
253         * global.c (shortcut_init) - Remove redundant entries for ^Y/^V reported by
254           Christian Weisgerber.
255         * doc/man/nanorc.5 - Fix typo in Meta documentation, reported by gibboris@gmail.com.
256
257 2009-12-01 David Lawrence Ramsey <pooka109@gmail.com>
258         * global.c (shortcut_init) - Add support for ^P and ^N in the help menu.
259         * Update documentation for 2.2 features including sample nanorc file, texinfo
260           file, man pages, UPGRADE file, and update copyright noticed for the current year.
261
262 GNU nano 2.2.0 - 2009.11.30
263 2009-11-29 Chris Allegretta <chrisa@asty.org>
264         * prompt.c (get_prompt_string) - Universally handle help key when is 
265 disabled.  Fixes Savannah
266           bug 28117 by David Lawrence Ramsey <pooka109@gmail.com>.
267         * chars.c, files.c: Add junk vars to silence the compiler.  Sigh.
268
269 2009-11-29 David Lawrence Ramsey <pooka109@gmail.com>
270         * Change several *chars to const char, additional cleanups and casts to make compilers happier.
271         * global.c: Fix replace and insert file initializations for proper compilation options.
272         * nano.c (do_suspend): Update comments to reflect actual code path, bad Chris and thanks for
273           noticing Jordi.
274         * configure.ac: Fix typos
275
276 2009-11-27 Chris Allegretta <chrisa@asty.org>
277         * nano.c (do_suspend): Don't clear the screen but do move the cursor down to the last line
278           first in an effort to not corrupt the screen, which contradicts Pico but is consistent
279           with almost all other text editors.  Fixes Savannah bug 28110/Debian bug 460510
280           reported by Tim Connors <reportbug@rather.puzzling.org>.
281         * doc/dyntax/makefile.nanorc - Sample Makefile highlighting based on wiki.linuxhelp.net version.
282
283 2009-11-26 Chris Allegretta <chrisa@asty.org>
284         * winio.c (edit_scroll): Adjust for long lines when scrolling.
285         * rcfile.c (parse_rcfile), initialize size argument to getline(), fixes crash on FreeBSD 
286           reported by Eitan Adler <eitanadlerlist@gmail.com>.
287
288 2009-11-26 Jordi Mallach <jordi@gnu.org>
289         * doc/man/*: Update all man pages to escape unescaped hyphens.
290
291 2009-11-24 Chris Allegretta <chrisa@asty.org>
292         * move.c (do_page_up, do_page_down): Make these functions work better with soft
293           line wrapping.
294         * winio.c (compute_maxrows): Make maxrows calculation more accurate when all lines are > COLS.
295
296 2009-11-22 Chris Allegretta <chrisa@asty.org>
297         * nano.c (main): Allow edit_refresh_needed to take effect when using --enable-tiny
298           (fixes Savannah bug 28076 reported by David Lawrence Ramsey).
299
300 2009-11-22 David Lawrence Ramsey <pooka109@gmail.com>
301         * nano.c (move_to_filestruct): Fix bug 71 (cut at top of line recenters)
302         * Fix compilation with --enable-tiny
303
304 2009-11-22 Mike Frysinger <vapier@gentoo.org>
305         * doc/syntax/gentoo.nanorc: Tweak comment highlighting.
306
307 GNU nano 2.1.99pre2 - 2009.11.21
308 2009-11-21 Chris Allegretta <chrisa@asty.org>
309         * rcfile.c: Add unbinding keyword, fixes Savannah bug 22852 reported by frankd.
310         * prompt.c (update_statusbar_line): Set statusbar_pww when updating the line.
311           Fixes Savannah bug 24957 by Mike Frysinger.
312
313 2009-11-19 Chris Allegretta <chrisa@asty.org>
314         * nano.c (die_save_file) Try nd match the permissions of the file we were
315           editing but only make a minimal effort to do so. Fixes Savannah bug 27273
316           reported by Mike Frysinger.
317
318 2009-11-18 Adrian Bunk <bunk via Savannah>
319         * nano.c (main): Allow --fill and --nowrap to override nanorc entries and each other
320           on the command line.
321
322 2009-11-15 Chris Allegretta <chrisa@asty.org>
323         * winio.c (edit_refresh): Always computer maxsize regardless of whether smooth scrolling
324           is enabled.  Fixes Savannah bug 28024 by Mike Frysinger.
325
326 GNU nano 2.1.99pre1 - 2009.11.15
327 2009-11-14 Chris Allegretta <chrisa@asty.org>
328         * move.c (do_first_line, do_last_line): Just set edit_refresh_needed rather than 
329           get messy.
330         * files.c (do_writeout) - Only mention file modification if we're writing the same
331           file we originally opened.
332
333 2009-11-13 Chris Allegretta <chrisa@asty.org>
334         * winio.c: Add new static maxsize to be able to easier calculation with
335           softwrap.
336         * nano.c (do_mouse): Fix mouse support not working with soft wrapping.  Fixes
337           Savannah bug 27549 reported by Hannes Schueller.
338
339 2009-11-11 Chris Allegretta <chrisa@asty.org>
340         * winio.c: Large tweaking of cursor and text display based on COLS not COLS - 1, 
341           due to finally understanding that display_string wasn't being called properly
342           when softwrap was enabled.  Fixes Savnnah bug 27603, Return key doesn't scroll 
343           viewport reported by Hannes Schueller.
344         * - Fix size_t formatting issues with -pedantic
345
346 2009-11-09 Chris Allegretta <chrisa@asty.org>
347         * files.c (read_file): - Remove debugging messages from file load.  Fixes
348           Savannah bug 27838.
349
350 2009-11-07 Chris Allegretta <chrisa@asty.org>
351         * nano.h - Add bogus value at begin of flags enumeration because it
352           causes casesens rcfile option to misbehave, reported by Helmut 
353           Jarausch <jarausch@igpm.rwth-aachen.de>
354
355 2009-11-03 Chris Allegretta <chrisa@asty.org>
356         * nano.h - Fix comma at end of enumerator list which angers -pedantic.
357         * rcfile.c - Add in specific check for UNDOABLE and fix declaration as
358           to what flag it toggles.  Fixes undo mode being able to be called from
359           the rc file, reported by Helmut Jarausch <jarausch@igpm.rwth-aachen.de>
360
361 2009-11-03 Mike Frysinger <vapier@gentoo.org>
362         * files.c - Move up is_file_writable() to stop implicit definition complaints.
363
364 2009-10-27 Chris Allegretta <chrisa@asty.org>
365         * browser.c (browser_init): Set column width to something sane when 
366           initializing in a directory with no file entries.  Fixes Savannah
367           bug 24163 found (and initial patch) by Paul Wise.
368
369 2009-09-15 Chris Allegretta <chrisa@asty.org>
370         * winio.c: Clean up some unused variables from the soft wrapping code.
371
372 GNU nano 2.1.11 - 2009.09.14
373 2009-09-12 Chris Allegretta <chrisa@asty.org>
374         * winio.c (edit_update) - properly update edittop when using soft wrapping.
375           Fixes lack of centering for searching for off-screen answers, found by 
376           Hannes <mr_creosote@mutantwatch.de>.
377
378 2009-09-03 Chris Allegretta <chrisa@asty.org>
379         * global.c (shortcut_init): Fix up/down keys not responding in the file browser,
380           discovered by Hannes <mr_creosote@mutantwatch.de>.
381         * move.c (do_up) - Fix another scrolling issue with softwrap when the
382           cursor is beyond COLS, discovered by Hannes <mr_creosote@mutantwatch.de>.
383
384 2009-09-02 Chris Allegretta <chrisa@asty.org>
385         * Attempt to check file writability and emit a warning on the status bar
386           if nano doesn't think the file can be written to.  Feature originally
387           requested by Damien Jolders <madamien@skullsquad.com> et al.
388
389 2009-08-29 Chris Allegretta <chrisa@asty.org>
390         * Fix more soft wrapping issues, particularly with scrolling,
391           discovered by Hannes <mr_creosote@mutantwatch.de>.
392
393 2009-08-19 Chris Allegretta <chrisa@asty.org>
394         * Fix issue with soft wrapping not displaying the last character of each line,
395           fixed bug discovered by Hannes <mr_creosote@mutantwatch.de>.
396
397 2009-08-17 Mike Frysinger <vapier@gentoo.org>
398         * doc/syntax/(gentoo|sh|tcl).nanorc: Fix problems with empty regexes on POSIX.
399           Fixes Savannah bug 27175.
400
401 2009-08-17 Chris Allegretta <chrisa@asty.org>
402         * Initial soft line wrapping implementation.  Command line flags
403           -$ or --softwrap.  
404         * nano.c, text.c: Clean up some fprintf warnings in debug mode due to printing
405           a size_t without using the zd specifier.
406 2009-08-13 Chris Allegretta <chrisa@asty.org>
407         * New global flag implementation courtesy of Adam Wysocki <gophi@arcabit.pl>, allows
408           previous undo flag to be implemented consistent with other flags.
409
410 GNU nano 2.1.10 - 2009.07.28
411 2009-07-27 Chris Allegretta <chrisa@asty.org>
412         * text.c (undo_cut, redo_cut): Don't actually try and undo/redo an empty cut, i.e. the magicline. 
413           Fixes crash on cutting last line discovered by Eitan Adler <eitanadlerlist@gmail.com>.
414
415 2009-07-11 Chris Allegretta <chrisa@asty.org>
416         * nano-regress: Small tweaks
417         * Change undo code to off unless unabled via a command line option (-u/--undo).  Until this code
418           stabilizes this is the only responsible way to treat it.
419
420 2009-03-08 Chris Allegretta <chrisa@asty.org>
421         * TODO - Break out some targets for various features into 2.2 
422           and 2.4 series for things which are feasible.
423
424 2009-02-28 Chris Allegretta <chrisa@asty.org>
425         * configure.ac: Add check for whether _XOPEN_SOURCE_EXTENDED is needed for
426           curses to work w/color.  Fixes compilation on HP-UX with older GCC, 
427           reported by jay.krell@cornell.edu.
428
429 2009-02-23 Eitan Adler <eitanadlerlist@gmail.com>
430         * doc/man/Makefile.am: Fix make variable substitution to be more portable
431
432 2009-02-23 Chris Allegretta <chrisa@asty.org>
433         * rcfile.c (parse_keybinding) - Define a var before tryung to use it.  Whoops!
434         * fix some redefinitions causing compiler warnings, from Eitan Adler.  Other
435           (hopefully) fixes for uncasted malloc()s, reported by the same.
436         * doc/man/fr/Makefile.am: Add groff check fix to fr files.
437
438 GNU nano 2.1.9 - 2009.02.16
439 2009-02-16 Chris Allegretta <chrisa@asty.org>
440         * Add new argument to reset_multis for force redraws without attempting to
441           guess whether we need to, for functions that we don't have good info about
442           the text state.  New utility function color.c:reset_multis_for_id().  
443
444 2009-02-15 Chris Allegretta <chrisa@asty.org>
445         * configure.ac, doc/man/Makefile.am - Add check for HTML output support in GNU
446           groff.  Fixes Savannah bug #24461: build traps on groff.  Also, add installation
447           of html-ized man pages to $datadir/nano/man-html, since we should probably
448           install files we went to all the trouble of generating.
449
450 2009-02-14 Chris Allegretta <chrisa@asty.org>
451         * nano.c (precalc_multicolorinfo) - Add debugging so we have a better clue if further
452           issues arise.   Also start at the beginning of later lines when trying to match the
453           end of a multi-line regex.  Fixes more overly aggressive highlighting found by 
454           Mike Frysinger.  Finally, advance to the match end for performance.
455
456 2009-02-11 Chris Allegretta <chrisa@asty.org>
457         * nanorc.c (parse_include): Do call real_dir_from_tilde() on included
458           files in .nanorc, but still avoiding bug #25297.  Fixes ~ and ~user
459           specifications for nanorc include files, as reported by Eitan Adler.
460
461 2009-02-09 Chris Allegretta <chrisa@asty.org>
462         * New option -q, --quiet, rcfile option "quiet" implemented.  Skips printing
463           errors about the rcfile and asking user to press enter.  Also, nano should
464           now only ask for one enter press when there is an error when not using -q.
465           Based on discussion between Eitan Adler and Mike Frysinger.
466         * rcfile.c (parse_keybinding) -  Significant cleanups and fixes for 
467           detecting and reporting errors in key bindings code.
468
469 2009-02-08 Chris Allegretta <chrisa@asty.org>
470         * Make reset_multidata reset more lines, since contrary to previous problems the
471           syntax highlting is now too *un*ambitious, causing display glitches when
472           deleting a regex boundary.
473         * Add more multidata initliazers for new buffers and 'magic lines'.  Fixes segfaults
474           with syntax highlighting in new buffers, initially reported by Mike Frysinger.
475
476 GNU nano 2.1.8 - 2009.02.07
477 2009-02-06 Chris Allegretta <chrisa@asty.org>
478         * rcfile.c (parse_include): Abort on being unable to open an included rcfile.  Fixes
479           Savannah bug 25490, nanorc: "include"ing a file which doesn't exist causes nano to segfault.
480
481 2009-02-05 Chris Allegretta <chrisa@asty.org>
482         * More color syntax speedups:  Determine in reset_multis() whether we really need to call
483           edit_refresh().  Additional global var edit_refresh_needed() to hopefully reduce
484           repeated calls to the function.  New helper funcs reset_multis_before() and 
485           reset_multis_after().
486
487 2009-02-02 Chris Allegretta <chrisa@asty.org>
488         * New color precalculation code for mult-line regexes.  New function precalc_multicolorinfo(),
489           new structure multidata for keeping track of where regexes start/stop.  More 
490           performance improvements forthcoming.
491
492 2009-01-29 Chris Allegretta <chrisa@asty.org>
493         * nano.c (move_to_filestruct) - properky initialize new fileage for multiswatching, sigh.
494           Fix cut sefaults discovered by Mike Frysinger.
495
496 2009-01-29 Chris Allegretta <chrisa@asty.org>
497         * nano.c (main): Add support for nano acting like a pager when invoked with - as first
498           file argument.
499
500 2009-01-28 Davide Pesavento <davidepesa@gmail.com>
501         * doc/syntax/gentoo.nanorc: Updates from David and Mike Frysinger.
502
503 2009-01-25 Chris Allegretta <chrisa@asty.org>
504         * files.c (open_file), nanorc.c (parse_include): Don't get_full_path on 
505           included rc files, due to it potentially impacting the ability
506           to read files in nano's cwd().  Fixes Savnanah bug #25297 reported by Mike 
507           Frysinger)
508
509 2009-01-24 Chris Allegretta <chrisa@asty.org>
510         * First pass at some caching of caching color info.  Right now it's only for
511           multi-line regexes but this may not be enough to increase performance.
512         * Add interruptability to search functions.  New functions enable_nodelay and
513           disable_nodelay and changes to the routines to handle checking for pending
514           searches.  Fixes Savnnah bug 24946: Need interrrupt for search.
515
516 2009-01-19 Chris Allegretta <chrisa@asty.org>
517         * Change function definitions to shorts instead of (void *)s.  New mapping function
518           iso_me_harder_funcmap().  Fixes compilation complaints with -pedantic, 
519           reported by Eitan Adler <eitanadlerlist@gmail.com>.
520
521 GNU nano 2.1.7 - 2008.11.10
522 2008-10-20 Chris Allegretta <chrisa@asty.org>
523         * files.c (do_writeout): Add check for file modification when saving
524           the file so the user can at least know they may be blowing away changes.
525
526 2008-10-14 Chris Allegretta <chrisa@asty.org>
527         * nanorc.5: Fix redo man page entry and update explanation, reported by
528           Eitan Adler <eitanadlerlist@gmail.com>
529         * global.c (shortcut_init), search.c (search_init): Fix add_to_sclist for ^W^T so
530           invalid messages will display properly.  Fixes Savannah bug 24507.
531
532 2008-10-13 Chris Allegretta <chrisa@asty.org>
533         * Remove CUTTOEND as an undo type as it's unneeded, fix u->to_end logic in undo struct.
534         * undo.c (update_undo): Don't free cutbuffer if NULL, fix for Savannah bug #24499
535
536 2008-10-04 Chris Allegretta <chrisa@asty.org>
537         * cut.c (Add_undo): Save last cut undo information so it can be used for next uncut, fixes
538           Savannah bug 24183.
539
540 GNU nano 2.1.6 - 2008.10.03
541 2008-10-03 Pascal Gentil <pascal.gentil@univ-rennes1.fr>
542         * fortran.nanorc: Sample python syntax highlighting file
543
544 2008-09-30 Dirkjan Ochtman <dirkjan@ochtman.nl>
545         * python.nanorc: Small python syntax update
546
547 2008-09-30 <bluestorm_dylc@hotmail.com>
548         * ocaml.nanorc: Sample OCaml syntax highlighting file
549
550 2008-09-30 Dave Geering <dgeering@toshiba-tap.com>
551         * objc.nanorc: Sample Objective-C Syntax Hightlighting file
552
553 2008-09-30 Chris Allegretta <chrisa@asty.org>
554         * configure.ac: Change extra, multibuffer, color and rcfile configure options to default to enabled
555           --enable-tiny will now disable these options as well
556         * python.nanorc, ruby.nanorc: Add header lines for python and ruby as well
557
558 2008-09-21 Chris Allegretta <chrisa@asty.org>
559         * rcfile.c, color.c, nano.h: Add new capability for matching a syntax type by the "header" (1st line)
560           of a file being edited.  Based on Savannah bug 24197 and inital proof of concept by Dave Geering 
561           <dgeering@toshiba-tap.com>
562
563 2008-09-16 Chris Allegretta <chrisa@asty.org>
564         * text.c: Add support for undoing a text uncut.  Split out the undo and redo of a text cut 
565           in order to avoid code duplication.
566
567 2008-09-06 Chris Allegretta <chrisa@asty.org>
568         * nano.c: Do call disable_signals at startup regardless, since under cygwin we can't generate
569           ^C without it.
570
571 GNU nano 2.1.5 - 2008.08.30
572 2008-08-29 Chris Allegretta <chrisa@asty.org>
573         * configure.ac, color.c, rcfile.c, utils.c: 1st attempt at supporting systems which don't support
574           GNU-style word boundaries.  New function fixbounds() to translate from GNU-style to 
575           BSD-style, autoconf option GNU_WORDBOUNDS.
576         * nano-regress: New perl script to check for some of the more obvious issues with compilation
577           issues with certain configure options.
578         * global.c, help.c, browser.c, files.c, proto.h: Fix several compipation and programmatic 
579           issues with --disable-help, especially that do-writeout was treating ^G the same as ^M.
580
581 2008-08-28 Chris Allegretta <chrisa@asty.org>
582         * configure.ac, rcfile.c:  Add support for an alternate rcfilename at configure time.  Maybe this
583           should become a command line option some day, but I don't see the need currently.  Start of
584           fix for Savannah bug #24128: Add nanorc support to win32 platform.
585
586 2008-08-21 Chris Allegretta <chrisa@asty.org>
587         * text.c: Change error messages where we may possibly get into a bad state and urge
588           the user to save when this happens.  Originally by Benno Schulenberg <bensberg@justemail.net>
589         * text.c (do_enter):  Fix issue when compiled with --enable-debug, fixes Savannah bug 24092.
590
591 2008-08-08 Magnus Granberg <zorry@ume.nu> / Adam Conrad <?>
592         * files.c (write_file): Add needed flags to open() calls when writing out files.  Fixes Savannah bug 
593           #23827: Compilation fails with -D_FORTIFY_SOURCE=2
594
595 2008-08-08 Chris Allegretta <chrisa@asty.org>
596         * files.c (write_file): Check exit code of fclose(), since in certain out of space conditions the OS will
597           happily report successful fwrite()s until you try and close the file.  Fix for Savannah bug
598           #24000: no free space on partition - nano claims successful write - file empty 
599
600 GNU nano 2.1.4 - 2008.08.09
601 2008-08-08 Chris Allegretta <chrisa@asty.org>
602         * files.c (write_file): Do not go on and attempt to write the main file if writing the backup file failed,
603           related to Savannah bug 24000.
604         * text.c (do_redo): Fix improperly restoring the text when redoing a line split.
605         * text.c (add_undo): Fix check for multi-line cut check skips adding other new legit events.
606
607 2008-07-23 Chris Allegretta <chrisa@asty.org>
608         * text.c: Reset openfile-> to OTHER after an undo or redo so we don't mistakenly
609           mistakenly think this is an update when it's really an add.  Also
610           Fix an extra ; after an if statement which makes nano try to free a struct which
611           may be NULL
612
613 GNU nano 2.1.3 - 2008.08.04
614 2008-07-23 Chris Allegretta <chrisa@asty.org>
615         * configure.ac: Add ncursesw dir to include path if lib detected
616
617 2008-07-11 Mike Frysinger <vapier@gentoo.org>
618         * doc/nanorc.sample.in: Include the updates files in the default sample nanorc.
619
620 2008-07-11 Fabian Groffen <grobian@gentoo.org>
621         * nano.c: Don't include langinfo.h if not using ENABLE_UTF8
622           (Savannah patch 6565)
623
624 2008-07-11 Mitsuya Shibata <mty.shibata@gmail.com>
625         * text.c: Fix crashing in help menu when using certain locales
626           (Savannah bug 23751)
627
628 2008-07-09 Chris Allegretta <chrisa@asty.org>
629         * nano.c/nano.h/global.c/text.c: New generalized undo code, currently
630           just works for adding and deleting text and splitting and unsplitting lines.
631
632 2008-06-29 Chris Allegretta <chrisa@asty.org>
633         * global.c: Fix for not having search history when --disable-justify is used
634           (Savannah bug 23733)
635
636
637 GNU nano 2.1.2 - 2008.06.24
638 2008-06-24 Chris Allegretta <chrisa@asty.org>
639         * rcfile.c: Added function check_bad_binding() to look for sequences which
640           shouldn't be bound, per Savannah bug 22674.
641
642 2008-05-31 Chris Allegretta <chrisa@asty.org>
643         * prompt.c,search.c,global.c: Tentative fix for bug #23144: using arrow 
644           keys in search buffer affects main window (by Mike Frysinger)
645
646 2008-05-31 Chris Allegretta <chrisa@asty.org>
647         * global.c: Fix for Savannah bug #23442: left/right arrow keys 
648           do not work with --enable-tiny (by Mike Frysinger)
649
650 2008-05-31 Chris Allegretta <chrisa@asty.org>
651         * files.c,proto.h,text.c: Fix for conflicts with AIX curses
652           variables, from William Jojo <jojowil@hvcc.edu>
653
654 2008-05-31 Chris Allegretta <chrisa@asty.org>
655         * global.c: Fix for compile error when --disable-speller is used 
656           (Savannah bug 23227 by Mike Frysinger)
657
658 2008-05-31 Chris Allegretta <chrisa@asty.org>
659         * Fix for seg fault when window size too small, by 
660           Andreas Amann <andreas.amann@tyndall.ie>
661
662 GNU nano 2.1.1 - 2008.04.01
663 2008-05-31 Chris Allegretta <chrisa@asty.org>
664         * Added the following contributed files, by owner:
665           Donnie Berkholz <dberkholz@gentoo.org>
666             * Sample awk.nanorc
667           Simon Rupf <simon.rupf@int-ag.ch>
668             * Sample css.nanorc
669           Josef 'Jupp' Schugt <jupp@rubyforge.org>
670             * sample ruby.nanorc
671
672 2008-03-31 Chris Allegretta <chrisa@asty.org>
673         * global.c: Fix for issues compiling with --enable-tiny and
674           --enable-multibuffer, as reported by Mike Frysinger.
675         * files.c: Fix the fact that the insert file prompt text did not
676           properly appears in tiny mode.
677
678 2008-03-19  Benno Schulenberg <bensberg@justemail.net>
679         * help.c, nano.c: Fix toggle help not being translated, fix allocation
680           issue.
681
682 2008-03-19  Chris Allegretta <chrisa@asty.org>
683         * gloabl.c: Fix bracket matching sequence to be M-] not M-[, as reported
684           Nick Warne <nick@ukfsn.org>.
685         * doc/syntax/Makefile.am - Actually include new syntaxes from Mike, etc
686         * debian.nanorc - New debian sources.list config since we're including
687           gentoo, adapted from Milian Wolff <mail@milianw.de>
688
689 2008-03-18  Mike Frysinger <vapier@gentoo.org>
690         * winio.c: Remove unneeded variable in parse_kbinput()
691         * rcfile.c: relocate check_vitals_mapped() function to just above 
692           where it actually gets used and declare it "static void" in the process
693         * global.c: only declare nano_justify_msg when justify support is enabled
694         * php.nanorc: Php syntax highlighting config
695         * tcl.nanorc: Tcl syntax highlighting config
696         * gentoo.nanorc: Gentoo syntax highlighting config
697
698 2008-03-17  Benno Schulenberg <bensberg@justemail.net>
699         * global.c: Fix incorrect first line jump messsage, fix
700           more comments to assist translators
701         * winio.c: Fix shortcut labels not being translated.
702
703 2008-03-17  Mike Frysinger <vapier@gentoo.org>
704          * */.gitignore: Git ignore files for those running a local git
705            against SVN.
706
707 2008-03-16  Benno Schulenberg <bensberg@justemail.net>
708         * src/help.c, src/global: Fix help strings no longer being 
709           translated properly.
710         * src/global.c, doc/man/nanorc.5: Fix typos and poorlly worded lines
711           in the source and man pages.
712
713 2008-03-04  Chris Allegretta <chrisa@asty.org
714         * everything: New shortcut backend.  New structs subnfunc
715         for menu functions and toggles and sc for shortcut keys, old 
716         'shortcut' and 'toggles' structs are gone.  The current implementation 
717         has a bunch of broken stuff (some of which is documented in BUGS). 
718         Updated nanorc.5 with some mostly complete documentation on configuring.
719
720 2007-12-20  David Lawrence Ramsey  <pooka109@gmail.com>
721
722         * AUTHORS, doc/faq.html: Update maintenance information.
723         * NEWS: Resync with NEWS from the 2.0 branch.
724
725 2007-12-18  David Lawrence Ramsey  <pooka109@gmail.com>
726
727         * nano.c (print_opt_full): Use strlenpt() instead of strlen(),
728         so that tabs are placed properly when displaying translated
729         strings in UTF-8, as found by Jean-Philippe Guérard.
730
731 2007-12-17  David Lawrence Ramsey  <pooka109@gmail.com>
732
733         * configure.ac, doc/texinfo/nano.texi, nano.c (terminal_init):
734         Change slang curses emulation support to turn off the same
735         options as --enable-tiny, as it's hopelessly broken otherwise.
736         * nano.c (disable_signals, main): Simplify terminal handling by
737         using raw mode instead of cbreak mode.
738         * text.c (execute_command): Call terminal_init() instead of just
739         disable_signals() after executing the command, as the command
740         may have changed the terminal settings.
741         * ChangeLog.pre-2.1: Add missing attribution.
742         * NEWS: Resync with NEWS from the 2.0 branch.
743
744 2007-12-10  David Lawrence Ramsey  <pooka109@gmail.com>
745
746         * nano.c (main): Exit if initscr() fails.
747
748 2007-12-09  David Lawrence Ramsey  <pooka109@gmail.com>
749
750         * faq.html: Add minor punctuation and wording fixes, and update
751         various sections to account for Alpine.
752
753 2007-12-08  David Lawrence Ramsey  <pooka109@gmail.com>
754
755         * prompt.c (do_statusbar_mouse, reset_statusbar_cursor,
756         update_statusbar_line, need_statusbar_horizontal_update): Fix
757         minor display and cursor placement problems when scrolling
758         between pages at the statusbar prompt.
759
760 2007-12-07  David Lawrence Ramsey  <pooka109@gmail.com>
761
762         * winio.c (get_mouseinput): Fix longstanding problem where mouse
763         clicks on the statusbar prompt text wouldn't be recognized
764         unless the NO_HELP flag was turned off.
765         * doc/man/rnano.1, doc/man/fr/rnano.1: Update copyright notices,
766         as Thijs Kinkhorst's copyrights have now been assigned to the
767         Free Software Foundation.
768
769 2007-12-04  David Lawrence Ramsey  <pooka109@gmail.com>
770
771         * nano.c (main), prompt.c (get_prompt_string), winio.c
772         (do_replace_highlight): Per OKATA Akio's patch, with minor
773         tweaks by me, add wnoutrefresh() calls after
774         reset_(statusbar_)?cursor() calls, to ensure that the cursor is
775         placed properly when using NetBSD curses.
776         * nano.c (disable_mouse_support, enable_mouse_support): When
777         toggling mouse support on or off, save and restore the mouse
778         click interval.
779
780 2007-11-29  Jean-Philippe Guérard <jean-philippe.guerard@tigreraye.org>
781
782         * doc/man/fr/*.1, doc/man/fr/nanorc.5: Fix copyright notices.
783         The copyrights are disclaimed on these translations, but the
784         copyrights of the untranslated works also apply.
785
786 2007-11-28  David Lawrence Ramsey  <pooka109@gmail.com>
787
788         * doc/man/fr/nanorc.5: Remove trailing whitespace.
789
790 2007-11-17  David Lawrence Ramsey  <pooka109@gmail.com>
791
792         * files.c (read_file): Improve autodetection of DOS and Mac
793         format files to not trigger on carriage returns in the middle of
794         files, as found by Kjell Braden.
795
796 2007-11-06  David Lawrence Ramsey  <pooka109@gmail.com>
797
798         * doc/man/rnano.1, doc/man/fr/rnano.1: Update copyright notices,
799         as Jordi Mallach's copyrights have now been assigned to the Free
800         Software Foundation.
801
802 2007-11-05  David Lawrence Ramsey  <pooka109@gmail.com>
803
804         * search.c (do_gotolinecolumn): Use a clearer error message if
805         we enter an invalid line or column number, per Mike Melanson's
806         suggestion.
807
808 2007-10-11  David Lawrence Ramsey  <pooka109@gmail.com>
809
810         * doc/man/nano.1, doc/man/fr/nano.1, doc/texinfo/nano.texi,
811         src/*.c, src/*.h: Update copyright notices, as Chris
812         Allegretta's copyrights have now been assigned to the Free
813         Software Foundation.
814         * doc/man/nanorc.5, doc/man/fr/nanorc.5: Make copyright notices
815         for these files consistent in style.
816         * files.c (cwd_tab_completion): Remove unneeded assert.
817         * files.c (username_tab_completion, cwd_tab_completion): Rename
818         variable buflen to buf_len, for consistency.
819         * files.c (input_tab): Disable completion of usernames,
820         directories, and filenames if the cursor isn't at the end of the
821         line, as it can lead to odd behavior (e.g. adding a copy of the
822         entire match to the middle of the line instead of just the
823         uncompleted part of the match).
824
825 2007-10-05  David Lawrence Ramsey  <pooka109@gmail.com>
826
827         * src/*.c, src/*.h: Update copyright notices, as my copyrights
828         have now been assigned to the Free Software Foundation.
829
830 2007-09-16  David Lawrence Ramsey  <pooka109@gmail.com>
831
832         * winio.c (edit_scroll): Fix problem where the screen wouldn't
833         be updated properly if you paged up with the first line of the
834         file onscreen and the mark on.
835
836 2007-08-26  David Lawrence Ramsey  <pooka109@gmail.com>
837
838         * doc/faq.html: Update links to the Free Translation Project.
839
840 2007-08-23  Jean-Philippe Guérard <jean-philippe.guerard@tigreraye.org>
841
842         * doc/man/fr/*.1, doc/man/fr/nanorc.5: Add translation of new
843         licensing terms.
844
845 2007-08-23  David Lawrence Ramsey  <pooka109@gmail.com>
846
847         * doc/man/fr/*.1, doc/man/fr/nanorc.5: Delete translation of
848         old licensing terms, until it can be updated.
849
850 2007-08-22  David Lawrence Ramsey  <pooka109@gmail.com>
851
852         * COPYING.DOC: Add a copy of the GNU FDL version 1.2.
853         * Makefile.am: Add COPYING.DOC to EXTRA_DIST.
854         * doc/man/*.1, doc/man/nanorc.5, doc/man/fr/*.1,
855         doc/man/fr/nanorc.5, doc/texinfo/nano.texi: Relicense to the GNU
856         GPL version 3 or later/the GNU FDL version 1.2 or later with no
857         Invariant Sections, Front-Cover Texts, or Back-Cover Texts.
858
859 2007-08-21  David Lawrence Ramsey  <pooka109@gmail.com>
860
861         * doc/man/rnano.1, doc/man/fr/rnano.1: Add missing copyright
862         notice from nano-tiny.1, which rnano.1 is based on.
863         * doc/man/fr/nano.1, doc/man/fr/nanorc.5, doc/man/fr/rnano.1:
864         Make all copyright notices consistent.
865
866 2007-08-16  David Lawrence Ramsey  <pooka109@gmail.com>
867
868         * files.c (do_insertfile): Properly handle more cases of
869         inserting a file with the mark on.
870         * nano.c (copy_from_file): Properly handle more cases of
871         uncutting text with the mark on.
872
873 2007-08-15  David Lawrence Ramsey  <pooka109@gmail.com>
874
875         * Makefile.am: Remove erroneous backslash after
876         ChangeLog.pre-2.1 in EXTRA_DIST, so that "make dist" works
877         again.
878         * files.c (do_insertfile): Make sure the mark is always properly
879         positioned after inserting a file with the mark on.
880         * nano.c (copy_from_file): Make sure the mark is always properly
881         positioned after uncutting multiple lines with the mark on.
882
883 2007-08-11  David Lawrence Ramsey  <pooka109@gmail.com>
884
885         * COPYING: Add a copy of the GNU GPL version 3.
886         * configure.ac, *.c, *.h: Relicense to the GNU GPL version 3 or
887         later.
888
889 2007-08-10  David Lawrence Ramsey  <pooka109@gmail.com>
890
891         * files.c (username_tab_completion, cwd_tab_completion,
892         input_tab): Update copyright notice to account for
893         modifications.
894         * utils.c (ngetdelim): Simplify.
895         * utils.c (ngetline, ngetdelim): Update copyright notice to
896         account for modifications.
897
898 2007-08-07  David Lawrence Ramsey  <pooka109@gmail.com>
899
900         * nano.c (copy_from_file): Fix potential segfault, found by Paul
901         Goins, after uncutting one line of text with the mark on by
902         properly preserving the beginning of the mark.
903         * nano.c (copy_from_file): Make sure the mark is always properly
904         positioned after uncutting one line of text with the mark on.
905
906 2007-08-01  David Lawrence Ramsey  <pooka109@gmail.com>
907
908         * nano.c (version): Display copyright notices.
909
910 2007-07-31  David Lawrence Ramsey  <pooka109@gmail.com>
911
912         * configure.ac: Update copyright notice to account for
913         modifications.
914
915 2007-07-29  David Lawrence Ramsey  <pooka109@gmail.com>
916
917         * doc/faq.html: Update RPM links for nano 2.0.x.
918
919 2007-07-11  David Lawrence Ramsey  <pooka109@gmail.com>
920
921         * files.c (copy_file): Assert that inn and out don't both point
922         to the same file.
923
924 2007-07-10  David Lawrence Ramsey  <pooka109@gmail.com>
925
926         * chars.c (nstrcasestr, mbstrcasestr, revstrstr, revstrcasestr,
927         mbrevstrcasestr): Simplify and rewrite to use the strncasecmp()
928         equivalents.
929
930 2007-07-09  David Lawrence Ramsey  <pooka109@gmail.com>
931
932         * chars.c (nstrcasestr, mbstrcasestr, revstrstr, revstrcasestr,
933         mbrevstrcasestr): Fix typo that broke the check for needle's
934         being blank.
935         * chars.c (mbstrncasecmp, mbstrnlen, mbstrpbrk,
936         has_blank_mbchars): Simplify by using for loops instead of while
937         loops where possible, to match the single-byte versions of these
938         functions.
939         * search.c (do_replace_loop): Fix problem where replacing e.g.
940         single-byte characters with multibyte ones could result in
941         openfile->totsize's being miscalculated.
942
943 2007-07-06  David Lawrence Ramsey  <pooka109@gmail.com>
944
945         * chars.c (nstrcasestr, mbstrcasestr, revstrstr, revstrcasestr,
946         mbrevstrcasestr): Return char* instead of const char*.
947
948 2007-07-02  David Lawrence Ramsey  <pooka109@gmail.com>
949
950         * chars.c (nstrcasestr, mbstrcasestr, revstrstr, revstrcasestr,
951         mbrevstrcasestr): For efficiency, return haystack/rev_start
952         immediately if needle is blank.
953
954 2007-07-01  David Lawrence Ramsey  <pooka109@gmail.com>
955
956         * chars.c (nstrncasecmp, mbstrncasecmp): For efficiency, return
957         zero immediately if s1 and s2 point to the same string.
958
959 2007-06-30  David Lawrence Ramsey  <pooka109@gmail.com>
960
961         * prompt.c (do_yesno_prompt): Remove redundant check for
962         NO_HELP's being FALSE.
963
964 2007-06-28  David Lawrence Ramsey  <pooka109@gmail.com>
965
966         * browser.c (do_browser), nano.c (do_mouse), prompt.c
967         (do_statusbar_mouse, do_yesno_prompt): Further simplify
968         processing of mouse events by consolidating if clauses.
969         * winio.c (do_mouseinput): Return unconditionally if we get a
970         mouse event that we don't deal with, instead of inside an else
971         clause.
972
973 2007-05-29  David Lawrence Ramsey  <pooka109@gmail.com>
974
975         * winio.c (do_mouseinput): Deal with clicks of the first mouse
976         button again.  Oddly, ncurses built without --enable-ext-mouse
977         needs this, but ncurses built with --enable-ext-mouse doesn't.
978
979 2007-05-25  David Lawrence Ramsey  <pooka109@gmail.com>
980
981         * configure.ac, nano.c (main): Replace the current hackish check
982         for a UTF-8 locale with a proper call to nl_langinfo().
983         * winio.c (get_key_buffer): Fix inaccurate comments.
984
985 2007-05-22  David Lawrence Ramsey  <pooka109@gmail.com>
986
987         * browser.c (do_browser), nano.c (do_mouse), prompt.c
988         (do_statusbar_mouse, do_yesno_prompt), winio.c (do_mouseinput):
989         Simplify processing of mouse events.  Instead of calling
990         wenclose() to get the window a mouse event took place in and
991         manually adjusting the returned coordinates to be relative to
992         that window the mouse event took place in, call wmouse_trafo(),
993         which does both.
994
995 2007-05-20  David Lawrence Ramsey  <pooka109@gmail.com>
996
997         * browser.c (do_browser), nano.c (do_mouse), prompt.c
998         (do_statusbar_mouse, do_yesno_prompt), winio.c (do_mouseinput):
999         Fix processing of mouse events so that those we don't handle are
1000         ignored instead of being erroneously passed through.
1001         * winio.c (do_mouseinput): Simplify handling of mouse events
1002         involving the first mouse button by only dealing with releases.
1003         * winio.c (do_mouseinput): Improve mouse wheel support to only
1004         move the cursor if we're in the edit window or on the statusbar.
1005
1006 2007-05-15  David Lawrence Ramsey  <pooka109@gmail.com>
1007
1008         * winio.c (do_mouseinput): Add mouse wheel support, per Helmut
1009         Jarausch's suggestion.  Now, if mouse support is enabled, and
1010         nano is using a version of ncurses compiled with the
1011         --enable-ext-mouse option, rolling the mouse wheel up or down
1012         will move the cursor three lines up or down.
1013
1014 2007-04-23  David Lawrence Ramsey  <pooka109@gmail.com>
1015
1016         * TODO: Add entries for fixing limitations with pasting text and
1017         handling bad/incomplete UTF-8 sequences.
1018
1019 2007-04-22  David Lawrence Ramsey  <pooka109@gmail.com>
1020
1021         * text.c (backup_lines): Avoid a segfault when the mark begins
1022         and ends on the line after the last line of the paragraph.
1023
1024 2007-04-21  David Lawrence Ramsey  <pooka109@gmail.com>
1025
1026         * files.c (do_writeout): If we're in restricted mode, we're not
1027         allowed to write selections to files, so don't display the
1028         "Write Selection to File" prompt.
1029         * files.c (do_writeout): Simplify.
1030
1031 2007-04-19  David Lawrence Ramsey  <pooka109@gmail.com>
1032
1033         * files.c (tail): Remove unneeded if statement.
1034
1035 2007-04-18  John M. Gabriele  <jmg3000@gmail.com>
1036
1037         * doc/faq.html: Add a new section 4.14 (with minor tweaks by
1038         David Lawrence Ramsey) to explain how autoindent affects pasted
1039         text.
1040
1041 2007-04-18  David Lawrence Ramsey  <pooka109@gmail.com>
1042
1043         * files.c (open_file): Open files using their full paths
1044         whenever possible, so that ~user/file.txt and "~user/file.txt"
1045         are treated the same way if ~user is a user's home directory.
1046         * files.c (real_dir_from_tilde): Simplify.
1047         * files.c (do_writeout): Properly display the warning in all
1048         cases if we try to save (a) an existing file under a different
1049         name, or (b) a file with no name under an existing file's name.
1050         * files.c (do_writeout): Rename variable different_name to
1051         do_warning, for clarity.
1052         * rcfile.c (parse_include): Open files using their full paths
1053         whenever possible, so that ~user/file.txt and "~user/file.txt"
1054         are treated the same way if ~user is a user's home directory.
1055         * rcfile.c (parse_include): Properly check for the included
1056         file's being a directory, a character file, or a block file.
1057         * rcfile.c (parse_include): For consistency, display the
1058         filename as the user entered it if we can't read the specified
1059         file.
1060         * winio.c (parse_kbinput): Interpret Cancel and Shift-Cancel.
1061         * winio.c (get_escape_seq_kbinput): Add missing comments.
1062
1063 2007-04-17  David Lawrence Ramsey  <pooka109@gmail.com>
1064
1065         * files.c (real_dir_from_tilde): Fix long-standing problem,
1066         found by Justin Fletcher, where directory names that began with
1067         "~", but that weren't users' home directories, could be
1068         erroneously treated as users' home directories (e.g. "~d/" would
1069         be treated as "~daemon/").
1070         * files.c (input_tab): Don't bother checking if num_matches is
1071         less than zero, as it's a size_t and hence unsigned.
1072
1073 2007-04-16  David Lawrence Ramsey  <pooka109@gmail.com>
1074
1075         * files.c (real_dir_from_tilde): Fix segfault, found by Justin
1076         Fletcher, when dealing with directory names that begin with "~",
1077         but that aren't users' home directories.
1078
1079 2007-04-11  Mike Frysinger  <vapier@gentoo.org>
1080
1081         * doc/syntax/asm.nanorc, doc/syntax/c.nanorc,
1082         doc/syntax/sh.nanorc: Copy the regex that highlights trailing
1083         whitespace (with minor tweaks by David Lawrence Ramsey) from
1084         doc/syntax/java.nanorc to these files, as it's also useful in
1085         them.
1086
1087 2007-04-04  David Lawrence Ramsey  <pooka109@gmail.com>
1088
1089         * AUTHORS, faq.html: Update email address.
1090         * winio.c (get_escape_seq_kbinput): Add escape sequences for
1091         Terminal.
1092
1093 2007-02-01  Benno Schulenberg  <bensberg@justemail.net>
1094
1095         * global.c (shortcut_init): Reword the movement shortcut
1096         descriptions so that they use "Go to" instead of "Move to",
1097         since not all of them move the cursor in the same way.
1098         * global.c (shortcut_init): Reword the paragraph movement
1099         shortcut descriptions to more accurately describe how they work.
1100         * nano.c (usage): Reword the description of the -S/--smooth
1101         command line option in order to differentiate it from the
1102         associated toggle description.
1103
1104 2007-01-29  David Lawrence Ramsey  <pooka109@cox.net>
1105
1106         * ChangeLog: Rework the 2.1 branch's changelog to be more
1107         readable, per Jordi Mallach's suggestion.
1108         * ChangeLog.pre-2.1: Move the 2.0 branch's changelog here, per
1109         Jordi Mallach's suggestion.
1110         * Makefile.am: Add ChangeLog.pre-2.1 to EXTRA_DIST.
1111         * src/help.c (help_init): Add a missing space to the "Execute
1112         Command" help text.