diff options
Diffstat (limited to 'lib-src')
-rw-r--r-- | lib-src/ebrowse.c | 4 | ||||
-rw-r--r-- | lib-src/emacsclient.c | 4 | ||||
-rw-r--r-- | lib-src/etags.c | 35 | ||||
-rw-r--r-- | lib-src/hexl.c | 7 | ||||
-rw-r--r-- | lib-src/make-docfile.c | 4 | ||||
-rw-r--r-- | lib-src/movemail.c | 49 | ||||
-rw-r--r-- | lib-src/ntlib.c | 4 | ||||
-rw-r--r-- | lib-src/ntlib.h | 5 | ||||
-rw-r--r-- | lib-src/pop.c | 4 | ||||
-rw-r--r-- | lib-src/pop.h | 4 | ||||
-rw-r--r-- | lib-src/profile.c | 4 | ||||
-rw-r--r-- | lib-src/update-game-score.c | 4 |
12 files changed, 93 insertions, 35 deletions
diff --git a/lib-src/ebrowse.c b/lib-src/ebrowse.c index cb09ab80879..c59181f9464 100644 --- a/lib-src/ebrowse.c +++ b/lib-src/ebrowse.c @@ -6,8 +6,8 @@ This file is part of GNU Emacs. GNU Emacs is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. +the Free Software Foundation, either version 3 of the License, or (at +your option) any later version. GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of diff --git a/lib-src/emacsclient.c b/lib-src/emacsclient.c index c7cef8a2b20..dd66d34da70 100644 --- a/lib-src/emacsclient.c +++ b/lib-src/emacsclient.c @@ -6,8 +6,8 @@ This file is part of GNU Emacs. GNU Emacs is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. +the Free Software Foundation, either version 3 of the License, or (at +your option) any later version. GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of diff --git a/lib-src/etags.c b/lib-src/etags.c index 796adaa5d05..a8221497393 100644 --- a/lib-src/etags.c +++ b/lib-src/etags.c @@ -35,8 +35,8 @@ This file is not considered part of GNU Emacs. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. +the Free Software Foundation, either version 3 of the License, or (at +your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -680,8 +680,8 @@ static const char *Objc_suffixes [] = static const char Objc_help [] = "In Objective C code, tags include Objective C definitions for classes,\n\ class categories, methods and protocols. Tags for variables and\n\ -functions in classes are named 'CLASS::VARIABLE' and 'CLASS::FUNCTION'.\n\ -(Use --help --lang=c --lang=objc --lang=java for full help.)"; +functions in classes are named 'CLASS::VARIABLE' and 'CLASS::FUNCTION'.\ +\n(Use --help --lang=c --lang=objc --lang=java for full help.)"; static const char *Pascal_suffixes [] = { "p", "pas", NULL }; @@ -972,11 +972,12 @@ Relative ones are stored relative to the output file's directory.\n"); in some languages."); puts ("-Q, --class-qualify\n\ - Qualify tag names with their class name in C++, ObjC, and Java.\n\ + Qualify tag names with their class name in C++, ObjC, Java, and Perl.\n\ This produces tag names of the form \"class::member\" for C++,\n\ \"class(category)\" for Objective C, and \"class.member\" for Java.\n\ For Objective C, this also produces class methods qualified with\n\ - their arguments, as in \"foo:bar:baz:more\"."); + their arguments, as in \"foo:bar:baz:more\".\n\ + For Perl, this produces \"package::member\"."); puts ("-r REGEXP, --regex=REGEXP or --regex=@regexfile\n\ Make a tag for each line matching a regular expression pattern\n\ in the following files. {LANGUAGE}REGEXP uses REGEXP for LANGUAGE\n\ @@ -4535,10 +4536,21 @@ Perl_functions (FILE *inf) continue; /* nothing found */ pos = strchr (sp, ':'); if (pos && pos < cp && pos[1] == ':') - /* The name is already qualified. */ - make_tag (sp, cp - sp, true, - lb.buffer, cp - lb.buffer + 1, lineno, linecharno); - else + { + /* The name is already qualified. */ + if (!class_qualify) + { + char *q = pos + 2, *qpos; + while ((qpos = strchr (q, ':')) != NULL + && qpos < cp + && qpos[1] == ':') + q = qpos + 2; + sp = q; + } + make_tag (sp, cp - sp, true, + lb.buffer, cp - lb.buffer + 1, lineno, linecharno); + } + else if (class_qualify) /* Qualify it. */ { char savechar, *name; @@ -4551,6 +4563,9 @@ Perl_functions (FILE *inf) lb.buffer, cp - lb.buffer + 1, lineno, linecharno); free (name); } + else + make_tag (sp, cp - sp, true, + lb.buffer, cp - lb.buffer + 1, lineno, linecharno); } else if (LOOKING_AT (cp, "use constant") || LOOKING_AT (cp, "use constant::defer")) diff --git a/lib-src/hexl.c b/lib-src/hexl.c index 833ea50b480..9a5ca7e1543 100644 --- a/lib-src/hexl.c +++ b/lib-src/hexl.c @@ -1,15 +1,14 @@ /* Convert files for Emacs Hexl mode. Copyright (C) 1989, 2001-2016 Free Software Foundation, Inc. -Author: Keith Gabryelski -(according to authors.el) +Author: Keith Gabryelski (according to authors.el) This file is not considered part of GNU Emacs. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. +the Free Software Foundation, either version 3 of the License, or (at +your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of diff --git a/lib-src/make-docfile.c b/lib-src/make-docfile.c index e266207ee9e..32e3817a465 100644 --- a/lib-src/make-docfile.c +++ b/lib-src/make-docfile.c @@ -7,8 +7,8 @@ This file is part of GNU Emacs. GNU Emacs is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. +the Free Software Foundation, either version 3 of the License, or (at +your option) any later version. GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of diff --git a/lib-src/movemail.c b/lib-src/movemail.c index eb1962a8f6b..90e683ed855 100644 --- a/lib-src/movemail.c +++ b/lib-src/movemail.c @@ -8,8 +8,8 @@ This file is part of GNU Emacs. GNU Emacs is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. +the Free Software Foundation, either version 3 of the License, or (at +your option) any later version. GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -799,6 +799,51 @@ mbx_write (char *line, int len, FILE *mbf) return fwrite (line, 1, len, mbf) == len && 0 <= fputc ('\n', mbf); } +#ifdef WINDOWSNT +/* Work around MS-Windows lack of support for %e or %T with a + special-purpose strftime that assumes the exact format that + movemail uses. */ +static size_t +movemail_strftime (char *s, size_t size, char const *format, + struct tm const *tm) +{ + char fmt[size + 6], *q; + const char *p; + + for (p = format, q = &fmt[0]; *p; ) + { + if (*p == '%' && p[1] == 'e') + { + memcpy (q, "%d", 2); + q += 2; + p += 2; + } + else if (*p == '%' && p[1] == 'T') + { + memcpy (q, "%H:%M:%S", 8); + q += 8; + p += 2; + } + else if (*p == '%' && p[1] == '%') + { + memcpy (q, p, 2); + q += 2; + p += 2; + } + else + *q++ = *p++; + } + + size_t n = strftime (s, size, fmt, tm); + char *mday = s + sizeof "From movemail Sun Jan " - 1; + if (*mday == '0') + *mday = ' '; + return n; +} +# undef strftime +# define strftime movemail_strftime +#endif + static bool mbx_delimit_begin (FILE *mbf) { diff --git a/lib-src/ntlib.c b/lib-src/ntlib.c index 931a3abdf93..4b25796830e 100644 --- a/lib-src/ntlib.c +++ b/lib-src/ntlib.c @@ -9,8 +9,8 @@ This file is part of GNU Emacs. GNU Emacs is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. +the Free Software Foundation, either version 3 of the License, or (at +your option) any later version. GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of diff --git a/lib-src/ntlib.h b/lib-src/ntlib.h index a0c0d43bdc6..b49da79f328 100644 --- a/lib-src/ntlib.h +++ b/lib-src/ntlib.h @@ -5,8 +5,8 @@ This file is part of GNU Emacs. GNU Emacs is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. +the Free Software Foundation, either version 3 of the License, or (at +your option) any later version. GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -102,4 +102,3 @@ int mkostemp (char * template, int flags); #undef _WINSOCK_H /* end of ntlib.h */ - diff --git a/lib-src/pop.c b/lib-src/pop.c index 983993461b5..74a6fc151aa 100644 --- a/lib-src/pop.c +++ b/lib-src/pop.c @@ -9,8 +9,8 @@ This file is part of GNU Emacs. GNU Emacs is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. +the Free Software Foundation, either version 3 of the License, or (at +your option) any later version. GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of diff --git a/lib-src/pop.h b/lib-src/pop.h index 4c67bdcb015..b8c21fcedb6 100644 --- a/lib-src/pop.h +++ b/lib-src/pop.h @@ -7,8 +7,8 @@ This file is part of GNU Emacs. GNU Emacs is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. +the Free Software Foundation, either version 3 of the License, or (at +your option) any later version. GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of diff --git a/lib-src/profile.c b/lib-src/profile.c index da6232afbca..0e603776049 100644 --- a/lib-src/profile.c +++ b/lib-src/profile.c @@ -8,8 +8,8 @@ This file is part of GNU Emacs. GNU Emacs is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. +the Free Software Foundation, either version 3 of the License, or (at +your option) any later version. GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of diff --git a/lib-src/update-game-score.c b/lib-src/update-game-score.c index 3803a31c817..7675e9bdd4c 100644 --- a/lib-src/update-game-score.c +++ b/lib-src/update-game-score.c @@ -8,8 +8,8 @@ This file is part of GNU Emacs. GNU Emacs is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. +the Free Software Foundation, either version 3 of the License, or (at +your option) any later version. GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of |