blob: 898695e9d3fab080f338aea130a103bb6be71c79 [file] [log] [blame]
Chris Allegretta8a9fe7e2000-06-21 22:29:38 +00001CVS code changes since last release -
Robert Siemborski6d0e9cd2000-07-01 21:43:16 +00002- all:
3 - Made search functions & keys more like Pico. Added goto line from
4 search and replace function, changed wording to "No Replace" instead
5 of "To Search", "To Replace" to simply "Replace", and changed to
6 Pico's keystroke by default, ^R. Affects search_init(),
7 do_search() in search.c, globals in nano.h and
8 shortcut_init() in global.c.
9 - changed 'sprintf' calls to safer 'snprintf'
Chris Allegretta8a9fe7e2000-06-21 22:29:38 +000010- nano.c:
11 - Removed dual alt_speller variables, oops! (Rocco Corsi)
Chris Allegrettadbc12b22000-07-03 03:10:14 +000012 - Removed unnecessary do_oldspell function (Rocco Corsi). Added
13 SMALL_NANO #ifdef around actual spell function.
Chris Allegrettaf7eba0b2000-06-24 01:33:27 +000014- de.po:
Chris Allegretta6e805852000-06-22 01:53:29 +000015 - Revised translations by floki@bigfoot.com.
Chris Allegrettaf7eba0b2000-06-24 01:33:27 +000016- fi.po:
17 - Finnish translation by pauli.virtanen@saunalahti.fi.
Chris Allegretta8c2b40f2000-06-29 01:30:04 +000018- winio.c:
Chris Allegretta5204ea92000-06-22 01:56:23 +000019 do_yesno(), nanogetstr():
20 - Removed now unnecessary raw/cbreak combos.
Jordi Mallach0b0fc492000-06-23 01:00:13 +000021 - Removed gettext calls from "Y(es)", "N(o)", "A(ll)" and "^C", till
22 we decide if those keybindings should be translated. (Jordi)
Chris Allegretta8c2b40f2000-06-29 01:30:04 +000023 clear_bottomwin():
24 - Removed wrefresh(edit) call.
Chris Allegretta8a9fe7e2000-06-21 22:29:38 +000025
Chris Allegretta4da1fc62000-06-21 03:00:43 +000026nano-0.9.11 - 06/20/2000
Chris Allegretta790198d2000-06-20 00:40:01 +000027- New flag "-T" or "--tabsize" to specify how to display tab widths.
28 Affects main() in nano.c, strlenpt(), xpt() and actual_x() (et al) in
29 winio.c, and nano.h. Many harcoded "8"s have been changed to the
Chris Allegretta4da1fc62000-06-21 03:00:43 +000030 TABSIZE int. Added changes to nano.1 and nano.1.html.
Chris Allegretta12de8e82000-06-09 02:40:50 +000031- id.po:
32 - Indonesian translation by Tedi Heriyanto.
Chris Allegretta4da1fc62000-06-21 03:00:43 +000033- es.po:
34 - Updated translation (Jordi Mallach).
Robert Siemborski91413cf2000-06-07 02:20:46 +000035- winio.c
36 - Rewrite of display functions to correct the display problems
37 we had been seeing. Affects: add_marked_sameline, edit_add,
38 and many others. (Rob Siemborski)
Chris Allegrettab0ae3932000-06-15 23:39:14 +000039 - totsize fixes (Rob Siemborski)
Chris Allegretta97accc62000-06-19 05:45:52 +000040 total_refresh():
41 - Cut dispaly_main_list call, as this function is only supposed to refresh
42 what's already on the screen, not go through the process of adding the
43 text again.
Chris Allegretta12de8e82000-06-09 02:40:50 +000044- cut.c:
Robert Siemborskib0df9532000-06-09 00:55:16 +000045 - totsize fixes (Rob Siemborski)
Chris Allegretta12de8e82000-06-09 02:40:50 +000046- nano.c:
Robert Siemborskib0df9532000-06-09 00:55:16 +000047 - experimental do_wrap and check_wrap (Adam Rogoyski)
Chris Allegretta97accc62000-06-19 05:45:52 +000048 - Removed editwineob, as it was redundant for (editwinrows - 1).
49 Changed all calls to editwinrows - 1 in nano.c and move.c.
50 - Removed all functions that were split into other files.
51 Affects LOTS of funcs.
Chris Allegrettab0ae3932000-06-15 23:39:14 +000052 do_enter():
53 - Added reset of placewewant to end.
Robert Siemborski10eab1d2000-06-18 01:05:00 +000054 do_insertfile():
55 - Fix display problem when using ctrl-r to load a file
56 into the buffer (Rob Siemborski)
Chris Allegretta97accc62000-06-19 05:45:52 +000057 handle_sigwinch():
58 - Added titlebar(), edit_refresh() and display_main_list() calls because
59 a resize wasn't picking up on possible different width correctly.
60- utils.c:
61 - Moved nmalloc() and nrealloc() here.
62- move.c:
63 - New file, contains movement functions (like do_home(), do_up(),
64 do_down(), page_up(), etc...).
65- files.c:
66 - Contains functions for files (read_file, insert_file,
67 do_writeout(), etc).
68- search.c:
69 - Contains all our searching and related functions, (do_search(),
70 findnextstr(), do_replace(), do_gotoline()).
Robert Siemborski91413cf2000-06-07 02:20:46 +000071
Chris Allegrettaa2ea1932000-06-06 05:53:49 +000072nano-0.9.10 - 06/04/2000
73- es.po:
74 - Translation updates (Jordi).
75- AUTHORS, nano.1.html, TODO, README:
76 - Documentation and email address updates (Jordi).
77- nano.c:
78 main():
79 - Moved Adam's termio code down to after getopt() and before initscr()
80 to stop people losing their SIGINT character when using args that
81 exit nano before it runs (--version, --help, etc).
82
83nano-0.9.9 - 05/31/2000
84- Makeile.am:
85 - Added proper lines for defining LOCALEDIR.
86- configure.in:
87 - Spelling fixes (Jordi Mallach)
88 - Removed CFLAGS changes for gcc, reduces portability according to
89 some, and it certainly doesn't seem to decrease exe size.
90- es.po:
91 - Spanish ranslation updates (Jordi Mallach)
92- POTFILES.in:
93 - Added global.c file, was screwing up translations (i.e. they
94 weren't getting done).
95- cut.c:
96 add_to_cutbuffer():
97 - Added totsize increment.
98 - Cut fixes and optimizations (Rob Siemborski).
99 do_uncut_text():
100 - Added totsize increment in several places.
101- nano.c:
102 headers:
103 - Removed LOCALEDIR define.
104 do_justify():
105 - Added edit_refresh() call (bug discovered by Adam).
106 page_down_center():
107 - Added call to edit_update(current) for last case. Removed
108 increment of current_y since it's now just wasteful.
109 do_enter():
110 - Added totsize increment.
111 renumber(), renumber_all():
112 - Removed totsize-- and totsize init in renumber_all.
113 do_mouse():
114 - Added edit_refresh() call to show hilight updates. Removed
115 unnecessary wrefresh(edit).
116 main():
117 - Moved up locale calls so that translated --help messages would
118 actually get translated.
119 do_backspace(), do_delete():
120 - Added decrement of totsize.
121 init_help_msg():
122 - New function, initializes help text if NANO_SMALL isn't set (fixes
123 broken i18n).
124 read_file():
125 - malloc call changed to nmalloc (Rob Siemborski).
126- winio.c:
127 total_refresh():
128 - Completely rewrote function, not quite so braindamaged now.
129
130nano-0.9.8 - 05/18/2000
131- nano.c:
132 main():
133 - Added awesome code that disables the CINTR and CQUIT
134 character (Adam Rogoyski). Removed raw()/noraw() calls so that
135 nano gets input in 'normal' mode, which is the Right Way(tm) to
136 do it. ^S, ^Z and ^Q now work properly as a result, as well as
137 ^C. New variable term, global bariable oldterm to save previous
138 term settings, and changes to finish() and die().
139 - Added extra #ifdefs in getopt code, so that above code and
140 flag init is run even if GETOPT_LONG is not #defined.
141 - Added memset line before sigactions. (Adam Rogoyski)
142 do_suspend():
143 Removed function, see above for why.
144- winio.c:
145 update_line(), center_cursor():
146 - Removed wrefresh(edit) from bottom of functions. wrefresh
147 should now only be called once, at the bottom of the main()
148 loop.
149- global.c:
150 shortcut_init():
151 - Removed suspend sc_init call and suspend message because suspend is no
152 longer needed in the shortcut list to work properly.
153
154nano-0.9.7 - 05/14/2000
155- nano.c:
156 do_home(), do_end():
157 - Added calls to update_line for the current line, fixes
158 lack of update (bug discovered by Alberto GarcĂ­a).
159 main():
160 - Added SET(FOLLOW_SYMLINKS) before getopt call, fixes not
161 following symlinks even when -l isn't set, and "no changes"
162 error when nano is called from crontab -e (Adam Rogoyski).
163- cut.c:
164 do_cut_text():
165 - Added edit_update_top to cut when mark is set, fixes lack of
166 display update (bug discovered by Ken Tyler).
167
168nano-0.9.6 - 05/08/2000
169- New Italian translation (it.po), by Daniele Medri.
170- nano.c:
171 page_up(), page_down():
172 - Added reset of placewewant to 0, as it should be.
173 do_up(), do_down():
174 - Added call to update_line() for line we move from and line we
175 move to, in order to keep the highlighting correct.
176 do_wrap():
177 - Added var chop, new code to wrap lines more like Pico, mostly.
178 THIS STILL DEFINITELY NEEDS TO BE REWRITTEN!
179- winio.c:
180 do_help():
181 - Added edit_refresh() before exit.
182 update_cursor():
183 - Removed cursor updating which really wasn't needed anyway.
184 edit_update():
185 - Removed yucky code that didn't work, this function now just
186 computes edittop and editbot and calls edit_refresh() to do the
187 rest, which removes a lot of dupliicate code..
188
189nano-0.9.5 - 05/01/2000
190- Removed bytes from file struct because it was computationally wasteful.
191- cut.c:
192 do_uncut_text():
193 - Added call to edit_refresh().
194- nano.c:
195 do_backspace():
196 - Added reset of editbot when deleting the last line of the file
197 (bug discovered by Adam).
198 do_char():
199 - Removed call to reset_cursor().
200 do_delete():
201 - Added similar check as to do_backspace().
202 do_enter():
203 - Added call to edit_refresh().
204 do_left(), right():
205 - Added call to update_line(), still redundant but better...
206 do_up(), do_down():
207 - Added refresh calls both for current line and line to which
208 we are moving.
209 main():
210 - Removed inefficient call to edit_refresh() after every keystroke.
211 It is now up each function to leave the screen in a good state.
212- winio.c:
213 do_cursorpos()
214 - Rewritten to not use bytes from filestruct by an incremental sum.
215 update_line(), reset_cursor():
216 - Optimized calls to xplustabs() through a single variable.
217 - update_line() now takes a new arg, an index into the string
218 for where to update the line from. Needed for new update
219 code.
220- configure.in:
221 - Better checks for slang, allows argument to --with-slang.
222 (Albert Chin-A-Young)
223 - Removed -Iintl from CFLAGS in gcc check.
224- Makefile.am:
225 - Addition of -Iintl for gettext (Albert Chin-A-Young)
226
227nano-0.9.4 - 04/25/2000
228 - Fixed calls to no_help and changed them to the more consistent
229 ISSET(NO_HELP). Fixed return val of no_help to be what it should (2,
230 not 1. Code to temporarily disable NO_HELP when in the
231 help system. (Adam Rogoyski)
232- cut.c:
233 do_marked_cut(), do_cut(), do_uncut():
234 - Commented out unnecessary bits when NANO_SMALL is being used.
235- winio.c:
236 xpt(), strlenpt(), actual_x():
237 - Added check for value of data[i] & 0x80, if so do not make
238 character 2 chars wide (orig. by Chris, 0x80 check by Adam).
239 edit_refresh():
240 - New check for temp == NULL (bad thing), if so go back to the
241 previous line. New filestruct var hold points to prev line.
242 Fixes segfault when paging down to the end of a file.
243- nano.c:
244 write_file():
245 - Added check for if file exists and is not equal to the current
246 filename, prompt for overwrite (Adam Rogoyski).
247 do_down():
248 - Removed check for current->next == NULL, now checks return value
249 of do_down before setting current_x = 0 (discovered by Adam).
250 do_justify():
251 - Fixed segfault when reaching the last line (tried to assign
252 currrent->next->data when current->next == NULL) (discovered
253 by Adam).
254- utils.c:
255 - Removed extra macro defs that are now in nano.h.
256- nano.h:
257 - Changed macro SET() to use |= instead of ^=. Fixes bug in
258 cut code when cutting more than one line, and cutbuffer gets
259 blown away when it shouldnt.
260
261nano-0.9.3 - 04/29/2000
262- cut.c:
263 do_marked_cut():
264 - Fixed off by one error in cut code for marked text.
265 do_cut_text():
266 - Removed check for being on the last line, part of
267 magic line code.
268 add_to_cutbuffer():
269 - Moved tmp->prev = inptr line to part where cutbuffer != NULL.
270 - Added inptr->prev = NULL for case where cutbuffer == NULL.
271- nano.c:
272 do_backspace(), do_char():
273 - Removed "magic line" code. It was basically causing more bugs
274 than it was helping for the sake of compatibillity. This fixes
275 at least one known segfault condition.
276 do_enter():
277 - Added setting editbot to new node if the new node is the last
278 node in the file.
279 write_file():
280 - Changed writing file bahavior. Now, if last line of the file
281 has any data on it, we write a newline on it, else we dont.
282- winio.c:
283 add_marked_sameline():
284 - New code that checks for whether the begin and end of the marker
285 are on different lines. Missing previously.
286 edit_add():
287 - added some more checks for text length. Cleaned up some mvwaddnstrs that
288 could be written more simply as waddnstrs.
289 edit_refresh():
290 - Removed check for temp == filebot, it is now treated like any other line.
291 Fixes a bug where selected text on the last line shows normally.
292 xpt():
293 - Removed an extra computation for tabs variable that was incorrect.
294 xplustabs():
295 - Since xpt now actualy works, this func is now just a wrapper for
296 xpt(current, current_x)
297- nano.1, nano.1.html:
298 - Added -l option to man pages.
299- configure.in:
300 - New option --enable-tiny, #defines NANO_SMALL in config.h.
301 Disables call to gettext in functions and other i18n stuff in
302 nano.c, the detailed help mode, the resize functions, and the
303 justify code which no one ever uses.
304 - New option --with-slang. Enables slang libraries instead of
305 ncurses, requires slcurses.h for wrapper functions. (Based
306 on patches for 0.8.7 by Glenn McGrath).
307
308nano-0.9.2 - 04/15/2000
309- This release just fixes the serious segfault problem if nano is
310 invoked any way other than using the absolute path. The bug was
311 in the new code for checking whether nano is invoked as pico.
312
313nano-0.9.1 - 04/14/2000
314- Added pico compatibility for ^T when in search or switch to switch
315 to the opposite function. Added one to REPLACE_LIST_LEN and
316 WHEREIS_LIST_LEN in nano.h, new args to sc_init_one in global.c and
317 new strings that will have to be gettex()ed. New argument 'replacing'
318 to search_init(). Handlers in do_replace and do_search().
319- New write code, now follows symbolic links instead of replacing them
320 with the new file. New option (-l, --nofollow) to enable the old
321 (incorrect, but secure) behavior (Adam Rogoyski).
322- nano.c:
323 do_wrap():
324 - Fixed another bug relating to wrapping, and which would cause
325 a segfault *sigh*.
326 do_replace():
327 - Incremented current_x by the length of the replacement
328 text inside the main repalce loop. Fixes bug #15.
329 add_marked_sameline():
330 - New function, handles marked text when start & end of marker is
331 on one line, also supports most marked text when cursor > COLS.
332 main():
333 - Code to check if nano is invoked as 'pico', and if so
334 automatically set pico_msgs (Robert Jones).
335
336nano-0.9.0 - 04/07/2000
337- nano.1, nano.1.html: Updated man page with my email address and homepage.
338- winio.c:
339 reset_cursor(), update_line():
340 - Changed update algorithm for x value to (COLS - 7) multiple when x
341 value > (COLS - 2).
342- edit_refresh():
343 - Removed inner loop code, now calls update_line() for each line
344 in question, MUCH nicer.
345- xplustabs(), xpt():
346 - Removed redundant increment of tabs when collumn no % 8 == 0.
347 - Added check for data[i] < 32, most of such bits are 2 chars wide.
348- update_line():
349 - Fixed a stupid call to strlenpt with col when we should have
350 been using actual_col. Ugh.
351
352nano-0.8.9 - 03/22/2000
353- nano.c:
354 empty_line(), no_spaces(), justify_format(), do_justify():
355 Actually added these (screwup applying patch).
356 do_justify(): Added call to set_modified().
357
358nano-0.8.8 - 03/12/2000
359- Preliminary internationalization support. Many many functions modified
360 to use gettext (via _() macro). es.po file included. (Jordi Mallach)
361 New dirs po/ and intl/, changes to configure.in and Automake.am to
362 support i18n.
363- nano.c:
364 includes: Ddded sys/param.h and limits.h. (Adam Rogoyski).
365 statics: Changed some things that were not necessarily static
366 (Adam Rogoyski).
367 nrealloc(): New function, similar to nmalloc(). Changed calls from
368 realloc() to nrealloc (Adam Rogoyski).
369 empty_line(), no_spaces(), justify_format(), do_justify():
370 New functions for justify function (Adam Rogoyski).
371- winio.c:
372 blank_edit(): Added wrefresh call to edit so that screen updates (like
373 on ^L) actually work.
374 xplustabs(), xpt(), strlenpt(): Fixed off-by-one buglets (Adam Rogoyski).
375
376nano-0.8.7 - 03/01/2000
377- main.c:
378 do_wrap(): Better fix for segfaults, and fix for lisnes being wrapped
379 to a single character on one line when no good place to
380 break the line exists, and for wrapping lines longer than COLS.
381- nano.1.html:
382 Html version of man page, now included in dist. For
383 the benefit of nano packages in Linux distributions.
384
385nano-0.8.6 - 02/24/2000
386- gobal.c:
387 shortcut_init():
388 Added shortcuts for goto_line and do_replace when using
389 pico_msgs. Oops.
390- nano.c:
391 statics: Changed fill back to 0 from 71 by default (Adam Rogoyski).
392 do_wrap(): Added check for backing up past tabs, which we shouldnt do.
393 Removed check for backing up past spaces first.
394 main(): Added for loop to check for alt keys instead of hard list.
395 do_enter(): Fix for bug #14, added call to reset_cursor and messed
396 up do_char quite a bit.
397 version(): Added time and date stamp for compile on version message.
398 Added mail and web page info.
399- README: Updated mailing list info.
400
401nano-0.8.5 - 02/18/2000
402- nano.c:
403 main(): Finally fixed tilde being input on page up/down keys in
404 certain terminal types. Fix was input 26->91->5[34] check
405 for 126, if so make the kbinput PAGE UP/DOWN, else unget
406 the keystroke and continue. Added #include <ioctl.h> for
407 ioctl call.
408 handle_hup():
409 Handler for hangup signal. Belated include of patch from
410 Tim Sherwood.
411- winio.c:
412 edit_refresh():
413 Temporary fix for selecting text when temp == current.
414 edit_refresh() is now unmanagably complex, and must be
415 revamped.
416 check_statblank():
417 Added check for constupdate, makes things less choppy
418 (Adam Rogoyski)
419
420nano-0.8.4 - 02/11/2000
421- Moved global variables that were only (or mostly) used in one file into
422 its proper file as a static. Affects cut.c, nano.c, global.c (Andy Kahn).
423- global.c:
424 shortcut_init():
425 Removed redundant NANO_CONTROL_H from backspace shortcut,
426 added char 127 which should have been there.
427- nano.c:
428 main(): Fix for loops looping until MAIN_LEN, added -1 to stop
429 segfaults (Adam Rogoyski).
430- Makefile.am: Added all source filenames (Adam Rogoyski).
431- nano.1: Fixed mail addressed and added mailing list address.
432- README: Updated my email address and the nano web page.
433
434nano-0.8.3 - 02/08/2000
435- New pico mode (-p, --pico), toggles (more) compatibility with the
436 Pico messages displayed in the shortcut list. Note that there are still
437 small differences in this mode.
438- nano.h: New shortcut struct format, for the benefit of i18n and
439 our help menu. Removed shortcut message macros, they are
440 now all in shortcut_init in global.c.
441- nano.c:
442 do_wrap(): Removed resetting of current_x when we are in fact
443 wrapping to the next line, fixes a bug in -i mode.
444 do_enter():
445 Rewrote the autoindent mode code to be a lot less pretty,
446 but a lot more magical.
447 main():
448 Removed case for ignoring char 126 (~). That's kind of
449 important, we'll have to fix handling that sequence when
450 pageing up/down on a terminal some other way... Revamped
451 main switch loop in much snazzier fashion based on the
452 shortcut list.
453- winio.c:
454 New function display_main_list. Affects all functions
455 that used to call bottombars() with main_list. Added
456 because we now only call bottombars with the macro
457 MAIN_VISIBLE instead of MAIN_LIST_LEN, because of the
458 changes to the main_list shortcut list (see global.c below).
459 New function do_help, our preliminary dynamic help system.
460- Many many funcs:
461 Changed from int to void to allow one uniform type to call
462 from the shortcut struct. Also a few functions that do
463 not simple have void argument have new functions called
464 funcname_void(void) to be called from the shortcut list.
465 do_cut_text and do_uncut_text were changed to void
466 arguments because they were never called with a filestruct
467 other than *current anyway.
468- global.c:
469 Shortcut list main_list was expanded to cover all
470 shortcuts that could be caught in the main loop.
471 Consequently there is a new macro MAIN_VISIBLE which tells
472 how many items in the main list to actually show.
473
474nano-0.8.2 - 02/02/2000
475- Added initial mouse (-m, --mouse) support. New global variable
476 use_mouse. (Adam Rogoyski)
477
478- nano.c: Set intial value of fill to COLS - 8 rather than just 72
479 regardless. (Adam Rogoyski).
480 do_delete():
481 Deleted call to do_backspace() when on the end of a line,
482 because it won't update the line properly.
483 do_backspace():
484 Removed unnecessary pointer manipulation that was being
485 handled by unlink_node().
486 open_file():
487 Added check for trying to open a directory (currently we
488 segfault on this). Bug pointed out by Chad Ziccardi.
489
490nano-0.8.1 - 01/28/2000
491- Implemented Pico's -r (fill) mode, command line flag -r or --fill. New
492 global variable fill, affects check_wrap(), do_wrap(), main(), usage(),
493 global.c and proto.h.
494- nano.c:
495write_file(): Added (incredibly) necessary check for EPERM when
496 link() fails. This allows us to actually save
497 files via rename() on filesystems that dont
498 support hard links (AIEEEEEE).
499do_goto():
500 Fixed a stupid mistake where we were calling
501 bottombars() with replace_list instead of goto_list.
502- nano.h:
503 New char *help in shortcut structure for help
504 feature. Added NANO_*_MSG and NANO_*_HELP #deifnes
505 for help function and i18n.
506- global.c:
507 New functions shortcut_init (called in nano.c) and
508 sc_init_one() to initialize the shortcuts without
509 using {}s (for i18n).
510
511nano-0.8.0 - 01/25/2000
512- View flag (-v, --view) implemented. Global variable view_mode, affects
513 main loop of nano.c and new_file(). (me)
514- nano.c:
515 split checks for TERMIOS_H and TERMIO_H up so we
516 can (theoretically) include them both, which is good.
517handle_sigwinch():
518 Added check for ncurses.h. (Andy Kahn)
519do_spell():
520 We now only try ispell because we don't as of yet
521 handle the 'spell' program the right way, now that
522 I finally know what the right way is =-). Added
523 call to edit_update(fileage) to stop segfaults.
524global_init():
525 Added initialization of edit* filestruct pointers
526 to stop segfaults on spell check.
527usage():
528 Check for getopt_long, and if no leave out the
529 GNU options everyone seems to love so much (Andy Kahn)
530main():
531 Added checks for getopt_long (Andy Kahn)
532 We ignore character 126 because it gets put into
533 the buffer when we page up/down on a vt terminal.
534write_file():
535 Fixes for umask (Adam Rogoyski). Renamed tmpfile
536 variable to tmp. Documented the tmp opttion
537 better in the function comments. Fixed my
538 stupidly commented out check for tmp on setting
539 umask which I really like =>
540- nano.h:
541 Made desc variable in shortcut struct a pointer
542 instead of a fixed-length string.
543- utils.c:
544 Fixed check for config.h before nano.h.
545- configure.in:
546 New checks for getopt_long, getopt.h, removed
547 CFLAGS and LDFLAGS changes. Gonna have to run
548 strip manually now =-) (Andy Kahn)
549 Added check for HAVE_WRESIZE, new file acconfig.h (me).
550
551nano-0.7.9 - 01/24/2000
552- New autoindent feature. Command flag 'i' or '--autoindent'. New
553 function do_char() to clean up character output, global
554 variable autoindent in global.c. (Graham Mainwaring)
555- New flag 't' or '--tempfile', like Pico's -t mode, automatically saves
556 files on exit without prompting. Affects do_writeout(). Also
557 do_writeout() now takes a parameter for if exiting.
558 Global variable temp_opt in global.c (Graham Mainwaring)
559- Preliminary spell program support. Added command flag '-s' or
560 '--speller' for alternative speller command. Added function do_spell()
561 and exit_spell() to nano.c. New global variable alt_speller.
562- nano.c:
563 main(): We now ignore input of decimal 410 because these get entered
564 when we resize the screen. Sorted options in getopt()
565 switch statement.
566 usage(): Sorted options and changed tabs to make room for -s option.
567 write_file(): Now takes a second parameter 'tmpfile', uses mask 0600 and
568 doesn't print the number of lines written on the statusbar.
569 global_init():
570 Added more initializations to globals to support do_spell().
571
572nano-0.7.8 - 01/23/2000
573- Stubbed justify function. Affects main() in nano.c and nano.h defines.
574- Added Fkey equivalents for Pico compatibilty. Affects nano.h defines
575 and main() in nano.c
576- Removed redundant reset_cursor() calls from the blank() routines.
577- nano.c:
578 main(): Fixed typo in main while loop for NANO_ALT_REPLACE_KEY.
579 Removed check for isprint() characters in main while loop
580 for people with odd character sets *shrug*. Added some X
581 window F-key combos.
582 read_line(): New function, consolidates of most of the special
583 sections of the file reading code. (Rob Siemborski)
584 do_replace(): Many scattered fixes. (Rob Siemborski)
585 write_file(): Added check for empty filename.
586- winio.c:
587 nanogetstr(): Fixes for deleting at places other than the end of the
588 buffer, cut support. (Adam Rogoyski)
589 blank_edit(): New function, blanks edit buffer. Added call to it in
590 total_refresh().
591- configure: Checks for glib if snprintf of vsnprintf aren't available
592 (Andy Kahn). Changed warning message when no termcap lib
593 is found.
594
595nano-0.7.7 - 01/19/2000
596- Option '-v' for version moved to '-V', because -v is Pico's "read only"
597 mode (affects getopt() in main() and usage() function in nano.c
598- New flag -c, always show cursor position. Affects main() in nano.c and
599 statusbar() in winio.c
600- Option '-x' doesn't show help window at the bottom of the editor.
601 New variable no_help in nano.h and proto.h, affects main(), usage(),
602 and global_init() in nano.c, blank_bottombars(), clear_bottomwin(),
603 bottombars(), and do_yesno() in winio.c (I had to apply this patch by
604 hand =P) (Adam Rogoyski)
605- nano.c:
606 handle_sigwinch(): New function (Adam Rogoyski), handles resizing.
607 page_up(), page_down():
608 - New functions. We now set the cursor at the top right corner,
609 not at the center line, and page up and down a full screen
610 rather than a half screen. Original functions renamed to
611 page_up_center() and page_down_center().
612 main():
613 - Added check for keystroke key sequence 407 or NANO_CONTROL_Z
614 in main while loop because suspend mode was broken. This should
615 fix it, at least for now.
616 - Added long option support (By popular harassment ;-) - Added
617 #include for getopt.h, changed getopt() to getopt_long().
618 Options added so far: --version (-V), --nowrap (-w), --suspend
619 (-z), --help (-h), --nohelp (-x).
620 - Rewrote signal statements (Adam Rogoyski)
621
622nano 0.7.6 - 01/15/2000
623- New ChangeLog format
624- nano.c:
625 main(): Bound CONTROL_H to backspace (oops)
626 Added more Alt-[-key combinations, for page up & down.
627 read_bytes(): New function (Adam Rogoyski)
628 read_file(): Optimizations - malloc()s *buf a little at a time rather
629 than one huge buffer, and replaced the strcat at the end
630 with an index variable. Added call to read_bytes().
631 do_next_word(): New function, binding is control-space (0) (me)
632
633- winio.c:
634 bottombars(): Fixed non-expanding shortcut keys at bottom of screen.
635 (formula is extra space needed = COLS / 6 - 13).
636 actual_x() & strlenpt():
637 Added bug#9 fix - when tabs % 8 == 0, we should only
638 increment tabs by 1.
639 titlebar(): Fixed overrun in titlebar on very long filenames.
640
6410.7.5 Pico 'last line' feature added (Rob Siemborski & me). Eliminated
642 writing a newline at EOF. do_cursorpos and do_replace are now not
643 directly bound to signals but picked up as their control sequences
644 in raw mode. Bug fix in do_backspace. Fixed bug #9 (woohoo!)
6450.7.4 Optimized (obfuscated?) edit_refresh. Malloc() calls checked for
646 available memory, align bug fixed (Big Gaute).
647
648--- As of version 0.7.4 TIP is renamed to nano.
649
6500.7.3 Fixed a double blank_statusbar() when jumping to first and last
651 lines. Took out unnecessary updates in load_file. Bug fix in
652 do_left. Missing updates to totlines, fixed bug #7 (last line not
653 having a newline at the end doesnt get read, bugfix in do_replace
654 with replace all, more/better comments (Robert Siemborski)
6550.7.2 Our first patch accepted into the source! configure fixes
656 and optimizations (Erik Anderson). Added missing stdarg.h to winio.c.
657 Bug fix in update_line for editing long lines. Fixed arguments
658 being put into the filename when none is specified. Preliminary
659 +line command argument function.
6600.7.1 configure tweak for better FreeBSD support. Removed refresh() from
661 edit_refresh to stop cursor "jumping" during screen updates. This
662 will probably cause a bug or two. Replace is now Alt-R (@R) and
663 Goto line is Alt-G (@G), but they have control key aliases of ^\ and
664 ^_ respectively. Made Control-F,B,N,P work like they do in Pico.
665 Control-G will become the Help key, but for now is stubbed out.
6660.7.0 Fixed missing stdlib.h from cut.c. Fixed a few message bugs in
667 findnextstr. Bound Control-D to Delete. Refixed segfault on zero
668 length file. Added Esc-[-A,B,C,D cursor key sequences.
6690.6.9 Preliminary cursor position function. Split up tip.c more, made
670 new files cut.c and winio.c. Fixed a bug in cut_marked_segment
671 that was leaving out a character.
6720.6.8 By request, optchr in main() is now an int. Removed unneeded
673 globals. Bound functions for next/prev page, and wrote functions
674 do_home and do_end.
6750.6.7 Bugfix in do_uncut_text for totlines. Broke up open_file and
676 created read_file. Implemented Insert File. Fixes in tipgetstr
677 for erroneous keystrokes. Added leave_cursor arg to do_yesno().
6780.6.6 Fixes in do_search(), do_replace(), do_writeout, and do_exit() for
679 aborted searches and more Pico-compatible messages. statusq() now
680 returns -2 on a blank entry instead of -1. Bug fix in actual_x().
6810.6.5 More BSD compatibility. Fixed two bugs in do_uncut_text
682 regarding buffers with filebot in them. Fixins in do_backspace
683 and do_enter. Removed unused variables. Removed strip_newline.
6840.6.4 Took out the awful newlines from each string buffers. This will
685 certainly cause more bugs. Fixes in do_exit(). Better empty file
686 handling (I hope).
6870.6.3 Implemented ^E. Removed now unneeded wrapline from filestruct.
688 do_enter() rewritten.
6890.6.2 Better default file permissions. Complete rewrite of do_wrap().
690 Better handling of editing with cursor near COLS - 1.
6910.6.1 Starting to implement wrapping toggle. Fix for unhandled control
692 codes being entered into the buffer. Bug fix in actual_x; more
693 > COLS - 1 functionality, especially on lines with TABs. Fixed being
694 locked into cutbuffer when cutting more than one marked screen of text.
6950.6.0 We have TABs!!! To do this, placewewant is now set to the actual
696 width on the screen we want to be, not an index of current->data.
697 New functions xplustabs and actual_x convert the actual place
698 the cursor should be on the screen to and from the place in the
699 string.
7000.5.5 Changed do_right to test do_down before setting current_x to 0,
701 eliminiating the "looping" on the last line when holding the right
702 arrow. Preliminary support for longer than COLS - 1 lines.
703 Wrote do_delete.
7040.5.4 Fixed a big in total_update that wasn't repainting the screen properly.
705 tipgetstr is much more messy but text is now more editable ;)
706 Fixed crash on entering a new file, hopefully. Awful stub for tab
707 handling, only in do_right() to save me some sanity.
7080.5.3 Added check for malloc.h. Implementing uncut from marker slowly.
709 Fixed a few bugs in do_uncut when not uncutting from marked text.
710 I would not trust your data with the mark code right now, but then
711 we're not at version 1.0 yet so dont trust anything ;)
7120.5.2 Added reset_cursor() before end of update_line so cursor doesnt
713 jump after each keystroke entered. Select text stubbed. Fixed
714 a bug in total_refresh(). Setting a mark will hilight properly,
715 but does not actually affect what gets put in the cutbuffer (yet).
7160.5.1 Writing a file out causes modified to be set back to 0. Good.
717 Set_modified function written. Cut and uncut text now set
718 modified when called.
7190.5.0 Half way there! Implemented write out, save function seems
720 stable. Changed statusbar blank routing to not refresh, a separte
721 program calls it and then refreshes. Made the program not clear
722 the srceen on exit, just the bottom two lines (like Pico).
7230.4.2 Implemented replace all in replace function. Crude exit function
724 (asks yes or no if modified but does not write to file).
7250.4.1 Implementing search & replace. Fixed crash on deleting at top of
726 edit buffer. Implemented "timeout" of statusbar messages.
727 Implemented ^A and ^E (beginning and end of line).
7280.4.0 Split code into global.c and proto.h to allow for better multiple
729 file handling. Added #defines for the majority of the shortcut
730 kets in tip.h for easy modification.
7310.3.1 Write edit_refresh which doesn't move the screen around, just
732 updates what's there already. do_wrap() and do_enter() added.
7330.3.0 Preliminary cutbuffer (cut and uncut) support.
7340.2.7 Check for Modification added. do_search() works.
7350.2.5 Rewrite of file data struct.
7360.2 Read in data to buffer, bound keystrokes to stub functions,
737 initial cursor movement on screen. Initial autoconf support.
7380.1 Initial program setup w/ncurses