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