Merge pull request 'Grafik-Cleanup' (#580) from grafik-cleanup into master
Reviewed-on: #580
|
@ -0,0 +1,11 @@
|
|||
Unless specified otherwise, all the artwork in this directory and its
|
||||
subdirectories is licensed under the CC-BY-SA 3.0 license. You can obtain a copy
|
||||
of this license at https://creativecommons.org/licenses/by-sa/3.0/legalcode .
|
||||
|
||||
Some Pictures are based on
|
||||
https://commons.wikimedia.org/wiki/File:KB_Germany.svg (version from 2007)
|
||||
which is also CC-BY-SA 3.0-licensed.
|
||||
|
||||
Unless specified otherwise, Scripts generating graphics are licensed under GPLv3
|
||||
or later, which is provided in the COPYING file in the top level directory of
|
||||
this repository.
|
|
@ -1,84 +1,22 @@
|
|||
EBENEN=$(foreach i, 1 1Caps 2 2Caps 3 4 5 6, tastatur_neo_Ebene${i}.svg)
|
||||
EBENENSVG=$(foreach file, ${EBENEN}, tastatur3d/${file})
|
||||
HAUPT=$(foreach file, ${EBENEN}, tastatur3d/hauptfeld/${file})
|
||||
ZIFFERN=$(foreach file, ${EBENEN}, tastatur3d/ziffernfeld/${file})
|
||||
HAUPTZIFFERN=$(foreach file, ${EBENEN}, tastatur3d/haupt_ziffern_feld/${file})
|
||||
EBENENPDF=$(addsuffix .pdf,$(basename ${EBENENSVG}))
|
||||
EBENENPNG=$(addsuffix .png,$(basename ${EBENENSVG} ${HAUPT} ${ZIFFERN} ${HAUPTZIFFERN}))
|
||||
# directories to recursively
|
||||
SUBDIRS=\
|
||||
aufkleber \
|
||||
aufsteller \
|
||||
bilder-einzeln \
|
||||
bilder-uebersicht \
|
||||
handbuch-cover \
|
||||
heatmap \
|
||||
logos \
|
||||
maskottchen
|
||||
|
||||
SVGFILES=$(filter-out ./tastatur3d/tastatur_neo_%.svg, $(shell find -name "*.svg")) ref2svg/ref2svg.svg
|
||||
PDFFILES=$(filter-out ./promotion-material/Flyer-fs/neo_logo.pdf, $(addsuffix .pdf,$(basename ${SVGFILES})))
|
||||
PNGFILES=$(addsuffix .png,$(basename ${SVGFILES}))
|
||||
default_rule: all
|
||||
|
||||
default: svg pdf png
|
||||
ref2svg/ref2svg.svg: ref2svg/ref2svg.pl ../A-REFERENZ-A/neo20.txt
|
||||
cd ref2svg/; \
|
||||
./ref2svg.pl > ref2svg.svg
|
||||
svg: ref2svg/ref2svg.svg
|
||||
pdf: ${PDFFILES} ${EBENENPDF} svg
|
||||
png: ${PNGFILES} ${EBENENPNG} www svg
|
||||
www: $(addsuffix .png,$(basename $(shell find ../www -name "*.svg")))
|
||||
TARGETS=all svg svg-path pdf png clean
|
||||
|
||||
clean: cleansvg cleanpng cleanpdf
|
||||
.PHONY: ${TARGETS}
|
||||
|
||||
cleanebenen:
|
||||
rm -f ${EBENENSVG} ${EBENENPNG} ${EBENENPDF}
|
||||
$(foreach dir, hauptfeld ziffernfeld haupt_ziffern_feld, if [ -d tastatur3d/${dir} ];then rmdir tastatur3d/${dir}; fi;)
|
||||
|
||||
cleansvg:
|
||||
rm -f ref2svg/ref2svg.svg
|
||||
|
||||
cleanpng: cleanebenen
|
||||
rm -f ${PNGFILES}
|
||||
|
||||
cleanpdf:
|
||||
rm -f ${PDFFILES}
|
||||
|
||||
.SECONDARY:
|
||||
|
||||
tastatur3d/tastatur_neo_Ebene%.svg: tastatur3d/tastatur_neo_alle_Ebenen.svg
|
||||
/bin/echo -e '/inkscape:label="Ebene $*"\n.+1\ns/none/inline/g\nw $@'|ed $<
|
||||
|
||||
tastatur3d/hauptfeld/%.png: tastatur3d/%.svg
|
||||
mkdir -p tastatur3d/hauptfeld
|
||||
inkscape --without-gui --export-id="Haupttastaturfeld" --export-png=$@ -h200 tastatur3d/$*.svg
|
||||
optipng $@
|
||||
|
||||
tastatur3d/ziffernfeld/%.png: tastatur3d/%.svg
|
||||
mkdir -p tastatur3d/ziffernfeld
|
||||
inkscape --without-gui --export-id="Ziffernblock" --export-png=$@ -h200 tastatur3d/$*.svg
|
||||
optipng $@
|
||||
|
||||
tastatur3d/haupt_ziffern_feld/%.png: tastatur3d/hauptfeld/%.png tastatur3d/ziffernfeld/%.png
|
||||
mkdir -p tastatur3d/haupt_ziffern_feld
|
||||
convert -splice 20x0 -background transparent -colors 256 -type Palette +dither -alpha off -alpha on tastatur3d/ziffernfeld/$*.png /tmp/$*_tmp.png
|
||||
convert +append tastatur3d/hauptfeld/$*.png /tmp/$*_tmp.png $@
|
||||
rm /tmp/$*_tmp.png
|
||||
optipng $@
|
||||
|
||||
%.pdf: %.svg
|
||||
inkscape --without-gui --export-pdf=$@ $<
|
||||
|
||||
../www/%.png: ../www/%.svg
|
||||
inkscape --without-gui --export-png=$@ $<
|
||||
optipng $@
|
||||
|
||||
%.png: %.svg
|
||||
inkscape --without-gui --export-png=$@ -w1000 $<
|
||||
optipng $@
|
||||
|
||||
FLATPNGS:=$(patsubst %.svg,%.png,$(wildcard flat/tastatur_e*.svg))
|
||||
|
||||
$(FLATPNGS): flat/tastatur.css flat/tastatur_base.svg
|
||||
$(FLATPNGS): %.png: %.svg
|
||||
sed -e "/^@import url('tastatur.css');$$/{r flat/tastatur.css" -e 'd;}' "$<" > "$<.imported.svg"
|
||||
inkscape --without-gui --export-png="$@" "$<.imported.svg"
|
||||
optipng "$@"
|
||||
rm "$<.imported.svg"
|
||||
|
||||
|
||||
.PHONY: default clean \
|
||||
pdf cleanpdf \
|
||||
png cleanpng \
|
||||
ebenen cleanebenen \
|
||||
svg cleansvg
|
||||
# build the target of the same name in each subdirectory
|
||||
$(TARGETS):
|
||||
for dir in $(SUBDIRS); do \
|
||||
$(MAKE) -C $$dir $@; \
|
||||
done
|
||||
|
|
|
@ -1,49 +0,0 @@
|
|||
<?php
|
||||
# Referenz laden
|
||||
$reference = file_get_contents('http://neo-layout.org/svn/A-REFERENZ-A/neo20.txt');
|
||||
|
||||
# Haupttastatur finden
|
||||
preg_match('/┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────────┐\n(.*)\n└──────┴──────┴──────┴──────────────────────────────────────┴──────┴──────┴──────┴──────┘/s', $reference, $found);
|
||||
# Tastaturreihen aufspalten
|
||||
$rows = preg_split('/\n├.*\n/', $found[1]);
|
||||
|
||||
$n = 1;
|
||||
# Für jede Reihe:
|
||||
foreach ($rows as $row) {
|
||||
$sub_rows = preg_split('/\n/', $row);
|
||||
|
||||
# Finde Zeichen in beiden Zeilen.
|
||||
# U030F ist ein combining-character und tritt zusammen mit einem Leerzeichen auf, damit es angezeigt wird
|
||||
preg_match_all('/│(.) (\x{030F} |.) (.)(?=│)/u', $sub_rows[0], $r1);
|
||||
preg_match_all('/│(.) (.) (.)(?=│)/u', $sub_rows[1], $r2);
|
||||
|
||||
# Für jede Taste:
|
||||
for ($i = 0; $i < count($r1[0]); $i++) {
|
||||
# Überspringe Enter-Taste, die nicht dazugehört
|
||||
if ($r1[2][$i] == "\xE2\x86\xB2" && $i == 11) {
|
||||
$n--;
|
||||
continue;
|
||||
}
|
||||
# Lade die Zeichen der beiden Zeilen in das Array, geordnet nach ihrer Ebene
|
||||
$key[$n+$i.'_1'] = $r2[1][$i];
|
||||
$key[$n+$i.'_2'] = $r1[1][$i];
|
||||
$key[$n+$i.'_3'] = $r2[2][$i];
|
||||
$key[$n+$i.'_4'] = $r1[2][$i];
|
||||
$key[$n+$i.'_5'] = $r2[3][$i];
|
||||
$key[$n+$i.'_6'] = $r1[3][$i];
|
||||
}
|
||||
$n += $i;
|
||||
}
|
||||
|
||||
# Lade das "rohe" SVG
|
||||
$svg = file_get_contents('neo_raw.svg');
|
||||
|
||||
# Ersetze die Platzhalter mit den Zeichen aus dem Array
|
||||
foreach ($key as $search => $replace) {
|
||||
# Die Zeichen werden in HTML-NCRs (numeric character references) umgewandelt, damit sie nicht falsch interpretiert werden.
|
||||
$svg = preg_replace('/{'.preg_quote($search).'}/', mb_encode_numericentity ($replace, array (0x0, 0xffff, 0, 0xffff), 'UTF-8'), $svg);
|
||||
}
|
||||
|
||||
# Speichern und Fertig
|
||||
file_put_contents('neo.svg', $svg);
|
||||
?>
|
|
@ -0,0 +1,36 @@
|
|||
# Readme
|
||||
|
||||
Die meisten der Neo-Grafiken gibt es in vier Formaten:
|
||||
- svg
|
||||
- svg mit Text in Pfade umgewandelt
|
||||
- png
|
||||
- pdf
|
||||
|
||||
In diesem Reposity befinden sich aber nur svgs und Skripte, mit denen man noch
|
||||
mehr svgs (aus Treibern oder Referenzen) und daraus dann die anderen Formate
|
||||
erstellt. Die fertigen Grafiken befinden sich aber auf
|
||||
https://dl.neo-layout.org/grafik .
|
||||
|
||||
Um alle Bilder erzeugen können, benötigt man eine Vielzahl an Abhängigkeiten:
|
||||
- make
|
||||
- inkscape
|
||||
- optipng
|
||||
- imagemagick
|
||||
- libicns
|
||||
- libreoffice
|
||||
- sed
|
||||
- ed
|
||||
- setxkbmap und xkbcomp
|
||||
- python mit numpy, pandas, matplotlib und seaborn
|
||||
- perl mit XML::Writer
|
||||
- php
|
||||
- Linux Libertine
|
||||
- Gentium Plus Compact
|
||||
- DejaVu Sans Mono
|
||||
- vermutlich noch weitere Schriften
|
||||
|
||||
Sind alle Abhängigkeiten erfüllt, sollte man alle Bilder mit `make` erstellen
|
||||
können. Man kann `make` auch in jedem Unterverzeichnis ausführen, um jeweils
|
||||
weniger Bilder zu generieren. Außerdem können gewünschte Formate oder gar
|
||||
Dateinamen direkt als Target übergeben werden•
|
||||
`
|
Before Width: | Height: | Size: 241 KiB After Width: | Height: | Size: 241 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 243 KiB After Width: | Height: | Size: 243 KiB |
Before Width: | Height: | Size: 437 KiB After Width: | Height: | Size: 437 KiB |
Before Width: | Height: | Size: 680 KiB After Width: | Height: | Size: 680 KiB |
Before Width: | Height: | Size: 352 KiB After Width: | Height: | Size: 352 KiB |
|
@ -0,0 +1,11 @@
|
|||
all: default
|
||||
|
||||
%-grau-1234.svg: ../../A-REFERENZ-A/%.txt
|
||||
./alle-grau-1234.pl $< > $@
|
||||
|
||||
EXTRASVG=\
|
||||
neo20-grau-1234.svg \
|
||||
bone-grau-1234.svg \
|
||||
neoqwertz-grau-1234.svg
|
||||
|
||||
include ../common.mk
|
|
@ -1,4 +1,4 @@
|
|||
#!/usr/bin/perl -wT
|
||||
#!/usr/bin/env -S perl -wT
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
@ -63,7 +63,7 @@ exit;
|
|||
# parse reference and return multi-array
|
||||
sub parse_ref {
|
||||
my @letters;
|
||||
open REF, "../../A-REFERENZ-A/neo20.txt"
|
||||
open REF, $ARGV[0]
|
||||
or die 'Error opening reference: '.$!;
|
||||
while (<REF>) {
|
||||
my @layer;
|
Before Width: | Height: | Size: 687 KiB After Width: | Height: | Size: 687 KiB |
Before Width: | Height: | Size: 679 KiB After Width: | Height: | Size: 679 KiB |
Before Width: | Height: | Size: 1.5 MiB After Width: | Height: | Size: 1.5 MiB |
Before Width: | Height: | Size: 954 KiB After Width: | Height: | Size: 954 KiB |
Before Width: | Height: | Size: 435 KiB After Width: | Height: | Size: 435 KiB |
Before Width: | Height: | Size: 310 KiB After Width: | Height: | Size: 310 KiB |
Before Width: | Height: | Size: 1.5 MiB After Width: | Height: | Size: 1.5 MiB |
Before Width: | Height: | Size: 433 KiB After Width: | Height: | Size: 433 KiB |
|
@ -0,0 +1,2 @@
|
|||
all: default
|
||||
include ../common.mk
|
Before Width: | Height: | Size: 289 KiB After Width: | Height: | Size: 289 KiB |
Before Width: | Height: | Size: 567 KiB After Width: | Height: | Size: 567 KiB |
|
@ -0,0 +1,58 @@
|
|||
EBENENNAMEN=1 1Caps 2 2Caps 3 4 5 6
|
||||
BONE=$(foreach i, ${EBENENNAMEN}, bone-ebene${i}.svg)
|
||||
NEO=$(foreach i, ${EBENENNAMEN}, neo-ebene${i}.svg)
|
||||
KYRILLISCH=$(foreach i, ${EBENENNAMEN}, kyrillisch-ebene${i}.svg)
|
||||
|
||||
EBENENSVG=${BONE} ${NEO} ${KYRILLISCH}
|
||||
HAUPT=$(foreach file, ${EBENENSVG}, hauptfeld/${file})
|
||||
ZIFFERN=$(foreach file, ${EBENENSVG}, ziffernfeld/${file})
|
||||
HAUPTZIFFERN=$(foreach file, ${EBENENSVG}, haupt_ziffern_feld/${file})
|
||||
EBENENPDF=$(addsuffix .pdf,$(basename ${EBENENSVG}))
|
||||
EBENENPNG=$(addsuffix .png,$(basename ${EBENENSVG} ${HAUPT} ${ZIFFERN} ${HAUPTZIFFERN}))
|
||||
EBENENSVGPATH=$(addsuffix .path.svg,$(basename ${EBENENSVG}))
|
||||
|
||||
all: svg pdf png svg-path
|
||||
svg: ${EBENENSVG}
|
||||
svg-path: ${EBENENSVGPATH}
|
||||
pdf: ${EBENENPDF}
|
||||
png: ${EBENENPNG}
|
||||
|
||||
clean:
|
||||
rm -f ${EBENENSVG} ${EBENENPNG} ${EBENENPDF} ${EBENENSVGPATH}
|
||||
$(foreach dir, hauptfeld ziffernfeld haupt_ziffern_feld, if [ -d ${dir} ];then rmdir ${dir}; fi;)
|
||||
|
||||
$(BONE): bone-ebene%.svg: bone.svg.template
|
||||
echo -e '/inkscape:label="Ebene $*"\n.+1\ns/none/inline/g\nw $@'|ed $<
|
||||
|
||||
$(NEO): neo-ebene%.svg: neo.svg.template
|
||||
echo -e '/inkscape:label="Ebene $*"\n.+1\ns/none/inline/g\nw $@'|ed $<
|
||||
|
||||
$(KYRILLISCH): kyrillisch-ebene%.svg: kyrillisch.svg.template
|
||||
echo -e '/inkscape:label="Ebene $*"\n.+1\ns/none/inline/g\nw $@'|ed $<
|
||||
|
||||
hauptfeld/%.png: %.svg
|
||||
mkdir -p hauptfeld
|
||||
inkscape --export-id="Haupttastaturfeld" --export-filename=$@ --export-height=200 $<
|
||||
optipng $@
|
||||
|
||||
ziffernfeld/%.png: %.svg
|
||||
mkdir -p ziffernfeld
|
||||
inkscape --export-id="Ziffernblock" --export-filename=$@ --export-height=200 $<
|
||||
optipng $@
|
||||
|
||||
haupt_ziffern_feld/%.png: hauptfeld/%.png ziffernfeld/%.png
|
||||
mkdir -p haupt_ziffern_feld
|
||||
convert -splice 20x0 -background transparent -colors 256 -type Palette +dither -alpha off -alpha on ziffernfeld/$*.png /tmp/$*_tmp.png
|
||||
convert +append hauptfeld/$*.png /tmp/$*_tmp.png $@
|
||||
rm /tmp/$*_tmp.png
|
||||
optipng $@
|
||||
|
||||
%.pdf: %.svg
|
||||
inkscape --export-filename=$@ $<
|
||||
|
||||
%.png: %.svg
|
||||
inkscape --export-filename=$@ --export-width=1000 $<
|
||||
optipng $@
|
||||
|
||||
%.path.svg: %.svg
|
||||
inkscape --export-filename=$@ -T $<
|
After Width: | Height: | Size: 953 KiB |
Before Width: | Height: | Size: 1.1 MiB After Width: | Height: | Size: 1.1 MiB |
Before Width: | Height: | Size: 970 KiB After Width: | Height: | Size: 970 KiB |
|
@ -0,0 +1,18 @@
|
|||
# directories to recursively
|
||||
SUBDIRS=\
|
||||
3d \
|
||||
bunt-einfach \
|
||||
flat \
|
||||
grau
|
||||
|
||||
default_rule: all
|
||||
|
||||
TARGETS=all svg svg-path pdf png clean
|
||||
|
||||
.PHONY: ${TARGETS}
|
||||
|
||||
# build the target of the same name in each subdirectory
|
||||
$(TARGETS):
|
||||
for dir in $(SUBDIRS); do \
|
||||
$(MAKE) -C $$dir $@; \
|
||||
done
|
|
@ -0,0 +1,2 @@
|
|||
all: default
|
||||
include ../../common.mk
|
Before Width: | Height: | Size: 46 KiB After Width: | Height: | Size: 46 KiB |
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 42 KiB |
Before Width: | Height: | Size: 43 KiB After Width: | Height: | Size: 43 KiB |
|
@ -0,0 +1,49 @@
|
|||
VARIANTS=neo bone neo_qwertz neo_qwerty koy adnw
|
||||
LAYERS=1 2 3 4 5 6 Pseudoebene
|
||||
VERSIONS=numpad tkl
|
||||
SUFFIXES=$(foreach version, ${VERSIONS}, $(foreach layer, ${LAYERS}, -${layer}-${version}.svg))
|
||||
SVG_TARGETS=$(foreach suffix, ${SUFFIXES}, $(foreach variant, ${VARIANTS}, ${variant}${suffix}))
|
||||
SVG_PATH_TARGETS=$(addsuffix .path.svg,$(basename ${SVG_TARGETS}))
|
||||
PDF_TARGETS=$(addsuffix .pdf,$(basename ${SVG_TARGETS}))
|
||||
PNG_TARGETS=$(addsuffix .png,$(basename ${SVG_TARGETS}))
|
||||
SOURCES=generate-graphics.py replacements.py base.svg.template
|
||||
|
||||
default: all cleansvg cleanpycache
|
||||
|
||||
svg-path: ${SVG_PATH_TARGETS}
|
||||
svg: ${SVG_TARGETS}
|
||||
pdf: ${PDF_TARGETS}
|
||||
png: ${PNG_TARGETS}
|
||||
|
||||
$(foreach suffix, ${SUFFIXES}, %${suffix}) &: ${SOURCES}
|
||||
@echo "Erzeuge $@."
|
||||
./generate-graphics.py `echo $@ | cut -d - -f 1` numpad
|
||||
./generate-graphics.py `echo $@ | cut -d - -f 1`
|
||||
|
||||
%.path.svg: %.svg
|
||||
inkscape --export-filename=$@ -T $<
|
||||
|
||||
%.pdf: %.svg
|
||||
inkscape --export-filename=$@ $<
|
||||
|
||||
%.png: %.svg
|
||||
inkscape --export-filename=$@ --export-height=183 $<
|
||||
optipng $@
|
||||
|
||||
all: svg-path svg pdf png
|
||||
|
||||
cleansvgpath:
|
||||
rm -f ${SVG_PATH_TARGETS}
|
||||
|
||||
cleansvg:
|
||||
rm -f ${SVG_TARGETS}
|
||||
|
||||
cleanpng:
|
||||
rm -f ${PNG_TARGETS}
|
||||
|
||||
cleanpdf:
|
||||
rm -f ${PDF_TARGETS}
|
||||
cleanpycache:
|
||||
rm -rf __pycache__
|
||||
|
||||
clean: cleansvgpath cleansvg cleanpng cleanpdf cleanpycache
|
|
@ -10,13 +10,19 @@
|
|||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
version="1.1"
|
||||
id="Ebene_1"
|
||||
width="690"
|
||||
height="183"
|
||||
{% if numpad %}
|
||||
width="690"
|
||||
viewBox="0 0 690 183"
|
||||
enable-background="new 0 0 690 183"
|
||||
{% else %}
|
||||
width="535"
|
||||
viewBox="0 0 535 183"
|
||||
enable-background="new 0 0 535 183"
|
||||
{% endif %}
|
||||
xml:space="preserve"
|
||||
inkscape:version="0.48.5 r10040"
|
||||
sodipodi:docname="tastatur_e1.svg"
|
||||
sodipodi:docname="tastatur.svg"
|
||||
|
||||
inkscape:export-xdpi="90"
|
||||
inkscape:export-ydpi="90">
|
||||
|
@ -36,33 +42,36 @@
|
|||
text.mod, text.key, text.dead {
|
||||
fill:#111;
|
||||
fill-opacity:1;
|
||||
stroke:none;
|
||||
font-style:normal;
|
||||
font-variant:normal;
|
||||
font-weight:normal;
|
||||
font-stretch:normal;
|
||||
display:inline;
|
||||
font-family:DejaVu Sans;
|
||||
writing-mode:lr-tb;
|
||||
stroke:none;
|
||||
font-style:normal;
|
||||
font-variant:normal;
|
||||
font-weight:normal;
|
||||
font-stretch:normal;
|
||||
display:inline;
|
||||
font-family:DejaVu Sans;
|
||||
writing-mode:lr-tb;
|
||||
}
|
||||
|
||||
text.key {
|
||||
font-family:Linux Libertine;
|
||||
font-family:Linux Libertine;
|
||||
}
|
||||
|
||||
text.dead {
|
||||
font-family: Gentium Plus Compact;
|
||||
}
|
||||
|
||||
text.mod {
|
||||
text-align:start;
|
||||
text-anchor:start;
|
||||
text-align:start;
|
||||
text-anchor:start;
|
||||
}
|
||||
|
||||
text.deadcircle, text.dead, text.center, text.key {
|
||||
text-align:center;
|
||||
text-anchor:middle;
|
||||
text.space, text.dead, text.center, text.key {
|
||||
text-align:center;
|
||||
text-anchor:middle;
|
||||
}
|
||||
|
||||
text.key { font-size:20px; }
|
||||
text.dead { font-size:20px; }
|
||||
text.deadcircle { font-size:16px; }
|
||||
text.mod { font-size:10px; }
|
||||
text.big { font-size:14px; }
|
||||
|
||||
|
@ -172,7 +181,11 @@ text.nubkey { fill:#eee; }
|
|||
<use xlink:href="#basekey" y="72" x="316" class="r3" />
|
||||
<use xlink:href="#basekey" y="72" x="352" class="r4" />
|
||||
<use xlink:href="#basekey" y="72" x="388" class="r5" />
|
||||
<use xlink:href="#basekey" y="72" x="424" class="r5" />
|
||||
{% if swap_m3r_ä %}
|
||||
<use xlink:href="#basekey" y="72" x="460" class="r5" />
|
||||
{% else %}
|
||||
<use xlink:href="#basekey" y="72" x="424" class="r5" />
|
||||
{% endif %}
|
||||
|
||||
|
||||
<use xlink:href="#basekey" y="108" x="82" class="l5" />
|
||||
|
@ -193,7 +206,11 @@ text.nubkey { fill:#eee; }
|
|||
<rect id="tab" x="0" y="36" width="50" height="32" rx="4" class="key grey" />
|
||||
|
||||
<rect id="m3l" x="0" y="72" width="60" height="32" rx="4" class="key grey{{ MOD3 }}" />
|
||||
{% if swap_m3r_ä %}
|
||||
<use id="m3r" xlink:href="#basekey" x="424" y="72" class="key grey{{ MOD3 }}" />
|
||||
{% else %}
|
||||
<use id="m3r" xlink:href="#basekey" x="460" y="72" class="key grey{{ MOD3 }}" />
|
||||
{% endif %}
|
||||
|
||||
<rect id="shiftl" x="0" y="108" width="40" height="32" rx="4" class="key grey{{ SHIFT }}" />
|
||||
<rect id="m4l" x="44" y="108" width="34" height="32" rx="4" class="key grey{{ MOD4 }}" />
|
||||
|
@ -254,17 +271,19 @@ text.nubkey { fill:#eee; }
|
|||
<text y="132" x="56" class="mod" id="m4ltxt">M4</text>
|
||||
<text y="168" x="135" class="mod" id="altltxt">Alt</text>
|
||||
|
||||
{% if swap_m3r_ä %}
|
||||
<text y="96" x="436" class="mod" id="m3rtxt">M3</text>
|
||||
{% else %}
|
||||
<text y="96" x="472" class="mod" id="m3rtxt">M3</text>
|
||||
{% endif %}
|
||||
|
||||
<text y="133" x="450" class="mod big" id="shiftrtxt">⇧</text>
|
||||
<text y="168" x="490" class="mod" id="ctrlrtxt">Strg</text>
|
||||
<text y="168" x="357" class="mod" id="m4rtxt">Mod4</text>
|
||||
<text x="263" y="168" class="mod space">{{ SPCE }}</text>
|
||||
|
||||
<text y="62" x="495" class="mod big" id="returntxt">⏎</text>
|
||||
<text y="23" x="480" class="mod" id="backspacetxt">⌫</text>
|
||||
|
||||
<text y="25" x="20" class="deadcircle" id="deadcircletxt">◌</text>
|
||||
<use y="0" x="432" xlink:href="#deadcircletxt" id="t2" />
|
||||
<use y="36" x="450" xlink:href="#deadcircletxt" id="t3" />
|
||||
</g>
|
||||
|
||||
<g transform="translate(55,26)">
|
||||
|
@ -313,7 +332,11 @@ text.nubkey { fill:#eee; }
|
|||
<text x="252" class="key">{{ AC08 }}</text>
|
||||
<text x="288" class="key">{{ AC09 }}</text>
|
||||
<text x="324" class="key">{{ AC10 }}</text>
|
||||
{% if swap_m3r_ä %}
|
||||
<text x="396" class="key">{{ BKSL }}</text>
|
||||
{% else %}
|
||||
<text x="360" class="key">{{ AC11 }}</text>
|
||||
{% endif %}
|
||||
</g>
|
||||
|
||||
<g transform="translate(101,134)">
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 13 KiB |
|
@ -7,13 +7,15 @@ import sys
|
|||
import replacements
|
||||
|
||||
if len(sys.argv) == 1:
|
||||
print('Usage: ./<this script> "layoutname" template')
|
||||
print('Usage: ./<this script> variantname [numpad]')
|
||||
exit(1)
|
||||
|
||||
layout = sys.argv[1]
|
||||
templatename = sys.argv[2]
|
||||
templatename = "base.svg.template"
|
||||
numpad = True if len(sys.argv) == 3 and sys.argv[2] == "numpad" else False
|
||||
swap_m3r_ä = True if layout == "de vou" else False
|
||||
|
||||
os.system("setxkbmap " + layout + " -print | xkbcomp -xkb - /tmp/keymaptmp 2>/dev/null")
|
||||
os.system("setxkbmap de " + layout + " -print | xkbcomp -xkb - /tmp/keymaptmp 2>/dev/null")
|
||||
# TODO: actually write/generate a proper parser for xkbmaps
|
||||
os.system(r'''sed -n '/xkb_symbols/,/xkb_geometry/p' /tmp/keymaptmp | tail -n +2 | grep -e 'key' -e symbols -e '}' | sed 's/symbols\[Group1]=//' | paste -sd "" - | sed 's/\;/&\n/g' | grep -v 'modifier_map' | sed -r 's/\s//g' | sed -r 's/key<(.*)>\{\[/\1=/g' | sed -r 's/\]?,?\}\;//' | grep -v '^$' > /tmp/keymap''')
|
||||
|
||||
|
@ -42,14 +44,16 @@ with open('/tmp/keymap', 'r') as file:
|
|||
# replace keynames with the symbol they produce
|
||||
keymap = {a: list(map(replacements.f, b)) for a,b in keymap.items()}
|
||||
|
||||
|
||||
for layer in range(0,7): # 7 because the last layer is empty
|
||||
# create a dict with the replacements from repalcements.py
|
||||
layerdict = {a: b[layer] for a,b in keymap.items()}
|
||||
# color modifiers accordingly
|
||||
for x in modifiers[layer]:
|
||||
layerdict[x] = " pressed"
|
||||
out = open(layout + " ebene " + layernames[layer] + ".svg", "w")
|
||||
layerdict["numpad"] = numpad
|
||||
layerdict["swap_m3r_ä"] = swap_m3r_ä
|
||||
versionstring = "-numpad" if numpad else "-tkl"
|
||||
out = open(layout + "-" + layernames[layer] + versionstring + ".svg", "w")
|
||||
with open(templatename) as templatefile:
|
||||
template = Template(templatefile.read())
|
||||
out.write(template.render(layerdict))
|
|
@ -11,28 +11,31 @@ def f(a):
|
|||
return x
|
||||
|
||||
replacements = {
|
||||
"U21BB" : """</text><text x="20" y="28" class="dead" id="t1">↻""", ### WILL BREAK HORRIBLY FOR OTHER LAYOUTS
|
||||
"U02DE" : """</text><text x="28" y="25" class="dead" id="t1">˞""", ### WILL BREAK HORRIBLY FOR OTHER LAYOUTS
|
||||
"dead_belowdot" : """</text><text x="20" y="32" class="dead" id="t1">.""", ### WILL BREAK HORRIBLY FOR OTHER LAYOUTS
|
||||
"dead_circumflex" : "ˆ",
|
||||
"dead_caron" : "ˇ",
|
||||
"dead_breve" : "˘",
|
||||
"dead_acute" : "´",
|
||||
"dead_grave" : "`",
|
||||
"dead_cedilla" : "¸",
|
||||
"dead_abovedot" : "˙",
|
||||
"dead_abovering" : "˚",
|
||||
"dead_macron" : "¯",
|
||||
"dead_diaeresis" : "¨",
|
||||
"dead_stroke" : "/",
|
||||
"dead_doubleacute" : "˝",
|
||||
"dead_psili" : "᾿",
|
||||
"dead_dasia" : "῾",
|
||||
"dead_tilde" : "¸",
|
||||
"U21BB" : "↻",
|
||||
"U02DE" : "◌˞",
|
||||
"dead_belowdot" : "◌̣",
|
||||
"dead_circumflex" : "◌̂",
|
||||
"dead_caron" : "◌̌",
|
||||
"dead_breve" : "◌̆",
|
||||
"dead_acute" : "◌́",
|
||||
"dead_grave" : "◌̀",
|
||||
"dead_cedilla" : "◌̧",
|
||||
"dead_abovedot" : "◌̇",
|
||||
"dead_abovering" : "◌̊",
|
||||
"dead_macron" : "◌̄",
|
||||
"dead_diaeresis" : "◌̈",
|
||||
"dead_stroke" : "◌̸",
|
||||
"dead_doubleacute" : "◌̋",
|
||||
"dead_psili" : "◌̓",
|
||||
"dead_dasia" : "◌̔",
|
||||
"dead_tilde" : "◌̃",
|
||||
"dead_abovereversedcomma" : "◌̔",
|
||||
"dead_abovecomma" : "◌̓",
|
||||
"U02F5" : "˵",
|
||||
"U0001F44D" : "👍",
|
||||
"dead_abovereversedcomma" : "῾",
|
||||
"dead_abovecomma" : "᾿",
|
||||
"space": "Leerzeichen",
|
||||
"nobreakspace": "nichtbrechendes Leerzeichen",
|
||||
"U202F": "Festabstand",
|
||||
"hyphen":"-",
|
||||
"Pointer_EnableKeys":"",
|
||||
"KP_Divide":"/",
|
||||
|
@ -81,7 +84,6 @@ replacements = {
|
|||
"KP_2":"2",
|
||||
"KP_3":"3",
|
||||
"NoSymbol":"",
|
||||
"space":"U0020",
|
||||
"exclam":"U0021",
|
||||
"quotedbl":"U0022",
|
||||
"numbersign":"U0023",
|
||||
|
@ -176,7 +178,6 @@ replacements = {
|
|||
"bar":"U007C",
|
||||
"braceright":"U007D",
|
||||
"asciitilde":"U007E",
|
||||
"nobreakspace":"U00A0",
|
||||
"exclamdown":"U00A1",
|
||||
"cent":"U00A2",
|
||||
"sterling":"U00A3",
|
|
@ -0,0 +1,2 @@
|
|||
all: default
|
||||
include ../../common.mk
|
Before Width: | Height: | Size: 454 KiB After Width: | Height: | Size: 454 KiB |
|
@ -0,0 +1,27 @@
|
|||
all: default neo-bunt-123456.pdf neo-bunt-123456.png
|
||||
|
||||
neo-bunt-123456.pdf: neo-bunt-123456.ods
|
||||
libreoffice --convert-to pdf $<
|
||||
|
||||
neo-bunt-123456.png: neo-bunt-123456.ods
|
||||
libreoffice --convert-to png $<
|
||||
|
||||
neo20-grau-123456.svg:
|
||||
./all-grau-123456.php neo20
|
||||
|
||||
bone-grau-123456.svg:
|
||||
./all-grau-123456.php bone
|
||||
|
||||
neoqwertz-grau-123456.svg:
|
||||
./all-grau-123456.php neoqwertz
|
||||
|
||||
EXTRASVG=\
|
||||
neo20-grau-123456.svg \
|
||||
bone-grau-123456.svg \
|
||||
neoqwertz-grau-123456.svg
|
||||
|
||||
EXTRAPDF=neo-bunt-123456.pdf
|
||||
|
||||
EXTRAPNG=neo-bunt-123456.png
|
||||
|
||||
include ../common.mk
|
135
grafik/Php-Skript/neo_raw.svg → grafik/bilder-uebersicht/all-grau-123456.php
Normal file → Executable file
|
@ -1,3 +1,127 @@
|
|||
#!/usr/bin/env php
|
||||
<?php
|
||||
/* Dieser Textabschnitt befand sich vorher (etwa bei Commit 705fac448a0d0562e4e1bc16bf0b6cadbe235771)
|
||||
in einer separaten Datei "neo_basierend_auf_wikipedias_KB_Germany.txt".
|
||||
Ich denke, er bezieht sich auf das Template, das hier weiter unten geinlint ist
|
||||
und habe ihn mal in diese Datei eingefügt, damit er nicht verloren geht.
|
||||
-- hrnz
|
||||
|
||||
== Quelle ==
|
||||
Die Datei wurde vom Wikipedia-Bild „KB_Germany.svg“ mit Inkscape angepasst.
|
||||
Quelle: http://upload.wikimedia.org/wikipedia/commons/3/36/KB_Germany.svg
|
||||
Stand: Januar 2007
|
||||
Angepasst von Erik Streb (mail at erikstreb dot de)
|
||||
|
||||
== Dokumenteneinstellungen ==
|
||||
=== Einrasten ===
|
||||
- Umrandungsboxen am Gitter einrasten
|
||||
- Einrastempfindlichkeit ca. 10
|
||||
|
||||
=== Gitter/Führungslinien ===
|
||||
Die Tasten sind auf einem Raster von 60 mal 60 Pixeln erstellt. Daher Abstand
|
||||
X und Abstand Y = 60.
|
||||
|
||||
Die Startpositionen des Rasters (Ursprung X und Ursprung Y) für die Beschriftung der
|
||||
einzelnen Tasten sind unten angegeben als Ux und Uy.
|
||||
|
||||
Immer (außer bei Ausnahmen) muss die Beschriftung von oben rechts aus
|
||||
angepasst werden.
|
||||
|
||||
== Schrift ==
|
||||
Was Schrift Größe Fett
|
||||
Buchstaben DejaVu LGC Sans 22 Ja
|
||||
Modifikatoren DejaVu LGC Sans 14 Ja
|
||||
|
||||
== Gitterursprung ==
|
||||
=== Für die einzelnen Reihen und Ebenen ===
|
||||
Tastatur Position Ebene Zeichen Ux Uy Ax Ay
|
||||
0. Reihe 1. X 9 7 60 60
|
||||
1. Reihe 1. X 39 7 60 60
|
||||
3. Reihe 1. X 24 7 60 60
|
||||
|
||||
0. Reihe 2. X 9 37 60 60
|
||||
1. Reihe 2. X 39 37 60 60
|
||||
2. Reihe 2. X 54 37 60 60
|
||||
3. Reihe 2. X 24 37 60 60
|
||||
|
||||
0. Reihe 3. X 37 7 60 60
|
||||
1. Reihe 3. X 7 7 60 60
|
||||
2. Reihe 3. X 22 7 60 60
|
||||
3. Reihe 3. X 52 7 60 60
|
||||
|
||||
0. Reihe 4. X 37 37 60 60
|
||||
1. Reihe 4. X 7 37 60 60
|
||||
2. Reihe 4. X 22 37 60 60
|
||||
3. Reihe 4. X 52 37 60 60
|
||||
|
||||
=== Für die Modifier ===
|
||||
Bei Strg für Positionierung das „g“ wegnehmen und links ausrichten.
|
||||
|
||||
Modifier ganz links und auch rechtes Mod3:
|
||||
Ux 9
|
||||
Uy 25 oder 40 (linkes Shift)
|
||||
|
||||
Alt, rechte Strg und Menü:
|
||||
Ux 39
|
||||
Uy 25
|
||||
|
||||
Alt Option:
|
||||
Ux 35
|
||||
Uy 15
|
||||
|
||||
Enter (rechts ausrichten, von oben links anpassen):
|
||||
Ux 51
|
||||
Uy 40
|
||||
|
||||
Backspace (von unten rechts anpassen):
|
||||
Ux 9
|
||||
Uy 25
|
||||
*/
|
||||
|
||||
if ($argc == 1) {
|
||||
echo("Usage: ./neo_svg.php [neo20|bone|neoqwertz]\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
# Referenz laden
|
||||
$layout = $argv[1];
|
||||
$reference = file_get_contents('http://neo-layout.org/git/A-REFERENZ-A/' . $layout . ".txt");
|
||||
|
||||
# Haupttastatur finden
|
||||
preg_match('/┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────────┐\n(.*)\n└──────┴──────┴──────┴──────────────────────────────────────┴──────┴──────┴──────┴──────┘/s', $reference, $found);
|
||||
# Tastaturreihen aufspalten
|
||||
$rows = preg_split('/\n├.*\n/', $found[1]);
|
||||
|
||||
$n = 1;
|
||||
# Für jede Reihe:
|
||||
foreach ($rows as $row) {
|
||||
$sub_rows = preg_split('/\n/', $row);
|
||||
|
||||
# Finde Zeichen in beiden Zeilen.
|
||||
# U030F ist ein combining-character und tritt zusammen mit einem Leerzeichen auf, damit es angezeigt wird
|
||||
preg_match_all('/│(.) (\x{030F} |.) (.)(?=│)/u', $sub_rows[0], $r1);
|
||||
preg_match_all('/│(.) (.) (.)(?=│)/u', $sub_rows[1], $r2);
|
||||
|
||||
# Für jede Taste:
|
||||
for ($i = 0; $i < count($r1[0]); $i++) {
|
||||
# Überspringe Enter-Taste, die nicht dazugehört
|
||||
if ($r1[2][$i] == "⏎" && $i == 11) {
|
||||
$n--;
|
||||
continue;
|
||||
}
|
||||
# Lade die Zeichen der beiden Zeilen in das Array, geordnet nach ihrer Ebene
|
||||
$key[$n+$i.'_1'] = $r2[1][$i];
|
||||
$key[$n+$i.'_2'] = $r1[1][$i];
|
||||
$key[$n+$i.'_3'] = $r2[2][$i];
|
||||
$key[$n+$i.'_4'] = $r1[2][$i];
|
||||
$key[$n+$i.'_5'] = $r2[3][$i];
|
||||
$key[$n+$i.'_6'] = $r1[3][$i];
|
||||
}
|
||||
$n += $i;
|
||||
}
|
||||
|
||||
# Lade das "rohe" SVG
|
||||
$svg = <<<EOF
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg
|
||||
|
@ -3339,3 +3463,14 @@
|
|||
y="239.62675">{46_6}</tspan></text>
|
||||
</g>
|
||||
</svg>
|
||||
EOF;
|
||||
|
||||
# Ersetze die Platzhalter mit den Zeichen aus dem Array
|
||||
foreach ($key as $search => $replace) {
|
||||
# Die Zeichen werden in HTML-NCRs (numeric character references) umgewandelt, damit sie nicht falsch interpretiert werden.
|
||||
$svg = preg_replace('/{'.preg_quote($search).'}/', mb_encode_numericentity ($replace, array (0x0, 0xffff, 0, 0xffff), 'UTF-8'), $svg);
|
||||
}
|
||||
|
||||
# Speichern und Fertig
|
||||
file_put_contents($layout . '-grau-123456.svg', $svg);
|
||||
?>
|
Before Width: | Height: | Size: 179 KiB After Width: | Height: | Size: 183 KiB |
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 123 KiB After Width: | Height: | Size: 123 KiB |
Before Width: | Height: | Size: 88 KiB After Width: | Height: | Size: 88 KiB |
Before Width: | Height: | Size: 123 KiB After Width: | Height: | Size: 123 KiB |
Before Width: | Height: | Size: 257 KiB After Width: | Height: | Size: 257 KiB |
|
@ -0,0 +1,27 @@
|
|||
SVGFILES=$(filter-out $(wildcard *.path.svg */*.path.svg), $(wildcard *.svg */*.svg)) ${EXTRASVG}
|
||||
SVGPATHFILES=$(addsuffix .path.svg,$(basename ${SVGFILES}))
|
||||
PDFFILES=$(addsuffix .pdf,$(basename ${SVGFILES})) ${EXTRAPDF}
|
||||
PNGFILES=$(addsuffix .png,$(basename ${SVGFILES})) ${EXTRAPNG}
|
||||
|
||||
default: svg-path svg pdf png
|
||||
|
||||
svg: ${EXTRASVG}
|
||||
|
||||
svg-path: ${SVGPATHFILES}
|
||||
|
||||
pdf: ${PDFFILES}
|
||||
|
||||
png: ${PNGFILES}
|
||||
|
||||
clean:
|
||||
rm -f ${EXTRASVG} ${SVGPATHFILES} ${PDFFILES} ${PNGFILES} ${EXTRAPDF} ${EXTRAPNG} ${EXTRACLEAN}
|
||||
|
||||
%.path.svg: %.svg
|
||||
inkscape --export-filename=$@ -T $<
|
||||
|
||||
%.pdf: %.svg
|
||||
inkscape --export-filename=$@ $<
|
||||
|
||||
%.png: %.svg
|
||||
inkscape --export-filename=$@ --export-width=2000 $<
|
||||
optipng $@
|
Before Width: | Height: | Size: 384 KiB |
|
@ -1,22 +0,0 @@
|
|||
## Dateien
|
||||
|
||||
neo-druckvorlage.svg
|
||||
: Zum Erstellen der Tastaturaufkleber
|
||||
|
||||
neo-druckvorlage-hc.svg
|
||||
: Eine inhaltlich veraltete Version, die aber die Modifiertasten
|
||||
farblich überarbeitet.
|
||||
|
||||
|
||||
### Begründung gegen das aktuelle Farbkonzept
|
||||
|
||||
- die blau-rot-gestrichelten Rähmchen erschließen sich auch bei
|
||||
längerem Nachdenken nur schwer
|
||||
|
||||
- die Information ist zum Teil aus der Hintergrundfarbe zu entnehmen,
|
||||
bei anderen Ebenen aber aus der Pfeilfarbe. Das ist inkonsistent.
|
||||
|
||||
- die Hintergrundfarben der Modifiertasten sind zu ähnlich der
|
||||
Farbpalette der normalen Tasten
|
||||
|
||||
- die dicken Rahmen gehen beim Ausschneiden/Stanzen ohnehin verloren
|
Before Width: | Height: | Size: 215 KiB |
|
@ -1,312 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
version="1.1"
|
||||
id="Ebene_1"
|
||||
width="535"
|
||||
height="183"
|
||||
viewBox="0 0 535 183"
|
||||
enable-background="new 0 0 535 183"
|
||||
xml:space="preserve"
|
||||
inkscape:version="0.48.5 r10040"
|
||||
sodipodi:docname="tastatur_e1.svg"
|
||||
inkscape:export-filename="/home/knittl/git/svn/neo/www/tastatur_base.png"
|
||||
inkscape:export-xdpi="90"
|
||||
inkscape:export-ydpi="90">
|
||||
|
||||
<metadata id="metadata135">
|
||||
<rdf:RDF>
|
||||
<cc:Work rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
|
||||
<defs id="defs">
|
||||
<style type="text/css" id="style46661">
|
||||
text.mod, text.key, text.dead {
|
||||
fill:#111;
|
||||
fill-opacity:1;
|
||||
stroke:none;
|
||||
font-style:normal;
|
||||
font-variant:normal;
|
||||
font-weight:normal;
|
||||
font-stretch:normal;
|
||||
display:inline;
|
||||
font-family:DejaVu Sans;
|
||||
writing-mode:lr-tb;
|
||||
}
|
||||
|
||||
text.key {
|
||||
font-family:Linux Libertine;
|
||||
}
|
||||
|
||||
text.mod {
|
||||
text-align:start;
|
||||
text-anchor:start;
|
||||
}
|
||||
|
||||
text.deadcircle, text.dead, text.center, text.key {
|
||||
text-align:center;
|
||||
text-anchor:middle;
|
||||
}
|
||||
|
||||
text.key { font-size:20px; }
|
||||
text.dead { font-size:20px; }
|
||||
text.deadcircle { font-size:16px; }
|
||||
text.mod { font-size:10px; }
|
||||
text.big { font-size:14px; }
|
||||
|
||||
.key {
|
||||
stroke-width:1.25;
|
||||
}
|
||||
|
||||
.grey { fill:#949494; stroke:#696969; }
|
||||
.grey { fill:#9f9f9f; stroke:#747474; }
|
||||
|
||||
/* bootstrap colors */
|
||||
.l5, .r5 { fill:#93CCEA; }
|
||||
.l4, .r4 { fill:#7abeb3; }
|
||||
.l3, .r3 { fill:#63b280; }
|
||||
.l2, .r2 { fill:#4aa44a; }
|
||||
|
||||
/* btn bg hover, unused */
|
||||
.l2, .r2 { stroke:#3071a9; }
|
||||
.l3, .r3 { stroke:#449d44; }
|
||||
.l4, .r4 { stroke:#c9302c; }
|
||||
.l5, .r5 { stroke:#ec971f; }
|
||||
|
||||
/* btn border hover */
|
||||
.l2, .r2 { stroke:#204d74; }
|
||||
.l3, .r3 { stroke:#204d74; }
|
||||
.l4, .r4 { stroke:#204d74; }
|
||||
.l5, .r5 { stroke:#204d74; }
|
||||
|
||||
text.nubkey { fill:#eee; }
|
||||
|
||||
.pressed {
|
||||
<!--opacity:0.5;-->
|
||||
fill:#777;
|
||||
}
|
||||
</style>
|
||||
|
||||
<g id="basekey">
|
||||
<rect width="32" height="32" rx="4" class="key" />
|
||||
<!--rect width="20" height="20" x="6" y="6" /-->
|
||||
<!--rect width="2" height="2" fill="#000" x="15" y="15" /-->
|
||||
</g>
|
||||
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1614"
|
||||
inkscape:window-height="969"
|
||||
id="base"
|
||||
showgrid="false"
|
||||
inkscape:zoom="0.70961538"
|
||||
inkscape:cx="685.32105"
|
||||
inkscape:cy="241.15395"
|
||||
inkscape:window-x="78"
|
||||
inkscape:window-y="71"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="Ebene_1" />
|
||||
<g transform="translate(3.5,3.5)">
|
||||
<use xlink:href="#basekey" y="0" x="0" class="l5" />
|
||||
<use xlink:href="#basekey" y="0" x="36" class="l5" />
|
||||
<use xlink:href="#basekey" y="0" x="72" class="l5" />
|
||||
<use xlink:href="#basekey" y="0" x="108" class="l4" />
|
||||
<use xlink:href="#basekey" y="0" x="144" class="l3" />
|
||||
<use xlink:href="#basekey" y="0" x="180" class="l2" />
|
||||
<use xlink:href="#basekey" y="0" x="216" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="0" x="252" class="r2" />
|
||||
<use xlink:href="#basekey" y="0" x="288" class="r2" />
|
||||
<use xlink:href="#basekey" y="0" x="324" class="r3" />
|
||||
<use xlink:href="#basekey" y="0" x="360" class="r4" />
|
||||
<use xlink:href="#basekey" y="0" x="396" class="r5" />
|
||||
<use xlink:href="#basekey" y="0" x="432" class="r5" />
|
||||
|
||||
|
||||
<use xlink:href="#basekey" y="36" x="54" class="l5" />
|
||||
<use xlink:href="#basekey" y="36" x="90" class="l4" />
|
||||
<use xlink:href="#basekey" y="36" x="126" class="l3" />
|
||||
<use xlink:href="#basekey" y="36" x="162" class="l2" />
|
||||
<use xlink:href="#basekey" y="36" x="198" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="36" x="234" class="r2" />
|
||||
<use xlink:href="#basekey" y="36" x="270" class="r2" />
|
||||
<use xlink:href="#basekey" y="36" x="306" class="r3" />
|
||||
<use xlink:href="#basekey" y="36" x="342" class="r4" />
|
||||
<use xlink:href="#basekey" y="36" x="378" class="r5" />
|
||||
<use xlink:href="#basekey" y="36" x="414" class="r5" />
|
||||
<use xlink:href="#basekey" y="36" x="450" class="r5" />
|
||||
|
||||
|
||||
<use xlink:href="#basekey" y="72" x="64" class="l5" />
|
||||
<use xlink:href="#basekey" y="72" x="100" class="l4" />
|
||||
<use xlink:href="#basekey" y="72" x="136" class="l3" />
|
||||
<use xlink:href="#basekey" y="72" x="172" class="l2" />
|
||||
<use xlink:href="#basekey" y="72" x="208" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="72" x="244" class="r2" />
|
||||
<use xlink:href="#basekey" y="72" x="280" class="r2" />
|
||||
<use xlink:href="#basekey" y="72" x="316" class="r3" />
|
||||
<use xlink:href="#basekey" y="72" x="352" class="r4" />
|
||||
<use xlink:href="#basekey" y="72" x="388" class="r5" />
|
||||
<use xlink:href="#basekey" y="72" x="424" class="r5" />
|
||||
|
||||
|
||||
<use xlink:href="#basekey" y="108" x="82" class="l5" />
|
||||
<use xlink:href="#basekey" y="108" x="118" class="l4" />
|
||||
<use xlink:href="#basekey" y="108" x="154" class="l3" />
|
||||
<use xlink:href="#basekey" y="108" x="190" class="l2" />
|
||||
<use xlink:href="#basekey" y="108" x="226" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="108" x="262" class="r2" />
|
||||
<use xlink:href="#basekey" y="108" x="298" class="r2" />
|
||||
<use xlink:href="#basekey" y="108" x="334" class="r3" />
|
||||
<use xlink:href="#basekey" y="108" x="370" class="r4" />
|
||||
<use xlink:href="#basekey" y="108" x="406" class="r5" />
|
||||
|
||||
|
||||
<rect id="backspace" y="0" x="468" width="60" height="32" rx="4" class="key grey" />
|
||||
|
||||
<rect id="tab" x="0" y="36" width="50" height="32" rx="4" class="key grey" />
|
||||
|
||||
<rect id="m3l" x="0" y="72" width="60" height="32" rx="4" class="key grey{{ MOD3 }}" />
|
||||
<use id="m3r" xlink:href="#basekey" x="460" y="72" class="key grey{{ MOD3 }}" />
|
||||
|
||||
<rect id="shiftl" x="0" y="108" width="40" height="32" rx="4" class="key grey{{ SHIFT }}" />
|
||||
<rect id="m4l" x="44" y="108" width="34" height="32" rx="4" class="key grey{{ MOD4 }}" />
|
||||
<rect id="shiftr" x="442" y="108" width="86" height="32" rx="4" class="key grey{{ SHIFT }}" />
|
||||
|
||||
<rect id="ctrll" x="0" y="144" width="50" height="32" rx="4" class="key grey" />
|
||||
<rect id="altl" x="124" y="144" width="48" height="32" rx="4" class="key grey" />
|
||||
<rect id="space" x="176" y="144" width="168" height="32" rx="4" class="key grey" />
|
||||
<rect id="m4r" x="348" y="144" width="48" height="32" rx="4" class="key grey{{ MOD4 }}" />
|
||||
<rect id="ctrlr" x="478" y="144" width="50" height="32" rx="4" class="key grey" />
|
||||
|
||||
<path
|
||||
fill-rule="evenodd"
|
||||
clip-rule="evenodd"
|
||||
d="
|
||||
M 10,32
|
||||
l -6,0 a 4,4 0 0 1 -4,-4
|
||||
l 0,-24 a 4,4 0 0 1 4,-4
|
||||
l 34,0 a 4,4 0 0 1 4,4
|
||||
l 0,60 a 4,4 0 0 1 -4,4
|
||||
l -24,0 a 4,4 0 0 1 -4,-4
|
||||
z"
|
||||
transform="translate(486,36)"
|
||||
id="return"
|
||||
class="key grey"/>
|
||||
|
||||
<rect y="101" x="181" width="14" height="1" rx="1" id="nub" style="fill:#eee;" />
|
||||
<use y="0" x="108" xlink:href="#nub" />
|
||||
</g>
|
||||
|
||||
<g transform="translate(-0.5,-0.5)">
|
||||
<text y="96" x="10" class="mod" id="m3ltxt">Mod3</text>
|
||||
<text y="133" x="10" class="mod big" id="shiftltxt">⇧</text>
|
||||
<text y="168" x="10" class="mod" id="ctrlltxt">Strg</text>
|
||||
|
||||
<text y="132" x="56" class="mod" id="m4ltxt">M4</text>
|
||||
<text y="168" x="135" class="mod" id="altltxt">Alt</text>
|
||||
|
||||
<text y="96" x="472" class="mod" id="m3rtxt">M3</text>
|
||||
<text y="133" x="450" class="mod big" id="shiftrtxt">⇧</text>
|
||||
<text y="168" x="490" class="mod" id="ctrlrtxt">Strg</text>
|
||||
<text y="168" x="357" class="mod" id="m4rtxt">Mod4</text>
|
||||
|
||||
<text y="62" x="495" class="mod big" id="returntxt">⏎</text>
|
||||
<text y="23" x="480" class="mod" id="backspacetxt">⌫</text>
|
||||
|
||||
<text y="25" x="20" class="deadcircle" id="deadcircletxt">◌</text>
|
||||
<use y="0" x="432" xlink:href="#deadcircletxt" id="t2" />
|
||||
<use y="36" x="450" xlink:href="#deadcircletxt" id="t3" />
|
||||
</g>
|
||||
|
||||
<g transform="translate(55,26)">
|
||||
<text x="0" class="key">{{ AE01 }}</text>
|
||||
<text x="36" class="key">{{ AE02 }}</text>
|
||||
<text x="72" class="key">{{ AE03 }}</text>
|
||||
<text x="108" class="key">{{ AE04 }}</text>
|
||||
<text x="144" class="key">{{ AE05 }}</text>
|
||||
|
||||
<text x="180" class="key">{{ AE06 }}</text>
|
||||
<text x="216" class="key">{{ AE07 }}</text>
|
||||
<text x="252" class="key">{{ AE08 }}</text>
|
||||
<text x="288" class="key">{{ AE09 }}</text>
|
||||
<text x="324" class="key">{{ AE10 }}</text>
|
||||
<text x="360" class="key">{{ AE11 }}</text>
|
||||
</g>
|
||||
|
||||
|
||||
<text x="10" y="60" class="mod big">⇥</text>
|
||||
|
||||
<g transform="translate(73,62)">
|
||||
<text x="0" class="key">{{ AD01 }}</text>
|
||||
<text x="36" class="key">{{ AD02 }}</text>
|
||||
<text x="72" class="key">{{ AD03 }}</text>
|
||||
<text x="108" class="key">{{ AD04 }}</text>
|
||||
<text x="144" class="key">{{ AD05 }}</text>
|
||||
|
||||
<text x="180" class="key">{{ AD06 }}</text>
|
||||
<text x="216" class="key">{{ AD07 }}</text>
|
||||
<text x="252" class="key">{{ AD08 }}</text>
|
||||
<text x="288" class="key">{{ AD09 }}</text>
|
||||
<text x="324" class="key">{{ AD10 }}</text>
|
||||
<text x="360" class="key">{{ AD11 }}</text>
|
||||
</g>
|
||||
|
||||
|
||||
<g transform="translate(84,98)">
|
||||
<text x="0" class="key">{{ AC01 }}</text>
|
||||
<text x="36" class="key">{{ AC02 }}</text>
|
||||
<text x="72" class="key">{{ AC03 }}</text>
|
||||
<text x="108" class="key nubkey">{{ AC04 }}</text>
|
||||
<text x="144" class="key">{{ AC05 }}</text>
|
||||
|
||||
<text x="180" class="key">{{ AC06 }}</text>
|
||||
<text x="216" class="key nubkey">{{ AC07 }}</text>
|
||||
<text x="252" class="key">{{ AC08 }}</text>
|
||||
<text x="288" class="key">{{ AC09 }}</text>
|
||||
<text x="324" class="key">{{ AC10 }}</text>
|
||||
<text x="360" class="key">{{ AC11 }}</text>
|
||||
</g>
|
||||
|
||||
|
||||
<g transform="translate(101,134)">
|
||||
<text x="0" class="key">{{ AB01 }}</text>
|
||||
<text x="36" class="key">{{ AB02 }}</text>
|
||||
<text x="72" class="key">{{ AB03 }}</text>
|
||||
<text x="108" class="key">{{ AB04 }}</text>
|
||||
|
||||
<text x="144" class="key">{{ AB05 }}</text>
|
||||
<text x="180" class="key">{{ AB06 }}</text>
|
||||
<text x="216" class="key">{{ AB07 }}</text>
|
||||
<text x="252" class="key">{{ AB08 }}</text>
|
||||
<text x="288" class="key">{{ AB09 }}</text>
|
||||
<text x="324" class="key">{{ AB10 }}</text>
|
||||
</g>
|
||||
|
||||
<text x="20" y="26" class="dead" id="t1">{{ TLDE }}</text>
|
||||
<text x="452" y="26" class="dead" id="t2">{{ AE12 }}</text>
|
||||
<text x="470" y="62" class="dead" id="t3">{{ AD12 }}</text>
|
||||
</svg>
|
Before Width: | Height: | Size: 10 KiB |
|
@ -1,18 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
rm -r osterblau-with{,out}-numpad
|
||||
mkdir osterblau-with{,out}-numpad
|
||||
|
||||
for layout in neo neo_qwertz bone adnw koy; do
|
||||
./generate-graphics.py "de $layout" base.svg.template;
|
||||
done;
|
||||
./generate-graphics.py "de vou" vou-base.svg.template;
|
||||
mv *.svg osterblau-without-numpad
|
||||
|
||||
for layout in neo neo_qwertz bone adnw koy; do
|
||||
./generate-graphics.py "de $layout" numpad.svg.template;
|
||||
done;
|
||||
./generate-graphics.py "de vou" vou-numpad.svg.template;
|
||||
mv *.svg osterblau-with-numpad
|
||||
|
||||
#inkscape -T --export-overwrite osterblau-*-numpad/*.svg
|
|
@ -1,313 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
version="1.1"
|
||||
id="Ebene_1"
|
||||
width="535"
|
||||
height="183"
|
||||
viewBox="0 0 535 183"
|
||||
enable-background="new 0 0 535 183"
|
||||
xml:space="preserve"
|
||||
inkscape:version="0.48.5 r10040"
|
||||
sodipodi:docname="tastatur_e1.svg"
|
||||
inkscape:export-filename="/home/knittl/git/svn/neo/www/tastatur_base.png"
|
||||
inkscape:export-xdpi="90"
|
||||
inkscape:export-ydpi="90">
|
||||
|
||||
<metadata id="metadata135">
|
||||
<rdf:RDF>
|
||||
<cc:Work rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
|
||||
<defs id="defs">
|
||||
<style type="text/css" id="style46661">
|
||||
text.mod, text.key, text.dead {
|
||||
fill:#111;
|
||||
fill-opacity:1;
|
||||
stroke:none;
|
||||
font-style:normal;
|
||||
font-variant:normal;
|
||||
font-weight:normal;
|
||||
font-stretch:normal;
|
||||
display:inline;
|
||||
font-family:DejaVu Sans;
|
||||
writing-mode:lr-tb;
|
||||
}
|
||||
|
||||
text.key {
|
||||
font-family:Linux Libertine;
|
||||
}
|
||||
|
||||
text.mod {
|
||||
text-align:start;
|
||||
text-anchor:start;
|
||||
}
|
||||
|
||||
text.deadcircle, text.dead, text.center, text.key {
|
||||
text-align:center;
|
||||
text-anchor:middle;
|
||||
}
|
||||
|
||||
text.key { font-size:20px; }
|
||||
text.dead { font-size:20px; }
|
||||
text.deadcircle { font-size:16px; }
|
||||
text.mod { font-size:10px; }
|
||||
text.big { font-size:14px; }
|
||||
|
||||
.key {
|
||||
stroke-width:1.25;
|
||||
}
|
||||
|
||||
.grey { fill:#949494; stroke:#696969; }
|
||||
.grey { fill:#9f9f9f; stroke:#747474; }
|
||||
|
||||
/* bootstrap colors */
|
||||
.l2, .r2 { fill:#337ab7; }
|
||||
.l3, .r3 { fill:#5cb85c; }
|
||||
.l4, .r4 { fill:#d9534f; }
|
||||
.l5, .r5 { fill:#f0ad4e; }
|
||||
|
||||
/* btn bg hover, unused */
|
||||
.l2, .r2 { stroke:#3071a9; }
|
||||
.l3, .r3 { stroke:#449d44; }
|
||||
.l4, .r4 { stroke:#c9302c; }
|
||||
.l5, .r5 { stroke:#ec971f; }
|
||||
|
||||
/* btn border hover */
|
||||
.l2, .r2 { stroke:#204d74; }
|
||||
.l3, .r3 { stroke:#398439; }
|
||||
.l4, .r4 { stroke:#ac2925; }
|
||||
.l5, .r5 { stroke:#d58512; }
|
||||
|
||||
text.nubkey { fill:#eee; }
|
||||
|
||||
.pressed {
|
||||
<!--opacity:0.5;-->
|
||||
fill:#777;
|
||||
}
|
||||
</style>
|
||||
|
||||
<g id="basekey">
|
||||
<rect width="32" height="32" rx="4" class="key" />
|
||||
<!--rect width="20" height="20" x="6" y="6" /-->
|
||||
<!--rect width="2" height="2" fill="#000" x="15" y="15" /-->
|
||||
</g>
|
||||
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1614"
|
||||
inkscape:window-height="969"
|
||||
id="base"
|
||||
showgrid="false"
|
||||
inkscape:zoom="0.70961538"
|
||||
inkscape:cx="685.32105"
|
||||
inkscape:cy="241.15395"
|
||||
inkscape:window-x="78"
|
||||
inkscape:window-y="71"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="Ebene_1" />
|
||||
|
||||
<g transform="translate(3.5,3.5)">
|
||||
<use xlink:href="#basekey" y="0" x="0" class="l5" />
|
||||
<use xlink:href="#basekey" y="0" x="36" class="l5" />
|
||||
<use xlink:href="#basekey" y="0" x="72" class="l5" />
|
||||
<use xlink:href="#basekey" y="0" x="108" class="l4" />
|
||||
<use xlink:href="#basekey" y="0" x="144" class="l3" />
|
||||
<use xlink:href="#basekey" y="0" x="180" class="l2" />
|
||||
<use xlink:href="#basekey" y="0" x="216" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="0" x="252" class="r2" />
|
||||
<use xlink:href="#basekey" y="0" x="288" class="r2" />
|
||||
<use xlink:href="#basekey" y="0" x="324" class="r3" />
|
||||
<use xlink:href="#basekey" y="0" x="360" class="r4" />
|
||||
<use xlink:href="#basekey" y="0" x="396" class="r5" />
|
||||
<use xlink:href="#basekey" y="0" x="432" class="r5" />
|
||||
|
||||
|
||||
<use xlink:href="#basekey" y="36" x="54" class="l5" />
|
||||
<use xlink:href="#basekey" y="36" x="90" class="l4" />
|
||||
<use xlink:href="#basekey" y="36" x="126" class="l3" />
|
||||
<use xlink:href="#basekey" y="36" x="162" class="l2" />
|
||||
<use xlink:href="#basekey" y="36" x="198" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="36" x="234" class="r2" />
|
||||
<use xlink:href="#basekey" y="36" x="270" class="r2" />
|
||||
<use xlink:href="#basekey" y="36" x="306" class="r3" />
|
||||
<use xlink:href="#basekey" y="36" x="342" class="r4" />
|
||||
<use xlink:href="#basekey" y="36" x="378" class="r5" />
|
||||
<use xlink:href="#basekey" y="36" x="414" class="r5" />
|
||||
<use xlink:href="#basekey" y="36" x="450" class="r5" />
|
||||
|
||||
|
||||
<use xlink:href="#basekey" y="72" x="64" class="l5" />
|
||||
<use xlink:href="#basekey" y="72" x="100" class="l4" />
|
||||
<use xlink:href="#basekey" y="72" x="136" class="l3" />
|
||||
<use xlink:href="#basekey" y="72" x="172" class="l2" />
|
||||
<use xlink:href="#basekey" y="72" x="208" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="72" x="244" class="r2" />
|
||||
<use xlink:href="#basekey" y="72" x="280" class="r2" />
|
||||
<use xlink:href="#basekey" y="72" x="316" class="r3" />
|
||||
<use xlink:href="#basekey" y="72" x="352" class="r4" />
|
||||
<use xlink:href="#basekey" y="72" x="388" class="r5" />
|
||||
<use xlink:href="#basekey" y="72" x="424" class="r5" />
|
||||
|
||||
|
||||
<use xlink:href="#basekey" y="108" x="82" class="l5" />
|
||||
<use xlink:href="#basekey" y="108" x="118" class="l4" />
|
||||
<use xlink:href="#basekey" y="108" x="154" class="l3" />
|
||||
<use xlink:href="#basekey" y="108" x="190" class="l2" />
|
||||
<use xlink:href="#basekey" y="108" x="226" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="108" x="262" class="r2" />
|
||||
<use xlink:href="#basekey" y="108" x="298" class="r2" />
|
||||
<use xlink:href="#basekey" y="108" x="334" class="r3" />
|
||||
<use xlink:href="#basekey" y="108" x="370" class="r4" />
|
||||
<use xlink:href="#basekey" y="108" x="406" class="r5" />
|
||||
|
||||
|
||||
<rect id="backspace" y="0" x="468" width="60" height="32" rx="4" class="key grey" />
|
||||
|
||||
<rect id="tab" x="0" y="36" width="50" height="32" rx="4" class="key grey" />
|
||||
|
||||
<rect id="m3l" x="0" y="72" width="60" height="32" rx="4" class="key grey{{ MOD3 }}" />
|
||||
<use id="m3r" xlink:href="#basekey" x="460" y="72" class="key grey{{ MOD3 }}" />
|
||||
|
||||
<rect id="shiftl" x="0" y="108" width="40" height="32" rx="4" class="key grey{{ SHIFT }}" />
|
||||
<rect id="m4l" x="44" y="108" width="34" height="32" rx="4" class="key grey{{ MOD4 }}" />
|
||||
<rect id="shiftr" x="442" y="108" width="86" height="32" rx="4" class="key grey{{ SHIFT }}" />
|
||||
|
||||
<rect id="ctrll" x="0" y="144" width="50" height="32" rx="4" class="key grey" />
|
||||
<rect id="altl" x="124" y="144" width="48" height="32" rx="4" class="key grey" />
|
||||
<rect id="space" x="176" y="144" width="168" height="32" rx="4" class="key grey" />
|
||||
<rect id="m4r" x="348" y="144" width="48" height="32" rx="4" class="key grey{{ MOD4 }}" />
|
||||
<rect id="ctrlr" x="478" y="144" width="50" height="32" rx="4" class="key grey" />
|
||||
|
||||
<path
|
||||
fill-rule="evenodd"
|
||||
clip-rule="evenodd"
|
||||
d="
|
||||
M 10,32
|
||||
l -6,0 a 4,4 0 0 1 -4,-4
|
||||
l 0,-24 a 4,4 0 0 1 4,-4
|
||||
l 34,0 a 4,4 0 0 1 4,4
|
||||
l 0,60 a 4,4 0 0 1 -4,4
|
||||
l -24,0 a 4,4 0 0 1 -4,-4
|
||||
z"
|
||||
transform="translate(486,36)"
|
||||
id="return"
|
||||
class="key grey"/>
|
||||
|
||||
<rect y="101" x="181" width="14" height="1" rx="1" id="nub" style="fill:#eee;" />
|
||||
<use y="0" x="108" xlink:href="#nub" />
|
||||
</g>
|
||||
|
||||
<g transform="translate(-0.5,-0.5)">
|
||||
<text y="96" x="10" class="mod" id="m3ltxt">Mod3</text>
|
||||
<text y="133" x="10" class="mod big" id="shiftltxt">⇧</text>
|
||||
<text y="168" x="10" class="mod" id="ctrlltxt">Strg</text>
|
||||
|
||||
<text y="132" x="56" class="mod" id="m4ltxt">M4</text>
|
||||
<text y="168" x="135" class="mod" id="altltxt">Alt</text>
|
||||
|
||||
<text y="96" x="472" class="mod" id="m3rtxt">M3</text>
|
||||
<text y="133" x="450" class="mod big" id="shiftrtxt">⇧</text>
|
||||
<text y="168" x="490" class="mod" id="ctrlrtxt">Strg</text>
|
||||
<text y="168" x="357" class="mod" id="m4rtxt">Mod4</text>
|
||||
|
||||
<text y="62" x="495" class="mod big" id="returntxt">⏎</text>
|
||||
<text y="23" x="480" class="mod" id="backspacetxt">⌫</text>
|
||||
|
||||
<text y="25" x="20" class="deadcircle" id="deadcircletxt">◌</text>
|
||||
<use y="0" x="432" xlink:href="#deadcircletxt" id="t2" />
|
||||
<use y="36" x="450" xlink:href="#deadcircletxt" id="t3" />
|
||||
</g>
|
||||
|
||||
<g transform="translate(55,26)">
|
||||
<text x="0" class="key">{{ AE01 }}</text>
|
||||
<text x="36" class="key">{{ AE02 }}</text>
|
||||
<text x="72" class="key">{{ AE03 }}</text>
|
||||
<text x="108" class="key">{{ AE04 }}</text>
|
||||
<text x="144" class="key">{{ AE05 }}</text>
|
||||
|
||||
<text x="180" class="key">{{ AE06 }}</text>
|
||||
<text x="216" class="key">{{ AE07 }}</text>
|
||||
<text x="252" class="key">{{ AE08 }}</text>
|
||||
<text x="288" class="key">{{ AE09 }}</text>
|
||||
<text x="324" class="key">{{ AE10 }}</text>
|
||||
<text x="360" class="key">{{ AE11 }}</text>
|
||||
</g>
|
||||
|
||||
|
||||
<text x="10" y="60" class="mod big">⇥</text>
|
||||
|
||||
<g transform="translate(73,62)">
|
||||
<text x="0" class="key">{{ AD01 }}</text>
|
||||
<text x="36" class="key">{{ AD02 }}</text>
|
||||
<text x="72" class="key">{{ AD03 }}</text>
|
||||
<text x="108" class="key">{{ AD04 }}</text>
|
||||
<text x="144" class="key">{{ AD05 }}</text>
|
||||
|
||||
<text x="180" class="key">{{ AD06 }}</text>
|
||||
<text x="216" class="key">{{ AD07 }}</text>
|
||||
<text x="252" class="key">{{ AD08 }}</text>
|
||||
<text x="288" class="key">{{ AD09 }}</text>
|
||||
<text x="324" class="key">{{ AD10 }}</text>
|
||||
<text x="360" class="key">{{ AD11 }}</text>
|
||||
</g>
|
||||
|
||||
|
||||
<g transform="translate(84,98)">
|
||||
<text x="0" class="key">{{ AC01 }}</text>
|
||||
<text x="36" class="key">{{ AC02 }}</text>
|
||||
<text x="72" class="key">{{ AC03 }}</text>
|
||||
<text x="108" class="key nubkey">{{ AC04 }}</text>
|
||||
<text x="144" class="key">{{ AC05 }}</text>
|
||||
|
||||
<text x="180" class="key">{{ AC06 }}</text>
|
||||
<text x="216" class="key nubkey">{{ AC07 }}</text>
|
||||
<text x="252" class="key">{{ AC08 }}</text>
|
||||
<text x="288" class="key">{{ AC09 }}</text>
|
||||
<text x="324" class="key">{{ AC10 }}</text>
|
||||
<text x="360" class="key">{{ AC11 }}</text>
|
||||
</g>
|
||||
|
||||
|
||||
<g transform="translate(101,134)">
|
||||
<text x="0" class="key">{{ AB01 }}</text>
|
||||
<text x="36" class="key">{{ AB02 }}</text>
|
||||
<text x="72" class="key">{{ AB03 }}</text>
|
||||
<text x="108" class="key">{{ AB04 }}</text>
|
||||
|
||||
<text x="144" class="key">{{ AB05 }}</text>
|
||||
<text x="180" class="key">{{ AB06 }}</text>
|
||||
<text x="216" class="key">{{ AB07 }}</text>
|
||||
<text x="252" class="key">{{ AB08 }}</text>
|
||||
<text x="288" class="key">{{ AB09 }}</text>
|
||||
<text x="324" class="key">{{ AB10 }}</text>
|
||||
</g>
|
||||
|
||||
<text x="20" y="26" class="dead" id="t1">{{ TLDE }}</text>
|
||||
<text x="452" y="26" class="dead" id="t2">{{ AE12 }}</text>
|
||||
<text x="470" y="62" class="dead" id="t3">{{ AD12 }}</text>
|
||||
</svg>
|
Before Width: | Height: | Size: 10 KiB |
Before Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 69 KiB |
Before Width: | Height: | Size: 68 KiB |
Before Width: | Height: | Size: 72 KiB |
Before Width: | Height: | Size: 71 KiB |
Before Width: | Height: | Size: 64 KiB |
Before Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 69 KiB |
Before Width: | Height: | Size: 68 KiB |
Before Width: | Height: | Size: 72 KiB |
Before Width: | Height: | Size: 72 KiB |
Before Width: | Height: | Size: 64 KiB |
Before Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 69 KiB |
Before Width: | Height: | Size: 68 KiB |
Before Width: | Height: | Size: 72 KiB |
Before Width: | Height: | Size: 71 KiB |
Before Width: | Height: | Size: 64 KiB |
Before Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 69 KiB |
Before Width: | Height: | Size: 68 KiB |
Before Width: | Height: | Size: 72 KiB |
Before Width: | Height: | Size: 71 KiB |
Before Width: | Height: | Size: 64 KiB |
Before Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 69 KiB |
Before Width: | Height: | Size: 68 KiB |
Before Width: | Height: | Size: 72 KiB |
Before Width: | Height: | Size: 71 KiB |
Before Width: | Height: | Size: 64 KiB |
|
@ -1,313 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
version="1.1"
|
||||
id="Ebene_1"
|
||||
width="535"
|
||||
height="183"
|
||||
viewBox="0 0 535 183"
|
||||
enable-background="new 0 0 535 183"
|
||||
xml:space="preserve"
|
||||
inkscape:version="0.48.5 r10040"
|
||||
sodipodi:docname="tastatur_e1.svg"
|
||||
inkscape:export-filename="/home/knittl/git/svn/neo/www/tastatur_base.png"
|
||||
inkscape:export-xdpi="90"
|
||||
inkscape:export-ydpi="90">
|
||||
|
||||
<metadata id="metadata135">
|
||||
<rdf:RDF>
|
||||
<cc:Work rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
|
||||
<defs id="defs">
|
||||
<style type="text/css" id="style46661">
|
||||
text.mod, text.key, text.dead {
|
||||
fill:#111;
|
||||
fill-opacity:1;
|
||||
stroke:none;
|
||||
font-style:normal;
|
||||
font-variant:normal;
|
||||
font-weight:normal;
|
||||
font-stretch:normal;
|
||||
display:inline;
|
||||
font-family:DejaVu Sans;
|
||||
writing-mode:lr-tb;
|
||||
}
|
||||
|
||||
text.key {
|
||||
font-family:Linux Libertine;
|
||||
}
|
||||
|
||||
text.mod {
|
||||
text-align:start;
|
||||
text-anchor:start;
|
||||
}
|
||||
|
||||
text.deadcircle, text.dead, text.center, text.key {
|
||||
text-align:center;
|
||||
text-anchor:middle;
|
||||
}
|
||||
|
||||
text.key { font-size:20px; }
|
||||
text.dead { font-size:20px; }
|
||||
text.deadcircle { font-size:16px; }
|
||||
text.mod { font-size:10px; }
|
||||
text.big { font-size:14px; }
|
||||
|
||||
.key {
|
||||
stroke-width:1.25;
|
||||
}
|
||||
|
||||
.grey { fill:#949494; stroke:#696969; }
|
||||
.grey { fill:#9f9f9f; stroke:#747474; }
|
||||
|
||||
/* bootstrap colors */
|
||||
.l2, .r2 { fill:#337ab7; }
|
||||
.l3, .r3 { fill:#5cb85c; }
|
||||
.l4, .r4 { fill:#d9534f; }
|
||||
.l5, .r5 { fill:#f0ad4e; }
|
||||
|
||||
/* btn bg hover, unused */
|
||||
.l2, .r2 { stroke:#3071a9; }
|
||||
.l3, .r3 { stroke:#449d44; }
|
||||
.l4, .r4 { stroke:#c9302c; }
|
||||
.l5, .r5 { stroke:#ec971f; }
|
||||
|
||||
/* btn border hover */
|
||||
.l2, .r2 { stroke:#204d74; }
|
||||
.l3, .r3 { stroke:#398439; }
|
||||
.l4, .r4 { stroke:#ac2925; }
|
||||
.l5, .r5 { stroke:#d58512; }
|
||||
|
||||
text.nubkey { fill:#eee; }
|
||||
|
||||
.pressed {
|
||||
<!--opacity:0.5;-->
|
||||
fill:#777;
|
||||
}
|
||||
</style>
|
||||
|
||||
<g id="basekey">
|
||||
<rect width="32" height="32" rx="4" class="key" />
|
||||
<!--rect width="20" height="20" x="6" y="6" /-->
|
||||
<!--rect width="2" height="2" fill="#000" x="15" y="15" /-->
|
||||
</g>
|
||||
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1614"
|
||||
inkscape:window-height="969"
|
||||
id="base"
|
||||
showgrid="false"
|
||||
inkscape:zoom="0.70961538"
|
||||
inkscape:cx="685.32105"
|
||||
inkscape:cy="241.15395"
|
||||
inkscape:window-x="78"
|
||||
inkscape:window-y="71"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="Ebene_1" />
|
||||
|
||||
<g transform="translate(3.5,3.5)">
|
||||
<use xlink:href="#basekey" y="0" x="0" class="l5" />
|
||||
<use xlink:href="#basekey" y="0" x="36" class="l5" />
|
||||
<use xlink:href="#basekey" y="0" x="72" class="l5" />
|
||||
<use xlink:href="#basekey" y="0" x="108" class="l4" />
|
||||
<use xlink:href="#basekey" y="0" x="144" class="l3" />
|
||||
<use xlink:href="#basekey" y="0" x="180" class="l2" />
|
||||
<use xlink:href="#basekey" y="0" x="216" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="0" x="252" class="r2" />
|
||||
<use xlink:href="#basekey" y="0" x="288" class="r2" />
|
||||
<use xlink:href="#basekey" y="0" x="324" class="r3" />
|
||||
<use xlink:href="#basekey" y="0" x="360" class="r4" />
|
||||
<use xlink:href="#basekey" y="0" x="396" class="r5" />
|
||||
<use xlink:href="#basekey" y="0" x="432" class="r5" />
|
||||
|
||||
|
||||
<use xlink:href="#basekey" y="36" x="54" class="l5" />
|
||||
<use xlink:href="#basekey" y="36" x="90" class="l4" />
|
||||
<use xlink:href="#basekey" y="36" x="126" class="l3" />
|
||||
<use xlink:href="#basekey" y="36" x="162" class="l2" />
|
||||
<use xlink:href="#basekey" y="36" x="198" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="36" x="234" class="r2" />
|
||||
<use xlink:href="#basekey" y="36" x="270" class="r2" />
|
||||
<use xlink:href="#basekey" y="36" x="306" class="r3" />
|
||||
<use xlink:href="#basekey" y="36" x="342" class="r4" />
|
||||
<use xlink:href="#basekey" y="36" x="378" class="r5" />
|
||||
<use xlink:href="#basekey" y="36" x="414" class="r5" />
|
||||
<use xlink:href="#basekey" y="36" x="450" class="r5" />
|
||||
|
||||
|
||||
<use xlink:href="#basekey" y="72" x="64" class="l5" />
|
||||
<use xlink:href="#basekey" y="72" x="100" class="l4" />
|
||||
<use xlink:href="#basekey" y="72" x="136" class="l3" />
|
||||
<use xlink:href="#basekey" y="72" x="172" class="l2" />
|
||||
<use xlink:href="#basekey" y="72" x="208" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="72" x="244" class="r2" />
|
||||
<use xlink:href="#basekey" y="72" x="280" class="r2" />
|
||||
<use xlink:href="#basekey" y="72" x="316" class="r3" />
|
||||
<use xlink:href="#basekey" y="72" x="352" class="r4" />
|
||||
<use xlink:href="#basekey" y="72" x="388" class="r5" />
|
||||
<use xlink:href="#basekey" y="72" x="424" class="r5" />
|
||||
|
||||
|
||||
<use xlink:href="#basekey" y="108" x="82" class="l5" />
|
||||
<use xlink:href="#basekey" y="108" x="118" class="l4" />
|
||||
<use xlink:href="#basekey" y="108" x="154" class="l3" />
|
||||
<use xlink:href="#basekey" y="108" x="190" class="l2" />
|
||||
<use xlink:href="#basekey" y="108" x="226" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="108" x="262" class="r2" />
|
||||
<use xlink:href="#basekey" y="108" x="298" class="r2" />
|
||||
<use xlink:href="#basekey" y="108" x="334" class="r3" />
|
||||
<use xlink:href="#basekey" y="108" x="370" class="r4" />
|
||||
<use xlink:href="#basekey" y="108" x="406" class="r5" />
|
||||
|
||||
|
||||
<rect id="backspace" y="0" x="468" width="60" height="32" rx="4" class="key grey" />
|
||||
|
||||
<rect id="tab" x="0" y="36" width="50" height="32" rx="4" class="key grey" />
|
||||
|
||||
<rect id="m3l" x="0" y="72" width="60" height="32" rx="4" class="key grey" />
|
||||
<use id="m3r" xlink:href="#basekey" x="460" y="72" class="key grey" />
|
||||
|
||||
<rect id="shiftl" x="0" y="108" width="40" height="32" rx="4" class="key grey" />
|
||||
<rect id="m4l" x="44" y="108" width="34" height="32" rx="4" class="key grey" />
|
||||
<rect id="shiftr" x="442" y="108" width="86" height="32" rx="4" class="key grey" />
|
||||
|
||||
<rect id="ctrll" x="0" y="144" width="50" height="32" rx="4" class="key grey" />
|
||||
<rect id="altl" x="124" y="144" width="48" height="32" rx="4" class="key grey" />
|
||||
<rect id="space" x="176" y="144" width="168" height="32" rx="4" class="key grey" />
|
||||
<rect id="m4r" x="348" y="144" width="48" height="32" rx="4" class="key grey" />
|
||||
<rect id="ctrlr" x="478" y="144" width="50" height="32" rx="4" class="key grey" />
|
||||
|
||||
<path
|
||||
fill-rule="evenodd"
|
||||
clip-rule="evenodd"
|
||||
d="
|
||||
M 10,32
|
||||
l -6,0 a 4,4 0 0 1 -4,-4
|
||||
l 0,-24 a 4,4 0 0 1 4,-4
|
||||
l 34,0 a 4,4 0 0 1 4,4
|
||||
l 0,60 a 4,4 0 0 1 -4,4
|
||||
l -24,0 a 4,4 0 0 1 -4,-4
|
||||
z"
|
||||
transform="translate(486,36)"
|
||||
id="return"
|
||||
class="key grey"/>
|
||||
|
||||
<rect y="101" x="181" width="14" height="1" rx="1" id="nub" style="fill:#eee;" />
|
||||
<use y="0" x="108" xlink:href="#nub" />
|
||||
</g>
|
||||
|
||||
<g transform="translate(-0.5,-0.5)">
|
||||
<text y="96" x="10" class="mod" id="m3ltxt">Mod3</text>
|
||||
<text y="133" x="10" class="mod big" id="shiftltxt">⇧</text>
|
||||
<text y="168" x="10" class="mod" id="ctrlltxt">Strg</text>
|
||||
|
||||
<text y="132" x="56" class="mod" id="m4ltxt">M4</text>
|
||||
<text y="168" x="135" class="mod" id="altltxt">Alt</text>
|
||||
|
||||
<text y="96" x="472" class="mod" id="m3rtxt">M3</text>
|
||||
<text y="133" x="450" class="mod big" id="shiftrtxt">⇧</text>
|
||||
<text y="168" x="490" class="mod" id="ctrlrtxt">Strg</text>
|
||||
<text y="168" x="357" class="mod" id="m4rtxt">Mod4</text>
|
||||
|
||||
<text y="62" x="495" class="mod big" id="returntxt">⏎</text>
|
||||
<text y="23" x="480" class="mod" id="backspacetxt">⌫</text>
|
||||
|
||||
<text y="25" x="20" class="deadcircle" id="deadcircletxt">◌</text>
|
||||
<use y="0" x="432" xlink:href="#deadcircletxt" id="t2" />
|
||||
<use y="36" x="450" xlink:href="#deadcircletxt" id="t3" />
|
||||
</g>
|
||||
|
||||
<g transform="translate(55,26)">
|
||||
<text x="0" class="key">1</text>
|
||||
<text x="36" class="key">2</text>
|
||||
<text x="72" class="key">3</text>
|
||||
<text x="108" class="key">4</text>
|
||||
<text x="144" class="key">5</text>
|
||||
|
||||
<text x="180" class="key">6</text>
|
||||
<text x="216" class="key">7</text>
|
||||
<text x="252" class="key">8</text>
|
||||
<text x="288" class="key">9</text>
|
||||
<text x="324" class="key">0</text>
|
||||
<text x="360" class="key">-</text>
|
||||
</g>
|
||||
|
||||
|
||||
<text x="10" y="60" class="mod big">⇥</text>
|
||||
|
||||
<g transform="translate(73,62)">
|
||||
<text x="0" class="key">k</text>
|
||||
<text x="36" class="key">u</text>
|
||||
<text x="72" class="key">ü</text>
|
||||
<text x="108" class="key">.</text>
|
||||
<text x="144" class="key">ä</text>
|
||||
|
||||
<text x="180" class="key">v</text>
|
||||
<text x="216" class="key">g</text>
|
||||
<text x="252" class="key">c</text>
|
||||
<text x="288" class="key">l</text>
|
||||
<text x="324" class="key">j</text>
|
||||
<text x="360" class="key">f</text>
|
||||
</g>
|
||||
|
||||
|
||||
<g transform="translate(84,98)">
|
||||
<text x="0" class="key">h</text>
|
||||
<text x="36" class="key">i</text>
|
||||
<text x="72" class="key">e</text>
|
||||
<text x="108" class="key nubkey">a</text>
|
||||
<text x="144" class="key">o</text>
|
||||
|
||||
<text x="180" class="key">d</text>
|
||||
<text x="216" class="key nubkey">t</text>
|
||||
<text x="252" class="key">r</text>
|
||||
<text x="288" class="key">n</text>
|
||||
<text x="324" class="key">s</text>
|
||||
<text x="360" class="key">ß</text>
|
||||
</g>
|
||||
|
||||
|
||||
<g transform="translate(101,134)">
|
||||
<text x="0" class="key">x</text>
|
||||
<text x="36" class="key">y</text>
|
||||
<text x="72" class="key">ö</text>
|
||||
<text x="108" class="key">,</text>
|
||||
|
||||
<text x="144" class="key">q</text>
|
||||
<text x="180" class="key">b</text>
|
||||
<text x="216" class="key">p</text>
|
||||
<text x="252" class="key">w</text>
|
||||
<text x="288" class="key">m</text>
|
||||
<text x="324" class="key">z</text>
|
||||
</g>
|
||||
|
||||
<text x="20" y="26" class="dead" id="t1">ˆ</text>
|
||||
<text x="452" y="26" class="dead" id="t2">`</text>
|
||||
<text x="470" y="62" class="dead" id="t3">´</text>
|
||||
</svg>
|
Before Width: | Height: | Size: 9.7 KiB |
|
@ -1,313 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
version="1.1"
|
||||
id="Ebene_1"
|
||||
width="535"
|
||||
height="183"
|
||||
viewBox="0 0 535 183"
|
||||
enable-background="new 0 0 535 183"
|
||||
xml:space="preserve"
|
||||
inkscape:version="0.48.5 r10040"
|
||||
sodipodi:docname="tastatur_e1.svg"
|
||||
inkscape:export-filename="/home/knittl/git/svn/neo/www/tastatur_base.png"
|
||||
inkscape:export-xdpi="90"
|
||||
inkscape:export-ydpi="90">
|
||||
|
||||
<metadata id="metadata135">
|
||||
<rdf:RDF>
|
||||
<cc:Work rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
|
||||
<defs id="defs">
|
||||
<style type="text/css" id="style46661">
|
||||
text.mod, text.key, text.dead {
|
||||
fill:#111;
|
||||
fill-opacity:1;
|
||||
stroke:none;
|
||||
font-style:normal;
|
||||
font-variant:normal;
|
||||
font-weight:normal;
|
||||
font-stretch:normal;
|
||||
display:inline;
|
||||
font-family:DejaVu Sans;
|
||||
writing-mode:lr-tb;
|
||||
}
|
||||
|
||||
text.key {
|
||||
font-family:Linux Libertine;
|
||||
}
|
||||
|
||||
text.mod {
|
||||
text-align:start;
|
||||
text-anchor:start;
|
||||
}
|
||||
|
||||
text.deadcircle, text.dead, text.center, text.key {
|
||||
text-align:center;
|
||||
text-anchor:middle;
|
||||
}
|
||||
|
||||
text.key { font-size:20px; }
|
||||
text.dead { font-size:20px; }
|
||||
text.deadcircle { font-size:16px; }
|
||||
text.mod { font-size:10px; }
|
||||
text.big { font-size:14px; }
|
||||
|
||||
.key {
|
||||
stroke-width:1.25;
|
||||
}
|
||||
|
||||
.grey { fill:#949494; stroke:#696969; }
|
||||
.grey { fill:#9f9f9f; stroke:#747474; }
|
||||
|
||||
/* bootstrap colors */
|
||||
.l2, .r2 { fill:#337ab7; }
|
||||
.l3, .r3 { fill:#5cb85c; }
|
||||
.l4, .r4 { fill:#d9534f; }
|
||||
.l5, .r5 { fill:#f0ad4e; }
|
||||
|
||||
/* btn bg hover, unused */
|
||||
.l2, .r2 { stroke:#3071a9; }
|
||||
.l3, .r3 { stroke:#449d44; }
|
||||
.l4, .r4 { stroke:#c9302c; }
|
||||
.l5, .r5 { stroke:#ec971f; }
|
||||
|
||||
/* btn border hover */
|
||||
.l2, .r2 { stroke:#204d74; }
|
||||
.l3, .r3 { stroke:#398439; }
|
||||
.l4, .r4 { stroke:#ac2925; }
|
||||
.l5, .r5 { stroke:#d58512; }
|
||||
|
||||
text.nubkey { fill:#eee; }
|
||||
|
||||
.pressed {
|
||||
<!--opacity:0.5;-->
|
||||
fill:#777;
|
||||
}
|
||||
</style>
|
||||
|
||||
<g id="basekey">
|
||||
<rect width="32" height="32" rx="4" class="key" />
|
||||
<!--rect width="20" height="20" x="6" y="6" /-->
|
||||
<!--rect width="2" height="2" fill="#000" x="15" y="15" /-->
|
||||
</g>
|
||||
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1614"
|
||||
inkscape:window-height="969"
|
||||
id="base"
|
||||
showgrid="false"
|
||||
inkscape:zoom="0.70961538"
|
||||
inkscape:cx="685.32105"
|
||||
inkscape:cy="241.15395"
|
||||
inkscape:window-x="78"
|
||||
inkscape:window-y="71"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="Ebene_1" />
|
||||
|
||||
<g transform="translate(3.5,3.5)">
|
||||
<use xlink:href="#basekey" y="0" x="0" class="l5" />
|
||||
<use xlink:href="#basekey" y="0" x="36" class="l5" />
|
||||
<use xlink:href="#basekey" y="0" x="72" class="l5" />
|
||||
<use xlink:href="#basekey" y="0" x="108" class="l4" />
|
||||
<use xlink:href="#basekey" y="0" x="144" class="l3" />
|
||||
<use xlink:href="#basekey" y="0" x="180" class="l2" />
|
||||
<use xlink:href="#basekey" y="0" x="216" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="0" x="252" class="r2" />
|
||||
<use xlink:href="#basekey" y="0" x="288" class="r2" />
|
||||
<use xlink:href="#basekey" y="0" x="324" class="r3" />
|
||||
<use xlink:href="#basekey" y="0" x="360" class="r4" />
|
||||
<use xlink:href="#basekey" y="0" x="396" class="r5" />
|
||||
<use xlink:href="#basekey" y="0" x="432" class="r5" />
|
||||
|
||||
|
||||
<use xlink:href="#basekey" y="36" x="54" class="l5" />
|
||||
<use xlink:href="#basekey" y="36" x="90" class="l4" />
|
||||
<use xlink:href="#basekey" y="36" x="126" class="l3" />
|
||||
<use xlink:href="#basekey" y="36" x="162" class="l2" />
|
||||
<use xlink:href="#basekey" y="36" x="198" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="36" x="234" class="r2" />
|
||||
<use xlink:href="#basekey" y="36" x="270" class="r2" />
|
||||
<use xlink:href="#basekey" y="36" x="306" class="r3" />
|
||||
<use xlink:href="#basekey" y="36" x="342" class="r4" />
|
||||
<use xlink:href="#basekey" y="36" x="378" class="r5" />
|
||||
<use xlink:href="#basekey" y="36" x="414" class="r5" />
|
||||
<use xlink:href="#basekey" y="36" x="450" class="r5" />
|
||||
|
||||
|
||||
<use xlink:href="#basekey" y="72" x="64" class="l5" />
|
||||
<use xlink:href="#basekey" y="72" x="100" class="l4" />
|
||||
<use xlink:href="#basekey" y="72" x="136" class="l3" />
|
||||
<use xlink:href="#basekey" y="72" x="172" class="l2" />
|
||||
<use xlink:href="#basekey" y="72" x="208" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="72" x="244" class="r2" />
|
||||
<use xlink:href="#basekey" y="72" x="280" class="r2" />
|
||||
<use xlink:href="#basekey" y="72" x="316" class="r3" />
|
||||
<use xlink:href="#basekey" y="72" x="352" class="r4" />
|
||||
<use xlink:href="#basekey" y="72" x="388" class="r5" />
|
||||
<use xlink:href="#basekey" y="72" x="424" class="r5" />
|
||||
|
||||
|
||||
<use xlink:href="#basekey" y="108" x="82" class="l5" />
|
||||
<use xlink:href="#basekey" y="108" x="118" class="l4" />
|
||||
<use xlink:href="#basekey" y="108" x="154" class="l3" />
|
||||
<use xlink:href="#basekey" y="108" x="190" class="l2" />
|
||||
<use xlink:href="#basekey" y="108" x="226" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="108" x="262" class="r2" />
|
||||
<use xlink:href="#basekey" y="108" x="298" class="r2" />
|
||||
<use xlink:href="#basekey" y="108" x="334" class="r3" />
|
||||
<use xlink:href="#basekey" y="108" x="370" class="r4" />
|
||||
<use xlink:href="#basekey" y="108" x="406" class="r5" />
|
||||
|
||||
|
||||
<rect id="backspace" y="0" x="468" width="60" height="32" rx="4" class="key grey" />
|
||||
|
||||
<rect id="tab" x="0" y="36" width="50" height="32" rx="4" class="key grey" />
|
||||
|
||||
<rect id="m3l" x="0" y="72" width="60" height="32" rx="4" class="key grey" />
|
||||
<use id="m3r" xlink:href="#basekey" x="460" y="72" class="key grey" />
|
||||
|
||||
<rect id="shiftl" x="0" y="108" width="40" height="32" rx="4" class="key grey pressed" />
|
||||
<rect id="m4l" x="44" y="108" width="34" height="32" rx="4" class="key grey" />
|
||||
<rect id="shiftr" x="442" y="108" width="86" height="32" rx="4" class="key grey pressed" />
|
||||
|
||||
<rect id="ctrll" x="0" y="144" width="50" height="32" rx="4" class="key grey" />
|
||||
<rect id="altl" x="124" y="144" width="48" height="32" rx="4" class="key grey" />
|
||||
<rect id="space" x="176" y="144" width="168" height="32" rx="4" class="key grey" />
|
||||
<rect id="m4r" x="348" y="144" width="48" height="32" rx="4" class="key grey" />
|
||||
<rect id="ctrlr" x="478" y="144" width="50" height="32" rx="4" class="key grey" />
|
||||
|
||||
<path
|
||||
fill-rule="evenodd"
|
||||
clip-rule="evenodd"
|
||||
d="
|
||||
M 10,32
|
||||
l -6,0 a 4,4 0 0 1 -4,-4
|
||||
l 0,-24 a 4,4 0 0 1 4,-4
|
||||
l 34,0 a 4,4 0 0 1 4,4
|
||||
l 0,60 a 4,4 0 0 1 -4,4
|
||||
l -24,0 a 4,4 0 0 1 -4,-4
|
||||
z"
|
||||
transform="translate(486,36)"
|
||||
id="return"
|
||||
class="key grey"/>
|
||||
|
||||
<rect y="101" x="181" width="14" height="1" rx="1" id="nub" style="fill:#eee;" />
|
||||
<use y="0" x="108" xlink:href="#nub" />
|
||||
</g>
|
||||
|
||||
<g transform="translate(-0.5,-0.5)">
|
||||
<text y="96" x="10" class="mod" id="m3ltxt">Mod3</text>
|
||||
<text y="133" x="10" class="mod big" id="shiftltxt">⇧</text>
|
||||
<text y="168" x="10" class="mod" id="ctrlltxt">Strg</text>
|
||||
|
||||
<text y="132" x="56" class="mod" id="m4ltxt">M4</text>
|
||||
<text y="168" x="135" class="mod" id="altltxt">Alt</text>
|
||||
|
||||
<text y="96" x="472" class="mod" id="m3rtxt">M3</text>
|
||||
<text y="133" x="450" class="mod big" id="shiftrtxt">⇧</text>
|
||||
<text y="168" x="490" class="mod" id="ctrlrtxt">Strg</text>
|
||||
<text y="168" x="357" class="mod" id="m4rtxt">Mod4</text>
|
||||
|
||||
<text y="62" x="495" class="mod big" id="returntxt">⏎</text>
|
||||
<text y="23" x="480" class="mod" id="backspacetxt">⌫</text>
|
||||
|
||||
<text y="25" x="20" class="deadcircle" id="deadcircletxt">◌</text>
|
||||
<use y="0" x="432" xlink:href="#deadcircletxt" id="t2" />
|
||||
<use y="36" x="450" xlink:href="#deadcircletxt" id="t3" />
|
||||
</g>
|
||||
|
||||
<g transform="translate(55,26)">
|
||||
<text x="0" class="key">°</text>
|
||||
<text x="36" class="key">§</text>
|
||||
<text x="72" class="key">ℓ</text>
|
||||
<text x="108" class="key">»</text>
|
||||
<text x="144" class="key">«</text>
|
||||
|
||||
<text x="180" class="key">$</text>
|
||||
<text x="216" class="key">€</text>
|
||||
<text x="252" class="key">„</text>
|
||||
<text x="288" class="key">“</text>
|
||||
<text x="324" class="key">”</text>
|
||||
<text x="360" class="key">—</text>
|
||||
</g>
|
||||
|
||||
|
||||
<text x="10" y="60" class="mod big">⇥</text>
|
||||
|
||||
<g transform="translate(73,62)">
|
||||
<text x="0" class="key">K</text>
|
||||
<text x="36" class="key">U</text>
|
||||
<text x="72" class="key">Ü</text>
|
||||
<text x="108" class="key">•</text>
|
||||
<text x="144" class="key">Ä</text>
|
||||
|
||||
<text x="180" class="key">V</text>
|
||||
<text x="216" class="key">G</text>
|
||||
<text x="252" class="key">C</text>
|
||||
<text x="288" class="key">L</text>
|
||||
<text x="324" class="key">J</text>
|
||||
<text x="360" class="key">F</text>
|
||||
</g>
|
||||
|
||||
|
||||
<g transform="translate(84,98)">
|
||||
<text x="0" class="key">H</text>
|
||||
<text x="36" class="key">I</text>
|
||||
<text x="72" class="key">E</text>
|
||||
<text x="108" class="key nubkey">A</text>
|
||||
<text x="144" class="key">O</text>
|
||||
|
||||
<text x="180" class="key">D</text>
|
||||
<text x="216" class="key nubkey">T</text>
|
||||
<text x="252" class="key">R</text>
|
||||
<text x="288" class="key">N</text>
|
||||
<text x="324" class="key">S</text>
|
||||
<text x="360" class="key">ẞ</text>
|
||||
</g>
|
||||
|
||||
|
||||
<g transform="translate(101,134)">
|
||||
<text x="0" class="key">X</text>
|
||||
<text x="36" class="key">Y</text>
|
||||
<text x="72" class="key">Ö</text>
|
||||
<text x="108" class="key">–</text>
|
||||
|
||||
<text x="144" class="key">Q</text>
|
||||
<text x="180" class="key">B</text>
|
||||
<text x="216" class="key">P</text>
|
||||
<text x="252" class="key">W</text>
|
||||
<text x="288" class="key">M</text>
|
||||
<text x="324" class="key">Z</text>
|
||||
</g>
|
||||
|
||||
<text x="20" y="26" class="dead" id="t1">ˇ</text>
|
||||
<text x="452" y="26" class="dead" id="t2">¸</text>
|
||||
<text x="470" y="62" class="dead" id="t3">¸</text>
|
||||
</svg>
|
Before Width: | Height: | Size: 9.8 KiB |
|
@ -1,313 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
version="1.1"
|
||||
id="Ebene_1"
|
||||
width="535"
|
||||
height="183"
|
||||
viewBox="0 0 535 183"
|
||||
enable-background="new 0 0 535 183"
|
||||
xml:space="preserve"
|
||||
inkscape:version="0.48.5 r10040"
|
||||
sodipodi:docname="tastatur_e1.svg"
|
||||
inkscape:export-filename="/home/knittl/git/svn/neo/www/tastatur_base.png"
|
||||
inkscape:export-xdpi="90"
|
||||
inkscape:export-ydpi="90">
|
||||
|
||||
<metadata id="metadata135">
|
||||
<rdf:RDF>
|
||||
<cc:Work rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
|
||||
<defs id="defs">
|
||||
<style type="text/css" id="style46661">
|
||||
text.mod, text.key, text.dead {
|
||||
fill:#111;
|
||||
fill-opacity:1;
|
||||
stroke:none;
|
||||
font-style:normal;
|
||||
font-variant:normal;
|
||||
font-weight:normal;
|
||||
font-stretch:normal;
|
||||
display:inline;
|
||||
font-family:DejaVu Sans;
|
||||
writing-mode:lr-tb;
|
||||
}
|
||||
|
||||
text.key {
|
||||
font-family:Linux Libertine;
|
||||
}
|
||||
|
||||
text.mod {
|
||||
text-align:start;
|
||||
text-anchor:start;
|
||||
}
|
||||
|
||||
text.deadcircle, text.dead, text.center, text.key {
|
||||
text-align:center;
|
||||
text-anchor:middle;
|
||||
}
|
||||
|
||||
text.key { font-size:20px; }
|
||||
text.dead { font-size:20px; }
|
||||
text.deadcircle { font-size:16px; }
|
||||
text.mod { font-size:10px; }
|
||||
text.big { font-size:14px; }
|
||||
|
||||
.key {
|
||||
stroke-width:1.25;
|
||||
}
|
||||
|
||||
.grey { fill:#949494; stroke:#696969; }
|
||||
.grey { fill:#9f9f9f; stroke:#747474; }
|
||||
|
||||
/* bootstrap colors */
|
||||
.l2, .r2 { fill:#337ab7; }
|
||||
.l3, .r3 { fill:#5cb85c; }
|
||||
.l4, .r4 { fill:#d9534f; }
|
||||
.l5, .r5 { fill:#f0ad4e; }
|
||||
|
||||
/* btn bg hover, unused */
|
||||
.l2, .r2 { stroke:#3071a9; }
|
||||
.l3, .r3 { stroke:#449d44; }
|
||||
.l4, .r4 { stroke:#c9302c; }
|
||||
.l5, .r5 { stroke:#ec971f; }
|
||||
|
||||
/* btn border hover */
|
||||
.l2, .r2 { stroke:#204d74; }
|
||||
.l3, .r3 { stroke:#398439; }
|
||||
.l4, .r4 { stroke:#ac2925; }
|
||||
.l5, .r5 { stroke:#d58512; }
|
||||
|
||||
text.nubkey { fill:#eee; }
|
||||
|
||||
.pressed {
|
||||
<!--opacity:0.5;-->
|
||||
fill:#777;
|
||||
}
|
||||
</style>
|
||||
|
||||
<g id="basekey">
|
||||
<rect width="32" height="32" rx="4" class="key" />
|
||||
<!--rect width="20" height="20" x="6" y="6" /-->
|
||||
<!--rect width="2" height="2" fill="#000" x="15" y="15" /-->
|
||||
</g>
|
||||
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1614"
|
||||
inkscape:window-height="969"
|
||||
id="base"
|
||||
showgrid="false"
|
||||
inkscape:zoom="0.70961538"
|
||||
inkscape:cx="685.32105"
|
||||
inkscape:cy="241.15395"
|
||||
inkscape:window-x="78"
|
||||
inkscape:window-y="71"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="Ebene_1" />
|
||||
|
||||
<g transform="translate(3.5,3.5)">
|
||||
<use xlink:href="#basekey" y="0" x="0" class="l5" />
|
||||
<use xlink:href="#basekey" y="0" x="36" class="l5" />
|
||||
<use xlink:href="#basekey" y="0" x="72" class="l5" />
|
||||
<use xlink:href="#basekey" y="0" x="108" class="l4" />
|
||||
<use xlink:href="#basekey" y="0" x="144" class="l3" />
|
||||
<use xlink:href="#basekey" y="0" x="180" class="l2" />
|
||||
<use xlink:href="#basekey" y="0" x="216" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="0" x="252" class="r2" />
|
||||
<use xlink:href="#basekey" y="0" x="288" class="r2" />
|
||||
<use xlink:href="#basekey" y="0" x="324" class="r3" />
|
||||
<use xlink:href="#basekey" y="0" x="360" class="r4" />
|
||||
<use xlink:href="#basekey" y="0" x="396" class="r5" />
|
||||
<use xlink:href="#basekey" y="0" x="432" class="r5" />
|
||||
|
||||
|
||||
<use xlink:href="#basekey" y="36" x="54" class="l5" />
|
||||
<use xlink:href="#basekey" y="36" x="90" class="l4" />
|
||||
<use xlink:href="#basekey" y="36" x="126" class="l3" />
|
||||
<use xlink:href="#basekey" y="36" x="162" class="l2" />
|
||||
<use xlink:href="#basekey" y="36" x="198" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="36" x="234" class="r2" />
|
||||
<use xlink:href="#basekey" y="36" x="270" class="r2" />
|
||||
<use xlink:href="#basekey" y="36" x="306" class="r3" />
|
||||
<use xlink:href="#basekey" y="36" x="342" class="r4" />
|
||||
<use xlink:href="#basekey" y="36" x="378" class="r5" />
|
||||
<use xlink:href="#basekey" y="36" x="414" class="r5" />
|
||||
<use xlink:href="#basekey" y="36" x="450" class="r5" />
|
||||
|
||||
|
||||
<use xlink:href="#basekey" y="72" x="64" class="l5" />
|
||||
<use xlink:href="#basekey" y="72" x="100" class="l4" />
|
||||
<use xlink:href="#basekey" y="72" x="136" class="l3" />
|
||||
<use xlink:href="#basekey" y="72" x="172" class="l2" />
|
||||
<use xlink:href="#basekey" y="72" x="208" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="72" x="244" class="r2" />
|
||||
<use xlink:href="#basekey" y="72" x="280" class="r2" />
|
||||
<use xlink:href="#basekey" y="72" x="316" class="r3" />
|
||||
<use xlink:href="#basekey" y="72" x="352" class="r4" />
|
||||
<use xlink:href="#basekey" y="72" x="388" class="r5" />
|
||||
<use xlink:href="#basekey" y="72" x="424" class="r5" />
|
||||
|
||||
|
||||
<use xlink:href="#basekey" y="108" x="82" class="l5" />
|
||||
<use xlink:href="#basekey" y="108" x="118" class="l4" />
|
||||
<use xlink:href="#basekey" y="108" x="154" class="l3" />
|
||||
<use xlink:href="#basekey" y="108" x="190" class="l2" />
|
||||
<use xlink:href="#basekey" y="108" x="226" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="108" x="262" class="r2" />
|
||||
<use xlink:href="#basekey" y="108" x="298" class="r2" />
|
||||
<use xlink:href="#basekey" y="108" x="334" class="r3" />
|
||||
<use xlink:href="#basekey" y="108" x="370" class="r4" />
|
||||
<use xlink:href="#basekey" y="108" x="406" class="r5" />
|
||||
|
||||
|
||||
<rect id="backspace" y="0" x="468" width="60" height="32" rx="4" class="key grey" />
|
||||
|
||||
<rect id="tab" x="0" y="36" width="50" height="32" rx="4" class="key grey" />
|
||||
|
||||
<rect id="m3l" x="0" y="72" width="60" height="32" rx="4" class="key grey pressed" />
|
||||
<use id="m3r" xlink:href="#basekey" x="460" y="72" class="key grey pressed" />
|
||||
|
||||
<rect id="shiftl" x="0" y="108" width="40" height="32" rx="4" class="key grey" />
|
||||
<rect id="m4l" x="44" y="108" width="34" height="32" rx="4" class="key grey" />
|
||||
<rect id="shiftr" x="442" y="108" width="86" height="32" rx="4" class="key grey" />
|
||||
|
||||
<rect id="ctrll" x="0" y="144" width="50" height="32" rx="4" class="key grey" />
|
||||
<rect id="altl" x="124" y="144" width="48" height="32" rx="4" class="key grey" />
|
||||
<rect id="space" x="176" y="144" width="168" height="32" rx="4" class="key grey" />
|
||||
<rect id="m4r" x="348" y="144" width="48" height="32" rx="4" class="key grey" />
|
||||
<rect id="ctrlr" x="478" y="144" width="50" height="32" rx="4" class="key grey" />
|
||||
|
||||
<path
|
||||
fill-rule="evenodd"
|
||||
clip-rule="evenodd"
|
||||
d="
|
||||
M 10,32
|
||||
l -6,0 a 4,4 0 0 1 -4,-4
|
||||
l 0,-24 a 4,4 0 0 1 4,-4
|
||||
l 34,0 a 4,4 0 0 1 4,4
|
||||
l 0,60 a 4,4 0 0 1 -4,4
|
||||
l -24,0 a 4,4 0 0 1 -4,-4
|
||||
z"
|
||||
transform="translate(486,36)"
|
||||
id="return"
|
||||
class="key grey"/>
|
||||
|
||||
<rect y="101" x="181" width="14" height="1" rx="1" id="nub" style="fill:#eee;" />
|
||||
<use y="0" x="108" xlink:href="#nub" />
|
||||
</g>
|
||||
|
||||
<g transform="translate(-0.5,-0.5)">
|
||||
<text y="96" x="10" class="mod" id="m3ltxt">Mod3</text>
|
||||
<text y="133" x="10" class="mod big" id="shiftltxt">⇧</text>
|
||||
<text y="168" x="10" class="mod" id="ctrlltxt">Strg</text>
|
||||
|
||||
<text y="132" x="56" class="mod" id="m4ltxt">M4</text>
|
||||
<text y="168" x="135" class="mod" id="altltxt">Alt</text>
|
||||
|
||||
<text y="96" x="472" class="mod" id="m3rtxt">M3</text>
|
||||
<text y="133" x="450" class="mod big" id="shiftrtxt">⇧</text>
|
||||
<text y="168" x="490" class="mod" id="ctrlrtxt">Strg</text>
|
||||
<text y="168" x="357" class="mod" id="m4rtxt">Mod4</text>
|
||||
|
||||
<text y="62" x="495" class="mod big" id="returntxt">⏎</text>
|
||||
<text y="23" x="480" class="mod" id="backspacetxt">⌫</text>
|
||||
|
||||
<text y="25" x="20" class="deadcircle" id="deadcircletxt">◌</text>
|
||||
<use y="0" x="432" xlink:href="#deadcircletxt" id="t2" />
|
||||
<use y="36" x="450" xlink:href="#deadcircletxt" id="t3" />
|
||||
</g>
|
||||
|
||||
<g transform="translate(55,26)">
|
||||
<text x="0" class="key">¹</text>
|
||||
<text x="36" class="key">²</text>
|
||||
<text x="72" class="key">³</text>
|
||||
<text x="108" class="key">›</text>
|
||||
<text x="144" class="key">‹</text>
|
||||
|
||||
<text x="180" class="key">¢</text>
|
||||
<text x="216" class="key">¥</text>
|
||||
<text x="252" class="key">‚</text>
|
||||
<text x="288" class="key">‘</text>
|
||||
<text x="324" class="key">’</text>
|
||||
<text x="360" class="key"></text>
|
||||
</g>
|
||||
|
||||
|
||||
<text x="10" y="60" class="mod big">⇥</text>
|
||||
|
||||
<g transform="translate(73,62)">
|
||||
<text x="0" class="key">…</text>
|
||||
<text x="36" class="key">_</text>
|
||||
<text x="72" class="key">[</text>
|
||||
<text x="108" class="key">]</text>
|
||||
<text x="144" class="key">^</text>
|
||||
|
||||
<text x="180" class="key">!</text>
|
||||
<text x="216" class="key"><</text>
|
||||
<text x="252" class="key">></text>
|
||||
<text x="288" class="key">=</text>
|
||||
<text x="324" class="key">&</text>
|
||||
<text x="360" class="key">ſ</text>
|
||||
</g>
|
||||
|
||||
|
||||
<g transform="translate(84,98)">
|
||||
<text x="0" class="key">\</text>
|
||||
<text x="36" class="key">/</text>
|
||||
<text x="72" class="key">{</text>
|
||||
<text x="108" class="key nubkey">}</text>
|
||||
<text x="144" class="key">*</text>
|
||||
|
||||
<text x="180" class="key">?</text>
|
||||
<text x="216" class="key nubkey">(</text>
|
||||
<text x="252" class="key">)</text>
|
||||
<text x="288" class="key">-</text>
|
||||
<text x="324" class="key">:</text>
|
||||
<text x="360" class="key">@</text>
|
||||
</g>
|
||||
|
||||
|
||||
<g transform="translate(101,134)">
|
||||
<text x="0" class="key">#</text>
|
||||
<text x="36" class="key">$</text>
|
||||
<text x="72" class="key">|</text>
|
||||
<text x="108" class="key">~</text>
|
||||
|
||||
<text x="144" class="key">`</text>
|
||||
<text x="180" class="key">+</text>
|
||||
<text x="216" class="key">%</text>
|
||||
<text x="252" class="key">"</text>
|
||||
<text x="288" class="key">'</text>
|
||||
<text x="324" class="key">;</text>
|
||||
</g>
|
||||
|
||||
<text x="20" y="26" class="dead" id="t1"></text><text x="20" y="28" class="dead" id="t1">↻</text>
|
||||
<text x="452" y="26" class="dead" id="t2">˚</text>
|
||||
<text x="470" y="62" class="dead" id="t3">/</text>
|
||||
</svg>
|
Before Width: | Height: | Size: 9.8 KiB |
|
@ -1,313 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
version="1.1"
|
||||
id="Ebene_1"
|
||||
width="535"
|
||||
height="183"
|
||||
viewBox="0 0 535 183"
|
||||
enable-background="new 0 0 535 183"
|
||||
xml:space="preserve"
|
||||
inkscape:version="0.48.5 r10040"
|
||||
sodipodi:docname="tastatur_e1.svg"
|
||||
inkscape:export-filename="/home/knittl/git/svn/neo/www/tastatur_base.png"
|
||||
inkscape:export-xdpi="90"
|
||||
inkscape:export-ydpi="90">
|
||||
|
||||
<metadata id="metadata135">
|
||||
<rdf:RDF>
|
||||
<cc:Work rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
|
||||
<defs id="defs">
|
||||
<style type="text/css" id="style46661">
|
||||
text.mod, text.key, text.dead {
|
||||
fill:#111;
|
||||
fill-opacity:1;
|
||||
stroke:none;
|
||||
font-style:normal;
|
||||
font-variant:normal;
|
||||
font-weight:normal;
|
||||
font-stretch:normal;
|
||||
display:inline;
|
||||
font-family:DejaVu Sans;
|
||||
writing-mode:lr-tb;
|
||||
}
|
||||
|
||||
text.key {
|
||||
font-family:Linux Libertine;
|
||||
}
|
||||
|
||||
text.mod {
|
||||
text-align:start;
|
||||
text-anchor:start;
|
||||
}
|
||||
|
||||
text.deadcircle, text.dead, text.center, text.key {
|
||||
text-align:center;
|
||||
text-anchor:middle;
|
||||
}
|
||||
|
||||
text.key { font-size:20px; }
|
||||
text.dead { font-size:20px; }
|
||||
text.deadcircle { font-size:16px; }
|
||||
text.mod { font-size:10px; }
|
||||
text.big { font-size:14px; }
|
||||
|
||||
.key {
|
||||
stroke-width:1.25;
|
||||
}
|
||||
|
||||
.grey { fill:#949494; stroke:#696969; }
|
||||
.grey { fill:#9f9f9f; stroke:#747474; }
|
||||
|
||||
/* bootstrap colors */
|
||||
.l2, .r2 { fill:#337ab7; }
|
||||
.l3, .r3 { fill:#5cb85c; }
|
||||
.l4, .r4 { fill:#d9534f; }
|
||||
.l5, .r5 { fill:#f0ad4e; }
|
||||
|
||||
/* btn bg hover, unused */
|
||||
.l2, .r2 { stroke:#3071a9; }
|
||||
.l3, .r3 { stroke:#449d44; }
|
||||
.l4, .r4 { stroke:#c9302c; }
|
||||
.l5, .r5 { stroke:#ec971f; }
|
||||
|
||||
/* btn border hover */
|
||||
.l2, .r2 { stroke:#204d74; }
|
||||
.l3, .r3 { stroke:#398439; }
|
||||
.l4, .r4 { stroke:#ac2925; }
|
||||
.l5, .r5 { stroke:#d58512; }
|
||||
|
||||
text.nubkey { fill:#eee; }
|
||||
|
||||
.pressed {
|
||||
<!--opacity:0.5;-->
|
||||
fill:#777;
|
||||
}
|
||||
</style>
|
||||
|
||||
<g id="basekey">
|
||||
<rect width="32" height="32" rx="4" class="key" />
|
||||
<!--rect width="20" height="20" x="6" y="6" /-->
|
||||
<!--rect width="2" height="2" fill="#000" x="15" y="15" /-->
|
||||
</g>
|
||||
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1614"
|
||||
inkscape:window-height="969"
|
||||
id="base"
|
||||
showgrid="false"
|
||||
inkscape:zoom="0.70961538"
|
||||
inkscape:cx="685.32105"
|
||||
inkscape:cy="241.15395"
|
||||
inkscape:window-x="78"
|
||||
inkscape:window-y="71"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="Ebene_1" />
|
||||
|
||||
<g transform="translate(3.5,3.5)">
|
||||
<use xlink:href="#basekey" y="0" x="0" class="l5" />
|
||||
<use xlink:href="#basekey" y="0" x="36" class="l5" />
|
||||
<use xlink:href="#basekey" y="0" x="72" class="l5" />
|
||||
<use xlink:href="#basekey" y="0" x="108" class="l4" />
|
||||
<use xlink:href="#basekey" y="0" x="144" class="l3" />
|
||||
<use xlink:href="#basekey" y="0" x="180" class="l2" />
|
||||
<use xlink:href="#basekey" y="0" x="216" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="0" x="252" class="r2" />
|
||||
<use xlink:href="#basekey" y="0" x="288" class="r2" />
|
||||
<use xlink:href="#basekey" y="0" x="324" class="r3" />
|
||||
<use xlink:href="#basekey" y="0" x="360" class="r4" />
|
||||
<use xlink:href="#basekey" y="0" x="396" class="r5" />
|
||||
<use xlink:href="#basekey" y="0" x="432" class="r5" />
|
||||
|
||||
|
||||
<use xlink:href="#basekey" y="36" x="54" class="l5" />
|
||||
<use xlink:href="#basekey" y="36" x="90" class="l4" />
|
||||
<use xlink:href="#basekey" y="36" x="126" class="l3" />
|
||||
<use xlink:href="#basekey" y="36" x="162" class="l2" />
|
||||
<use xlink:href="#basekey" y="36" x="198" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="36" x="234" class="r2" />
|
||||
<use xlink:href="#basekey" y="36" x="270" class="r2" />
|
||||
<use xlink:href="#basekey" y="36" x="306" class="r3" />
|
||||
<use xlink:href="#basekey" y="36" x="342" class="r4" />
|
||||
<use xlink:href="#basekey" y="36" x="378" class="r5" />
|
||||
<use xlink:href="#basekey" y="36" x="414" class="r5" />
|
||||
<use xlink:href="#basekey" y="36" x="450" class="r5" />
|
||||
|
||||
|
||||
<use xlink:href="#basekey" y="72" x="64" class="l5" />
|
||||
<use xlink:href="#basekey" y="72" x="100" class="l4" />
|
||||
<use xlink:href="#basekey" y="72" x="136" class="l3" />
|
||||
<use xlink:href="#basekey" y="72" x="172" class="l2" />
|
||||
<use xlink:href="#basekey" y="72" x="208" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="72" x="244" class="r2" />
|
||||
<use xlink:href="#basekey" y="72" x="280" class="r2" />
|
||||
<use xlink:href="#basekey" y="72" x="316" class="r3" />
|
||||
<use xlink:href="#basekey" y="72" x="352" class="r4" />
|
||||
<use xlink:href="#basekey" y="72" x="388" class="r5" />
|
||||
<use xlink:href="#basekey" y="72" x="424" class="r5" />
|
||||
|
||||
|
||||
<use xlink:href="#basekey" y="108" x="82" class="l5" />
|
||||
<use xlink:href="#basekey" y="108" x="118" class="l4" />
|
||||
<use xlink:href="#basekey" y="108" x="154" class="l3" />
|
||||
<use xlink:href="#basekey" y="108" x="190" class="l2" />
|
||||
<use xlink:href="#basekey" y="108" x="226" class="l2" />
|
||||
|
||||
<use xlink:href="#basekey" y="108" x="262" class="r2" />
|
||||
<use xlink:href="#basekey" y="108" x="298" class="r2" />
|
||||
<use xlink:href="#basekey" y="108" x="334" class="r3" />
|
||||
<use xlink:href="#basekey" y="108" x="370" class="r4" />
|
||||
<use xlink:href="#basekey" y="108" x="406" class="r5" />
|
||||
|
||||
|
||||
<rect id="backspace" y="0" x="468" width="60" height="32" rx="4" class="key grey" />
|
||||
|
||||
<rect id="tab" x="0" y="36" width="50" height="32" rx="4" class="key grey" />
|
||||
|
||||
<rect id="m3l" x="0" y="72" width="60" height="32" rx="4" class="key grey" />
|
||||
<use id="m3r" xlink:href="#basekey" x="460" y="72" class="key grey" />
|
||||
|
||||
<rect id="shiftl" x="0" y="108" width="40" height="32" rx="4" class="key grey" />
|
||||
<rect id="m4l" x="44" y="108" width="34" height="32" rx="4" class="key grey pressed" />
|
||||
<rect id="shiftr" x="442" y="108" width="86" height="32" rx="4" class="key grey" />
|
||||
|
||||
<rect id="ctrll" x="0" y="144" width="50" height="32" rx="4" class="key grey" />
|
||||
<rect id="altl" x="124" y="144" width="48" height="32" rx="4" class="key grey" />
|
||||
<rect id="space" x="176" y="144" width="168" height="32" rx="4" class="key grey" />
|
||||
<rect id="m4r" x="348" y="144" width="48" height="32" rx="4" class="key grey pressed" />
|
||||
<rect id="ctrlr" x="478" y="144" width="50" height="32" rx="4" class="key grey" />
|
||||
|
||||
<path
|
||||
fill-rule="evenodd"
|
||||
clip-rule="evenodd"
|
||||
d="
|
||||
M 10,32
|
||||
l -6,0 a 4,4 0 0 1 -4,-4
|
||||
l 0,-24 a 4,4 0 0 1 4,-4
|
||||
l 34,0 a 4,4 0 0 1 4,4
|
||||
l 0,60 a 4,4 0 0 1 -4,4
|
||||
l -24,0 a 4,4 0 0 1 -4,-4
|
||||
z"
|
||||
transform="translate(486,36)"
|
||||
id="return"
|
||||
class="key grey"/>
|
||||
|
||||
<rect y="101" x="181" width="14" height="1" rx="1" id="nub" style="fill:#eee;" />
|
||||
<use y="0" x="108" xlink:href="#nub" />
|
||||
</g>
|
||||
|
||||
<g transform="translate(-0.5,-0.5)">
|
||||
<text y="96" x="10" class="mod" id="m3ltxt">Mod3</text>
|
||||
<text y="133" x="10" class="mod big" id="shiftltxt">⇧</text>
|
||||
<text y="168" x="10" class="mod" id="ctrlltxt">Strg</text>
|
||||
|
||||
<text y="132" x="56" class="mod" id="m4ltxt">M4</text>
|
||||
<text y="168" x="135" class="mod" id="altltxt">Alt</text>
|
||||
|
||||
<text y="96" x="472" class="mod" id="m3rtxt">M3</text>
|
||||
<text y="133" x="450" class="mod big" id="shiftrtxt">⇧</text>
|
||||
<text y="168" x="490" class="mod" id="ctrlrtxt">Strg</text>
|
||||
<text y="168" x="357" class="mod" id="m4rtxt">Mod4</text>
|
||||
|
||||
<text y="62" x="495" class="mod big" id="returntxt">⏎</text>
|
||||
<text y="23" x="480" class="mod" id="backspacetxt">⌫</text>
|
||||
|
||||
<text y="25" x="20" class="deadcircle" id="deadcircletxt">◌</text>
|
||||
<use y="0" x="432" xlink:href="#deadcircletxt" id="t2" />
|
||||
<use y="36" x="450" xlink:href="#deadcircletxt" id="t3" />
|
||||
</g>
|
||||
|
||||
<g transform="translate(55,26)">
|
||||
<text x="0" class="key">ª</text>
|
||||
<text x="36" class="key">º</text>
|
||||
<text x="72" class="key">№</text>
|
||||
<text x="108" class="key"></text>
|
||||
<text x="144" class="key">·</text>
|
||||
|
||||
<text x="180" class="key">£</text>
|
||||
<text x="216" class="key">¤</text>
|
||||
<text x="252" class="key">⇥</text>
|
||||
<text x="288" class="key">/</text>
|
||||
<text x="324" class="key">*</text>
|
||||
<text x="360" class="key">-</text>
|
||||
</g>
|
||||
|
||||
|
||||
<text x="10" y="60" class="mod big">⇥</text>
|
||||
|
||||
<g transform="translate(73,62)">
|
||||
<text x="0" class="key">⇞</text>
|
||||
<text x="36" class="key">⌫</text>
|
||||
<text x="72" class="key">⇡</text>
|
||||
<text x="108" class="key">⌦</text>
|
||||
<text x="144" class="key">⇟</text>
|
||||
|
||||
<text x="180" class="key">¡</text>
|
||||
<text x="216" class="key">7</text>
|
||||
<text x="252" class="key">8</text>
|
||||
<text x="288" class="key">9</text>
|
||||
<text x="324" class="key">+</text>
|
||||
<text x="360" class="key">−</text>
|
||||
</g>
|
||||
|
||||
|
||||
<g transform="translate(84,98)">
|
||||
<text x="0" class="key">⇱</text>
|
||||
<text x="36" class="key">⇠</text>
|
||||
<text x="72" class="key">⇣</text>
|
||||
<text x="108" class="key nubkey">⇢</text>
|
||||
<text x="144" class="key">⇲</text>
|
||||
|
||||
<text x="180" class="key">¿</text>
|
||||
<text x="216" class="key nubkey">4</text>
|
||||
<text x="252" class="key">5</text>
|
||||
<text x="288" class="key">6</text>
|
||||
<text x="324" class="key">,</text>
|
||||
<text x="360" class="key">.</text>
|
||||
</g>
|
||||
|
||||
|
||||
<g transform="translate(101,134)">
|
||||
<text x="0" class="key">⌧</text>
|
||||
<text x="36" class="key">⇥</text>
|
||||
<text x="72" class="key">⎀</text>
|
||||
<text x="108" class="key">⏎</text>
|
||||
|
||||
<text x="144" class="key">↶</text>
|
||||
<text x="180" class="key">:</text>
|
||||
<text x="216" class="key">1</text>
|
||||
<text x="252" class="key">2</text>
|
||||
<text x="288" class="key">3</text>
|
||||
<text x="324" class="key">;</text>
|
||||
</g>
|
||||
|
||||
<text x="20" y="26" class="dead" id="t1">˙</text>
|
||||
<text x="452" y="26" class="dead" id="t2">¨</text>
|
||||
<text x="470" y="62" class="dead" id="t3">˝</text>
|
||||
</svg>
|
Before Width: | Height: | Size: 9.8 KiB |