Skip to content

Instantly share code, notes, and snippets.

@sixtyfive
Last active May 28, 2019 11:38
Show Gist options
  • Save sixtyfive/e1f70533598daac01931e611790aaea7 to your computer and use it in GitHub Desktop.
Save sixtyfive/e1f70533598daac01931e611790aaea7 to your computer and use it in GitHub Desktop.
Two variants of doing the same thing (also cf. https://rubular.com/r/WHXrCmrKPfQMAx)
REGEX = /([ -]+)\[{2}([^\]]*)\]\([^\]]*\]\(([^\)]*)\)/
SUBST = '\1[\2](\3)'
task :fix_toc_regex do
string = STDIN.read
puts string.gsub(REGEX, SUBST)
end
task :fix_toc_loop_plus_regex do
unless STDIN.tty?
out = []
entry = []
STDIN.read.split("\n").each do |line|
words = line.split
if words[1] && words[1][0..1] == '[['
entry[0] = line.rstrip
elsif !entry.empty? && line.strip[0] != '-'
entry[1] = line.lstrip
else
unless entry.empty?
entry = entry.join(' ')
entry.gsub!(REGEX, SUBST)
out << entry
entry = []
end
out << line
end
end
puts out.join("\n")
end
end
- [Allgemeines zu den
Excel-Tabellen](#allgemeines-zu-den-excel-tabellen)
- [Zellenformate](#zellenformate)
- [Abweichungen](#abweichungen)
- [Spaltenübergreifende Formate](#spaltenübergreifende-formate)
- [Zeitangaben](#zeitangaben)
- [Konfidenzangaben](#konfidenzangaben)
- [Zahlen und Ziffern](#zahlen-und-ziffern)
- [Spaltenspezifische Formate](#spaltenspezifische-formate)
- [Exempelsammlung](#exempelsammlung)
- [[Spalte A („Seite“)](Spalten/01_A.md)](#spalte-a-seite)
- [Obere Zeile](#obere-zeile)
- [Untere Zeile:
Bibliotheca-Arabica-ID](#untere-zeile-bibliotheca-arabica-id)
- [Beispiele](#beispiele)
- [[Spalte B („Titel“)](Spalten/02_B.md)](#spalte-b-titel)
- [Werktitel](#werktitel)
- [Werktitel mit Angabe des
Werkteils](#werktitel-mit-angabe-des-werkteils)
- [Ordnungszahl der Kopie
(*neu!*)](#ordnungszahl-der-kopie-neu)
- [Werktitel mit Untertitel](#werktitel-mit-untertitel)
- [Druckedition](#druckedition)
- [Alternative Titel](#alternative-titel)
- [[Spalte C („Autor“)](Spalten/03_C.md)](#spalte-c-autor)
- [Referenz](#referenz)
- [[Spalte
E („Blattzahl-/maß“)](Spalten/05_E.md)](#spalte-e-blattzahl-maß)
- [Referenz](#referenz-1)
- [Beispiele](#beispiele-1)
- [[Spalte
H („Kommentare“)](Spalten/08_H.md)](#spalte-h-kommentare)
- [Referenz](#referenz-2)
- [Beispiele](#beispiele-2)
- [[Spalte K („Kopist“)](Spalten/11_K.md)](#spalte-k-kopist)
- [Referenz](#referenz-3)
- [[Spalte L
(„Datierung Kopie“)](Spalten/12_L.md)](#spalte-l-datierung-kopie)
- [Referenz](#referenz-4)
- [Beispiele](#beispiele-3)
- [[Spalte T („Signatur“)](Spalten/20_T.md)](#spalte-t-signatur)
- [Beispiele](#beispiele-4)
- [[Spalte U („Thematik“)](Spalten/21_U.md)](#spalte-u-thematik)
- [[Spalte Y („Duktus“)](Spalten/25_Y.md)](#spalte-y-duktus)
- [[Spalte Z
(„Datierung Werk“)](Spalten/26_Z.md)](#spalte-z-datierung-werk)
- [Referenz](#referenz-5)
- [Beispiele](#beispiele-5)
- [[Spalte AJ
(„Sterbejahr AH“)](Spalten/36_AJ.md)](#spalte-aj-sterbejahr-ah)
- [Referenz](#referenz-6)
- [[Spalte AK
(„Weitere Inhalte“)](Spalten/37_AK.md)](#spalte-ak-weitere-inhalte)
- [Referenz](#referenz-7)
- [[Spalte AL
(„Sterbejahr AD“)](Spalten/38_AL.md)](#spalte-al-sterbejahr-ad)
- [[Spalte
AM („Zeilenverweise“)](Spalten/39_AM.md)](#spalte-am-zeilenverweise)
- [Referenz](#referenz-8)
- [Beispiele](#beispiele-6)
- [„imPrecise“: Hypothetisches System zur Angabe von Zeit ungeachtet
von Granularität oder
Konfidenz](#imprecise-hypothetisches-system-zur-angabe-von-zeit-ungeachtet-von-granularität-oder-konfidenz)
- [Keine Angabe](#keine-angabe)
- [Kontext, auf den die Angabe sich
bezieht](#kontext-auf-den-die-angabe-sich-bezieht)
- [Präzise Datumsangaben mit oder ohne
Kalenderangabe](#präzise-datumsangaben-mit-oder-ohne-kalenderangabe)
- [Nichtpräzise Datumsangaben](#nichtpräzise-datumsangaben)
- [Präzise Jahresangaben mit oder ohne
Kalenderangabe](#präzise-jahresangaben-mit-oder-ohne-kalenderangabe)
- [Zeitangaben im Präzisionsbereich von Jahrhunderten oder
Jahrzehnten mit oder ohne
Kalenderangabe](#zeitangaben-im-präzisionsbereich-von-jahrhunderten-oder-jahrzehnten-mit-oder-ohne-kalenderangabe)
- [Alle anderen Arten von
Zeitangaben](#alle-anderen-arten-von-zeitangaben)
- [Modalität (Konfidenz)](#modalität-konfidenz)
- [Bestehende Projekte für ähnliche
Anwendungsfälle](#bestehende-projekte-für-ähnliche-anwendungsfälle)
- [„face2face“: Hypothetisches System zur Angabe von Personendaten
unbekannten
Normalisierungsstandes](#face2face-hypothetisches-system-zur-angabe-von-personendaten-unbekannten-normalisierungsstandes)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment