]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - progs/tabs.c
ncurses 6.2 - patch 20210904
[ncurses.git] / progs / tabs.c
index d7877baff7a5499c8127bf21cc1856cf2dbd1a7f..4a6eb2415e7c973d0ce13d7eb3f93fbfa19055d1 100644 (file)
@@ -1,5 +1,6 @@
 /****************************************************************************
 /****************************************************************************
- * Copyright (c) 2008-2015,2016 Free Software Foundation, Inc.              *
+ * Copyright 2020,2021 Thomas E. Dickey                                     *
+ * Copyright 2008-2016,2017 Free Software Foundation, Inc.                  *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
  * copy of this software and associated documentation files (the            *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
  * copy of this software and associated documentation files (the            *
@@ -38,9 +39,9 @@
 #include <progs.priv.h>
 #include <tty_settings.h>
 
 #include <progs.priv.h>
 #include <tty_settings.h>
 
-MODULE_ID("$Id: tabs.c,v 1.38 2016/12/31 15:10:52 tom Exp $")
+MODULE_ID("$Id: tabs.c,v 1.47 2021/04/03 23:00:00 tom Exp $")
 
 
-static void usage(void) GCC_NORETURN;
+static GCC_NORETURN void usage(void);
 
 const char *_nc_progname;
 static int max_cols;
 
 const char *_nc_progname;
 static int max_cols;
@@ -74,7 +75,7 @@ do_tabs(int *tab_list)
            }
        }
        if (stop <= max_cols) {
            }
        }
        if (stop <= max_cols) {
-           tputs(tparm(set_tab, stop), 1, putch);
+           tputs(TIPARM_1(set_tab, stop), 1, putch);
            last = stop;
        } else {
            break;
            last = stop;
        } else {
            break;
@@ -145,7 +146,6 @@ static void
 print_ruler(int *tab_list)
 {
     int last = 0;
 print_ruler(int *tab_list)
 {
     int last = 0;
-    int stop;
     int n;
 
     /* first print a readable ruler */
     int n;
 
     /* first print a readable ruler */
@@ -163,7 +163,8 @@ print_ruler(int *tab_list)
 
     /* now, print '*' for each stop */
     for (n = 0, last = 0; (tab_list[n] > 0) && (last < max_cols); ++n) {
 
     /* now, print '*' for each stop */
     for (n = 0, last = 0; (tab_list[n] > 0) && (last < max_cols); ++n) {
-       stop = tab_list[n];
+       int stop = tab_list[n];
+
        while (++last < stop) {
            if (last <= max_cols) {
                putchar('-');
        while (++last < stop) {
            if (last <= max_cols) {
                putchar('-');
@@ -209,11 +210,11 @@ static char *
 trimmed_tab_list(const char *source)
 {
     char *result = strdup(source);
 trimmed_tab_list(const char *source)
 {
     char *result = strdup(source);
-    int ch, j, k, last;
-
     if (result != 0) {
     if (result != 0) {
+       int j, k, last;
+
        for (j = k = last = 0; result[j] != 0; ++j) {
        for (j = k = last = 0; result[j] != 0; ++j) {
-           ch = UChar(result[j]);
+           int ch = UChar(result[j]);
            if (isspace(ch)) {
                if (last == '\0') {
                    continue;
            if (isspace(ch)) {
                if (last == '\0') {
                    continue;
@@ -303,9 +304,11 @@ legal_tab_list(const char *tab_list)
 
     if (tab_list != 0 && *tab_list != '\0') {
        if (comma_is_needed(tab_list)) {
 
     if (tab_list != 0 && *tab_list != '\0') {
        if (comma_is_needed(tab_list)) {
-           int n, ch;
+           int n;
+
            for (n = 0; tab_list[n] != '\0'; ++n) {
            for (n = 0; tab_list[n] != '\0'; ++n) {
-               ch = UChar(tab_list[n]);
+               int ch = UChar(tab_list[n]);
+
                if (!(isdigit(ch) || ch == ',' || ch == '+')) {
                    fprintf(stderr,
                            "%s: unexpected character found '%c'\n",
                if (!(isdigit(ch) || ch == ',' || ch == '+')) {
                    fprintf(stderr,
                            "%s: unexpected character found '%c'\n",
@@ -387,7 +390,7 @@ main(int argc, char *argv[])
 
     _nc_progname = _nc_rootname(argv[0]);
 
 
     _nc_progname = _nc_rootname(argv[0]);
 
-    fd = save_tty_settings(&tty_settings);
+    fd = save_tty_settings(&tty_settings, FALSE);
 
     if ((term_name = getenv("TERM")) == 0)
        term_name = "ansi+tabs";
 
     if ((term_name = getenv("TERM")) == 0)
        term_name = "ansi+tabs";
@@ -458,7 +461,7 @@ main(int argc, char *argv[])
                    if (*++option != '\0') {
                        term_name = option;
                    } else {
                    if (*++option != '\0') {
                        term_name = option;
                    } else {
-                       term_name = argv[n++];
+                       term_name = argv[n];
                        option--;
                    }
                    option += ((int) strlen(option)) - 1;
                        option--;
                    }
                    option += ((int) strlen(option)) - 1;