PDA

Vollständige Version anzeigen : vim highlighting Script


klaus_harrer
09.10.2005, 11:48
Hallo

Da ich eine Scripte für Gimp geschrieben habe und dazu vorwiegend den Editor vi b.z.w vim nutze, hatte ich überlegt ob ich ein Script schreibe das die Funktionen für Gimp farblich hervorhebt(Syntaxhighlighting). Eine weitere Überlegung war das diese Script nicht immer aktuell ist, da in Gimp je nach Version Funktionen hinzugefügt b.z.w umbenennt oder fallengelassen werden.

Das Produkt ist ein Script das die Funktionen aus der aktuellen Gimp Version extrahiert und ein Highlighting File für vi b.z.w vim generiert.


#
#+
#+ gimpFunction vim script
#+ Copyright (C) 2005 Klaus Harrer
#+
#+ 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 2
#+ 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
#+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
#+ GNU General Public License for more details.
#+
#+ You should have received a copy of the GNU General Public License
#+ along with this program; if not, write to the Free Software
#+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#+
#+

#!/bin/sh
#set -x -v

#Variable Area

TMP_FILE=/tmp/gimpScriFu-$(gimp -v | sed 's/ /-/' )

if [ ! -e $TMP_FILE ]
then
gimp-2.2 -b -i '(gimp-procedural-db-dump "'$TMP_FILE'")' '(gimp-quit 0)' 2>/dev/null
fi

GIMP_CONSTANT=$(grep -B 1 deprecated! $TMP_FILE | grep register |cut -d \" -f2 | sed -e 's/^/ grep -v /g' -e 's/$/ |/g' | tr -d \\n | sed 's/..$//' | sed "s:|:$TMP_FILE | :" | sh | grep @{\ [A-Z] | grep -v -e return -e samples | cut -d \{ -f2 | tr -d \([0-9]\)\,\@\}\" | sed -e 's/GIMP_//g' -e 's/_/-/g' | tr -s \\n \ | sort)

GIMP_FUNCTION=$(grep -B 1 deprecated! $TMP_FILE | grep register |cut -d \" -f2 | sed -e 's/^/ grep -v /g' -e 's/$/ |/g' | tr -d \\n | sed 's/..$//' | sed "s:|:$TMP_FILE | :" | sh | grep register | grep -v "<2>" | cut -d \" -f2 | grep -v "This procedure" | grep -v -e perl -e python -e tiny -e script_fu | sed 's/_/-/g' | tr -s \\n \ | sed 's/<1>//g' | sort)
rm -rf $TMP_FILE

#generate Area

echo -e "\" Vim syntax file \n\" Language: Script-Fu extension for ($(gimp -v)) \n\" Maintainer: Klaus Harrer <klaus_harrer@web.de>\n\" Last Change: $(date "+%Y-%m-%d")\n\" Version: 0.01\n\n\n$(echo syn keyword gimpScrifuFunc) $(echo $GIMP_FUNCTION)\n\n\n$(echo syn keyword gimpScrifuConst) $(echo $GIMP_CONSTANT)\n\n" > gimpFunction.vim


echo -e "\" Default highlighting\nif version >= 508 || !exists(\"did_script-fu_syntax_inits\")\n if version < 508\n\tlet did_script-fu_syntax_inits = 1\n\tcommand -nargs=+ HiLink hi link <args>\n else\n\tcommand -nargs=+ HiLink hi def link <args>\n\tendif\n\n\tHiLink gimpScrifuFunc Function\n\tHiLink gimpScrifuConst Type\n\tdelcommand HiLink\n\tendif" >> gimpFunction.vim



echo -e "[de] Kopieren sie die Datei \"gimpFunktion.vim\" in den Ordner /usr/share/../vimxx/syntax/ b.z.w ~/.vim/../syntax/\nund fuegen sie folgende Zeile in der Datei /usr/share/../vimxx/syntax/scheme.vim b.z.w ~/.vim/../syntax/scheme.vim\n\n\t\033[0;31mruntime! syntax/script-fu.vim\033[0m\nhinzu.\n\n[en]Copy the file\"gimpFunktion.vim\" in folder /usr/share/../vimxx/syntax/ as the case may be ~/.vim/../syntax/\nand append follow row in file /usr/share/../vimxx/syntax/scheme.vim as the case may be ~/.vim/../syntax/scheme.vim\n\n\t\033[0;31mruntime! syntax/script-fu.vim\033[0m\n"



Es ist nur unter Linux anwendbar.

Fehler(Bugs) bitte melden und eine Korrektur des englischen Output wenn nötig auch melden.

MfG
Klaus

klaus_harrer
10.10.2005, 11:50
Hallo

Einige Bugs habe ich gefixt.


#
#+
#+ gimpFunction vim script
#+ Copyright (C) 2005 Klaus Harrer
#+
#+ 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 2
#+ 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
#+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
#+ GNU General Public License for more details.
#+
#+ You should have received a copy of the GNU General Public License
#+ along with this program; if not, write to the Free Software
#+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#+
#+

#!/bin/sh
#set -x -v

#Variable Area

VERSION=0.02

TMP_FILE=/tmp/gimpScriFu-$(gimp -v | sed 's/ /-/' )

if [ ! -e $TMP_FILE ]
then
gimp-2.2 -i --batch-interpreter 'plug_in_script_fu_eval' -b '(gimp-procedural-db-dump "'$TMP_FILE'")' '(gimp-quit 0)' 2>/dev/null
fi

GIMP_CONSTANT=$(grep -B 1 deprecated! $TMP_FILE | grep register |cut -d \" -f2 | sed -e 's/^/ grep -v /g' -e 's/$/ |/g' | tr -d \\n | sed 's/..$//' | sed "s:|:$TMP_FILE | :" | sh | grep : | grep [A-Z][A-Z] | cut -d \: -f1,2 | cut -d \: -f2 | grep "([0-9])" | grep -v -e "TRUE" -e "FALSE" | tr -d \@\{\([0-9]\)\,\}\"[a-z] | sed 's/GIMP_//g' | sed 's/_/-/g' | tr -s \\n \ | sort)

GIMP_FUNCTION=$(grep -B 1 deprecated! $TMP_FILE | grep register |cut -d \" -f2 | sed -e 's/^/ grep -v /g' -e 's/$/ |/g' | tr -d \\n | sed 's/..$//' | sed "s:|:$TMP_FILE | :" | sh | grep register | grep -v "<2>" | cut -d \" -f2 | grep -v "This procedure" | grep -v -e perl -e python -e tiny -e script_fu | sed 's/_/-/g' | tr -s \\n \ | sed 's/<1>//g' | sort)
rm -rf $TMP_FILE

#generate Area

echo -e "\" Vim syntax file \n\" Language: Script-Fu extension for ($(gimp -v)) \n\" Maintainer: Klaus Harrer <klaus_harrer@web.de>\n\" Last Change: $(date "+%Y-%m-%d")\n\" Version: $VERSION\n\n\n$(echo syn keyword gimpScrifuFunc) $GIMP_FUNCTION\n\n\n$(echo syn keyword gimpScrifuConst) $GIMP_CONSTANT $(echo TRUE) $(echo FALSE)\n\n" > gimpFunction.vim


echo -e "\" Default highlighting\nif version >= 508 || !exists(\"did_gimpFunction_syntax_inits\")\n if version < 508\n\tlet did_gimpFunction_syntax_inits = 1\n\tcommand -nargs=+ HiLink hi link <args>\n else\n\tcommand -nargs=+ HiLink hi def link <args>\n\tendif\n\n\tHiLink gimpScrifuFunc Function\n\tHiLink gimpScrifuConst Type\n\tdelcommand HiLink\n\tendif" >> gimpFunction.vim



echo -e "[de] Kopieren sie die Datei \"gimpFunktion.vim\" in den Ordner /usr/share/../vimxx/syntax/ b.z.w ~/.vim/../syntax/\nund fuegen sie folgende Zeile in der Datei /usr/share/../vimxx/syntax/scheme.vim b.z.w ~/.vim/../syntax/scheme.vim\n\n\t\033[0;31mruntime! syntax/gimpFunction.vim\033[0m\nhinzu.\n\n[en]Copy the file\"gimpFunktion.vim\" in folder /usr/share/../vimxx/syntax/ as the case may be ~/.vim/../syntax/\nand append follow row in file /usr/share/../vimxx/syntax/scheme.vim as the case may be ~/.vim/../syntax/scheme.vim\n\n\t\033[0;31mruntime! syntax/gimpFunction.vim\033[0m\n"



MfG
Klaus

klaus_harrer
16.10.2005, 12:05
Hallo

Es sind mir eine Bugs aufgefallen die mit diesen Script gefixt wurden.



#
#+
#+ gimpFunction vim script
#+ Copyright (C) 2005 Klaus Harrer
#+
#+ 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 2
#+ 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
#+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
#+ GNU General Public License for more details.
#+
#+ You should have received a copy of the GNU General Public License
#+ along with this program; if not, write to the Free Software
#+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#+
#+

#!/bin/sh
#set -x -v

#Variable Area

VERSION=0.03

TMP_FILE=/tmp/gimpScriFu-$(gimp -v | sed 's/ /-/' )

if [ ! -e $TMP_FILE ]
then
gimp-2.2 -i --batch-interpreter 'plug_in_script_fu_eval' -b '(gimp-procedural-db-dump "'$TMP_FILE'")' '(gimp-quit 0)' 2>/dev/null
fi

GIMP_CONSTANT=$(grep -B 1 deprecated! $TMP_FILE | grep register |cut -d \" -f2 | sed -e 's/^/ grep -v "\/</g' -e 's/$/ |/g' | sed 's/ |/\/>" |/g' | tr -d \\n | sed 's/..$//' | sed "s:|:$TMP_FILE | :" | sh | grep : | grep [A-Z][A-Z] | cut -d \: -f1,2 | cut -d \: -f2 | grep "([0-9])" | grep -v -e "TRUE" -e "FALSE" | tr -d \@\{\([0-9]\)\,\}\"[a-z] | sed 's/GIMP_//g' | sed 's/_/-/g' | tr -s \\n \ | sort)

GIMP_FUNCTION=$(grep -B 1 deprecated! $TMP_FILE | grep register |cut -d \" -f2 | sed -e 's/^/ grep -v "\/</g' -e 's/$/ |/g' | sed 's/ |/\/>" |/g' | tr -d \\n | sed 's/..$//' | sed "s:|:$TMP_FILE | :" | sh | grep register | grep -v "<2>" | cut -d \" -f2 | grep -v "This procedure" | grep -v -e perl -e python -e tiny -e script_fu | sed 's/_/-/g' | tr -s \\n \ | sed 's/<1>//g' | sort)
rm -rf $TMP_FILE

#generate Area

echo -e "\" Vim syntax file \n\" Language: Script-Fu extension for ($(gimp -v)) \n\" Maintainer: Klaus Harrer <klaus_harrer@web.de>\n\" Last Change: $(date "+%Y-%m-%d")\n\" Version: $VERSION\n\n\n$(echo syn keyword gimpScrifuFunc) $GIMP_FUNCTION\n\n\n$(echo syn keyword gimpScrifuConst) $GIMP_CONSTANT $(echo TRUE) $(echo FALSE)\n\n" > gimpFunction.vim


echo -e "\" Default highlighting\nif version >= 508 || !exists(\"did_gimpFunction_syntax_inits\")\n if version < 508\n\tlet did_gimpFunction_syntax_inits = 1\n\tcommand -nargs=+ HiLink hi link <args>\n else\n\tcommand -nargs=+ HiLink hi def link <args>\n\tendif\n\n\tHiLink gimpScrifuFunc Function\n\tHiLink gimpScrifuConst Type\n\tdelcommand HiLink\n\tendif" >> gimpFunction.vim



echo -e "[de] Kopieren sie die Datei \"gimpFunktion.vim\" in den Ordner /usr/share/../vimxx/syntax/ b.z.w ~/.vim/../syntax/\nund fuegen sie folgende Zeile in der Datei /usr/share/../vimxx/syntax/scheme.vim b.z.w ~/.vim/../syntax/scheme.vim\n\n\t\033[0;31mruntime! syntax/gimpFunction.vim\033[0m\nhinzu.\n\n[en]Copy the file\"gimpFunktion.vim\" in folder /usr/share/../vimxx/syntax/ as the case may be ~/.vim/../syntax/\nand append follow row in file /usr/share/../vimxx/syntax/scheme.vim as the case may be ~/.vim/../syntax/scheme.vim\n\n\t\033[0;31mruntime! syntax/gimpFunction.vim\033[0m\n"



MfG
Klaus

MichaJo
02.11.2005, 23:36
Hallo Klaus,
ich hab' zwar Windows (hat seine Gründe), aber ich hab' jetzt auch den vim (cream) als editor (vorher UltraEdit Hex-Editor).
Dein Skript http://www.gimpforum.de/fpost19956.html selber läuft also bei mir nicht.
Aber...Du machst doch 'nen append an die bestehende scheme.vim.
Müßte das highlighting bei mir dann nicht genauso funktionieren, weil's ja vim ist, also doch unabhängig vom BS? Oder könnte ich das auch so nicht verwenden?
Vom vim und dessen Konfiguration hab' ich kaum 'ne blasse Ahnung.
(Vom scripting mit script-fu auch noch nicht soviel. Deine Gimp-Script Beschreibung http://www.gimp-script.de/script_fu.html ist übrigens allererste Sahne).
Meine unverschämte Frage ist also, ob Du das Ergebnis Deines Skriptes
als Datei zur Verfügung stellen würdest.


Gruß

Michael

klaus_harrer
03.11.2005, 01:15
Hallo Micha

Kein Problem:


" Vim syntax file
" Language: Script-Fu extension for (GIMP-Version 2.2.8)
" Maintainer: Klaus Harrer <klaus_harrer@web.de>
" Last Change: 2005-10-16
" Version: 0.03


syn keyword gimpScrifuFunc file-xwd-load gimp-drawable-transform-flip gimp-drawable-bpp gimp-image-set-unit gimp-parasite-attach file-fits-load file-sunras-load gimp-selection-none gimp-fonts-refresh plug-in-engrave-Iterator-ALT plug-in-photocopy gimp-context-set-font gimp-layer-new plug-in-map-object plug-in-gap-range-flatten plug-in-pixelize gimp-histogram gimp-colorize gimp-drawable-transform-matrix plug-in-gauss-rle2-Iterator-ALT plug-in-smooth-palette plug-in-gauss-rle2 gimp-selection-sharpen gimp-register-save-handler gimp-image-get-selection gimp-floating-sel-to-layer gimp-invert plug-in-onionskin-toggle-visibility plug-in-destripe-Iterator-ALT gimp-procedural-db-get-data file-eps-load plug-in-vinvert-Iterator-ALT file-pix-load gimp-convolve-default gimp-path-set-current gimp-eraser gimp-procedural-db-constant-register Plug-ins should register their custom constants using this function, soother plug-ins (notably script-languages) can access these using symbolic names file-gif-save plug-in-nlfilt gimp-drawable-get-pixel plug-in-whirl-pinch-Iterator-ALT gimp-image-free-shadow gimp-text-fontname gimp-xcf-save gimp-channel-set-opacity plug-in-gap-get-animinfo gimp-edit-fill gimp-online-developer-web-site plug-in-applylens-Iterator-ALT gimp-image-get-component-active gimp-displays-flush plug-in-gap-xanim-decode-toolbox gimp-image-get-active-drawable auto-orangeeye-plugin gimp-brush-get-pixels plug-in-cml-explorer-Iterator-ALT plug-in-gflare-Iterator-ALT plug-in-universal-filter-Iterator-ALT plug-in-max-rgb-Iterator-ALT gimp-image-get-layer-by-tattoo gimp-brush-duplicate plug-in-gimpressionist gimp-palette-duplicate gimp-get-monitor-resolution gimp-smudge-default gimp-context-set-foreground plug-in-rotate-colormap gimp-gradient-segment-range-set-coloring-type plug-in-color-map-Iterator-ALT gimp-image-merge-visible-layers file-ico-save plug-in-color-correct plug-in-ditherize plug-in-color-adjust file-ps-load-setargs gimp-online-main-web-site plug-in-gap-shift plug-in-sobel gimp-path-get-point-at-dist plug-in-depth-merge plug-in-alienmap-Iterator-ALT gimp-layer-set-offsets gimp-unit-get-plural gimp-image-parasite-attach gimp-layer-translate file-gz-load gimp-threshold file-svg-load-thumb plug-in-gap-COMMON-ITERATOR gimp-procedural-db-proc-val gimp-drawable-get-name gimp-image-lower-channel gimp-scale gimp-channel-get-show-masked gimp-parasite-detach gimp-context-set-default-colors gimp-drawable-set-pixel gimp-file-load gimp-image-raise-layer-to-top plug-in-ifs-compose plug-in-db-browser plug-in-sel2path gimp-image-lower-layer gimp-image-get-filename file-dicom-save plug-in-destripe gimp-edit-stroke plug-in-fractal-trace plug-in-illusion-Iterator-ALT plug-in-convmatrix plug-in-lighting gimp-get-default-comment gimp-curves-explicit plug-in-encript-Iterator-ALT plug-in-edge file-cel-load plug-in-curve-bend-Iterator plug-in-dilate gimp-brushes-get-list gimp-image-thumbnail plug-in-sel-gauss plug-in-gap-anim-scale file-sgi-load gimp-brush-get-spacing file-jpeg-load-thumb gimp-gradient-delete gimp-edit-copy-visible gimp-drawable-mask-bounds gimp-brush-delete file-csource-save gimp-layer-copy gimp-context-get-brush gimp-path-list gimp-drawable-is-rgb gimp-unit-set-deletion-flag gimp-image-add-hguide gimp-gradient-segment-range-set-blending-function gimp-hue-saturation gimp-airbrush-default gimp-path-set-tattoo gimp-edit-blend gimp-version plug-in-wr-huesat plug-in-gauss-iir plug-in-figures-Iterator-ALT plug-in-mosaic-Iterator-ALT file-tiff-load file-tiff-save2 plug-in-deinterlace-Iterator-ALT xsane-plustek-3a-libusb-3a-004-3a-002 gimp-patterns-popup gimp-pattern-get-pixels gimp-drawable-width plug-in-gauss-rle-Iterator-ALT file-raw-save plug-in-gap-goto plug-in-alpha2color-Iterator-ALT plug-in-newsprint plug-in-gap-move plug-in-sinus-Iterator-ALT gimp-image-add-layer gimp-text gimp-gradient-segment-get-blending-function gimp-image-raise-channel plug-in-alpha-fade plug-in-gradmap plug-in-gap-video-edit-paste gimp-patterns-set-popup The name of the callback registered for this popup gimp-selection-combine gimp-context-set-gradient gimp-edit-copy gimp-image-parasite-detach gimp-gradient-segment-range-split-uniform gimp-drawable-transform-scale plug-in-ripple plug-in-randomize-slur-Iterator-ALT gimp-get-path-by-tattoo gimp-drawable-transform-2d plug-in-gauss-iir2 plug-in-gap-exchg gimp-context-get-foreground gimp-drawable-delete plug-in-gap-renumber gimp-drawable-get-image plug-in-mail-image gimp-drawable-transform-matrix-default gimp-image-merge-down gimp-file-save-thumbnail gimp-drawable-set-tattoo plug-in-holes-Iterator-ALT gimp-selection-all gimp-image-delete-guide gimp-procedural-db-proc-info gimp-brushes-set-spacing file-faxg3-load gimp-image-clean-all gimp-context-set-brush gimp-layer-resize gimp-register-thumbnail-loader gimp-context-set-palette gimp-image-get-resolution gimp-drawable-transform-flip-default gimp-gradients-sample-custom gimp-procedural-db-query plug-in-screenshot gimp-message-set-handler gimp-image-get-unit file-svg-load gimp-layer-get-edit-mask plug-in-sample-colorize-Iterator-ALT gimp-context-get-font gimp-selection-layer-alpha gimp-unit-get-symbol gimp-drawable-transform-shear-default gimp-path-get-current plug-in-pixelize2 plug-in-mandelbrot-Iterator-ALT gimp-layer-add-mask gimp-image-get-component-visible gimp-image-height plug-in-laplace plug-in-animationoptimize-diff gimp-layer-set-preserve-trans gimp-rect-select gimp-channel-get-opacity gimp-patterns-get-pattern gimp-paintbrush-default plug-in-unit-editor plug-in-sel-gauss-Iterator-ALT file-pat-load gimp-brushes-get-brush file-tga-save gimp-drawable-set-image plug-in-sharpen-Iterator-ALT plug-in-colortoalpha-Iterator-ALT gimp-layer-get-preserve-trans gimp-progress-init plug-in-displace gimp-image-set-resolution file-xbm-load gimp-palette-new plug-in-blur plug-in-sobel-Iterator-ALT gimp-image-undo-thaw gimp-patterns-get-list gimp-image-set-component-visible plug-in-retinex gimp-by-color-select gimp-brushes-get-brush-data gimp-selection-bounds plug-in-sparkle-Iterator-ALT gimp-path-get-tattoo file-bmp-load plug-in-anamorphose-Iterator-ALT gimp-image-resize-to-layers file-gih-load gimp-gradients-sample-uniform gimp-gradients-close-popup The name of the callback registered for this popup file-colorxhtml-save gimp-clone file-gbr-load plug-in-nova gimp-display-delete plug-in-gap-split gimp-image-add-layer-mask file-pgm-save file-jpeg-save plug-in-tile gimp-selection-load gimp-perspective plug-in-pagecurl file-png-set-defaults plug-in-warp plug-in-glasstile-Iterator-ALT gimp-gradients-popup plug-in-scatter-hsv plug-in-gap-xanim-decode plug-in-flarefx-Iterator-ALT plug-in-polar-coords-Iterator-ALT plug-in-lic gimp-gradient-segment-range-delete gimp-dodgeburn plug-in-imagemap gimp-path-to-selection gimp-image-remove-layer-mask gimp-layer-from-mask plug-in-normalize-Iterator-ALT gimp-progress-uninstall The name of the callback registered for this progress gimp-gradient-segment-range-flip gimp-image-convert-rgb gimp-image-remove-channel plug-in-plasma-Iterator-ALT plug-in-wr-color-levels gimp-drawable-get-tattoo gimp-channel-copy plug-in-sample-colorize gimp-paintbrush gimp-levels-stretch gimp-image-undo-is-enabled file-bz2-load file-xjt-load plug-in-waves-Iterator-ALT plug-in-emboss gimp-layer-set-mode plug-in-blur2-Iterator-ALT plug-in-flame-Iterator-ALT plug-in-vpropagate plug-in-deinterlace gimp-channel-new gimp-register-magic-load-handler gimp-palette-get-info plug-in-grid gimp-convolve file-fli-load gimp-fuzzy-select gimp-palettes-get-list gimp-channel-set-show-masked gimp-floating-sel-attach gimp-image-set-active-channel plug-in-oilify gimp-register-file-handler-mime plug-in-exchange gimp-drawable-is-indexed plug-in-sparkle file-xpm-save plug-in-whirl-pinch gimp-palette-entry-get-color plug-in-colorify plug-in-oilify-Iterator-ALT gimp-drawable-set-visible gimp-image-get-active-channel gimp-image-get-channel-by-tattoo gimp-plugin-menu-register plug-in-displace-Iterator-ALT plug-in-curve-bend plug-in-gap-last gimp-curves-spline file-xwd-save plug-in-make-seamless-Iterator-ALT gimp-brightness-contrast file-fits-save file-sunras-save file-pdf-load gimp-image-is-dirty plug-in-jigsaw-Iterator-ALT file-png-load gimp-palettes-popup plug-in-animationplay gimp-drawable-merge-shadow gimp-brushes-get-spacing plug-in-color-map gimp-image-parasite-find gimp-clone-default file-pnm-load plug-in-bluebox file-eps-save gimp-layer-add-alpha gimp-context-get-palette plug-in-map-object-Iterator-ALT gimp-patterns-get-pattern-data file-mng-save file-pix-save plug-in-filter-macro gimp-path-delete gimp-palette-entry-set-name gimp-message-get-handler gimp-gradient-segment-set-middle-pos gimp-palettes-refresh file-glob plug-in-gflare gimp-palette-delete plug-in-borderaverage-Iterator-ALT gimp-image-get-colormap plug-in-gap-set-framerate gimp-palette-entry-set-color gimp-brush-new plug-in-bump-map-tiled plug-in-grid-Iterator-ALT gimp-displays-reconnect gimp-layer-set-opacity gimp-layer-is-floating-sel plug-in-the-slimy-egg gimp-layer-get-mask plug-in-gap-first plug-in-autocrop plug-in-warp-sharp plug-in-solid-noise-Iterator-ALT gimp-image-new gimp-procedural-db-set-default Plug-ins should register default values for their arguments gimp-drawable-is-layer gimp-drawable-mask-intersect gimp-context-push plug-in-despeckle plug-in-randomize-hurl-Iterator-ALT plug-in-engrave plug-in-gap-mpeg2encode gimp-posterize gimp-drawable-has-alpha gimp-smudge gimp-image-find-next-guide file-fli-info gimp-layer-create-mask plug-in-align-layers gimp-image-rotate gimp-palette-add-entry gimp-edit-clear gimp-palettes-get-palette-entry gimp-layer-scale gimp-fonts-close-popup The name of the callback registered for this popup gimp-gradient-segment-range-blend-opacity plug-in-video-Iterator-ALT gimp-drawable-type gimp-quit plug-in-gauss-iir-Iterator-ALT gimp-image-get-floating-sel file-gz-save file-psd-load gimp-drawable-parasite-find gimp-unit-get-abbreviation plug-in-glasstile gimp-fonts-set-popup The name of the callback registered for this popup plug-in-gap-anim-resize gimp-gradient-rename gimp-dodgeburn-default gimp-brush-rename gimp-file-save gimp-drawable-sub-thumbnail plug-in-spheredesigner gimp-path-set-locked file-dataurl-save file-psp-load plug-in-CentralReflection-Iterator-ALT plug-in-ripple-Iterator-ALT plug-in-erode file-png-save2 gimp-airbrush gimp-gradients-refresh plug-in-polar-coords gimp-drawable-transform-perspective plug-in-film plug-in-cubism plug-in-wr-set-opacity gimp-image-undo-group-start file-cel-save gimp-brush-get-info file-ps-load gimp-image-set-filename gimp-layer-set-show-mask gimp-text-get-extents plug-in-gap-onionskin-configuration plug-in-alienmap2-Iterator-ALT gimp-drawable-set-linked plug-in-gauss file-sgi-save plug-in-compose plug-in-gap-next gimp-image-delete plug-in-checkerboard gimp-image-get-guide-position plug-in-plasma file-pcx-load plug-in-gap-dup gimp-drawable-transform-rotate-simple gimp-temp-name plug-in-warp-Iterator-ALT gimp-drawable-thumbnail plug-in-autocrop-layer gimp-edit-cut plug-in-flarefx gimp-context-get-paint-mode gimp-gradient-segment-get-middle-pos file-tiff-save gimp-levels-auto plug-in-mosaic file-header-save plug-in-semiflatten plug-in-autostretch-hsv gimp-register-load-handler plug-in-freetype plug-in-animationunoptimize gimp-image-get-layers plug-in-max-rgb plug-in-spread plug-in-vpropagate-Iterator-ALT plug-in-fractal-trace-Iterator-ALT gimp-unit-new file-ppm-save plug-in-qbist gimp-transform-2d gimp-brushes-close-popup The name of the callback registered for this popup gimp-image-get-name gimp-drawable-get-visible plug-in-edge-Iterator-ALT plug-in-nova-Iterator-ALT gimp-gradient-segment-range-move plug-in-softglow gimp-gradient-segment-get-right-color plug-in-gap-navigator gimp-palettes-close-popup The name of the callback registered for this popup gimp-palette-delete-entry plug-in-web-browser plug-in-pixelize-Iterator-ALT plug-in-randomize-slur gimp-edit-bucket-fill plug-in-gap-anim-crop gimp-image-width gimp-image-floating-sel-attached-to gimp-free-select plug-in-decompose file-gif-load gimp-layer-new-from-drawable plug-in-pagecurl-Iterator-ALT gimp-plugin-icon-register gimp-unit-get-singular xsane gimp-flip gimp-message gimp-context-set-paint-mode gimp-selection-float plug-in-randomize-hurl plug-in-fractalexplorer gimp-image-set-component-active gimp-xcf-load gimp-selection-border gimp-selection-value gimp-image-parasite-list plug-in-diffraction gimp-gradients-get-gradient-data gimp-path-get-locked gimp-context-pop gimp-parasite-find gimp-drawable-is-layer-mask plug-in-blinds plug-in-maze-Iterator-ALT gimp-palettes-set-popup The name of the callback registered for this popup plug-in-plug-in-details gimp-context-set-opacity gimp-selection-translate plug-in-tileit-Iterator-ALT gimp-gradient-segment-get-left-pos gimp-palettes-get-palette plug-in-name2layer plug-in-solid-noise plug-in-vinvert plug-in-gfig plug-in-gap-del plug-in-illusion file-ico-load gimp-image-convert-indexed gimp-gradient-segment-set-right-pos plug-in-diffraction-Iterator-ALT gimp-image-set-tattoo-state gimp-layer-get-opacity gimp-palette-entry-get-name gimp-color-balance plug-in-neon gimp-image-flip gimp-image-pick-correlate-layer file-pat-save gimp-selection-feather plug-in-convmatrix-Iterator-ALT gimp-floating-sel-relax gimp-ellipse-select plug-in-wr-color-levels-Iterator gimp-gradient-segment-get-left-color plug-in-normalize file-xbm-save gimp-progress-install plug-in-ccanalyze plug-in-wr-curves plug-in-despeckle-Iterator-ALT file-url-load gimp-help The help domain in which help-id is registered plug-in-c-astretch plug-in-papertile gimp-image-remove-layer plug-in-spread-Iterator-ALT gimp-image-undo-group-end plug-in-gap-range-to-multilayer gimp-gradient-get-uniform-samples plug-in-iwarp plug-in-rotate-Iterator-ALT gimp-edit-paste gimp-patterns-close-popup The name of the callback registered for this popup file-bmp-save file-dicom-load file-gih-save file-gbr-save gimp-image-unset-active-channel plug-in-bump-map gimp-channel-combine-masks plug-in-guillotine gimp-unit-get-number-of-built-in-units plug-in-video gimp-drawable-is-gray gimp-drawable-parasite-attach gimp-path-stroke-current gimp-selection-save gimp-progress-cancel The name of the callback registered for this progress gimp-drawable-parasite-list plug-in-exchange-Iterator-ALT gimp-gradient-segment-range-blend-colors plug-in-borderaverage plug-in-emboss-Iterator-ALT gimp-unit-get-deletion-flag plug-in-cartoon plug-in-magic-eye-Iterator-ALT gimp-context-set-pattern gimp-image-base-type gimp-floating-sel-anchor gimp-unit-get-number-of-units plug-in-refract-Iterator-ALT gimp-gradient-segment-set-left-color orangeeye-plugin plug-in-wr-huesat-Iterator file-print-gimp gimp-pattern-get-info gimp-unit-get-digits plug-in-jigsaw gimp-channel-set-color gimp-fonts-get-list gimp-drawable-is-channel gimp-selection-shrink file-bz2-save plug-in-lic-Iterator-ALT file-xjt-save gimp-brushes-set-popup The name of the callback registered for this popup gimp-context-get-gradient plug-in-lighting-Iterator-ALT plug-in-small-tiles-Iterator-ALT plug-in-animationoptimize gimp-floating-sel-rigor gimp-gradient-get-custom-samples gimp-get-module-load-inhibit plug-in-gap-mpeg-encode plug-in-cubism-Iterator-ALT gimp-image-get-channels gimp-rotate file-raw-load plug-in-gap-density gimp-pencil gimp-layer-get-mode gimp-layer-resize-to-image-size plug-in-mblur file-fli-save plug-in-sinus gimp-image-set-active-layer gimp-desaturate plug-in-hot gimp-procedural-db-set-data gimp-image-undo-disable gimp-context-swap-colors plugin-exif-browser gimp-procedural-db-temp-name gimp-image-raise-layer plug-in-colortoalpha gimp-get-theme-dir plug-in-applylens gimp-drawable-transform-flip-simple gimp-path-set-points gimp-procedural-db-proc-arg gimp-drawable-transform-rotate gimp-palette-rename gimp-online-plug-in-web-site gimp-gimprc-query gimp-drawable-parasite-detach gimp-image-undo-freeze plug-in-make-seamless gimp-image-pick-color gimp-text-get-extents-fontname gimp-patterns-refresh gimp-plugin-domain-register file-png-save plug-in-small-tiles gimp-gradient-duplicate gimp-context-get-background plug-in-colors-channel-mixer gimp-shear gimp-drawable-transform-scale-default gimp-layer-get-apply-mask gimp-image-get-tattoo-state plug-in-gauss-rle plug-in-shift file-pnm-save gimp-gradients-set-popup The name of the callback registered for this popup gimp-gradient-segment-get-right-pos plug-in-gap-range-layer-del plug-in-onionskin-del plug-in-blinds-Iterator-ALT gimp-eraser-default gimp-image-add-vguide plug-in-bump-map-Iterator-ALT plug-in-blur-Iterator-ALT gimp-selection-invert gimp-drawable-offset file-png-save-defaults gimp-brushes-refresh plug-in-gap-range-convert plug-in-zealouscrop plug-in-unsharp-mask plug-in-gauss-iir2-Iterator-ALT plug-in-gap-videoframes-player plug-in-rotate gimp-progress-update gimp-drawable-transform-perspective-default gimp-brushes-popup plug-in-dog plug-in-newsprint-Iterator-ALT file-tga-load gimp-drawable-get-linked gimp-parasite-list plug-in-scatter-rgb gimp-drawable-set-name gimp-context-get-opacity plug-in-wind gimp-image-resize plug-in-apply-canvas gimp-selection-grow plug-in-colorify-Iterator-ALT gimp-channel-get-color gimp-layer-set-edit-mask plug-in-depth-merge-Iterator-ALT file-png-get-defaults plug-in-gluas plug-in-threshold-alpha plug-in-papertile-Iterator-ALT gimp-image-set-colormap plug-in-randomize-pick-Iterator-ALT gimp-unit-get-identifier gimp-gradient-segment-set-right-color plug-in-Twist-Iterator-ALT plug-in-apply-canvas-Iterator-ALT gimp-fonts-popup plug-in-maze plug-in-gap-range-convert2 gimp-display-new gimp-context-set-background plug-in-scatter-hsv-Iterator-ALT plug-in-julia-Iterator-ALT gimp-layer-set-apply-mask gimp-drawable-transform-rotate-default file-jpeg-load plug-in-gap-prev plug-in-randomize-Iterator-ALT gimp-drawable-fill gimp-drawable-height plug-in-the-old-egg gimp-image-get-guide-orientation gimp-gimprc-set gimp-layer-get-show-mask plug-in-struc-Iterator-ALT gimp-gradient-segment-set-left-pos plug-in-wr-curves-Iterator plug-in-alienmap2 plug-in-noisify gimp-image-crop gimp-gradient-segment-range-replicate gimp-drawable-update gimp-plugins-query file-psd-save plug-in-noisify-Iterator-ALT gimp-image-convert-grayscale extension-gimp-help gimp-plugin-help-register plug-in-gap-modify gimp-drawable-transform-2d-default plug-in-cml-explorer plug-in-nlfilt-Iterator-ALT gimp-gradient-new plug-in-waves plug-in-onionskin-create-or-replace gimp-procedural-db-get-data-size gimp-drawable-transform-shear gimp-brush-set-spacing gimp-path-get-points file-gtm-save gimp-path-import plug-in-shift-Iterator-ALT gimp-gradient-segment-get-coloring-type gimp-levels gimp-context-get-pattern plug-in-gap-video-edit-copy gimp-gradients-get-list gimp-drawable-offsets gimp-image-get-active-layer file-ps-save gimp-layer-remove-mask gimp-procedural-db-dump plug-in-sharpen plug-in-sel2path-advanced gimp-selection-is-empty gimp-image-flatten gimp-gradient-segment-range-redistribute-handles gimp-unit-get-factor gimp-file-load-thumbnail plug-in-unsharp-mask-Iterator-ALT plug-in-filter-pack plug-in-mblur-Iterator-ALT gimp-gradient-segment-range-split-midpoint file-pcx-save plug-in-randomize-pick file-xpm-load plug-in-gap-layers-run-animfilter plug-in-checkerboard-Iterator-ALT gimp-image-add-channel plug-in-resynthesizer gimp-image-list gimp-floating-sel-remove file-colorhtml-save plug-in-gap-move-path-ext gimp-drawable-type-with-alpha plug-in-gap-move-path-ext2 gimp-image-scale plug-in-wind-Iterator-ALT gimp-image-lower-layer-to-bottom gimp-image-duplicate plug-in-gap-video-edit-clear plug-in-drawable-compose file-ps-load-thumb gimp-image-undo-enable plug-in-flame gimp-equalize plug-in-color-enhance


syn keyword gimpScrifuConst TRANSFORM-FORWARD TRANSFORM-BACKWARD INTERPOLATION-NONE INTERPOLATION-LINEAR INTERPOLATION-CUBIC RGB-IMAGE RGBA-IMAGE GRAY-IMAGE GRAYA-IMAGE INDEXED-IMAGE INDEXEDA-IMAGE NORMAL-MODE DISSOLVE-MODE BEHIND-MODE MULTIPLY-MODE SCREEN-MODE OVERLAY-MODE DIFFERENCE-MODE ADDITION-MODE SUBTRACT-MODE DARKEN-ONLY-MODE LIGHTEN-ONLY-MODE HUE-MODE SATURATION-MODE COLOR-MODE VALUE-MODE DIVIDE-MODE DODGE-MODE BURN-MODE HARDLIGHT-MODE SOFTLIGHT-MODE GRAIN-EXTRACT-MODE GRAIN-MERGE-MODE COLOR-ERASE-MODE HISTOGRAM-VALUE HISTOGRAM-RED HISTOGRAM-GREEN HISTOGRAM-BLUE HISTOGRAM-ALPHA TRANSFORM-FORWARD TRANSFORM-BACKWARD INTERPOLATION-NONE INTERPOLATION-LINEAR INTERPOLATION-CUBIC PIXELS POINTS FOREGROUND-FILL BACKGROUND-FILL WHITE-FILL TRANSPARENT-FILL PATTERN-FILL RED-CHANNEL GREEN-CHANNEL BLUE-CHANNEL GRAY-CHANNEL INDEXED-CHANNEL ALPHA-CHANNEL GRADIENT-SEGMENT-RGB GRADIENT-SEGMENT-HSV-CCW GRADIENT-SEGMENT-HSV-CW EXPAND-AS-NECESSARY CLIP-TO-IMAGE CLIP-TO-BOTTOM-LAYER RUN-INTERACTIVE RUN-NONINTERACTIVE HISTOGRAM-VALUE HISTOGRAM-RED HISTOGRAM-GREEN HISTOGRAM-BLUE HISTOGRAM-ALPHA WRAP SMEAR BLACK SOBEL PREWITT GRADIENT ROBERTS DIFFERENTIAL LAPLACE GRADIENT-SEGMENT-LINEAR GRADIENT-SEGMENT-CURVED GRADIENT-SEGMENT-SINE GRADIENT-SEGMENT-SPHERE-INCREASING GRADIENT-SEGMENT-SPHERE-DECREASING ALL-HUES RED-HUES YELLOW-HUES GREEN-HUES CYAN-HUES BLUE-HUES MAGENTA-HUES FG-BG-RGB-MODE FG-BG-HSV-MODE FG-TRANSPARENT-MODE CUSTOM-MODE NORMAL-MODE DISSOLVE-MODE BEHIND-MODE MULTIPLY-MODE SCREEN-MODE OVERLAY-MODE DIFFERENCE-MODE ADDITION-MODE SUBTRACT-MODE DARKEN-ONLY-MODE LIGHTEN-ONLY-MODE HUE-MODE SATURATION-MODE COLOR-MODE VALUE-MODE DIVIDE-MODE DODGE-MODE BURN-MODE HARDLIGHT-MODE SOFTLIGHT-MODE GRAIN-EXTRACT-MODE GRAIN-MERGE-MODE COLOR-ERASE-MODE GRADIENT-LINEAR GRADIENT-BILINEAR GRADIENT-RADIAL GRADIENT-SQUARE GRADIENT-CONICAL-SYMMETRIC GRADIENT-CONICAL-ASYMMETRIC GRADIENT-SHAPEBURST-ANGULAR GRADIENT-SHAPEBURST-SPHERICAL GRADIENT-SHAPEBURST-DIMPLED GRADIENT-SPIRAL-CLOCKWISE GRADIENT-SPIRAL-ANTICLOCKWISE REPEAT-NONE REPEAT-SAWTOOTH REPEAT-TRIANGULAR ALL-HUES RED-HUES YELLOW-HUES GREEN-HUES CYAN-HUES BLUE-HUES MAGENTA-HUES NONE LZW PACKBITS DEFLATE JPEG PIXELS POINTS GRADIENT-SEGMENT-LINEAR GRADIENT-SEGMENT-CURVED GRADIENT-SEGMENT-SINE GRADIENT-SEGMENT-SPHERE-INCREASING GRADIENT-SEGMENT-SPHERE-DECREASING CHANNEL-OP-ADD CHANNEL-OP-SUBTRACT CHANNEL-OP-REPLACE CHANNEL-OP-INTERSECT TRANSFORM-FORWARD TRANSFORM-BACKWARD INTERPOLATION-NONE INTERPOLATION-LINEAR INTERPOLATION-CUBIC TRANSFORM-FORWARD TRANSFORM-BACKWARD INTERPOLATION-NONE INTERPOLATION-LINEAR INTERPOLATION-CUBIC EXPAND-AS-NECESSARY CLIP-TO-IMAGE CLIP-TO-BOTTOM-LAYER INTERNAL PLUGIN EXTENSION TEMPORARY MESSAGE-BOX CONSOLE ERROR-CONSOLE ORIENTATION-HORIZONTAL ORIENTATION-VERTICAL RED-CHANNEL GREEN-CHANNEL BLUE-CHANNEL GRAY-CHANNEL INDEXED-CHANNEL ALPHA-CHANNEL CHANNEL-OP-ADD CHANNEL-OP-SUBTRACT CHANNEL-OP-REPLACE CHANNEL-OP-INTERSECT WRAP SMEAR BLACK RED-CHANNEL GREEN-CHANNEL BLUE-CHANNEL GRAY-CHANNEL INDEXED-CHANNEL ALPHA-CHANNEL CHANNEL-OP-ADD CHANNEL-OP-SUBTRACT CHANNEL-OP-REPLACE CHANNEL-OP-INTERSECT NORMAL-MODE DISSOLVE-MODE BEHIND-MODE MULTIPLY-MODE SCREEN-MODE OVERLAY-MODE DIFFERENCE-MODE ADDITION-MODE SUBTRACT-MODE DARKEN-ONLY-MODE LIGHTEN-ONLY-MODE HUE-MODE SATURATION-MODE COLOR-MODE VALUE-MODE DIVIDE-MODE DODGE-MODE BURN-MODE HARDLIGHT-MODE SOFTLIGHT-MODE GRAIN-EXTRACT-MODE GRAIN-MERGE-MODE COLOR-ERASE-MODE IMAGE-CLONE PATTERN-CLONE WRAP SMEAR BLACK COLOR DODGE BURN SHADOWS MIDTONES HIGHLIGHTS MASK-APPLY MASK-DISCARD VALUE-LUT RED-LUT GREENLUT BLUE-LUT ALPHA-LUT BLUR-CONVOLVE SHARPEN-CONVOLVE CHANNEL-OP-ADD CHANNEL-OP-SUBTRACT CHANNEL-OP-REPLACE CHANNEL-OP-INTERSECT NATURAL FOREGROUND BACKGROUND HISTOGRAM-VALUE HISTOGRAM-RED HISTOGRAM-GREEN HISTOGRAM-BLUE HISTOGRAM-ALPHA MESSAGE-BOX CONSOLE ERROR-CONSOLE UTF- RGB GRAY INDEXED ADD-WHITE-MASK ADD-BLACK-MASK ADD-ALPHA-MASK ADD-ALPHA-TRANSFER-MASK ADD-SELECTION-MASK ADD-COPY-MASK ROTATE- ROTATE- ROTATE- RGB-IMAGE RGBA-IMAGE GRAY-IMAGE GRAYA-IMAGE INDEXED-IMAGE INDEXEDA-IMAGE RUN-INTERACTIVE RUN-NONINTERACTIVE TRANSFORM-FORWARD TRANSFORM-BACKWARD INTERPOLATION-NONE INTERPOLATION-LINEAR INTERPOLATION-CUBIC BLACK BG PIXELS POINTS ROTATE- ROTATE- ROTATE- NORMAL-MODE DISSOLVE-MODE BEHIND-MODE MULTIPLY-MODE SCREEN-MODE OVERLAY-MODE DIFFERENCE-MODE ADDITION-MODE SUBTRACT-MODE DARKEN-ONLY-MODE LIGHTEN-ONLY-MODE HUE-MODE SATURATION-MODE COLOR-MODE VALUE-MODE DIVIDE-MODE DODGE-MODE BURN-MODE HARDLIGHT-MODE SOFTLIGHT-MODE GRAIN-EXTRACT-MODE GRAIN-MERGE-MODE COLOR-ERASE-MODE NONE LZW PACKBITS DEFLATE JPEG SQUARES HEXAGONS OCTAGONS SMOOTH ROUGH BW FG-BG FG-BUCKET-FILL BG-BUCKET-FILL PATTERN-BUCKET-FILL NORMAL-MODE DISSOLVE-MODE BEHIND-MODE MULTIPLY-MODE SCREEN-MODE OVERLAY-MODE DIFFERENCE-MODE ADDITION-MODE SUBTRACT-MODE DARKEN-ONLY-MODE LIGHTEN-ONLY-MODE HUE-MODE SATURATION-MODE COLOR-MODE VALUE-MODE DIVIDE-MODE DODGE-MODE BURN-MODE HARDLIGHT-MODE SOFTLIGHT-MODE GRAIN-EXTRACT-MODE GRAIN-MERGE-MODE COLOR-ERASE-MODE CHANNEL-OP-ADD CHANNEL-OP-SUBTRACT CHANNEL-OP-REPLACE CHANNEL-OP-INTERSECT ORIENTATION-HORIZONTAL ORIENTATION-VERTICAL NORMAL-MODE DISSOLVE-MODE BEHIND-MODE MULTIPLY-MODE SCREEN-MODE OVERLAY-MODE DIFFERENCE-MODE ADDITION-MODE SUBTRACT-MODE DARKEN-ONLY-MODE LIGHTEN-ONLY-MODE HUE-MODE SATURATION-MODE COLOR-MODE VALUE-MODE DIVIDE-MODE DODGE-MODE BURN-MODE HARDLIGHT-MODE SOFTLIGHT-MODE GRAIN-EXTRACT-MODE GRAIN-MERGE-MODE COLOR-ERASE-MODE RED-CHANNEL GREEN-CHANNEL BLUE-CHANNEL GRAY-CHANNEL INDEXED-CHANNEL ALPHA-CHANNEL NO-DITHER FS-DITHER FSLOWBLEED-DITHER FIXED-DITHER MAKE-PALETTE REUSE-PALETTE WEB-PALETTE MONO-PALETTE CUSTOM-PALETTE SHADOWS MIDTONES HIGHLIGHTS ORIENTATION-HORIZONTAL ORIENTATION-VERTICAL CHANNEL-OP-ADD CHANNEL-OP-SUBTRACT CHANNEL-OP-REPLACE CHANNEL-OP-INTERSECT CHANNEL-OP-ADD CHANNEL-OP-SUBTRACT CHANNEL-OP-REPLACE CHANNEL-OP-INTERSECT RGB GRAY INDEXED NORMAL-MODE DISSOLVE-MODE BEHIND-MODE MULTIPLY-MODE SCREEN-MODE OVERLAY-MODE DIFFERENCE-MODE ADDITION-MODE SUBTRACT-MODE DARKEN-ONLY-MODE LIGHTEN-ONLY-MODE HUE-MODE SATURATION-MODE COLOR-MODE VALUE-MODE DIVIDE-MODE DODGE-MODE BURN-MODE HARDLIGHT-MODE SOFTLIGHT-MODE GRAIN-EXTRACT-MODE GRAIN-MERGE-MODE COLOR-ERASE-MODE ORIENTATION-HORIZONTAL ORIENTATION-VERTICAL TRANSFORM-FORWARD TRANSFORM-BACKWARD INTERPOLATION-NONE INTERPOLATION-LINEAR INTERPOLATION-CUBIC PIXELS POINTS ORIENTATION-HORIZONTAL ORIENTATION-VERTICAL CUSTOM REVERSE SHIFT OFFSET-BACKGROUND OFFSET-TRANSPARENT NORMAL-MODE DISSOLVE-MODE BEHIND-MODE MULTIPLY-MODE SCREEN-MODE OVERLAY-MODE DIFFERENCE-MODE ADDITION-MODE SUBTRACT-MODE DARKEN-ONLY-MODE LIGHTEN-ONLY-MODE HUE-MODE SATURATION-MODE COLOR-MODE VALUE-MODE DIVIDE-MODE DODGE-MODE BURN-MODE HARDLIGHT-MODE SOFTLIGHT-MODE GRAIN-EXTRACT-MODE GRAIN-MERGE-MODE COLOR-ERASE-MODE FOREGROUND-FILL BACKGROUND-FILL WHITE-FILL TRANSPARENT-FILL PATTERN-FILL ORIENTATION-HORIZONTAL ORIENTATION-VERTICAL NONE LZW PACKBITS MSB LSB LSB MSB ORIENTATION-HORIZONTAL ORIENTATION-VERTICAL TRANSFORM-FORWARD TRANSFORM-BACKWARD INTERPOLATION-NONE INTERPOLATION-LINEAR INTERPOLATION-CUBIC GRADIENT-SEGMENT-RGB GRADIENT-SEGMENT-HSV-CCW GRADIENT-SEGMENT-HSV-CW HISTOGRAM-VALUE HISTOGRAM-RED HISTOGRAM-GREEN HISTOGRAM-BLUE HISTOGRAM-ALPHA MASK-APPLY MASK-DISCARD RGB-IMAGE RGBA-IMAGE GRAY-IMAGE GRAYA-IMAGE INDEXED-IMAGE INDEXEDA-IMAGE TRUE FALSE


" Default highlighting
if version >= 508 || !exists("did_gimpFunction_syntax_inits")
if version < 508
let did_gimpFunction_syntax_inits = 1
command -nargs=+ HiLink hi link <args>
else
command -nargs=+ HiLink hi def link <args>
endif

HiLink gimpScrifuFunc Function
HiLink gimpScrifuConst Type
delcommand HiLink
endif


Solltest du als "gimpFunction.vim" in Pfad_zu_vim/syntax speichern.

MfG
Klaus

MichaJo
03.11.2005, 02:59
Hallo Klaus,
suuuuper!
Hat geklappt.
Das macht's gleich viel übersichtlicher.


Vielen Dank


Gruß

Micha

Edit:
Da ist ein kleiner bug. In dem dump sind folgende Kommentare:
The name of the callback registered for this popup
The name of the callback registered for this progress

Die werden als keywords mit übernommen und highlighted.
Oder hab' ich da was falsch gemacht?
Ich hab' die für mich jetzt erst mal manuell gelöscht.

Gruß

Micha

klaus_harrer
03.11.2005, 10:55
Hallo MichaJo

Danke, werde mich darum kümmern.

MfG
Klaus

klaus_harrer
09.11.2005, 10:42
Hallo

MichaJo hat noch einige kleinere Bugs gefunden. Hier das aktuelle Script.


#
#+
#+ gimpFunction vim script
#+ Copyright (C) 2005 Klaus Harrer
#+
#+ 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 2
#+ 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
#+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
#+ GNU General Public License for more details.
#+
#+ You should have received a copy of the GNU General Public License
#+ along with this program; if not, write to the Free Software
#+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#+
#+

#!/bin/sh
#set -x -v

#Variable Area

VERSION=0.04

TMP_FILE=/tmp/gimpScriFu-$(gimp -v | sed 's/ /-/' )

if [ ! -e $TMP_FILE ]
then
gimp -i --batch-interpreter 'plug_in_script_fu_eval' -b '(gimp-procedural-db-dump "'$TMP_FILE'")' '(gimp-quit 0)' 2>/dev/null
fi

GIMP_CONSTANT=$(grep -B 1 deprecated! $TMP_FILE | grep register |cut -d \" -f2 | sed -e 's/^/ grep -v "\/</g' -e 's/$/ |/g' | sed 's/ |/\/>" |/g' | tr -d \\n | sed 's/..$//' | sed "s:|:$TMP_FILE | :" | sh | grep : | grep [A-Z][A-Z] | cut -d \: -f1,2 | cut -d \: -f2 | grep "([0-9])" | sed 's/([0-9]*)//g' | tr -d \{\@\,\}\"\'\`\(\)[a-z]\- | tr -s \ \\n | sed -e 's/\.//g' -e 's/^[A-Z]$//g' -e 's/GIMP_//g' -e 's/_/-/g' | sort | uniq | tr -s \\n \ | sed 's/\ -\ //')

GIMP_FUNCTION=$(grep -B 1 deprecated! $TMP_FILE | grep register |cut -d \" -f2 | sed -e 's/^/ grep -v "\/</g' -e 's/$/ |/g' | sed 's/ |/\/>" |/g' | tr -d \\n | sed 's/..$//' | sed "s:|:$TMP_FILE | :" | sh | grep register | grep -v "<2>" | cut -d \" -f2 | grep -v "This procedure" | grep -v -e perl -e python -e tiny -e script_fu | sed 's/_/-/g' | tr -s \\n \ | sed 's/<1>//g' | sort)
rm -rf $TMP_FILE

#generate Area

echo -e "\" Vim syntax file \n\" Language: Script-Fu extension for ($(gimp -v)) \n\" Maintainer: Klaus Harrer <klaus_harrer@web.de>\n\" Last Change: $(date "+%Y-%m-%d")\n\" Version: $VERSION\n\n\n$(echo syn keyword gimpScrifuFunc) $GIMP_FUNCTION\n\n\n$(echo syn keyword gimpScrifuConst) $GIMP_CONSTANT\n\n" > gimpFunction.vim


echo -e "\" Default highlighting\nif version >= 508 || !exists(\"did_gimpFunction_syntax_inits\")\n if version < 508\n\tlet did_gimpFunction_syntax_inits = 1\n\tcommand -nargs=+ HiLink hi link <args>\n else\n\tcommand -nargs=+ HiLink hi def link <args>\n\tendif\n\n\tHiLink gimpScrifuFunc Function\n\tHiLink gimpScrifuConst Type\n\tdelcommand HiLink\n\tendif" >> gimpFunction.vim



echo -e "[de] Kopieren sie die Datei \"gimpFunktion.vim\" in den Ordner /usr/share/../vimxx/syntax/ b.z.w ~/.vim/../syntax/\nund fuegen sie folgende Zeile in der Datei /usr/share/../vimxx/syntax/scheme.vim b.z.w ~/.vim/../syntax/scheme.vim\n\n\t\033[0;31mruntime! syntax/gimpFunction.vim\033[0m\nhinzu.\n\n[en]Copy the file\"gimpFunktion.vim\" in folder /usr/share/../vimxx/syntax/ as the case may be ~/.vim/../syntax/\nand append follow row in file /usr/share/../vimxx/syntax/scheme.vim as the case may be ~/.vim/../syntax/scheme.vim\n\n\t\033[0;31mruntime! syntax/gimpFunction.vim\033[0m\n"


MfG
Klaus