Changes between Initial Version and Version 1 of neo_yaml


Ignore:
Timestamp:
26/02/09 04:35:20 (15 years ago)
Author:
Martin
Comment:

Verlagerung aus dem svn: Projekt zur automatischen Erzeugung der Treiber und Grafiken aus der Referenz

Legend:

Unmodified
Added
Removed
Modified
  • neo_yaml

    v1 v1  
     1= Neo-Projekt: Maschinenlesbare Referenz (neo_yaml) =
     2
     3== Mitwirkende ==
     4Martin Roppelt (m.p.roppelt ἢτ web in Deutschland)
     5
     6== Ressourcen ==
     7 * ![?? https://svn.neo-layout.org/grafik/xml-vorschlag/@200]
     8 * [http://www.eigenheimstrasse.de/~ben/layoutgen/layoutgen/]
     9 * ![?? svn://svn.tuxfamily.org/svnroot/dvorak/svn/pilotes/trunk/configGenerator/]
     10 * [http://pyyaml.org/]
     11
     12== E-Mails ==
     13 * `   07/07` [neo_layout] Autohotkey und ein paar Ideen
     14 * `   07/07` [neo_layout] neo.xml
     15 * `11-12/08` [neo] Referenz als XML für automatische Layout-Generierung
     16 * `   01/09` Maschinenlesbare Referenz
     17
     18== Funktionsweise ==
     19Menschenlesbare Referenz, Unicode-Hex-Ansicht ⇔ Maschinenlesbare Referenz ⇔ Treiber, Grafiken
     20
     21Um einen Treiber usw. zu erzeugen, wird ein View benötigt, der die zur
     22Darstellung zusätzlich benötigten Daten enthält. Dieser kann auch aus den
     23bereits bestehenden Treibern erstellt werden. Wenn man also an der Neo-Belegung
     24etwas ändert, kann man so alle Treiber synchronisieren. So lassen sich auch
     25rasch aus Belegungen Neo-3-Treiber und Forks erstellen.
     26
     27=== Zieldateien ===
     28 * XkbMap
     29 * XModMap ⇒ Konsolen-Map, Tastenaufkleber
     30 * KbdNeo
     31 * AHK, Bildschirmtastatur/SVGs
     32 * Mac-Treiber
     33 * Aufsteller, Tabellen
     34 * KTouch-Lektion
     35
     36=== Aufbau der Referenzdateien ===
     37
     38==== Model-Datei ====
     39Eine Modeldatei enthält je eine Liste mit den Tastaturreihen für das
     40Haupttastenfeld und den Ziffernblock. Jede dieser dieser Listeneinträge enthält
     41wiederum eine Liste der Zeichen der Ebenen für jede Taste in dieser Reihe. Ist
     42die Taste eine Sondertaste (Modifier, Akzenttasten, Leertaste, Tabulator oder
     43Return) dann ist diese Liste leer.
     44
     45!!(index, hex)
     46
     47==== View-Datei ====
     48Die Viewdatei enthält (momentan) 3 Listen:
     49 * In der ersten Liste sind die Beschriftungen der Sondertasten. Sie ist
     50entsprechend der Modeldatei aufgebaut.
     51 * In der zweiten die Steuerung (muss noch ausgearbeitet werden).
     52 * In der dritten sind die erläuternden Texte, die zwischen den Tastenfeldern
     53stehen.
     54
     55== Projektstatus ==
     56Zur Zeit entwickele ich einen Parser für die Referenz (parse_neo.py).
     57
     58Danach möchte ich ein Skript für die Erstellung der neo20.txt aus der
     59maschinenlesbaren Referenz schreiben (make_neo.py).
     60
     61Dann soll ein Skript zur Umwandlung des Models in xkbmap (make_xkb.py), xmodmap
     62(make_mod.py), ahk (make_ahk.py) und kbdneo (make_kbd.py) folgen, unter
     63Berücksichtigung der verwendeten Tastatur (Qwertz, deutsch-schweizer Tastatur,
     64Qwerty, Plum, Kbdneo) mittels .layout-Dateien.
     65
     66Danach nehme ich die Erzeugung der svgs und ods’ und zudem einen Layout-Editor in Angriff.
     67
     68== Ausblick ==
     69Was dann auch nicht schaden kann ist ein plattform-übergreifendes Installationsskript.
     70
     71Kann auch gut mit einem Layout-Erzeugungs-Programm zusammenarbeiten, das Statistiken auswertet
     72und eine unterschiedliche Gewichtung von Paradigmen und Tastenplätzen vornimmt.
     73
     74== Abriss der Projektdateien ==
     75 * neo_import.py: Interpretation der yaml- und .layout-Dateien.
     76 * {make, parse}_{neo, ahk, kbd, mac, mod, xkb, grub, svg, ods}.py: Erzeugung und Zerlegung von Treibern und Grafiken.
     77 * edit_neo.py: z. B. nur 1. und 2. Ebene verschieben.
     78
     79--------------
     80
     81[wiki:WikiStart Zur Hauptseite]