Konfigurationsdateien und Beispiele

1. Konfigurationsdateien

  • mswin - VIM-Skript-Datei, die nötig ist, damit VIM sich in ähnlicher Weise bedienen lässt wie Windows-Programme. Die Datei muss im selben Verzeichnis liegen, in dem sich auch das VIM-Programm (gvim.exe) befindet.
  • _vimrc - Konfigurationsdatei des Editors VIM; Version für Windows-PCs, abzuspeichern im Homeverzeichnis des Users (z.B., unter Windows 7: C:\Users\[Benutzername])
  • .vimrc - Konfigurationsdatei des Editors VIM; Version für Unix-Rechner (auch Mac OS X), abzuspeichern im Homeverzeichnis des Users (-> cd ~)
  • .bash_profile - Konfigurationsdatei für die Unix-Shell "bash" (auch verwendbar mit der Unix-Emulation cygwin), abzuspeichern im Homeverzeichnis

2. AWK-Skripts

  • txt2csv - Verwandlung einer Datei mit Fließtext (pro Zeile ein Satz!) in Tabellenformat
  • tg2csv - Verwandlung einer Praat-TextGrid-Datei in Tabellenformat
  • aussagenlogik - Skript zur Veranschaulichung der Aussagenlogik

3. Beispieldateien

4. Reguläre Ausdrücke

4.1. Beschreibung von Wiederholungen (VIM-Syntax)

# Buchstabendoppelungen (mm, nn etc.)
\([a-zA-Z]\)\1
# Wortwiederholungen (die die) [Achtung: Leerzeichen am Beginn!] 
 \([^ ]\+\)\_s\+\1
# Wiederholung von Wortgruppen
\(.\+\)\_s\+\1

4.2. XML-Tags (VIM-Syntax; zeilenübergreifend)

# Tags (<tag>)
<\_.\{-}>             # \_. = "any character including a newline" (vim)

5. SQL

5.1. Erzeugung einer Konkordanz

Voraussetzung: Vorhandensein einer Tabelle oder eines Views namens `tokens` mit den feldern `id`,`autor`,`zeile`,`token`

select 
 c.id,
 c.autor,
 c.zeile, 
 c.vorher,
 c.token,
 group_concat(d.token order by d.id separator ' ') nachher,
 concat_ws(' ', c.vorher, '>>', c.token, '<<', group_concat(d.token order by d.id separator ' ')) fliesstext
 from (
  select 
   group_concat(a.token order by a.id separator ' ') as vorher, 
   b.id, 
   b.autor,
   b.zeile, 
   b.token 
   from tokens a right join (
    select 
    id, 
    autor,
    zeile, 
    token 
    from tokens 
    where token like '%' -- HIER SUCHWORT EINTRAGEN
    collate utf8mb4_general_ci
    -- and position = 1 -- HIER WEITERE SUCHKRITERIEN ANFUEGEN
  ) b on (a.zeile=b.zeile and a.id<b.id) 
  group by b.id, a.zeile
) c
left join
tokens d on (c.zeile=d.zeile and d.id>c.id) 
group by c.id, d.zeile
order by c.token

5.2. Erzeugung von Token- und/oder POS-Tripeln

Voraussetzung: Vorhandensein einer Tabelle oder eines Views namens `tokens` mit den feldern `id`,`zeile`,`token`,`stts` (= POS-Etikettierung mit dem Stuttgart-Tübinger-Tagset)

select
 count(*) as anzahl, a.stts, b.stts, c.stts, 
 group_concat('Z.',a.zeile, ': ', a.token,' ',b.token,' ',c.token order by a.zeile) as Belege
from tokens a 
 left join tokens b on (a.id=b.id-1 and a.zeile=b.zeile) 
 left join tokens c on (b.id=c.id-1 and b.zeile=c.zeile)
where a.stts is not null and b.stts is not null and c.stts is not null
group by a.stts, b.stts, c.stts
order by anzahl desc

6. Dies und Das

Überprüfung der Struktur einer csv-Datei (Haben alle Zeilen eine identische Anzahl von Feldern? Als Separator dient der Tab-Stop [\t]. Das Kommando ist in einer Unix-Shell auszuführen. Das Kommando gibt die Anzahl der Felder pro Zeile aus. Sollte mehr als nur eine Zahl ausgegeben werden, ist die Struktur der csv-Datei fehlerhaft):

gawk 'BEGIN {FS="\t";} {print NF;}' [Pfad und Name der csv-Datei]  | /bin/sort -u

7. Nützliche Links

http://www.fileformat.info/ - Umfassende Webseite mit verschiedensten Informationen zu Fragen der Zeichenkodierung