[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Nano-devel] [PATCH 02/15] options: add -f, --finalnewline, the counterp
From: |
Benno Schulenberg |
Subject: |
[Nano-devel] [PATCH 02/15] options: add -f, --finalnewline, the counterpart of --nonewlines |
Date: |
Thu, 31 Jan 2019 17:49:28 +0100 |
---
src/nano.c | 16 ++++++++++++----
src/nano.h | 3 ++-
2 files changed, 14 insertions(+), 5 deletions(-)
diff --git a/src/nano.c b/src/nano.c
index a2d9e6db..839afa47 100644
--- a/src/nano.c
+++ b/src/nano.c
@@ -800,8 +800,6 @@ void usage(void)
#endif
print_opt("-K", "--rawsequences",
N_("Fix numeric keypad key confusion
problem"));
- print_opt("-L", "--nonewlines",
- N_("Don't add newlines to the ends of
files"));
#ifdef ENABLED_WRAPORJUSTIFY
print_opt("-M", "--trimblanks",
N_("Trim tail spaces when
hard-wrapping"));
@@ -850,6 +848,7 @@ void usage(void)
print_opt("-c", "--constantshow", N_("Constantly show cursor
position"));
print_opt("-d", "--rebinddelete",
N_("Fix Backspace/Delete confusion
problem"));
+ print_opt("-f", "--finalnewline", N_("Ensure that text ends with a
newline"));
#ifdef ENABLE_BROWSER
if (!ISSET(RESTRICTED))
print_opt("-g", "--showcursor", N_("Show cursor in file browser
& help text"));
@@ -1976,6 +1975,7 @@ int main(int argc, char **argv)
#endif
{"constantshow", 0, NULL, 'c'},
{"rebinddelete", 0, NULL, 'd'},
+ {"finalnewline", 0, NULL, 'f'},
#ifdef ENABLE_BROWSER
{"showcursor", 0, NULL, 'g'},
#endif
@@ -2081,7 +2081,7 @@ int main(int argc, char **argv)
while ((optchr =
getopt_long(argc, argv,
-
"ABC:DEFGHIKLMNOPQ:RST:UVWX:Y:Zabcdghiklmno:pr:s:tuvwxyz$",
+
"ABC:DEFGHIKLMNOPQ:RST:UVWX:Y:Zabcdfghiklmno:pr:s:tuvwxyz$",
long_options, NULL)) != -1) {
switch (optchr) {
#ifndef NANO_TINY
@@ -2127,7 +2127,7 @@ int main(int argc, char **argv)
SET(RAW_SEQUENCES);
break;
case 'L':
- SET(NO_NEWLINES);
+ UNSET(FINAL_NEWLINE);
break;
#ifdef ENABLED_WRAPORJUSTIFY
case 'M':
@@ -2205,6 +2205,9 @@ int main(int argc, char **argv)
case 'd':
SET(REBIND_DELETE);
break;
+ case 'f':
+ SET(FINAL_NEWLINE);
+ break;
case 'g':
SET(SHOW_CURSOR);
break;
@@ -2399,6 +2402,11 @@ int main(int argc, char **argv)
SET(NO_WRAP);
#endif
+ if (ISSET(FINAL_NEWLINE))
+ UNSET(NO_NEWLINES);
+ else
+ SET(NO_NEWLINES);
+
/* If the user wants bold instead of reverse video for hilited text...
*/
if (ISSET(BOLD_TEXT))
hilite_attribute = A_BOLD;
diff --git a/src/nano.h b/src/nano.h
index 02290695..5dc5bd94 100644
--- a/src/nano.h
+++ b/src/nano.h
@@ -541,7 +541,8 @@ enum
AT_BLANKS,
AFTER_ENDS,
LET_THEM_ZAP,
- BREAK_LONG_LINES
+ BREAK_LONG_LINES,
+ FINAL_NEWLINE
};
/* Flags for the menus in which a given function should be present. */
--
2.19.2
- [Nano-devel] [PATCH 01/15] options: add -b, --breaklonglines, the counterpart of --nowrap, Benno Schulenberg, 2019/01/31
- [Nano-devel] [PATCH 02/15] options: add -f, --finalnewline, the counterpart of --nonewlines,
Benno Schulenberg <=
- [Nano-devel] [PATCH 03/15] options: add -j, --jumpyscrolling, the counterpart of --smooth, Benno Schulenberg, 2019/01/31
- [Nano-devel] [PATCH 04/15] options: add -e, --emptyline, the counterpart of --morespace, Benno Schulenberg, 2019/01/31
- [Nano-devel] [PATCH 05/15] rcfile: add the options that correspond to -b, -f, -j, and -e, Benno Schulenberg, 2019/01/31
- [Nano-devel] [PATCH 06/15] options: when a nanorc unsets an old flag, set the corresponding new flag, Benno Schulenberg, 2019/01/31
- [Nano-devel] [PATCH 07/15] options: let --fill no longer imply automatic hard-wrapping, Benno Schulenberg, 2019/01/31
- [Nano-devel] [PATCH 08/15] docs: stop saying that --fill switches on automatic hard-wrapping, Benno Schulenberg, 2019/01/31
- [Nano-devel] [PATCH 09/15] docs: describe the four new options (-b, -f, -j, -e) [*incomplete*], Benno Schulenberg, 2019/01/31
- [Nano-devel] [PATCH 10/15] options: warn when -L, -O, -S, or -w are given, and ignore them, Benno Schulenberg, 2019/01/31
- [Nano-devel] [PATCH 11/15] tweaks: switch from referencing NO_WRAP to referencing BREAK_LONG_LINES, Benno Schulenberg, 2019/01/31
- [Nano-devel] [PATCH 12/15] tweaks: switch from referencing NO_NEWLINES to referencing FINAL_NEWLINE, Benno Schulenberg, 2019/01/31