diff options
author | James An | 2014-08-11 04:34:47 -0400 |
---|---|---|
committer | James An | 2014-08-11 04:34:47 -0400 |
commit | d577dc210c1d8cd5da9aa334c3f79234101683e4 (patch) | |
tree | 5c5261e3368fab0a031c5135efb2b6f0b2c15c4c | |
download | aur-d577dc210c1d8cd5da9aa334c3f79234101683e4.tar.gz |
Added initial version of geany-openscad package.
-rw-r--r-- | .SRCINFO | 14 | ||||
-rw-r--r-- | PKGBUILD | 16 | ||||
-rw-r--r-- | geany-openscad.install | 35 |
3 files changed, 65 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..7fa9022cde8c --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,14 @@ +pkgbase = geany-openscad + pkgdesc = Syntax highlighting and auto-completion for OpenSCAD files in Geany. + pkgver = 20140305 + pkgrel = 2 + url = http://www.thingiverse.com/thing:263620 + install = geany-openscad.install + arch = any + license = CCPL:by-sa + depends = geany + source = http://www.thingiverse.com/download:479705 + md5sums = b97833567bdc0e084ae226ca7dc0a722 + +pkgname = geany-openscad + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..c71033f6373d --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,16 @@ +# Maintainer: James An <james@jamesan.ca> +pkgname=geany-openscad +pkgver=20140305 +pkgrel=1 +pkgdesc="Syntax highlighting and auto-completion for OpenSCAD files in Geany." +arch=('i686' 'x86_64') +url='http://www.thingiverse.com/thing:263620' +license=('CCPL:by-sa') +depends=('geany') +install="$pkgname.install" +source=('http://www.thingiverse.com/download:479705') +md5sums=('b97833567bdc0e084ae226ca7dc0a722') + +package() { + install -Dm644 'download:479705' "$pkgdir/usr/share/geany/filetypes.OpenSCAD.conf" +} diff --git a/geany-openscad.install b/geany-openscad.install new file mode 100644 index 000000000000..3df4b448c7fc --- /dev/null +++ b/geany-openscad.install @@ -0,0 +1,35 @@ +#!/bin/sh + +declare -r file='/usr/share/geany/filetype_extensions.conf' +declare -r heading='Extensions' +declare -r category='Script' +declare -r key='OpenSCAD' +declare -r value='*.scad' + +post_install() { + # insert filetype line if it isn't present, otherwise replace it. + if [ -z "`grep "^${key}=" "${file}"`" ] ; then + local before="`sed -n "1,/^\[${heading}]/p" "${file}"`" + local section="`sed "1,/^\[${heading}]/d;/^\s*$/,\\\$d" $file | \ + cat - <(echo "${key}=${value};") | \ + sort -f`" + local after="`sed "1,/^\[${heading}]/d;1,/^\s*$/d" "${file}"`" + + echo "${before}" "${section}" $'\n' $'\n' "${after}" > "${file}" + else + sed -i "s/^\(${key}=.*;\)/\1${value};/" "${file}" + fi + sed -i "s/^\(${category}=.*\)/\1${key};/" "${file}" +} + +pre_remove() { + # remove the *.scad pattern from the OpenSCAD file type. + sed -i "s/^\(${key}=.*\)\\${value};/\1/" "${file}" + + # if the OpenSCAD file type has no other patterns, + # remove it and its entry in the Script group. + if [ -z "`grep "^${key}=.+" "${file}"`" ] ; then + sed -i "/^${key}=/d" "${file}" + sed -i "s/^\(${category}=.*\)${key};\(.*\)$/\1\2/" "${file}" + fi +} |