Make help lines show "Close" again when more than one buffer is open.
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@4816 35c25a1d-7b9e-4130-9fde-d3aeb78583b8master
parent
20b1e92857
commit
11d76449d2
|
@ -2,6 +2,8 @@
|
||||||
* src/global.c (add_to_funcs): Add a pointer to the tail of the
|
* src/global.c (add_to_funcs): Add a pointer to the tail of the
|
||||||
functions list, to simplify and speed up adding new items. And
|
functions list, to simplify and speed up adding new items. And
|
||||||
make use of it to remember the location of the Uncut item.
|
make use of it to remember the location of the Uncut item.
|
||||||
|
* src/global.c, src/files.c (make_new_buffer, close_buffer): Make
|
||||||
|
help lines show "Close" again when more than one buffer is open.
|
||||||
|
|
||||||
2014-04-24 Benno Schulenberg <bensberg@justemail.net>
|
2014-04-24 Benno Schulenberg <bensberg@justemail.net>
|
||||||
* doc/faq.html: Update a few URLs, delete some obsolete ones, update
|
* doc/faq.html: Update a few URLs, delete some obsolete ones, update
|
||||||
|
|
|
@ -47,6 +47,8 @@ void make_new_buffer(void)
|
||||||
} else {
|
} else {
|
||||||
splice_opennode(openfile, make_new_opennode(), openfile->next);
|
splice_opennode(openfile, make_new_opennode(), openfile->next);
|
||||||
openfile = openfile->next;
|
openfile = openfile->next;
|
||||||
|
/* More than one file open, show Close in help lines. */
|
||||||
|
exitfunc->desc = close_tag;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Initialize the new buffer. */
|
/* Initialize the new buffer. */
|
||||||
|
@ -485,7 +487,9 @@ bool close_buffer(void)
|
||||||
/* Close the file buffer we had open before. */
|
/* Close the file buffer we had open before. */
|
||||||
unlink_opennode(openfile->prev);
|
unlink_opennode(openfile->prev);
|
||||||
|
|
||||||
display_main_list();
|
/* If only one buffer is open now, show Exit in the help lines. */
|
||||||
|
if (openfile == openfile->next)
|
||||||
|
exitfunc->desc = exit_tag;
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
14
src/global.c
14
src/global.c
|
@ -172,6 +172,8 @@ subnfunc *allfuncs = NULL;
|
||||||
/* Pointer to the start of the functions list. */
|
/* Pointer to the start of the functions list. */
|
||||||
subnfunc *tailfunc;
|
subnfunc *tailfunc;
|
||||||
/* Pointer to the last function in the list. */
|
/* Pointer to the last function in the list. */
|
||||||
|
subnfunc *exitfunc;
|
||||||
|
/* Pointer to the special Exit/Close item. */
|
||||||
subnfunc *uncutfunc;
|
subnfunc *uncutfunc;
|
||||||
/* Pointer to the special Uncut/Unjustify item. */
|
/* Pointer to the special Uncut/Unjustify item. */
|
||||||
|
|
||||||
|
@ -460,7 +462,9 @@ void print_sclist(void)
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* TRANSLATORS: Try to keep the next two strings at most 10 characters. */
|
/* TRANSLATORS: Try to keep the next four strings at most 10 characters. */
|
||||||
|
const char *exit_tag = N_("Exit");
|
||||||
|
const char *close_tag = N_("Close");
|
||||||
const char *uncut_tag = N_("Uncut Text");
|
const char *uncut_tag = N_("Uncut Text");
|
||||||
#ifndef DISABLE_JUSITIFY
|
#ifndef DISABLE_JUSITIFY
|
||||||
const char *unjust_tag = N_("Unjustify");
|
const char *unjust_tag = N_("Unjustify");
|
||||||
|
@ -473,8 +477,7 @@ const char *whereis_next_tag = N_("WhereIs Next");
|
||||||
/* Initialize the list of functions and the list of shortcuts. */
|
/* Initialize the list of functions and the list of shortcuts. */
|
||||||
void shortcut_init(void)
|
void shortcut_init(void)
|
||||||
{
|
{
|
||||||
/* TRANSLATORS: Try to keep the next seven strings at most 10 characters. */
|
/* TRANSLATORS: Try to keep the next six strings at most 10 characters. */
|
||||||
const char *exit_tag = N_("Exit");
|
|
||||||
const char *whereis_tag = N_("Where Is");
|
const char *whereis_tag = N_("Where Is");
|
||||||
const char *prev_line_tag = N_("Prev Line");
|
const char *prev_line_tag = N_("Prev Line");
|
||||||
const char *next_line_tag = N_("Next Line");
|
const char *next_line_tag = N_("Next Line");
|
||||||
|
@ -666,10 +669,9 @@ void shortcut_init(void)
|
||||||
N_("Cancel"), IFSCHELP(nano_cancel_msg), FALSE, VIEW);
|
N_("Cancel"), IFSCHELP(nano_cancel_msg), FALSE, VIEW);
|
||||||
|
|
||||||
add_to_funcs(do_exit, MMAIN,
|
add_to_funcs(do_exit, MMAIN,
|
||||||
#ifndef DISABLE_MULTIBUFFER
|
|
||||||
openfile != NULL && openfile != openfile->next ? N_("Close") :
|
|
||||||
#endif
|
|
||||||
exit_tag, IFSCHELP(nano_exit_msg), FALSE, VIEW);
|
exit_tag, IFSCHELP(nano_exit_msg), FALSE, VIEW);
|
||||||
|
/* Remember the entry for Exit, to be able to replace it with Close. */
|
||||||
|
exitfunc = tailfunc;
|
||||||
|
|
||||||
#ifndef DISABLE_BROWSER
|
#ifndef DISABLE_BROWSER
|
||||||
add_to_funcs(do_exit, MBROWSER, exit_tag, IFSCHELP(nano_exitbrowser_msg), FALSE, VIEW);
|
add_to_funcs(do_exit, MBROWSER, exit_tag, IFSCHELP(nano_exitbrowser_msg), FALSE, VIEW);
|
||||||
|
|
|
@ -66,6 +66,8 @@ extern int whitespace_len[2];
|
||||||
extern undo_type last_action;
|
extern undo_type last_action;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
extern const char *exit_tag;
|
||||||
|
extern const char *close_tag;
|
||||||
extern const char *uncut_tag;
|
extern const char *uncut_tag;
|
||||||
#ifndef DISABLE_JUSTIFY
|
#ifndef DISABLE_JUSTIFY
|
||||||
extern const char *unjust_tag;
|
extern const char *unjust_tag;
|
||||||
|
@ -101,6 +103,7 @@ extern char *alt_speller;
|
||||||
|
|
||||||
extern sc *sclist;
|
extern sc *sclist;
|
||||||
extern subnfunc *allfuncs;
|
extern subnfunc *allfuncs;
|
||||||
|
extern subnfunc *exitfunc;
|
||||||
extern subnfunc *uncutfunc;
|
extern subnfunc *uncutfunc;
|
||||||
#ifndef DISABLE_COLOR
|
#ifndef DISABLE_COLOR
|
||||||
extern syntaxtype *syntaxes;
|
extern syntaxtype *syntaxes;
|
||||||
|
|
Loading…
Reference in New Issue