summaryrefslogtreecommitdiff
path: root/linux/xmodmap/rev
blob: d14f5c9f5560ac8b7845716bf8fa03da1e300545 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#!/bin/bash

# Die Zeile in der die Revision stehen soll:
ZEILENNUMMER=10

case $1 in
  "") ;;
  "--help" | "-h")
      echo -e "Aufruf: $0"
      echo -e "»$0« wird ohne weiter Argumente aufgerufen und ändert in der Datei\nneo_de.xmodmap die Nummer der aktuellen Revision."
      echo -e "Im Anschluss sollten gemachte Änderungem per »svn commit« wie gewohnt\nübertragen werden."
      echo -e "\nNEO Tastaturlayout\tVer. 0.2\tMärz 2008\t\t\tREV"
    exit;;
  *)  echo -e "Aufruf: »$0«"
      echo -e "»$0 --help« gibt Ihnen mehr Informationen."
    exit 1
esac

# Sicherung der aktuellen Arbeitskopie
cp -a neo_de.xmodmap neo_de.xmodmap.bak

#    Abfragen der nächsten Revisionsnummer
#r=$(expr $(svn info | head -5 | tail -1 | cut -f2 -d\:) + 1)
r=$(( $(svn info | sed -n 5~p | cut -f2 -d\:) + 1))

#    Revisionsnummer in neo_de.xmodmap eintragen
head -n $(( $ZEILENNUMMER - 1)) neo_de.xmodmap > neo_de.xmodmap.tmp && \
echo -e "!! The german NEO Layout Revision $r from $(date)" >> neo_de.xmodmap.tmp && \
tail -n +$(( $ZEILENNUMMER + 1)) neo_de.xmodmap >> neo_de.xmodmap.tmp && \
rm neo_de.xmodmap && mv neo_de.xmodmap.tmp neo_de.xmodmap && \
echo -e "Aktuelle Revisionsnummer auf $r geändert.\nDie Änderung sollte nun per »svn commit« wie gewohnt übertragen werden." || \
(echo -e "FEHLER! Bitte Programmierer kontaktieren." && cp -a neo_de.xmodmap.bak neo_de.xmodmap)