blob: 4f45366f3d4c0c67210ec9ea825c6ce670ec08d4 [file] [log] [blame]
Chris Allegrettaca7a21d2000-11-24 01:35:40 +00001nano 0.9.21 - 11/23/2000
Chris Allegrettaf26bca72000-11-21 03:04:45 +00002- AUTHORS
3 - Added Rocco Corsi.
Chris Allegretta31c76662000-11-21 06:20:20 +00004- nano.c:
5 main()
6 - Changed check for argc == 1 to argv[optind] == NULL to decide
7 whether or not to display "New File" in the statusbar.
Chris Allegrettaaaabe1f2000-11-19 18:20:07 +00008- search.c:
9 findnextstr()
Chris Allegretta1cc29f62000-11-20 01:29:37 +000010 - Fix curent_x increment bug by using another variable (Rocco Corsi).
Chris Allegrettaef601bb2000-11-19 19:15:03 +000011 search_init()
12 - Silly typo in our "one simple call" of statusq. Stopped
13 previous search string from being displayed.
Chris Allegrettac793c432000-11-21 12:52:55 +000014 do_replace()
15 - Copy back the previous value of last_replace into answer if
16 using PICO_MODE and answer == ""
Chris Allegretta6c5781b2000-11-23 01:19:58 +000017- winio.c:
18 do_up()
19 - Deleted first update_line() call, screws up display when marker is set.
Chris Allegrettad466ab72000-11-19 20:36:41 +000020- nano.1, nano.1.html
21 - Updated man page for new -p definition.
Chris Allegrettaac0e63a2000-11-19 02:25:43 +000022
Chris Allegretta6da149a2000-11-19 02:23:03 +000023nano 0.9.20 - 11/18/2000
Chris Allegretta67574f42000-11-03 03:35:29 +000024- General
25 - Ran source through indent -kr again. Make everything pretty.
26 - Changed behavior of "search" and "replace" prompts to make all
27 previous values editable. This change was made so that you can
28 replace with the null string without needing a special key for it.
29 changed code in search_init(), do_replace(), nanogetstr (see
30 below).
31 - Added some missing gettext calls here and there (Jordi).
32 - Revamped nanogetsr() and calls to it to use variable length strings.
33 MANY changes in nanogetstr(), many chances in search.c, new
34 function mallocstrcpy which is sure to be a programmatic
35 nightmare, changed last_search, last_replace, answer to
36 pointers. New function not_found_msg in search.c for displaying
Chris Allegrettacbb0f8b2000-11-15 03:50:02 +000037 truncated strings in satusbar when the string is not found
38 (-pedantic fixes by Rocco Corsi). We disable this feature when
Chris Allegrettabf9a8cc2000-11-17 01:37:39 +000039 using PICO_MODE (-p).
Chris Allegretta27eb13f2000-11-05 16:52:21 +000040 - New spelling code by Rocco Corsi. New functions
41 do_int_speller, do_alt_speller, changes to do_spell in nano.c,
42 New functions search_init_globals and do_replace_loop, changes
43 to search_init(), do_replace, findnextstr, moved last_search and
44 last_replace back to nano.c (*shrug*).
Chris Allegretta04d848e2000-11-05 17:54:41 +000045 - New tab completion code. Used check_wildcard_match, input_tab,
46 cwd_tab_completion, username_tab_completion from busybox,
Chris Allegretta7da4e9f2000-11-06 02:57:22 +000047 hacked them a lot, changes to nanogetstr(). nanogetstr() and
48 statusq() now take an arg for whether or not to allow tab
49 completion.
Chris Allegretta5bf51d32000-11-16 06:01:10 +000050 - Fixed value being input in statusbar during a search or replace
51 and CASE_SENSITIVE or the other search is called and the
52 string being typed in is blown away. Reported by Ken Tyler.
Chris Allegrettabf9a8cc2000-11-17 01:37:39 +000053 - Changed PICO_MSGS flag to PICO_MODE, changed help strings
54 accordingly.
Chris Allegretta92d2bab2000-11-02 14:53:46 +000055- files.c:
56 do_writeout()
57 - Change strcpy to answer to mallocstrcpy.
Chris Allegrettad7934d42000-10-03 05:39:29 +000058- global.c
Chris Allegretta105da332000-10-31 05:10:10 +000059 - New global replace_list_2, for 2nd half of the replace dialog
60 ("Replace with:"), has fewer options than first half because
61 they were inapropriate.
Chris Allegrettad7934d42000-10-03 05:39:29 +000062 toggle_init()
63 - Added #ifdef around toggle_regex_msg to get rid of compiler
64 warning.
Chris Allegretta1cc0b7f2000-11-03 01:29:04 +000065
66- nano.c:
67 keypad_on()
68 - New function, toggles turning the keypad on and off in edit and
69 bottomwin(). Added call to this in finish(), fixes bug #45.
Chris Allegrettaa0e957b2000-10-24 22:25:36 +000070- search.c
71 findnexstr()
72 - New arg for begin_x variable, basically a rewrite that
73 makes a little more sense and isn't quite as messy (Rocco Corsi).
74 - Update the line we're checking if not the whole screen, because
75 it's quite possible the search team could exist somewhere way
76 to the right on the same line, for example.
77 replace_abort()
78 - Add reset of placewewant, stops cursor from jumping when moving
79 cursor after a replace.
Chris Allegretta810632d2000-10-27 04:36:01 +000080 do_replace()
81 - Added code for Gotoline key after entering the search term.
82 Fixes bug #46.
Chris Allegretta9c371a22000-10-27 05:48:05 +000083 - Removed redundant code involving processing replacemenet string.
84 Converted if statements to switch statements.
85 - Optimizations by Rocco Corsi.
Chris Allegretta105da332000-10-31 05:10:10 +000086 - Removed code for deleted shortcuts from in replace_list_2.
Chris Allegretta9c371a22000-10-27 05:48:05 +000087 do_search()
88 - Converted if statements to one switch statement.
Chris Allegrettaf9b6c9b2000-10-18 19:35:59 +000089- winio.c
90 nanogetstr()
91 - Added check for 343 in while loop to get rid of getting "locked"
92 into statusbar" bug in odd $TERMs like iris-ansi.
Chris Allegretta105da332000-10-31 05:10:10 +000093 - Changed check to return -2 on "enter" from answer == ""
94 to answer == def.
Chris Allegretta04d848e2000-11-05 17:54:41 +000095 - Fixed fallthrough code because there was no break. Make much
96 more sense now.
Chris Allegretta5b1faac2000-11-16 19:55:30 +000097 - Added check for ASCII 54[124] when using PDCURSES, ignore them
98 if noticed.
Chris Allegrettaa0e957b2000-10-24 22:25:36 +000099 nanoget_repaint()
100 - New function, removes about 30 lines of duplicate code in
101 nanogetstr().
Chris Allegretta90594e22000-11-02 15:53:40 +0000102 - Black magic code to make $ appear in prompt if we're past
103 COLS.
Chris Allegretta2c975222000-11-15 01:25:42 +0000104 blank_edit()
105 - Removed wrefresh() call, much less choppy now. If there's a need
106 for a wrefresh after a specific call, let me know.
Jordi Mallach0ae0dcd2000-10-28 12:38:02 +0000107- es.po:
Jordi Mallachd25385b2000-11-18 03:31:21 +0000108 - Updated translation for 0.9.20 (Jordi).
Chris Allegrettad7934d42000-10-03 05:39:29 +0000109
Chris Allegretta07e97d62000-10-03 01:52:50 +0000110nano 0.9.19 - 10/02/2000
Chris Allegrettaad1dacc2000-09-21 04:25:45 +0000111- General
112 - Added PDCurses support under cygwin, which allows building
113 a nice stand-alone nano.exe for those poor Windows users.
114 Extra check in configure.in for initscr() in -lcurses (as
115 PDcurses has no tgetent), some #ifdef PDCURSES statements
116 in main().
Chris Allegretta66989d62000-09-27 03:16:11 +0000117 - Changed web site and email to new nano-editor.org domain.
Chris Allegretta7c44b682000-09-21 04:27:01 +0000118- nano.c
Chris Allegretta9e7efa32000-10-02 03:42:55 +0000119 - Added (int) casts to remove compile warnings with -Wall.
Chris Allegretta7c44b682000-09-21 04:27:01 +0000120 main()
121 - Added check for _POSIX_VDISABLE around term variable definition.
Chris Allegrettadf3afdc2000-10-01 17:50:29 +0000122- search.c
123 - Added initializations for last_search and last_replace (Rocco Corsi)
124
Chris Allegretta629edad2000-09-19 00:27:19 +0000125nano 0.9.18 - 09/18/2000
Chris Allegretta805c26d2000-09-06 13:39:17 +0000126- General
127 - Changed _POSIX_VERSION checks in regex code to HAVE_REGEX_H,
128 added check for regex.h in configure.in.
Chris Allegretta90bd7122000-09-13 18:12:05 +0000129- configure.in:
130 - Added default case for cross-compiling to get rid of annoying
131 AC_TRY_RUN warning.
Chris Allegretta429a5512000-09-05 13:09:56 +0000132- cut.c:
133 do_cut_text()
134 - Don't immediately abort if we're on filebot and the marker is
Chris Allegrettad746d902000-09-05 13:15:44 +0000135 set (fixes bug #42).
Chris Allegrettaf45c18d2000-09-16 05:25:06 +0000136- files.c:
137 open_file()
138 - Fix for bug #44 (Rocco Corsi).
Chris Allegretta16e41682000-09-11 22:33:54 +0000139- global.c:
140 shortcut_init()
141 - Added in FKEYs that for some reason were left out. *boggle*
Chris Allegretta9239d742000-09-06 15:19:18 +0000142- nano.c:
Chris Allegretta2a42af12000-09-12 23:02:49 +0000143 main()
Chris Allegretta9239d742000-09-06 15:19:18 +0000144 - Added check for _POSIX_VDISABLE and use raw mode if not
145 available, allows nano to work with cygwin.
Jordi Mallach2dc0f6b2000-09-07 10:48:00 +0000146 - Added gettext calls to enable/disable strings (Jordi).
Chris Allegretta16e41682000-09-11 22:33:54 +0000147 - Revamped a great deal of the F-key and keypad key handling,
148 because we not longer use keypad() (see below).
149 - Removed keypad() call because nano was not working with the
150 keypad in many terms, which is very bad.
Chris Allegretta9c35eb02000-09-13 14:24:52 +0000151 - Made insert key call do_insertfile().
Chris Allegretta2a42af12000-09-12 23:02:49 +0000152 do_toggle()
153 - Rewrote function to allow NOHELP toggle to wotk on systems
154 without a working resizewin(). New function window_init().
Chris Allegretta0b88ce02000-09-15 15:46:32 +0000155 mouse_init()
156 - Add keypad only if mouse support is on, otherwise mouse doesn't
157 work. I guess you have to choose between having the mouse and
158 having a working keypad for the time being (thank god for Meta-m).
Chris Allegretta2a42af12000-09-12 23:02:49 +0000159- winio.c:
160 total_refresh()
161 - Added titlebar() call.
Chris Allegrettae7034c62000-09-15 03:31:09 +0000162 onekey()
163 - Off by one error fix fix ;-) (Rocco Corsi).
Chris Allegretta2a42af12000-09-12 23:02:49 +0000164
Chris Allegrettab9bfc9b2000-09-10 05:06:09 +0000165- search.c:
166 findnextstr()
167 - Reset starting at current for search instead of begin.
Jordi Mallach2dc0f6b2000-09-07 10:48:00 +0000168- es.po:
169 - Translated new strings and minor updates (Jordi).
Chris Allegretta834a69d2000-09-18 17:11:33 +0000170- de.po
171 - Revised translations by floki@bigfoot.com
Chris Allegretta429a5512000-09-05 13:09:56 +0000172
Chris Allegretta423cbfd2000-09-04 16:21:29 +0000173nano-0.9.17 - 09/04/2000
Chris Allegretta756f2202000-09-01 13:32:47 +0000174- General
175 - New shortcuts to toggle certain options that are normally only
176 flags via Alt/Meta. See Alt-C,E,I,K,M,P,X,Z. New struct called
177 toggles in nano.h, toggle_init(), toggle_init_one() in global.c
Chris Allegrettae49f1232000-09-02 07:20:39 +0000178 called from shortcut_init(), and do_toggle in nano.c. Also
179 moved the signal code into a separate function in nano.c called
Chris Allegretta18f8be02000-09-04 03:20:38 +0000180 signal_init(). Moved "struct sigaction act"into a static in
181 nano.c.
Chris Allegrettae49f1232000-09-02 07:20:39 +0000182 - Changed from Alt-key symbol (@) which is completely nonstandard
183 to the *nix "Meta" symbol (M-). Changed help_init to show
184 the M-key usage and the help text to explain keys whcih generate
185 Meta. Moved the toggle Meta keystrokes to the first column
186 instead of the third as they are the primary keystrokes for the
Chris Allegretta9541f2a2000-09-02 07:31:32 +0000187 functions. Thanks Mini editor team :->
Chris Allegretta756f2202000-09-01 13:32:47 +0000188 - Changed last_search and last_replace vars to statically
189 allocated (hence nulled) and moved to search.c (Matt Kraai).
Chris Allegrettaf0f63a82000-09-02 18:44:21 +0000190- global.c:
191 toggle_init()
192 - Changed "No auto wrap" and "No help mode" to "Auto wrap" and
193 "Help mode". See the change to do_toggle() below.
Chris Allegrettae10debd2000-08-22 01:26:42 +0000194- nano.c:
195 do_mouse()
196 - Patch for handling lines w/tabs and mouse better (Ben Roberts).
Chris Allegretta340d6e52000-08-29 03:55:29 +0000197 do_wrap()
198 - Made wrapping code less ambitious.
Chris Allegrettaf0f63a82000-09-02 18:44:21 +0000199 do_toggle()
200 - Added checks for no help and no wrap mode, and print opposite
201 enable/disable message.
Chris Allegretta18f8be02000-09-04 03:20:38 +0000202 do_suspend(), do_cont():
203 - New functions, handle suspend signal in a Pico-like manner and
204 work with Meta-Z.
Chris Allegrettaf1d33d32000-08-19 03:53:39 +0000205- winio.c:
206 total_refresh()
207 - Added edit_refresh() call to actually update the screen if messy.
208 edit_refresh_clearok()
209 - New function, does a total update for edit refresh, needed to fix
210 lack of reversed text on searching with MARK_ISSET.
Chris Allegrettadabc3cb2000-08-25 01:44:12 +0000211 onekey()
212 - Off by one error fix (Rocco Corsi).
Chris Allegrettae7034c62000-09-15 03:31:09 +0000213
Chris Allegretta6306a112000-09-02 07:55:41 +0000214 update_line()
215 - Added check for binary data >= 1 and <= 26, and use ^+letter
216 to display it. Should fix editing text files with binary
217 data in them. Placing of the cursor seems to be a bit screwed
218 though...
Chris Allegrettaf1d33d32000-08-19 03:53:39 +0000219- search.c:
220 search_abort()
221 - Now calls edit_refresh_clearok when MARK_ISSET to handle screen
222 ugliness bug (reported by Ken Tyler).
Chris Allegrettae10debd2000-08-22 01:26:42 +0000223 findnextstr():
224 - Added reset for placewewant (Ben Roberts).
Chris Allegretta9babaf32000-08-30 13:49:33 +0000225 - Fixed check for string that only occurs on the same line failing
226 (discovered by Ken Tyler).
Chris Allegrettaf1d33d32000-08-19 03:53:39 +0000227
Chris Allegrettaba96f7a2000-08-09 21:38:28 +0000228nano-0.9.16 - 08/09/2000
Chris Allegretta7dc14e82000-08-05 16:03:19 +0000229- cut.c:
230 do_cut_text()
231 - Fixed getting locked into cutbuffer on cutting first line of file.
Chris Allegrettac86f7142000-08-07 14:39:32 +0000232 - Added check_statblank().
233 - Check for fileptr == filebot, if so return, we shouldn't bother
234 cutting the magic line.
235 do_uncut_text()
236 - Added check_statblank().
Chris Allegretta4dbcc3c2000-08-04 15:44:29 +0000237- nano.c:
238 main()
239 - Changed tabsize long arg to actually accept an argument *sigh*.
Chris Allegretta81b1eea2000-08-05 16:09:07 +0000240- po/Makefile.in.in:
241 - Patch to handle $DESTDIR (orig by Dan Harnett contributed by
242 Christian Weisgerber)
Chris Allegrettab4dc9e02000-08-05 22:49:30 +0000243- configure.in:
Chris Allegrettaa2efc362000-08-09 03:26:33 +0000244 - New (and severally revised =) slang test code (Albert Chin-A-Young)
Chris Allegretta4dbcc3c2000-08-04 15:44:29 +0000245
Chris Allegretta0bf4e142000-08-04 02:42:04 +0000246nano-0.9.15 - 08/03/2000
Chris Allegretta234a34d2000-07-29 04:33:38 +0000247- Changed edit_update call to take arguments TOP, CENTER or BOTTOM.
248 Affects many many functions. Removed functions edit_update_top and
249 edit_update_bot.
Chris Allegretta6d690a32000-08-03 22:51:21 +0000250- Added global variable tabsize, we no longer screw with the curses
251 library in order to implement -T (suggested by Christian Weisgerber).
Chris Allegretta7a6f0d92000-07-31 13:00:24 +0000252- configure.in:
253 - Finally fixed check for slang to report "no" if not called
254 with --with-slang or --without-slang
Chris Allegretta7975ed82000-07-28 00:58:35 +0000255- nano.c:
Chris Allegretta18bd0292000-07-28 01:18:10 +0000256 splice_node()
Chris Allegretta7975ed82000-07-28 00:58:35 +0000257 - New function, abstracts linking in nodes. Fixes bug #36.
Chris Allegretta6925bbd2000-07-28 01:41:29 +0000258 null_at()
259 - New function, nulls a string at a given index and realigns it.
Chris Allegretta18bd0292000-07-28 01:18:10 +0000260 delete_buffer()
261 - Removed, same as free_filestruct().
Chris Allegrettada721be2000-07-31 01:26:42 +0000262 do_backspace()
263 - Now calls page_up_center instead of page_up (as it should?)
264 do_enter()
265 - Fixed typo (?) in check for inptr->next. Caused lots of
266 grief for editing lines at filebot.
Chris Allegretta99bf73f2000-08-04 00:22:08 +0000267 main()
268 - Removed now useless usrtabsize variable (Christian Weisgerber).
Chris Allegretta18bd0292000-07-28 01:18:10 +0000269- search.c:
270 replace_abort()
271 - redundant, now just calls search abort until it does something
272 different.
Chris Allegretta95b0b522000-07-28 02:58:06 +0000273- winio.c:
274 edit_refresh()
275 - Added check for current line "running" off the screen.
276 Hopefully this will not cause any recursive lockups.
Chris Allegretta234a34d2000-07-29 04:33:38 +0000277 (Who am I kidding, of course it will!)
Chris Allegrettaed022162000-08-03 16:54:11 +0000278 - Added check to stop infinite loop calling edit_update.
Chris Allegretta234a34d2000-07-29 04:33:38 +0000279 edit_update()
280 - Rewritten, hopefully this will remove a lot of the
281 scrolling the cursor back and forth needlessly.
Chris Allegretta1a471392000-07-28 14:08:01 +0000282- move.c:
283 page_down()
Chris Allegretta234a34d2000-07-29 04:33:38 +0000284 - do an edit_update() at last case. Made function more like
285 Pico's version, only move down to two lines before editbot.
286 page_up()
287 - Made function more like Pico's version, only move down to two
288 lines after edittop.
Chris Allegretta7975ed82000-07-28 00:58:35 +0000289
Chris Allegrettaa1a55c72000-07-28 00:36:03 +0000290nano-0.9.14 - 07/27/2000
Chris Allegretta05597192000-07-24 21:16:12 +0000291- nano.h:
292 - Set CUT_TO_END to a different bit than TEMP_OPT. Fixes bug #32.
293- cut.c:
Chris Allegretta962c3c92000-07-24 21:52:17 +0000294 do_cut_text()
Chris Allegretta05597192000-07-24 21:16:12 +0000295 - Added check for MARK_ISSET when using CUT_TO_END. Fixes bug #31.
Chris Allegretta0e5faca2000-07-27 13:32:46 +0000296 - Simplified check for freeing cutbuffer. Added checks for doing
297 multiple cuts with -k, now sets marked_cut to 2 for later
298 processing by do_uncut_text().
299 do_uncut_text()
300 - Added handler for uncutting with -k cuts.
Chris Allegretta962c3c92000-07-24 21:52:17 +0000301- files.c:
302 write_file()
303 - Removed (redundant) check for writing out files with -t.
304 do_writeout()
305 - Changed check for filename to filename[0]. Added some code,
306 overall fixes bug #30 =-)
Robert Siemborskia417ddc2000-07-24 23:18:48 +0000307- nano.c:
308 do_justify() & do_wrap():
309 - totsize-related fixes (Rob)
Chris Allegretta2ece1672000-07-27 15:25:52 +0000310- de.po
311 - Revised translations by floki@bigfoot.com
Chris Allegretta05597192000-07-24 21:16:12 +0000312
Chris Allegretta1d7110d2000-07-23 16:59:07 +0000313nano-0.9.13 - 07/23/2000
Chris Allegretta627de192000-07-12 02:09:17 +0000314- Implemented Pico's -k mode. New flag CUT_TO_END, option (-k, --cut),
Chris Allegrettad19e9912000-07-12 18:14:51 +0000315 affects do_cut_text in cut.c. Not available with SMALL_NANO because it
316 depends on the marker code which is not available with that setting.
Chris Allegretta30885552000-07-14 01:20:12 +0000317- Changed static temp_opt to flag TEMP_OPT. Fixed bug #29 (using
318 -t with an unwritable file causes users to get locked into editor).
Adam Rogoyskied0cb892000-07-12 04:02:45 +0000319- move.c
320 page_down()
321 - Don't edit_refresh() if the bottom of the file is in the edit
322 buffer. (Adam)
Robert Siemborski6967eec2000-07-08 14:23:32 +0000323- nano.c:
324 main():
325 - TABSIZE now set before first call to edit_refresh (Bill Soudan)
Chris Allegretta8f6c0692000-07-19 01:16:18 +0000326 - Different ^C kill code (patch by Christian Weisgerber).
Robert Siemborskifcf32bf2000-07-17 03:04:54 +0000327 die():
328 - More intelligent emergency-save filename selection (Rob)
Chris Allegretta8f6c0692000-07-19 01:16:18 +0000329 do_spell():
330 - Changed exit semantincs a bit so that aspell wouldn't get
331 all screwy (bug disovered by Joshua Jensen.
332- files.c:
333 read_file():
334 - Added init of buf variable, hopefully this will stop the
335 "bleeding" of text seen with mutt and using i18n.
Chris Allegrettaacb62342000-07-21 22:42:46 +0000336 write_file():
337 - Added code to check to see if using -l and the file is not
338 in fact a link. This should fix the behavior where a file
339 that does not have write permission but could be removed and
340 rewritten is saved without error. Please test this feature
341 and give feedback.
Chris Allegrettaa4d21622000-07-08 23:57:03 +0000342- search.c:
343 search_init():
344 - Added " (to replace)" statement to end of search string if
345 we are doing a replace. Manually converted all the translations
346 from '%s' to '%s%s' to ensure they still work with the new code.
347 Also put in the translation for " (replace)" in the .po's. Hope
348 I didn't step on your toes doing this Jordi. (Chris)
Chris Allegretta635fae32000-07-09 03:26:34 +0000349 do_search(), do_replace():
350 - Removed call to search_abort()/replace_abort() before call to
351 the opposite function.
Chris Allegrettafa8f7bf2000-07-12 02:41:13 +0000352 - Fixed bug #28.
Adam Rogoyskied0cb892000-07-12 04:02:45 +0000353 findnextstr()
354 - do not center string found if it is currently visable. (Adam)
Chris Allegretta7539a822000-07-09 23:55:13 +0000355- fr.po:
356 - French update by Clement Laforet <clem_laf@wanadoo.fr>.
Jordi Mallach8d7ac1b2000-07-13 03:10:01 +0000357- es.po:
358 - Updated strings to 0.9.13 (Jordi).
Robert Siemborski6967eec2000-07-08 14:23:32 +0000359
Chris Allegrettae955dae2000-07-07 22:24:59 +0000360nano-0.9.12 - 07/07/2000
Robert Siemborski6d0e9cd2000-07-01 21:43:16 +0000361- all:
Chris Allegretta9fc8d432000-07-07 01:49:52 +0000362 - New regexp search feature by Bill Soudan. New flags USE_REGEXP
363 and REGEXP_COMPILED, new functions regexp_init, regexp_cleanup
364 replace_line, replace_regexp in search.c, changes to
Chris Allegretta47805612000-07-07 02:35:34 +0000365 search_init() and do_replace() and strstrwrapper().
366 - Added _POSIX_VERSION check to regexp code. Better than nothing
367 for non-POSIX systems...
Robert Siemborski6d0e9cd2000-07-01 21:43:16 +0000368 - Made search functions & keys more like Pico. Added goto line from
369 search and replace function, changed wording to "No Replace" instead
370 of "To Search", "To Replace" to simply "Replace", and changed to
371 Pico's keystroke by default, ^R. Affects search_init(),
372 do_search() in search.c, globals in nano.h and
373 shortcut_init() in global.c.
Robert Siemborskideca3e72000-07-04 02:40:41 +0000374 - changed 'sprintf' calls to safer 'snprintf' (Rob)
Robert Siemborski23ecb172000-07-04 22:21:40 +0000375- cut.c
376 - further totsize update corrections
Robert Siemborskideca3e72000-07-04 02:40:41 +0000377- files.c:
378 - changed do_insertfile to call fix_editbot (Rob)
Robert Siemborski23ecb172000-07-04 22:21:40 +0000379 - Magic Line code in read_file (Rob)
Chris Allegretta8a9fe7e2000-06-21 22:29:38 +0000380- nano.c:
381 - Removed dual alt_speller variables, oops! (Rocco Corsi)
Chris Allegrettadbc12b22000-07-03 03:10:14 +0000382 - Removed unnecessary do_oldspell function (Rocco Corsi). Added
383 SMALL_NANO #ifdef around actual spell function.
Chris Allegretta1e57e682000-07-03 04:24:39 +0000384 - Moved page_up() to move.c where is belongs.
Robert Siemborskideca3e72000-07-04 02:40:41 +0000385 - Corrected FIXME in do_enter with explanation. (Rob)
386 - Fixed FIXME in do_justify, resulted in creation of
387 fix_editbot [also fixed in do_enter] (winio.c) (Rob)
Robert Siemborskicdff0152000-07-07 01:58:52 +0000388 help_init():
389 - Moved newline out of if statement (Rocco Corsi)
Chris Allegretta28a0f892000-07-05 22:47:54 +0000390 do_char():
Robert Siemborski23ecb172000-07-04 22:21:40 +0000391 - Magic Line related code in do_char (Rob)
Chris Allegretta28a0f892000-07-05 22:47:54 +0000392 do_backspace(), do_delete():
393 - Added magic line code here too.
394
Chris Allegrettaf7eba0b2000-06-24 01:33:27 +0000395- de.po:
Chris Allegretta6e805852000-06-22 01:53:29 +0000396 - Revised translations by floki@bigfoot.com.
Chris Allegrettaf7eba0b2000-06-24 01:33:27 +0000397- fi.po:
398 - Finnish translation by pauli.virtanen@saunalahti.fi.
Robert Siemborski23ecb172000-07-04 22:21:40 +0000399- utils.c:
400 - Added new_magicline()
Chris Allegretta8c2b40f2000-06-29 01:30:04 +0000401- winio.c:
Chris Allegrettadba37ae2000-07-07 05:13:09 +0000402 - Added stdlib.h to includes, found by OpenBSD gcc.
Robert Siemborski20d61d52000-07-08 00:43:35 +0000403 - lots of new commenting around display functions
Chris Allegretta5204ea92000-06-22 01:56:23 +0000404 do_yesno(), nanogetstr():
405 - Removed now unnecessary raw/cbreak combos.
Jordi Mallach0b0fc492000-06-23 01:00:13 +0000406 - Removed gettext calls from "Y(es)", "N(o)", "A(ll)" and "^C", till
407 we decide if those keybindings should be translated. (Jordi)
Chris Allegretta8c2b40f2000-06-29 01:30:04 +0000408 clear_bottomwin():
409 - Removed wrefresh(edit) call.
Chris Allegretta48fd2cb2000-07-03 04:31:13 +0000410 edit_update_top():
411 - Fixed a bug that caused nano to not update when
412 current->next == NULL (e.g. paging down to the very bottom of
413 ABOUT NLS wouldn't work).
Robert Siemborskideca3e72000-07-04 02:40:41 +0000414 fix_editbot:
415 - Added (should rebuild editbot from a valid edittop) (Rob)
Robert Siemborski20d61d52000-07-08 00:43:35 +0000416 edit_add:
417 - removal of redundant call to mvwaddnstr
Chris Allegretta8a9fe7e2000-06-21 22:29:38 +0000418
Chris Allegretta4da1fc62000-06-21 03:00:43 +0000419nano-0.9.11 - 06/20/2000
Chris Allegretta790198d2000-06-20 00:40:01 +0000420- New flag "-T" or "--tabsize" to specify how to display tab widths.
421 Affects main() in nano.c, strlenpt(), xpt() and actual_x() (et al) in
422 winio.c, and nano.h. Many harcoded "8"s have been changed to the
Chris Allegretta4da1fc62000-06-21 03:00:43 +0000423 TABSIZE int. Added changes to nano.1 and nano.1.html.
Chris Allegretta12de8e82000-06-09 02:40:50 +0000424- id.po:
425 - Indonesian translation by Tedi Heriyanto.
Chris Allegretta4da1fc62000-06-21 03:00:43 +0000426- es.po:
427 - Updated translation (Jordi Mallach).
Robert Siemborski91413cf2000-06-07 02:20:46 +0000428- winio.c
429 - Rewrite of display functions to correct the display problems
430 we had been seeing. Affects: add_marked_sameline, edit_add,
431 and many others. (Rob Siemborski)
Chris Allegrettab0ae3932000-06-15 23:39:14 +0000432 - totsize fixes (Rob Siemborski)
Chris Allegretta97accc62000-06-19 05:45:52 +0000433 total_refresh():
434 - Cut dispaly_main_list call, as this function is only supposed to refresh
435 what's already on the screen, not go through the process of adding the
436 text again.
Chris Allegretta12de8e82000-06-09 02:40:50 +0000437- cut.c:
Robert Siemborskib0df9532000-06-09 00:55:16 +0000438 - totsize fixes (Rob Siemborski)
Chris Allegretta12de8e82000-06-09 02:40:50 +0000439- nano.c:
Robert Siemborskib0df9532000-06-09 00:55:16 +0000440 - experimental do_wrap and check_wrap (Adam Rogoyski)
Chris Allegretta97accc62000-06-19 05:45:52 +0000441 - Removed editwineob, as it was redundant for (editwinrows - 1).
442 Changed all calls to editwinrows - 1 in nano.c and move.c.
443 - Removed all functions that were split into other files.
444 Affects LOTS of funcs.
Chris Allegrettab0ae3932000-06-15 23:39:14 +0000445 do_enter():
446 - Added reset of placewewant to end.
Robert Siemborski10eab1d2000-06-18 01:05:00 +0000447 do_insertfile():
448 - Fix display problem when using ctrl-r to load a file
449 into the buffer (Rob Siemborski)
Chris Allegretta97accc62000-06-19 05:45:52 +0000450 handle_sigwinch():
451 - Added titlebar(), edit_refresh() and display_main_list() calls because
452 a resize wasn't picking up on possible different width correctly.
453- utils.c:
454 - Moved nmalloc() and nrealloc() here.
455- move.c:
456 - New file, contains movement functions (like do_home(), do_up(),
457 do_down(), page_up(), etc...).
458- files.c:
459 - Contains functions for files (read_file, insert_file,
460 do_writeout(), etc).
461- search.c:
462 - Contains all our searching and related functions, (do_search(),
463 findnextstr(), do_replace(), do_gotoline()).
Robert Siemborski91413cf2000-06-07 02:20:46 +0000464
Chris Allegrettaa2ea1932000-06-06 05:53:49 +0000465nano-0.9.10 - 06/04/2000
466- es.po:
467 - Translation updates (Jordi).
468- AUTHORS, nano.1.html, TODO, README:
469 - Documentation and email address updates (Jordi).
470- nano.c:
471 main():
472 - Moved Adam's termio code down to after getopt() and before initscr()
473 to stop people losing their SIGINT character when using args that
474 exit nano before it runs (--version, --help, etc).
475
476nano-0.9.9 - 05/31/2000
477- Makeile.am:
478 - Added proper lines for defining LOCALEDIR.
479- configure.in:
480 - Spelling fixes (Jordi Mallach)
481 - Removed CFLAGS changes for gcc, reduces portability according to
482 some, and it certainly doesn't seem to decrease exe size.
483- es.po:
484 - Spanish ranslation updates (Jordi Mallach)
485- POTFILES.in:
486 - Added global.c file, was screwing up translations (i.e. they
487 weren't getting done).
488- cut.c:
489 add_to_cutbuffer():
490 - Added totsize increment.
491 - Cut fixes and optimizations (Rob Siemborski).
492 do_uncut_text():
493 - Added totsize increment in several places.
494- nano.c:
495 headers:
496 - Removed LOCALEDIR define.
497 do_justify():
498 - Added edit_refresh() call (bug discovered by Adam).
499 page_down_center():
500 - Added call to edit_update(current) for last case. Removed
501 increment of current_y since it's now just wasteful.
502 do_enter():
503 - Added totsize increment.
504 renumber(), renumber_all():
505 - Removed totsize-- and totsize init in renumber_all.
506 do_mouse():
507 - Added edit_refresh() call to show hilight updates. Removed
508 unnecessary wrefresh(edit).
509 main():
510 - Moved up locale calls so that translated --help messages would
511 actually get translated.
512 do_backspace(), do_delete():
513 - Added decrement of totsize.
514 init_help_msg():
515 - New function, initializes help text if NANO_SMALL isn't set (fixes
516 broken i18n).
517 read_file():
518 - malloc call changed to nmalloc (Rob Siemborski).
519- winio.c:
520 total_refresh():
521 - Completely rewrote function, not quite so braindamaged now.
522
523nano-0.9.8 - 05/18/2000
524- nano.c:
525 main():
526 - Added awesome code that disables the CINTR and CQUIT
527 character (Adam Rogoyski). Removed raw()/noraw() calls so that
528 nano gets input in 'normal' mode, which is the Right Way(tm) to
529 do it. ^S, ^Z and ^Q now work properly as a result, as well as
530 ^C. New variable term, global bariable oldterm to save previous
531 term settings, and changes to finish() and die().
532 - Added extra #ifdefs in getopt code, so that above code and
533 flag init is run even if GETOPT_LONG is not #defined.
534 - Added memset line before sigactions. (Adam Rogoyski)
535 do_suspend():
536 Removed function, see above for why.
537- winio.c:
538 update_line(), center_cursor():
539 - Removed wrefresh(edit) from bottom of functions. wrefresh
540 should now only be called once, at the bottom of the main()
541 loop.
542- global.c:
543 shortcut_init():
544 - Removed suspend sc_init call and suspend message because suspend is no
545 longer needed in the shortcut list to work properly.
546
547nano-0.9.7 - 05/14/2000
548- nano.c:
549 do_home(), do_end():
550 - Added calls to update_line for the current line, fixes
551 lack of update (bug discovered by Alberto García).
552 main():
553 - Added SET(FOLLOW_SYMLINKS) before getopt call, fixes not
554 following symlinks even when -l isn't set, and "no changes"
555 error when nano is called from crontab -e (Adam Rogoyski).
556- cut.c:
557 do_cut_text():
558 - Added edit_update_top to cut when mark is set, fixes lack of
559 display update (bug discovered by Ken Tyler).
560
561nano-0.9.6 - 05/08/2000
562- New Italian translation (it.po), by Daniele Medri.
563- nano.c:
564 page_up(), page_down():
565 - Added reset of placewewant to 0, as it should be.
566 do_up(), do_down():
567 - Added call to update_line() for line we move from and line we
568 move to, in order to keep the highlighting correct.
569 do_wrap():
570 - Added var chop, new code to wrap lines more like Pico, mostly.
571 THIS STILL DEFINITELY NEEDS TO BE REWRITTEN!
572- winio.c:
573 do_help():
574 - Added edit_refresh() before exit.
575 update_cursor():
576 - Removed cursor updating which really wasn't needed anyway.
577 edit_update():
578 - Removed yucky code that didn't work, this function now just
579 computes edittop and editbot and calls edit_refresh() to do the
580 rest, which removes a lot of dupliicate code..
581
582nano-0.9.5 - 05/01/2000
583- Removed bytes from file struct because it was computationally wasteful.
584- cut.c:
585 do_uncut_text():
586 - Added call to edit_refresh().
587- nano.c:
588 do_backspace():
589 - Added reset of editbot when deleting the last line of the file
590 (bug discovered by Adam).
591 do_char():
592 - Removed call to reset_cursor().
593 do_delete():
594 - Added similar check as to do_backspace().
595 do_enter():
596 - Added call to edit_refresh().
597 do_left(), right():
598 - Added call to update_line(), still redundant but better...
599 do_up(), do_down():
600 - Added refresh calls both for current line and line to which
601 we are moving.
602 main():
603 - Removed inefficient call to edit_refresh() after every keystroke.
604 It is now up each function to leave the screen in a good state.
605- winio.c:
606 do_cursorpos()
607 - Rewritten to not use bytes from filestruct by an incremental sum.
608 update_line(), reset_cursor():
609 - Optimized calls to xplustabs() through a single variable.
610 - update_line() now takes a new arg, an index into the string
611 for where to update the line from. Needed for new update
612 code.
613- configure.in:
614 - Better checks for slang, allows argument to --with-slang.
615 (Albert Chin-A-Young)
616 - Removed -Iintl from CFLAGS in gcc check.
617- Makefile.am:
618 - Addition of -Iintl for gettext (Albert Chin-A-Young)
619
620nano-0.9.4 - 04/25/2000
621 - Fixed calls to no_help and changed them to the more consistent
622 ISSET(NO_HELP). Fixed return val of no_help to be what it should (2,
623 not 1. Code to temporarily disable NO_HELP when in the
624 help system. (Adam Rogoyski)
625- cut.c:
626 do_marked_cut(), do_cut(), do_uncut():
627 - Commented out unnecessary bits when NANO_SMALL is being used.
628- winio.c:
629 xpt(), strlenpt(), actual_x():
630 - Added check for value of data[i] & 0x80, if so do not make
631 character 2 chars wide (orig. by Chris, 0x80 check by Adam).
632 edit_refresh():
633 - New check for temp == NULL (bad thing), if so go back to the
634 previous line. New filestruct var hold points to prev line.
635 Fixes segfault when paging down to the end of a file.
636- nano.c:
637 write_file():
638 - Added check for if file exists and is not equal to the current
639 filename, prompt for overwrite (Adam Rogoyski).
640 do_down():
641 - Removed check for current->next == NULL, now checks return value
642 of do_down before setting current_x = 0 (discovered by Adam).
643 do_justify():
644 - Fixed segfault when reaching the last line (tried to assign
645 currrent->next->data when current->next == NULL) (discovered
646 by Adam).
647- utils.c:
648 - Removed extra macro defs that are now in nano.h.
649- nano.h:
650 - Changed macro SET() to use |= instead of ^=. Fixes bug in
651 cut code when cutting more than one line, and cutbuffer gets
652 blown away when it shouldnt.
653
654nano-0.9.3 - 04/29/2000
655- cut.c:
656 do_marked_cut():
657 - Fixed off by one error in cut code for marked text.
658 do_cut_text():
659 - Removed check for being on the last line, part of
660 magic line code.
661 add_to_cutbuffer():
662 - Moved tmp->prev = inptr line to part where cutbuffer != NULL.
663 - Added inptr->prev = NULL for case where cutbuffer == NULL.
664- nano.c:
665 do_backspace(), do_char():
666 - Removed "magic line" code. It was basically causing more bugs
667 than it was helping for the sake of compatibillity. This fixes
668 at least one known segfault condition.
669 do_enter():
670 - Added setting editbot to new node if the new node is the last
671 node in the file.
672 write_file():
673 - Changed writing file bahavior. Now, if last line of the file
674 has any data on it, we write a newline on it, else we dont.
675- winio.c:
676 add_marked_sameline():
677 - New code that checks for whether the begin and end of the marker
678 are on different lines. Missing previously.
679 edit_add():
680 - added some more checks for text length. Cleaned up some mvwaddnstrs that
681 could be written more simply as waddnstrs.
682 edit_refresh():
683 - Removed check for temp == filebot, it is now treated like any other line.
684 Fixes a bug where selected text on the last line shows normally.
685 xpt():
686 - Removed an extra computation for tabs variable that was incorrect.
687 xplustabs():
688 - Since xpt now actualy works, this func is now just a wrapper for
689 xpt(current, current_x)
690- nano.1, nano.1.html:
691 - Added -l option to man pages.
692- configure.in:
693 - New option --enable-tiny, #defines NANO_SMALL in config.h.
694 Disables call to gettext in functions and other i18n stuff in
695 nano.c, the detailed help mode, the resize functions, and the
696 justify code which no one ever uses.
697 - New option --with-slang. Enables slang libraries instead of
698 ncurses, requires slcurses.h for wrapper functions. (Based
699 on patches for 0.8.7 by Glenn McGrath).
700
701nano-0.9.2 - 04/15/2000
702- This release just fixes the serious segfault problem if nano is
703 invoked any way other than using the absolute path. The bug was
704 in the new code for checking whether nano is invoked as pico.
705
706nano-0.9.1 - 04/14/2000
707- Added pico compatibility for ^T when in search or switch to switch
708 to the opposite function. Added one to REPLACE_LIST_LEN and
709 WHEREIS_LIST_LEN in nano.h, new args to sc_init_one in global.c and
710 new strings that will have to be gettex()ed. New argument 'replacing'
711 to search_init(). Handlers in do_replace and do_search().
712- New write code, now follows symbolic links instead of replacing them
713 with the new file. New option (-l, --nofollow) to enable the old
714 (incorrect, but secure) behavior (Adam Rogoyski).
715- nano.c:
716 do_wrap():
717 - Fixed another bug relating to wrapping, and which would cause
718 a segfault *sigh*.
719 do_replace():
720 - Incremented current_x by the length of the replacement
721 text inside the main repalce loop. Fixes bug #15.
722 add_marked_sameline():
723 - New function, handles marked text when start & end of marker is
724 on one line, also supports most marked text when cursor > COLS.
725 main():
726 - Code to check if nano is invoked as 'pico', and if so
727 automatically set pico_msgs (Robert Jones).
728
729nano-0.9.0 - 04/07/2000
730- nano.1, nano.1.html: Updated man page with my email address and homepage.
731- winio.c:
732 reset_cursor(), update_line():
733 - Changed update algorithm for x value to (COLS - 7) multiple when x
734 value > (COLS - 2).
735- edit_refresh():
736 - Removed inner loop code, now calls update_line() for each line
737 in question, MUCH nicer.
738- xplustabs(), xpt():
739 - Removed redundant increment of tabs when collumn no % 8 == 0.
740 - Added check for data[i] < 32, most of such bits are 2 chars wide.
741- update_line():
742 - Fixed a stupid call to strlenpt with col when we should have
743 been using actual_col. Ugh.
744
745nano-0.8.9 - 03/22/2000
746- nano.c:
747 empty_line(), no_spaces(), justify_format(), do_justify():
748 Actually added these (screwup applying patch).
749 do_justify(): Added call to set_modified().
750
751nano-0.8.8 - 03/12/2000
752- Preliminary internationalization support. Many many functions modified
753 to use gettext (via _() macro). es.po file included. (Jordi Mallach)
754 New dirs po/ and intl/, changes to configure.in and Automake.am to
755 support i18n.
756- nano.c:
757 includes: Ddded sys/param.h and limits.h. (Adam Rogoyski).
758 statics: Changed some things that were not necessarily static
759 (Adam Rogoyski).
760 nrealloc(): New function, similar to nmalloc(). Changed calls from
761 realloc() to nrealloc (Adam Rogoyski).
762 empty_line(), no_spaces(), justify_format(), do_justify():
763 New functions for justify function (Adam Rogoyski).
764- winio.c:
765 blank_edit(): Added wrefresh call to edit so that screen updates (like
766 on ^L) actually work.
767 xplustabs(), xpt(), strlenpt(): Fixed off-by-one buglets (Adam Rogoyski).
768
769nano-0.8.7 - 03/01/2000
770- main.c:
771 do_wrap(): Better fix for segfaults, and fix for lisnes being wrapped
772 to a single character on one line when no good place to
773 break the line exists, and for wrapping lines longer than COLS.
774- nano.1.html:
775 Html version of man page, now included in dist. For
776 the benefit of nano packages in Linux distributions.
777
778nano-0.8.6 - 02/24/2000
779- gobal.c:
780 shortcut_init():
781 Added shortcuts for goto_line and do_replace when using
782 pico_msgs. Oops.
783- nano.c:
784 statics: Changed fill back to 0 from 71 by default (Adam Rogoyski).
785 do_wrap(): Added check for backing up past tabs, which we shouldnt do.
786 Removed check for backing up past spaces first.
787 main(): Added for loop to check for alt keys instead of hard list.
788 do_enter(): Fix for bug #14, added call to reset_cursor and messed
789 up do_char quite a bit.
790 version(): Added time and date stamp for compile on version message.
791 Added mail and web page info.
792- README: Updated mailing list info.
793
794nano-0.8.5 - 02/18/2000
795- nano.c:
796 main(): Finally fixed tilde being input on page up/down keys in
797 certain terminal types. Fix was input 26->91->5[34] check
798 for 126, if so make the kbinput PAGE UP/DOWN, else unget
799 the keystroke and continue. Added #include <ioctl.h> for
800 ioctl call.
801 handle_hup():
802 Handler for hangup signal. Belated include of patch from
803 Tim Sherwood.
804- winio.c:
805 edit_refresh():
806 Temporary fix for selecting text when temp == current.
807 edit_refresh() is now unmanagably complex, and must be
808 revamped.
809 check_statblank():
810 Added check for constupdate, makes things less choppy
811 (Adam Rogoyski)
812
813nano-0.8.4 - 02/11/2000
814- Moved global variables that were only (or mostly) used in one file into
815 its proper file as a static. Affects cut.c, nano.c, global.c (Andy Kahn).
816- global.c:
817 shortcut_init():
818 Removed redundant NANO_CONTROL_H from backspace shortcut,
819 added char 127 which should have been there.
820- nano.c:
821 main(): Fix for loops looping until MAIN_LEN, added -1 to stop
822 segfaults (Adam Rogoyski).
823- Makefile.am: Added all source filenames (Adam Rogoyski).
824- nano.1: Fixed mail addressed and added mailing list address.
825- README: Updated my email address and the nano web page.
826
827nano-0.8.3 - 02/08/2000
828- New pico mode (-p, --pico), toggles (more) compatibility with the
829 Pico messages displayed in the shortcut list. Note that there are still
830 small differences in this mode.
831- nano.h: New shortcut struct format, for the benefit of i18n and
832 our help menu. Removed shortcut message macros, they are
833 now all in shortcut_init in global.c.
834- nano.c:
835 do_wrap(): Removed resetting of current_x when we are in fact
836 wrapping to the next line, fixes a bug in -i mode.
837 do_enter():
838 Rewrote the autoindent mode code to be a lot less pretty,
839 but a lot more magical.
840 main():
841 Removed case for ignoring char 126 (~). That's kind of
842 important, we'll have to fix handling that sequence when
843 pageing up/down on a terminal some other way... Revamped
844 main switch loop in much snazzier fashion based on the
845 shortcut list.
846- winio.c:
847 New function display_main_list. Affects all functions
848 that used to call bottombars() with main_list. Added
849 because we now only call bottombars with the macro
850 MAIN_VISIBLE instead of MAIN_LIST_LEN, because of the
851 changes to the main_list shortcut list (see global.c below).
852 New function do_help, our preliminary dynamic help system.
853- Many many funcs:
854 Changed from int to void to allow one uniform type to call
855 from the shortcut struct. Also a few functions that do
856 not simple have void argument have new functions called
857 funcname_void(void) to be called from the shortcut list.
858 do_cut_text and do_uncut_text were changed to void
859 arguments because they were never called with a filestruct
860 other than *current anyway.
861- global.c:
862 Shortcut list main_list was expanded to cover all
863 shortcuts that could be caught in the main loop.
864 Consequently there is a new macro MAIN_VISIBLE which tells
865 how many items in the main list to actually show.
866
867nano-0.8.2 - 02/02/2000
868- Added initial mouse (-m, --mouse) support. New global variable
869 use_mouse. (Adam Rogoyski)
870
871- nano.c: Set intial value of fill to COLS - 8 rather than just 72
872 regardless. (Adam Rogoyski).
873 do_delete():
874 Deleted call to do_backspace() when on the end of a line,
875 because it won't update the line properly.
876 do_backspace():
877 Removed unnecessary pointer manipulation that was being
878 handled by unlink_node().
879 open_file():
880 Added check for trying to open a directory (currently we
881 segfault on this). Bug pointed out by Chad Ziccardi.
882
883nano-0.8.1 - 01/28/2000
884- Implemented Pico's -r (fill) mode, command line flag -r or --fill. New
885 global variable fill, affects check_wrap(), do_wrap(), main(), usage(),
886 global.c and proto.h.
887- nano.c:
888write_file(): Added (incredibly) necessary check for EPERM when
889 link() fails. This allows us to actually save
890 files via rename() on filesystems that dont
891 support hard links (AIEEEEEE).
892do_goto():
893 Fixed a stupid mistake where we were calling
894 bottombars() with replace_list instead of goto_list.
895- nano.h:
896 New char *help in shortcut structure for help
897 feature. Added NANO_*_MSG and NANO_*_HELP #deifnes
898 for help function and i18n.
899- global.c:
900 New functions shortcut_init (called in nano.c) and
901 sc_init_one() to initialize the shortcuts without
902 using {}s (for i18n).
903
904nano-0.8.0 - 01/25/2000
905- View flag (-v, --view) implemented. Global variable view_mode, affects
906 main loop of nano.c and new_file(). (me)
907- nano.c:
908 split checks for TERMIOS_H and TERMIO_H up so we
909 can (theoretically) include them both, which is good.
910handle_sigwinch():
911 Added check for ncurses.h. (Andy Kahn)
912do_spell():
913 We now only try ispell because we don't as of yet
914 handle the 'spell' program the right way, now that
915 I finally know what the right way is =-). Added
916 call to edit_update(fileage) to stop segfaults.
917global_init():
918 Added initialization of edit* filestruct pointers
919 to stop segfaults on spell check.
920usage():
921 Check for getopt_long, and if no leave out the
922 GNU options everyone seems to love so much (Andy Kahn)
923main():
924 Added checks for getopt_long (Andy Kahn)
925 We ignore character 126 because it gets put into
926 the buffer when we page up/down on a vt terminal.
927write_file():
928 Fixes for umask (Adam Rogoyski). Renamed tmpfile
929 variable to tmp. Documented the tmp opttion
930 better in the function comments. Fixed my
931 stupidly commented out check for tmp on setting
932 umask which I really like =>
933- nano.h:
934 Made desc variable in shortcut struct a pointer
935 instead of a fixed-length string.
936- utils.c:
937 Fixed check for config.h before nano.h.
938- configure.in:
939 New checks for getopt_long, getopt.h, removed
940 CFLAGS and LDFLAGS changes. Gonna have to run
941 strip manually now =-) (Andy Kahn)
942 Added check for HAVE_WRESIZE, new file acconfig.h (me).
943
944nano-0.7.9 - 01/24/2000
945- New autoindent feature. Command flag 'i' or '--autoindent'. New
946 function do_char() to clean up character output, global
947 variable autoindent in global.c. (Graham Mainwaring)
948- New flag 't' or '--tempfile', like Pico's -t mode, automatically saves
949 files on exit without prompting. Affects do_writeout(). Also
950 do_writeout() now takes a parameter for if exiting.
951 Global variable temp_opt in global.c (Graham Mainwaring)
952- Preliminary spell program support. Added command flag '-s' or
953 '--speller' for alternative speller command. Added function do_spell()
954 and exit_spell() to nano.c. New global variable alt_speller.
955- nano.c:
956 main(): We now ignore input of decimal 410 because these get entered
957 when we resize the screen. Sorted options in getopt()
958 switch statement.
959 usage(): Sorted options and changed tabs to make room for -s option.
960 write_file(): Now takes a second parameter 'tmpfile', uses mask 0600 and
961 doesn't print the number of lines written on the statusbar.
962 global_init():
963 Added more initializations to globals to support do_spell().
964
965nano-0.7.8 - 01/23/2000
966- Stubbed justify function. Affects main() in nano.c and nano.h defines.
967- Added Fkey equivalents for Pico compatibilty. Affects nano.h defines
968 and main() in nano.c
969- Removed redundant reset_cursor() calls from the blank() routines.
970- nano.c:
971 main(): Fixed typo in main while loop for NANO_ALT_REPLACE_KEY.
972 Removed check for isprint() characters in main while loop
973 for people with odd character sets *shrug*. Added some X
974 window F-key combos.
975 read_line(): New function, consolidates of most of the special
976 sections of the file reading code. (Rob Siemborski)
977 do_replace(): Many scattered fixes. (Rob Siemborski)
978 write_file(): Added check for empty filename.
979- winio.c:
980 nanogetstr(): Fixes for deleting at places other than the end of the
981 buffer, cut support. (Adam Rogoyski)
982 blank_edit(): New function, blanks edit buffer. Added call to it in
983 total_refresh().
984- configure: Checks for glib if snprintf of vsnprintf aren't available
985 (Andy Kahn). Changed warning message when no termcap lib
986 is found.
987
988nano-0.7.7 - 01/19/2000
989- Option '-v' for version moved to '-V', because -v is Pico's "read only"
990 mode (affects getopt() in main() and usage() function in nano.c
991- New flag -c, always show cursor position. Affects main() in nano.c and
992 statusbar() in winio.c
993- Option '-x' doesn't show help window at the bottom of the editor.
994 New variable no_help in nano.h and proto.h, affects main(), usage(),
995 and global_init() in nano.c, blank_bottombars(), clear_bottomwin(),
996 bottombars(), and do_yesno() in winio.c (I had to apply this patch by
997 hand =P) (Adam Rogoyski)
998- nano.c:
999 handle_sigwinch(): New function (Adam Rogoyski), handles resizing.
1000 page_up(), page_down():
1001 - New functions. We now set the cursor at the top right corner,
1002 not at the center line, and page up and down a full screen
1003 rather than a half screen. Original functions renamed to
1004 page_up_center() and page_down_center().
1005 main():
1006 - Added check for keystroke key sequence 407 or NANO_CONTROL_Z
1007 in main while loop because suspend mode was broken. This should
1008 fix it, at least for now.
1009 - Added long option support (By popular harassment ;-) - Added
1010 #include for getopt.h, changed getopt() to getopt_long().
1011 Options added so far: --version (-V), --nowrap (-w), --suspend
1012 (-z), --help (-h), --nohelp (-x).
1013 - Rewrote signal statements (Adam Rogoyski)
1014
1015nano 0.7.6 - 01/15/2000
1016- New ChangeLog format
1017- nano.c:
1018 main(): Bound CONTROL_H to backspace (oops)
1019 Added more Alt-[-key combinations, for page up & down.
1020 read_bytes(): New function (Adam Rogoyski)
1021 read_file(): Optimizations - malloc()s *buf a little at a time rather
1022 than one huge buffer, and replaced the strcat at the end
1023 with an index variable. Added call to read_bytes().
1024 do_next_word(): New function, binding is control-space (0) (me)
1025
1026- winio.c:
1027 bottombars(): Fixed non-expanding shortcut keys at bottom of screen.
1028 (formula is extra space needed = COLS / 6 - 13).
1029 actual_x() & strlenpt():
1030 Added bug#9 fix - when tabs % 8 == 0, we should only
1031 increment tabs by 1.
1032 titlebar(): Fixed overrun in titlebar on very long filenames.
1033
10340.7.5 Pico 'last line' feature added (Rob Siemborski & me). Eliminated
1035 writing a newline at EOF. do_cursorpos and do_replace are now not
1036 directly bound to signals but picked up as their control sequences
1037 in raw mode. Bug fix in do_backspace. Fixed bug #9 (woohoo!)
10380.7.4 Optimized (obfuscated?) edit_refresh. Malloc() calls checked for
1039 available memory, align bug fixed (Big Gaute).
1040
1041--- As of version 0.7.4 TIP is renamed to nano.
1042
10430.7.3 Fixed a double blank_statusbar() when jumping to first and last
1044 lines. Took out unnecessary updates in load_file. Bug fix in
1045 do_left. Missing updates to totlines, fixed bug #7 (last line not
1046 having a newline at the end doesnt get read, bugfix in do_replace
1047 with replace all, more/better comments (Robert Siemborski)
10480.7.2 Our first patch accepted into the source! configure fixes
1049 and optimizations (Erik Anderson). Added missing stdarg.h to winio.c.
1050 Bug fix in update_line for editing long lines. Fixed arguments
1051 being put into the filename when none is specified. Preliminary
1052 +line command argument function.
10530.7.1 configure tweak for better FreeBSD support. Removed refresh() from
1054 edit_refresh to stop cursor "jumping" during screen updates. This
1055 will probably cause a bug or two. Replace is now Alt-R (@R) and
1056 Goto line is Alt-G (@G), but they have control key aliases of ^\ and
1057 ^_ respectively. Made Control-F,B,N,P work like they do in Pico.
1058 Control-G will become the Help key, but for now is stubbed out.
10590.7.0 Fixed missing stdlib.h from cut.c. Fixed a few message bugs in
1060 findnextstr. Bound Control-D to Delete. Refixed segfault on zero
1061 length file. Added Esc-[-A,B,C,D cursor key sequences.
10620.6.9 Preliminary cursor position function. Split up tip.c more, made
1063 new files cut.c and winio.c. Fixed a bug in cut_marked_segment
1064 that was leaving out a character.
10650.6.8 By request, optchr in main() is now an int. Removed unneeded
1066 globals. Bound functions for next/prev page, and wrote functions
1067 do_home and do_end.
10680.6.7 Bugfix in do_uncut_text for totlines. Broke up open_file and
1069 created read_file. Implemented Insert File. Fixes in tipgetstr
1070 for erroneous keystrokes. Added leave_cursor arg to do_yesno().
10710.6.6 Fixes in do_search(), do_replace(), do_writeout, and do_exit() for
1072 aborted searches and more Pico-compatible messages. statusq() now
1073 returns -2 on a blank entry instead of -1. Bug fix in actual_x().
10740.6.5 More BSD compatibility. Fixed two bugs in do_uncut_text
1075 regarding buffers with filebot in them. Fixins in do_backspace
1076 and do_enter. Removed unused variables. Removed strip_newline.
10770.6.4 Took out the awful newlines from each string buffers. This will
1078 certainly cause more bugs. Fixes in do_exit(). Better empty file
1079 handling (I hope).
10800.6.3 Implemented ^E. Removed now unneeded wrapline from filestruct.
1081 do_enter() rewritten.
10820.6.2 Better default file permissions. Complete rewrite of do_wrap().
1083 Better handling of editing with cursor near COLS - 1.
10840.6.1 Starting to implement wrapping toggle. Fix for unhandled control
1085 codes being entered into the buffer. Bug fix in actual_x; more
1086 > COLS - 1 functionality, especially on lines with TABs. Fixed being
1087 locked into cutbuffer when cutting more than one marked screen of text.
10880.6.0 We have TABs!!! To do this, placewewant is now set to the actual
1089 width on the screen we want to be, not an index of current->data.
1090 New functions xplustabs and actual_x convert the actual place
1091 the cursor should be on the screen to and from the place in the
1092 string.
10930.5.5 Changed do_right to test do_down before setting current_x to 0,
1094 eliminiating the "looping" on the last line when holding the right
1095 arrow. Preliminary support for longer than COLS - 1 lines.
1096 Wrote do_delete.
10970.5.4 Fixed a big in total_update that wasn't repainting the screen properly.
1098 tipgetstr is much more messy but text is now more editable ;)
1099 Fixed crash on entering a new file, hopefully. Awful stub for tab
1100 handling, only in do_right() to save me some sanity.
11010.5.3 Added check for malloc.h. Implementing uncut from marker slowly.
1102 Fixed a few bugs in do_uncut when not uncutting from marked text.
1103 I would not trust your data with the mark code right now, but then
1104 we're not at version 1.0 yet so dont trust anything ;)
11050.5.2 Added reset_cursor() before end of update_line so cursor doesnt
1106 jump after each keystroke entered. Select text stubbed. Fixed
1107 a bug in total_refresh(). Setting a mark will hilight properly,
1108 but does not actually affect what gets put in the cutbuffer (yet).
11090.5.1 Writing a file out causes modified to be set back to 0. Good.
1110 Set_modified function written. Cut and uncut text now set
1111 modified when called.
11120.5.0 Half way there! Implemented write out, save function seems
1113 stable. Changed statusbar blank routing to not refresh, a separte
1114 program calls it and then refreshes. Made the program not clear
1115 the srceen on exit, just the bottom two lines (like Pico).
11160.4.2 Implemented replace all in replace function. Crude exit function
1117 (asks yes or no if modified but does not write to file).
11180.4.1 Implementing search & replace. Fixed crash on deleting at top of
1119 edit buffer. Implemented "timeout" of statusbar messages.
1120 Implemented ^A and ^E (beginning and end of line).
11210.4.0 Split code into global.c and proto.h to allow for better multiple
1122 file handling. Added #defines for the majority of the shortcut
1123 kets in tip.h for easy modification.
11240.3.1 Write edit_refresh which doesn't move the screen around, just
1125 updates what's there already. do_wrap() and do_enter() added.
11260.3.0 Preliminary cutbuffer (cut and uncut) support.
11270.2.7 Check for Modification added. do_search() works.
11280.2.5 Rewrite of file data struct.
11290.2 Read in data to buffer, bound keystrokes to stub functions,
1130 initial cursor movement on screen. Initial autoconf support.
11310.1 Initial program setup w/ncurses
Chris Allegrettac87a4112000-08-07 02:16:24 +00001132
1133$Id$