diff options
Diffstat (limited to 'app-editors/nano/files')
3 files changed, 98 insertions, 388 deletions
diff --git a/app-editors/nano/files/gentoo.nanorc-r1 b/app-editors/nano/files/gentoo.nanorc-r1 new file mode 100644 index 000000000000..100877dd16d4 --- /dev/null +++ b/app-editors/nano/files/gentoo.nanorc-r1 @@ -0,0 +1,98 @@ +## Syntax highlighting for Gentoo ebuilds/eclasses, +## and (further down) for Portage control files. + +syntax ebuild "\.e(build|class)$" +comment "#" + +linter bash -n + +## All the standard portage functions: +color brightgreen "(^|\<default_)src_(unpack|prepare|configure|compile|install|test)\>" +color brightgreen "^pkg_(config|nofetch|info|pretend|setup|(pre|post)(inst|rm))\>" +color brightgreen "\<default(_pkg_nofetch|_src_(unpack|prepare|configure|compile|test))?\>" +## Bash-related syntax: +color green "\<(break|case|continue|do|done|elif|else|esac|exit|fi|for|function|if|in|read|return|select|shift|then|time|until|while)\>" +color green "\<(declare|eval|exec|export|let|local)\>" +color green "[][{}():;|`$<>!=&\]" +color green "-[defhnrsuwxzL]\>" +color green "-(eq|ne|gt|lt|ge|le|ef|ot|nt)\>" + +## Variables... official portage ones in red, all others in bright red: +color brightred "\$[-0-9@*#?$!]" "\$[[:alpha:]_][[:alnum:]_]*" +color brightred "\$\{[#!]?([-@*#?$!]|[0-9]+|[[:alpha:]_][[:alnum:]_]*)(\[([[:digit:]]|@)+\])?(([#%/]|:?[-=?+])[^}]*\}|\[|\})" +color red "\<(EAPI|ARCH|HOMEPAGE|DESCRIPTION|IUSE|SRC_URI|LICENSE|SLOT|KEYWORDS|[BIPR]?DEPEND|PROVIDE|PROPERTIES|REQUIRED_USE|RESTRICT)\>" +color red "\<(S|E?D|T|PV|PF|P|PN|PR|PVR|A|CATEGORY|DISTDIR|FILESDIR|EPREFIX|(B|E|E?SYS)?ROOT|WORKDIR)\>" +color red "\<(T|TMPDIR|HOME)\>" +color red "\<(AS|C(PP|XX)?|FF|GO|LD|RUST)FLAGS\>" "\<C(HOST|TARGET|BUILD)\>" "\<(MERGE_TYPE|REPLACING_VERSIONS|REPLACED_BY_VERSION)\>" +color red "\<EBUILD_PHASE(_FUNC)?\>" +color red "\<QA_((TEXTRELS|EXECSTACK|WX_LOAD)(_[a-zA-Z_0-9]+)?|DT_HASH|PRESTRIPPED)\>" +color red "\<(PATCHES|(HTML_)?DOCS)\>" "\<WANT_(AUTO(CONF|MAKE)|LIBTOOL)\>" "\<AUTOTOOLS_(AUTO_)?DEPEND\>" "\<AM_OPTS\>" "\<AT_(NOEAUTOHEADER|NOEAUTOMAKE|NOELIBTOOLIZE|M4DIR)\>" +color red "\<ECONF_SOURCE\>" + +## Portage commands: +color magenta "\<(use(_(with|enable|if_iuse)|x|v)?|in_iuse) [!a-zA-Z0-9_+ -]*" "inherit.*" +color brightblue "\<e(apply(_user)?|begin|end|conf|install(docs)?|make|ninja|qmake5|ant|(qa)?warn|infon?|error|log|patch(_user)?|new(group|user))\>" +color brightblue "\<e(pause|beep|mktemp|(cvs|svn)_clean|punt_cxx)\>" "\<e(aclocal|auto(reconf|header|conf|make)|libtoolize)\>" +color brightblue "\<e(stack|shopts|umask)_(push|pop)\>" "\<get_libdir\>" "\<ver_(cut|rs|test)\>" "\<version_is_at_least\>" +color brightblue "\<make_desktop_entry\>" "\<unpack(_(makeself|pdv))?\>" +color brightblue "\<(assert|die|hasv?|inherit|nonfatal)\>" "\<(use(_(with|enable|if_iuse)|x|v)?|in_iuse)\>" "\<(has|best)_version\>" +color brightblue "\<(do|new)(ins|s?bin|doc|header|lib(\.so|\.a)?|man|info|exe|initd|confd|envd|pam|menu|icon)\>" +color brightblue "\<do(compress|dir|html|mo|strip|sym)\>" "\<keepdir\>" +color brightblue "\<prepall(docs|info|man|strip)?\>" "\<prep(info|lib|lib\.(so|a)|man|strip)\>" +color brightblue "\<(doc|ins|exe)?into\>" "\<f(owners|perms)\>" "\<(exe|ins|dir)opts\>" +color brightblue "\<add(read|write|predict|deny)\>" +### common eclasses +color brightblue "\<edo(b)?\>" +### flag-o-matic.eclass, toolchain-funcs.eclass +color brightblue "\<(all-flag-vars)\>" +color brightblue "\<(filter-(flags|lfs-flags|lto|mfpmath))\>" +color brightblue "\<strip-flags\>" +color brightblue "\<append-(cpp|c|cxx|f|lfs|ld)?flags\>" +color brightblue "\<replace-flags\>" "\<replace-cpu-flags\>" +color brightblue "\<is-(ld?)flagq?\>" +color brightblue "\<(append-atomic-flags|no-as-needed|raw-ldflags|append-libs|replace-sparc64-flags|get-flag|strip-unsupported-flags)\>" +color brightblue "\<tc-get(BUILD_)?(AR|AS|CC|CPP|CXX|DLLWRAP|F77|FC|GCJ|GO|LD|STRINGS|STRIP|NM|OBJCOPY|OBJDUMP|PKG_CONFIG|RANLIB|RC|READELF)\>" +color brightblue "\<test-flag(s)?-(CC|CXX|F77|FC|CCLD)\>" +color brightblue "\<tc-ld-(is-(gold|lld)|disable-gold|force-bfd)\>" +color brightblue "\<tc-(arch(-kernel)?|check-openmp|export|has-(tls|openmp)|is-cross-compiler)\>" +color brightblue "\<tc-is-(clang|gcc)\>" +color brightblue "\<(clang|gcc)-(fullversion|(major-|minor|micro-)version)\>" +### debugging +color brightblue "\<debug-print(-function|-section)\>" + +## Common commands used in ebuilds: +color blue "\<(awk|cat|cd|chmod|chown|cp|echo|env|find|e?grep|ln|make|mkdir|mv|popd|printf|pushd|rm|rmdir|sed|set|tar|touch|unset|xargs)\>" +## Comments (doesn't work that well): +color yellow "(^|[[:space:]])#.*" +## Strings (doesn't work that well): +color brightyellow ""([^"\]|\\.)*"|'([^'\]|\\.)*'" +## Trailing space is bad! +color ,green "[[:space:]]+$" +## Mixed whitespace is also bad. +color ,green " " + + +syntax /etc/portage "\.(accept_keywords|env|keywords|mask|unmask|use)(/.+)?$" +comment "#" + +## Base text: +color green ".+" +## Likely version and slot numbers: +color magenta "-[[:digit:].]+(_(alpha|beta|pre|rc|p)[[:digit:]]*)*(-r[[:digit:]]+)?([:[:space:]]|$)" +color magenta ":[^[:space:]]+([[:space:]]|$)" +## Use flags (must come after version/slot): +color brightred "[[:space:]]+\+?[A-Za-z0-9+_@-]+" +color brightblue "[[:space:]]+-[A-Za-z0-9+_@-]+" +## Accepted arches: +color white "[~-]?\<(alpha|amd64|arm(64)?|hppa|ia64|loong|m68k|mips|ppc(64)?|riscv|s390|sparc|x86)(-(linux|macos|solaris))?\>" +color white "[[:space:]][*~-]?\*" +## Categories: +color cyan "^[[:space:]]*[^/]*/" +## Masking regulators: +color brightmagenta "^[[:space:]]*(=|~|<|<=|>|>=)" +## Comments: +color yellow "#.*" +## Trailing space is bad! +color ,green "[[:space:]]+$" +## Mixed whitespace is also bad. +color ,green " " diff --git a/app-editors/nano/files/nano-4.9.3-disable-speller_build_fix.patch b/app-editors/nano/files/nano-4.9.3-disable-speller_build_fix.patch deleted file mode 100644 index 978e24de805d..000000000000 --- a/app-editors/nano/files/nano-4.9.3-disable-speller_build_fix.patch +++ /dev/null @@ -1,342 +0,0 @@ -From 4b7f7a30c9ec593d68186b1dfef44d4e2bda735b Mon Sep 17 00:00:00 2001 -From: Benno Schulenberg <bensberg@telfort.nl> -Date: Mon, 22 Jun 2020 08:39:59 +0200 -Subject: [PATCH] build: fix compilation when configured with - --disable-speller - -Move two functions that are used by the formatter too -to between the proper #ifdef. - -Problem existed since commit 8089f5ad from a month ago. - -Backported to v4.9.3 -Signed-off-by: Lars Wendler <polynomial-c@gentoo.org> ---- - src/text.c | 302 ++++++++++++++++++++++++++--------------------------- - 1 file changed, 151 insertions(+), 151 deletions(-) - -diff --git a/src/text.c b/src/text.c -index 93ad3704..c7690fd0 100644 ---- a/src/text.c -+++ b/src/text.c -@@ -2011,8 +2011,159 @@ void construct_argument_list(char ***arguments, char *command, char *filename) - (*arguments)[count - 2] = filename; - (*arguments)[count - 1] = NULL; - } -+ -+/* Open the specified file, and if that succeeds, remove the text of the marked -+ * region or of the entire buffer and read the file contents into its place. */ -+bool replace_buffer(const char *filename, undo_type action, const char *operation) -+{ -+ linestruct *was_cutbuffer = cutbuffer; -+ int descriptor; -+ FILE *stream; -+ -+ descriptor = open_file(filename, FALSE, &stream); -+ -+ if (descriptor < 0) -+ return FALSE; -+ -+ cutbuffer = NULL; -+ -+#ifndef NANO_TINY -+ add_undo(COUPLE_BEGIN, operation); -+ -+ /* Cut either the marked region or the whole buffer. */ -+ add_undo(action, NULL); -+#endif -+ do_snip(FALSE, openfile->mark, openfile->mark == NULL, FALSE); -+#ifndef NANO_TINY -+ update_undo(action); - #endif - -+ /* Discard what was cut. */ -+ free_lines(cutbuffer); -+ cutbuffer = was_cutbuffer; -+ -+ /* Insert the spell-checked file into the cleared area. */ -+ read_file(stream, descriptor, filename, TRUE); -+ -+#ifndef NANO_TINY -+ add_undo(COUPLE_END, operation); -+#endif -+ return TRUE; -+} -+ -+/* Execute the given program, with the given temp file as last argument. */ -+const char *treat(char *tempfile_name, char *theprogram, bool spelling) -+{ -+ ssize_t lineno_save = openfile->current->lineno; -+ size_t current_x_save = openfile->current_x; -+ size_t pww_save = openfile->placewewant; -+ bool was_at_eol = (openfile->current->data[openfile->current_x] == '\0'); -+ struct stat fileinfo; -+ long timestamp_sec, timestamp_nsec; -+ static char **arguments = NULL; -+ pid_t thepid; -+ int program_status; -+ bool replaced = FALSE; -+ -+ /* Get the timestamp and the size of the temporary file. */ -+ stat(tempfile_name, &fileinfo); -+ timestamp_sec = (long)fileinfo.st_mtim.tv_sec; -+ timestamp_nsec = (long)fileinfo.st_mtim.tv_nsec; -+ -+ /* If the number of bytes to check is zero, get out. */ -+ if (fileinfo.st_size == 0) -+ return NULL; -+ -+ /* Exit from curses mode to give the program control of the terminal. */ -+ endwin(); -+ -+ construct_argument_list(&arguments, theprogram, tempfile_name); -+ -+ /* Fork a child process and run the given program in it. */ -+ if ((thepid = fork()) == 0) { -+ execvp(arguments[0], arguments); -+ -+ /* Terminate the child if the program is not found. */ -+ exit(9); -+ } else if (thepid < 0) -+ return _("Could not fork"); -+ -+ /* Block SIGWINCHes while waiting for the program to end, -+ * so nano doesn't get pushed past the wait(). */ -+ block_sigwinch(TRUE); -+ wait(&program_status); -+ block_sigwinch(FALSE); -+ -+ /* Restore the terminal state and reenter curses mode. */ -+ terminal_init(); -+ doupdate(); -+ -+ if (!WIFEXITED(program_status) || WEXITSTATUS(program_status) > 2) { -+ statusline(ALERT, _("Error invoking '%s'"), arguments[0]); -+ return NULL; -+ } else if (WEXITSTATUS(program_status) != 0) -+ statusline(ALERT, _("Program '%s' complained"), arguments[0]); -+ -+ /* Stat the temporary file again. */ -+ stat(tempfile_name, &fileinfo); -+ -+ /* When the temporary file wasn't touched, say so and leave. */ -+ if ((long)fileinfo.st_mtim.tv_sec == timestamp_sec && -+ (long)fileinfo.st_mtim.tv_nsec == timestamp_nsec) { -+ statusbar(_("Nothing changed")); -+ return NULL; -+ } -+ -+#ifndef NANO_TINY -+ /* Replace the marked text (or entire text) with the corrected text. */ -+ if (spelling && openfile->mark) { -+ ssize_t was_mark_lineno = openfile->mark->lineno; -+ bool upright = mark_is_before_cursor(); -+ -+ replaced = replace_buffer(tempfile_name, CUT, "spelling correction"); -+ -+ /* Adjust the end point of the marked region for any change in -+ * length of the region's last line. */ -+ if (upright) -+ current_x_save = openfile->current_x; -+ else -+ openfile->mark_x = openfile->current_x; -+ -+ /* Restore the mark. */ -+ openfile->mark = line_from_number(was_mark_lineno); -+ } else -+#endif -+ { -+ openfile->current = openfile->filetop; -+ openfile->current_x = 0; -+ -+ replaced = replace_buffer(tempfile_name, CUT_TO_EOF, -+ /* TRANSLATORS: The next two go with Undid/Redid messages. */ -+ (spelling ? N_("spelling correction") : N_("formatting"))); -+ } -+ -+ /* Go back to the old position. */ -+ goto_line_posx(lineno_save, current_x_save); -+ if (was_at_eol || openfile->current_x > strlen(openfile->current->data)) -+ openfile->current_x = strlen(openfile->current->data); -+ -+#ifndef NANO_TINY -+ if (replaced) -+ update_undo(COUPLE_END); -+#endif -+ -+ openfile->placewewant = pww_save; -+ adjust_viewport(STATIONARY); -+ -+ if (spelling) -+ statusbar(_("Finished checking spelling")); -+ else -+ statusbar(_("Buffer has been processed")); -+ -+ return NULL; -+} -+#endif /* ENABLE_SPELLER || ENABLE_COLOR */ -+ - #ifdef ENABLE_SPELLER - /* Let the user edit the misspelled word. Return FALSE if the user cancels. */ - bool fix_spello(const char *word) -@@ -2307,157 +2458,6 @@ const char *do_int_speller(const char *tempfile_name) - return NULL; - } - --/* Open the specified file, and if that succeeds, remove the text of the marked -- * region or of the entire buffer and read the file contents into its place. */ --bool replace_buffer(const char *filename, undo_type action, const char *operation) --{ -- linestruct *was_cutbuffer = cutbuffer; -- int descriptor; -- FILE *stream; -- -- descriptor = open_file(filename, FALSE, &stream); -- -- if (descriptor < 0) -- return FALSE; -- -- cutbuffer = NULL; -- --#ifndef NANO_TINY -- add_undo(COUPLE_BEGIN, operation); -- -- /* Cut either the marked region or the whole buffer. */ -- add_undo(action, NULL); --#endif -- do_snip(FALSE, openfile->mark, openfile->mark == NULL, FALSE); --#ifndef NANO_TINY -- update_undo(action); --#endif -- -- /* Discard what was cut. */ -- free_lines(cutbuffer); -- cutbuffer = was_cutbuffer; -- -- /* Insert the spell-checked file into the cleared area. */ -- read_file(stream, descriptor, filename, TRUE); -- --#ifndef NANO_TINY -- add_undo(COUPLE_END, operation); --#endif -- return TRUE; --} -- --/* Execute the given program, with the given temp file as last argument. */ --const char *treat(char *tempfile_name, char *theprogram, bool spelling) --{ -- ssize_t lineno_save = openfile->current->lineno; -- size_t current_x_save = openfile->current_x; -- size_t pww_save = openfile->placewewant; -- bool was_at_eol = (openfile->current->data[openfile->current_x] == '\0'); -- struct stat fileinfo; -- long timestamp_sec, timestamp_nsec; -- static char **arguments = NULL; -- pid_t thepid; -- int program_status; -- bool replaced = FALSE; -- -- /* Get the timestamp and the size of the temporary file. */ -- stat(tempfile_name, &fileinfo); -- timestamp_sec = (long)fileinfo.st_mtim.tv_sec; -- timestamp_nsec = (long)fileinfo.st_mtim.tv_nsec; -- -- /* If the number of bytes to check is zero, get out. */ -- if (fileinfo.st_size == 0) -- return NULL; -- -- /* Exit from curses mode to give the program control of the terminal. */ -- endwin(); -- -- construct_argument_list(&arguments, theprogram, tempfile_name); -- -- /* Fork a child process and run the given program in it. */ -- if ((thepid = fork()) == 0) { -- execvp(arguments[0], arguments); -- -- /* Terminate the child if the program is not found. */ -- exit(9); -- } else if (thepid < 0) -- return _("Could not fork"); -- -- /* Block SIGWINCHes while waiting for the program to end, -- * so nano doesn't get pushed past the wait(). */ -- block_sigwinch(TRUE); -- wait(&program_status); -- block_sigwinch(FALSE); -- -- /* Restore the terminal state and reenter curses mode. */ -- terminal_init(); -- doupdate(); -- -- if (!WIFEXITED(program_status) || WEXITSTATUS(program_status) > 2) { -- statusline(ALERT, _("Error invoking '%s'"), arguments[0]); -- return NULL; -- } else if (WEXITSTATUS(program_status) != 0) -- statusline(ALERT, _("Program '%s' complained"), arguments[0]); -- -- /* Stat the temporary file again. */ -- stat(tempfile_name, &fileinfo); -- -- /* When the temporary file wasn't touched, say so and leave. */ -- if ((long)fileinfo.st_mtim.tv_sec == timestamp_sec && -- (long)fileinfo.st_mtim.tv_nsec == timestamp_nsec) { -- statusbar(_("Nothing changed")); -- return NULL; -- } -- --#ifndef NANO_TINY -- /* Replace the marked text (or entire text) with the corrected text. */ -- if (spelling && openfile->mark) { -- ssize_t was_mark_lineno = openfile->mark->lineno; -- bool upright = mark_is_before_cursor(); -- -- replaced = replace_buffer(tempfile_name, CUT, "spelling correction"); -- -- /* Adjust the end point of the marked region for any change in -- * length of the region's last line. */ -- if (upright) -- current_x_save = openfile->current_x; -- else -- openfile->mark_x = openfile->current_x; -- -- /* Restore the mark. */ -- openfile->mark = line_from_number(was_mark_lineno); -- } else --#endif -- { -- openfile->current = openfile->filetop; -- openfile->current_x = 0; -- -- replaced = replace_buffer(tempfile_name, CUT_TO_EOF, -- /* TRANSLATORS: The next two go with Undid/Redid messages. */ -- (spelling ? N_("spelling correction") : N_("formatting"))); -- } -- -- /* Go back to the old position. */ -- goto_line_posx(lineno_save, current_x_save); -- if (was_at_eol || openfile->current_x > strlen(openfile->current->data)) -- openfile->current_x = strlen(openfile->current->data); -- --#ifndef NANO_TINY -- if (replaced) -- update_undo(COUPLE_END); --#endif -- -- openfile->placewewant = pww_save; -- adjust_viewport(STATIONARY); -- -- if (spelling) -- statusbar(_("Finished checking spelling")); -- else -- statusbar(_("Buffer has been processed")); -- -- return NULL; --} -- - /* Spell check the current file. If an alternate spell checker is - * specified, use it. Otherwise, use the internal spell checker. */ - void do_spell(void) --- -2.28.0 - diff --git a/app-editors/nano/files/nano-4.9.3-minimal_build_fix.patch b/app-editors/nano/files/nano-4.9.3-minimal_build_fix.patch deleted file mode 100644 index 52112bab7235..000000000000 --- a/app-editors/nano/files/nano-4.9.3-minimal_build_fix.patch +++ /dev/null @@ -1,46 +0,0 @@ -From a98f48b4e82db7d30aa04925fb28344f5bce8c7c Mon Sep 17 00:00:00 2001 -From: Benno Schulenberg <bensberg@telfort.nl> -Date: Mon, 22 Jun 2020 14:00:23 +0200 -Subject: [PATCH] build: fix compilation for --enable-tiny --enable-color - --enable-nanorc - -Backported to v4.9.3 -Signed-off-by: Lars Wendler <polynomial-c@gentoo.org> ---- - src/nano.c | 2 +- - src/text.c | 4 ++-- - 2 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/src/nano.c b/src/nano.c -index be80a073..3ac81ba4 100644 ---- a/src/nano.c -+++ b/src/nano.c -@@ -1079,7 +1079,7 @@ RETSIGTYPE do_continue(int signal) - ungetch(KEY_FLUSH); - } - --#if !defined(NANO_TINY) || defined(ENABLE_SPELLER) -+#if !defined(NANO_TINY) || defined(ENABLE_SPELLER) || defined(ENABLE_COLOR) - /* Block or unblock the SIGWINCH signal, depending on the blockit parameter. */ - void block_sigwinch(bool blockit) - { -diff --git a/src/text.c b/src/text.c -index c7690fd0..32727946 100644 ---- a/src/text.c -+++ b/src/text.c -@@ -2032,10 +2032,10 @@ bool replace_buffer(const char *filename, undo_type action, const char *operatio - - /* Cut either the marked region or the whole buffer. */ - add_undo(action, NULL); --#endif - do_snip(FALSE, openfile->mark, openfile->mark == NULL, FALSE); --#ifndef NANO_TINY - update_undo(action); -+#else -+ do_snip(FALSE, TRUE, FALSE, FALSE); - #endif - - /* Discard what was cut. */ --- -2.28.0 - |