diff --git a/OLD.kochrezepte b/OLD.kochrezepte
new file mode 100644
index 0000000..2f8655f
--- /dev/null
+++ b/OLD.kochrezepte
@@ -0,0 +1,12287 @@
+Lammkoteletts mit Joghurtsauce (Jof, 13. Okt 1995, 12:20:25):
+[Verlegt von kultur, Asmodis, 11. Okt 1995, 15:28:15]:
+
+Zutaten:
+
+  2 Lammkoteletts, je ca. 150 g mit Knochen
+  20 g Margarine
+  Pfeffer, frisch gemahlen
+  1 Knoblauchzehe
+  2 Scheiben Roggentoastbrot, je ca. 25 g
+  1 EL Kraeuter der Provence, getrocknet
+  1 Becher Magermilchjoghurt (150 g)
+  Paprikapulver, edelsuess
+
+
+Zubereitung:
+
+ Fleisch vom fett befreien, Koteletts in der heissen Margarine 5 Minuten
+ von jeder Seite braten, dann mit Pfeffer wuerzen. Das Fleisch in
+ Alufolie heiss halten.
+ Knoblauch pellen. Das Brot von beiden Seiten damit einreiben, dann
+ toasten. Kraeuter in den Bratsud geben, Knoblauch dazupressen und
+ mit Joghurt erhitzen.
+ Die Sauce mit Pfeffer und Paprika wuerzen. Fleisch mit Toast und
+ Sauce servieren.
+
+Guten Appetit!
+
+
+-----------------------------------------------------------------------------
+
+
+
+Borschtsch (Jof, 13. Okt 1995, 12:20:54):
+[Verlegt von kultur, Asmodis, 11. Okt 1995, 16:05:54]:
+Title: Borschtsch
+Kategorie: Eintopf
+
+Zutaten:
+
+           750-1000 g hohe Rippe
+           500 g Rindfleischknochen
+           1 Bund Suppengruen
+           1 1/2 l Salzwasser
+           1 Knoblauchzehe
+           4-5 Zwiebeln
+           750 g Weisskohl
+           430 g rote Bete (Glas)
+           400 g Tomaten (Dose)
+           2 gruene Paprikaschoten
+           70 g Tomatenmark
+           Salz, Pfeffer, Zucker, Essig
+           Creme fraiche
+
+Zubereitung:
+
+  Fleisch und Knochen waschen, Suppengruen putzen, waschen, mit dem
+  Fleisch und den Knochen in den Schnellkochtopf geben. Salzwasser
+  hinzugiessen, zum Kochen bringen, abschaeumen, den Topf schliessen,
+  etwa 35 Minuten kochen lassen. Das Fleisch aus der Bruehe nehmen, in
+  Wuerfel schneiden und die Bruehe durch ein Sieb giessen. Knoblauch
+  und Zwiebeln abziehen, halbieren und in Scheiben schneiden. Weisskohl
+  vierteln, waschen und in duenne Streifen schneiden. Rote Bete und
+  Tomaten abtropfen und den Saft auffangen. Rote Bete und Tomaten in
+  Streifen schneiden. Paprika putzen und in Streifen schneiden. Das
+  Gemuese mit Tomatensaft und -mark in die Bruehe geben, mit Salz und
+  Pfeffer wuerzen, den Schnellkochtopf schliessen, das Gemuese in etwa
+  7 Minuten garen lassen, den Saft der Roten Bete und das Fleisch
+  hinzufuegen, miterhitzen, und den Borschtsch mit Gewuerzen pikant
+  abschmecken. Creme fraiche getrennt dazu reichen.
+
+    Beigabe: Stangenweissbrot oder ueberbackenes Kaesebrot.
+
+    Ausreichend fuer 6 Personen.
+
+  Kochzeit             etwa 45 Minuten
+
+GUTEN APPETIT!
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Chili con Carne (Jof, 13. Okt 1995, 12:21:10):
+#! rn=Asmodis rt=813424639
+[Verlegt von kultur, Mateese, 11. Okt 1995, 16:42:45]:
+Zwei Variationen:
+ - 250g oder mehr Kaese
+   Wenn alles fertig ist, geraspelten Kaese unterruehren, gibt dem ganzen
+   ein weniger fluessige Konsistenz.
+ - 1 Flasche Altbier
+   Halbe Flasche in das Chili, andere Haelfte in den Koch.
+ -- Mateese
+
+
+-----------------------------------------------------------------------------
+
+
+
+Andalusische Tomatensuppe (Jof, 13. Okt 1995, 12:21:46):
+[Verlegt von kultur, Asmodis, 13. Okt 1995, 01:17:55]:
+Titel: Andalusische Tomatensuppe
+Rubrik: Vegetarisch, Suppen
+
+Zutaten:
+
+ 800 g reife Tomaten
+ 100 g Zwiebeln
+ 2 El. Sonnenblumenoel
+ 1 El. Wasser
+ 4 El. Hefeflocken
+ 100 g Wasser
+ 2 El. Rotwein
+ 1 Gemuesebruehwuerfel
+ 1 El. Butter
+ 10 gehackte Rosmarinnadeln
+ 1 El. feingehacktes Fenchelkraut oder Dill
+ 1 El. feingehackter Thymian
+ 1 El. feingehackter Zitronenthymian
+ 1 El. feingehacktes Basilikum
+ 1 Knoblauchzehe
+ 1/4 Tl. Selleriesalz
+ 1 Spur Picata
+ 100 g Zucchini oder Salatgurke
+ 4 El. Schlagsahne
+
+
+Zubereitung:
+
+  Zubereitungszeit: 30 Minuten
+
+Die Tomaten kurz ins kochende Wasser tauchen, dann die Haut abziehen.
+Die Zwiebeln schaelen und wuerfeln. In dem Oel mit 1 Essloeffel Wasser glasig
+braten. Zum Schluss die Hefeflocken kurz mitroesten.
+Den Topf vom Herd nehmen. 100 g Wasser und die Tomaten dazugeben und mit
+dem Schneidestab des Handmixers puerieren. Den Rotwein, den Bruehwuerfel, die
+Butter und alle Kraeuter hinzufuegen, ebenso die geschaelte durchgepresste
+Knoblauchzehe.
+Die Suppe erwaermen aber nicht kochen!
+Mit dem Selleriesalz und dem Picata pikant abschmecken.
+Die Zucchini oder das Gurkenstueck waschen und in Streifen schneiden. Die
+Suppe in die Teller fuellen, die Zucchini- oder Gurkenstreifen darueber
+verteilen und auf jede Portion 1 Essloeffel Schlagsahne setzen.
+  Portionen: 4
+
+
+-----------------------------------------------------------------------------
+
+
+
+Falafel (Jof, 13. Okt 1995, 12:21:52):
+[Verlegt von kultur, Asmodis, 13. Okt 1995, 01:34:51]:
+Titel: Falafel
+Rubrik: Vegetarisch, Indisch
+
+Zutaten fuer 4 Personen:
+
+ 500 g Kichererbsen,
+ ueber Nacht eingeweicht,
+ abgetropft und pueriert (Mixer)
+ 1 Tl. gemahlenen Koriander
+ 1 Knoblauchzehe, gehackt
+ 1 Tl. gemahlenen Kreuzkuemmel
+ 1/2 Tl. Cayennepfeffer
+ Salz
+ 30 g Mehl
+ Oel zum Fritieren
+
+
+Zubereitung:
+
+Das Kichererbsenpueree mit Koriander, Knoblauch, Kreuzkuemmel,
+Cayennepfeffer und Salz vermischen. Das Mehl dazugeben und gut
+vermengen. Aus dem Teig kleine Baellchen von etwa 3cm Durchmesser
+formen (ein geuebter Falafelroller schafft sicher 20 Stueck in der
+Minute) und in heissem Oel in etwa 2 bis 3 Minuten goldbraun fritieren.
+
+GUTEN APPETIT!
+
+
+-----------------------------------------------------------------------------
+
+
+
+Gemuese-Paella (Asmodis, 13. Okt 1995, 20:05:08):
+Kategorie: Vegetarisches, Reisgerichte, Paella
+
+Zutaten:
+
+ 250 g Naturreis (ungeschaelt)
+ 200 g Erbsen
+ 300 g Champignons
+ 3 Tomaten
+ 1 Aubergine
+ 3 grosse Karotten
+ 1 rote, 1 gruene Paprika
+ 1/4 l Gemuesebruehe
+ 1 Knoblauchzehe (nur eine)
+ Salz
+ Pfeffer
+ Olivenoel
+ ganz wenig Safran
+
+
+Zubereitung:
+
+Die Knoblauchzehe pressen und in eine hohe Pfanne mit ein paar
+El kaltem Olivenoel geben, dann Erhitzen. Vorsicht, Olivenoel
+darf nicht sehr heiss werden! Aus den Paprikas die Schoten
+entfernen, die Dinger schoen klein schneiden und mit dem Rest
+des Gemueses im inzwischen erhitztem Olivenoel duensten.
+Gleichzeitig den Reis ebenfalls in Olivenoel ankochen und dann
+Safran und Gemuesebruehe dazugeben.
+  Den Reis (er muesste durch den Safran schoen roetlich geworden
+sein) in eine Paellapfanne geben, das Gemuese und die Erbsen
+dazutun und alles 20 min. garen lassen, fertig.
+  Safran ist ziemlich teuer und kann - wenn's denn sein muss - auch
+weggelassen werden. Wer mag (Wie z.B. ich) nimmt mehr Knoblauch.
+Aber eigentlich gehoert an dieses Gericht wirklich nur ein Hauch
+davon, das feine Aroma des Safran wird sonst naemlich foermlich
+erschlagen.
+
+GUTEN APPETIT!
+
+-----------------------------------------------------------------------------
+
+
+
+Sushi (Wargon, 13. Okt 1995, 20:08:09):
+[Verlegt von kultur, Asmodis, 11. Okt 1995, 16:43:10]:
+Kategorie: Japanisch, Fisch
+Titel: Sushi-Haeppchen(ca. 30 Stueck)
+
+Zutaten:
+
+  Fuer den Reis:
+ 3 Tassen Reis
+ 3-4 Tassen Wasser
+ 4 El Reis-Essig
+ 4 El Zucker
+ 2 Tl Salz
+
+  Ausserdem:
+
+ Wasabi (japanischer Meerrettich)
+ 500 g erstklassiges und
+ taufrisches Fischfilet z.B.
+ - roher Lachs
+ - Forelle
+ - Thunfisch
+ - Seezunge
+ - Seebarsch
+ - oder auch duenne Scheiben Rinderfilet.
+
+
+Zubereitung:
+----------
+Den Reis mit Wasser in einem Topf aufkochen. Nach 2 Minuten
+sprudelndem Kochen auf ganz kleiner Hitze zurueckschalten,
+zugedeckt 20 Minuten ausquellen lassen. Schliesslich weitere 10
+Minuten neben dem Herd nachziehen lassen.
+Den fertigen Reis in eine weite Schuessel umfuellen, dabei
+ausbreiten und mit moeglichst viel Luft in Kontakt bringen,
+damit der Reis rasch abkuehlt. Die Essigloesung hineintraeufeln,
+dabei den Reis umwenden und mischen, damit alle Koerner von der
+Essigloesung getraenkt werden. Immer zugedeckt halten, damit der
+Reis nicht austrocknen kann.
+Mit dem Sushi-Reis lassen sich die unterschiedlichsten Haeppchen
+herstellen:
+Zuerst jeweils ein essloeffelgrosses Reisbaellchen in laengliche
+Form druecken. Auf die Oberseite etwas Wasabi streichen, obenauf
+nunmehr ein Stueck exakt zugeschnittenes rohes Fischfilet (oder
+Rinderfilet) betten, das so gross sein muss, dass das Reisbaellchen
+darunter voellig verschwindet.
+  Sushi-Roellchen
+Dafuer braucht man Algenblaetter (Nori), die zuerst in der
+trockenen Pfanne angeroestet werden, und Sushi-Reis (s.o.).
+Die Algenblaetter einzeln auf einem Tuch (stilecht: Bambusmatte)
+ausbreiten, jeweils 1 cm hoch mit Sushi-Reis bedecken (ein
+Drittel der Noriflaeche muss frei bleiben). Darauf kommen nun
+schmale Streifen von Gurke oder duennem Omelett, Avocadowuerfel,
+zur Abwechslungauch rasch gebratenes Hackfleisch, das mit
+Yakitorimarinade gewuerzt ist.
+Die Algenblaetter mit Hilfe des Tuches aufrollen, dabei fest
+wickeln. Die leere Seite hilft, die Rollen zusammenzuhalten. <BR>
+Die Rollen jeweils quer in Stuecke schneiden; mit der
+Schnittflaeche nach oben anrichten.
+Zu diesen Sushi-Haeppchen und -Roellchen serviert man
+eingelegten, rosa gefaerbten Ingwer (Beni Shoga), japanischen
+Meerrettich (Wasabi) und natuerlich auch Sojasauce (Shoyu).
+
+GUTEN APPETIT!
+
+
+-----------------------------------------------------------------------------
+
+
+
+Eingelegtes Pfeffersteak (Asmodis, 13. Okt 1995, 20:18:00):
+
+Kategorie: Fleischgerichte, Schweinesteaks
+
+Zutaten fuer 4 Personen:
+
+ 600 bis 800 g Schweinenacken
+ Rotwein
+ Oel
+ Senf
+ Gartenkraeuter
+ Pfeffer
+ Salz
+
+
+Zubereitung:
+
+Das Fleisch 48 Stunden in einem Sud aus 1/4 l Rotwein, 1/4 l Oel, 1 El Senf
+und den gehackten Gartenkraeutern einlegen.
+Das Fleisch mit Kuechenpapier abtupfen und in heissem Fett von beiden Seiten
+kurz braten, mit Salz und Pfefferkoernern wuerzen.
+Dazu Roestkartoffeln und Salat.
+
+(Von Kuechenchef Hans Schatzberger in Nettelbecks Restaurant)
+
+GUTEN APPETIT!
+
+-----------------------------------------------------------------------------
+
+
+
+schlanke Quarktorte (Asmodis, 23. Okt 1995, 10:53:43):
+
+Hier mal ein Kuchenrezept fuer Aline ! :)
+
+Kategorie: Kuchen, Gebaeck
+
+Zutaten:
+
+     200 g Mehl
+     120 g Margarine
+     70 g Zucker
+     1 Eigelb
+     etwas Mehl zum Ausrollen
+     Margarine zum Einfetten der Backform
+
+Fuellung:
+
+     500 g Magerquark
+     500 g Dosenpfirsich
+     (Mandarinen, Kirschen o.ae. gehgehen auch)
+     1/4 l Milch (1,5% Fett)
+     8 Blatt weisse Gelatine
+     2 Eigelb
+     3 Eiweiss
+     abgeriebene Zitronenschale
+     Suessstoff
+
+
+Zubereitung:
+
+Aus den Zutaten einen geschmeidigen Teig kneten, an kuehlem Ort etwas ruhen
+lassen.
+Eine runde Platte (26cm) ausrollen, auf einem gefettetem Blech 12-15 Minuten
+bei
+200C (Umluft 180 C) backen.
+Fuer die Fuellung Quark mit Milch, Eigelb, Suessstoff und Zitronenschale
+glattruehren.
+Gelatine nach Anweisung zubereiten und unter die Quarkmasse ruehren, diese an
+einen
+kuehlen Ort stellen.
+Einen Tortenring um den erkalteten Tortenboden legen. Sobald die Quarkmasse
+dicklich
+geworden ist, das steifgeschlagene Eiweiss unterruehren und 1/3 davon auf den
+Boden
+verteilen. Das Obst auflegen und kurz mit fest werden lassen. Den Rest der
+Quarkmasse
+auffuellen, im Kuehlschrank fest werden lassen.
+
+
+
+Guten Appetit!
+
+-----------------------------------------------------------------------------
+
+
+
+Schweizer Plaetzchen (Asmodis, 23. Okt 1995, 11:26:27):
+Name: Basler Brauns
+Kathegorie: Gebaeck, Kuchen
+
+
+Zutaten:
+
+     3 Eier
+     300 g Zucker
+     1 Pk. Vanillezucker
+     500 g Mandeln; abgezogen, gerieben
+     1 Tl. Zimt
+     125 g Schokolade; gerieben
+     4 cl Kirsch
+     1 Spur Salz
+     Butter; zum Einfetten
+
+
+Zubereitung:
+
+Eier mit Zucker und Vanillezucker schaumig ruehren. Mandeln, Zimt,
+Schokolade, Kirsch und Salz zugeben. Teig kneten und im Kuehlschrank
+ruhen lassen. 1/2 cm dick ausrollen und mit Bogenfoermchen ausstechen.
+Backblech einfetten und Plaetzchen drauflegen. In den auf 160 Grad
+vorgeheizten Ofen schieben und 20 Minuten backen.
+Die Basler Brauns sind in einer Blechdose gut verschlossen aufzubewahren.
+
+
+
+Variante:
+
+Basler Brunsli
+
+Zutaten:
+
+     250 g Zucker
+     250 g Mandeln; gemahlen
+     1 Prise Zimt
+     2 El. Mehl
+     2 Eiweiss; steif geschlagen
+     100 g Bitterschokolade
+
+
+Zubereitung:
+
+Siehe auch Basler Brauns; diese Variante ist dadurch gekennzeichnet,
+dass nur Eiweiss verwendet wird und dass die Schokolade fluessig
+zugegeben wird. Zucker, Mandeln, Zimt und Mehl in eine Schuessel
+geben und mischen. Eiweisse darunterziehen. Schokolade schmelzen,
+beigeben und gut mischen. Teig auf Zucker 5 mm dick auswallen, mit
+kleinen Foermchen ausstechen, auf mit Backpapier belegtem Blech
+einige Stunden trocknen lassen. 5 Minuten bei guter Hitze (250 Grad)
+in der Mitte des vorgeheizten Ofens backen.
+
+
+
+
+Guten Appetit!
+
+-----------------------------------------------------------------------------
+
+
+
+Zardoz kann auch ein bisserl kochen (Zardoz, 25. Okt 1995, 09:49:58):
+                                  
+Hier kommt mal mein Lieblingsgericht (es ist sogar vegetarisch):
+
+
+Cannelloni mit zwei Saucen
+250g Cannelloni
+Salz, Cayennepfeffer
+3 El Olivenoel
+200g Zwiebeln
+1 Ds Tomaten (800g)
+2 Lorbeerblaetter, Honig
+70g Butter
+30g Mehl
+1/4 l Schlagsahne
+2 El Weisswein
+100g Parmesan
+500g Champignons
+3 El Petersilie (gehackt)
+Cannelloni in Salzwasser mit 1 El Oel 5 Minuten kochen und zum Abtropfen 
+auf ein Tuch legen. Zwiebeln wuerfeln und im Oel glasig duensten. Tomaten 
+grob hacken, mit Fuessigkeit und Lorbeer dazugeben und mit Honig (ein
+Essloeffel reicht) und Cayenne (vorsichtig, wenn mans nicht zu scharf mag)
+wuerzen. Einkochen lassen. 
+40g Butter zerlassen, Mehl anschwitzen und mit Sahne loeschen. 10 min 
+kochen lassen und mit Salz, Wein (ruhig was mehr :-)) und Parmesan 
+wuerzen. Pilze wuerfeln und in Butter kurz braten, salzen und abtropfen 
+lassen. Den Saft zur Sauce ruehren, die Pilze mit dem Kaese und der 
+Petersilie vermengen und in die Cannelloni fuellen. 
+3/4 der Tomatensauce in eine Gratinform geben, Cannelloni darauf legen und 
+mit der Kaesesauce bedecken. Restliche Tomatensauce darueber verteilen 
+und bei 200 C 30 Minuten im Umluftofen ueberbacken.  
+
+Hmmmmm lecker :-)))
+
+
+Ciao        Zardoz
+
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Sushi (Tarkin, 25. Okt 1995, 13:41:35):
+#! rn=Wargon rt=813611289
+Nettes rezept! Aber wo bekomme ich denn die ganzen exotischen Zutaten?
+Schade, ich wuerde es gerne mal ausprobieren! hat jemand einen Tip wo man
+derlei Ingredentien erstehen kann?           Schlemmermaul Tarkin**
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Adventskuchen (Toss, 25. Okt 1995, 20:04:48):
+#! rn=Asmodis rt=814443328
+Muss der Weihnachtsquatsch denn jetzt schon anfangen ?
+
+Und ueberhaupt: Nett von Dir, ddass Du seitenweise Kochbuecher abschreibst.
+Merke: Ein Asmodis im Mud spart die Kosten fuers Kochbuch.
+
+Zum Glueck hat der Schmarrn jetzt ne eigene Rubrik.
+
+Rzne. Kein Feinschmecker, wies scheint.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Sushi (Zuerileu, 25. Okt 1995, 20:59:37):
+#! rn=Tarkin rt=814624895
+Sali,
+Hmm.. in einem Supermarkt ?
+
+Tschuess Zuerileu
+
+-----------------------------------------------------------------------------
+
+
+
+Kochen mit Hanf "Hanf-Balls" (Zuerileu, 26. Okt 1995, 00:30:11):
+
+Zutaten:
+80gr Hanfsamen
+50gr Sesamsamen
+3 Essloefel geriebene Manden
+1/4 Teeloeffel Zimt
+1/4 Teeloeffel Muskatbluete
+1 Prise gemahlene Gewuerznelken
+1/4 Teeloeffel geriebener Ingwer
+1 Spitzer Rosen- oder Orangenbluetenwasser
+1/4 Tasse feinen Honig
+1 Essoeffel gesalzene Butter
+
+
+Diese Balls werden oft auch benutzt, um sie mit Marijuana zu strecken und sie
+somit zu "Spaceballs" umzufunktionieren. Ich moechte davon warnen, Marijuana
+oder Haschisch in grossen Mengen zu sich zu nehmen, da gerade beim Essen das
+Einsetzen der wirkung oft 1-2 Stunden dauert. Es besteht die Gefahr, aus
+Ungeduld zuviel zu essen und sich so ueberzudosieren. Eine Ueberdisierung mit
+THC ist am ehsten durch Essen moeglich. Deshalb ist in jedem Fall alles, wozu
+auch THC-haltige Hanfprodukte verwendet wurden, mit entsprechender Vorsicht zu
+geniessen (kleine Entwarnung: Es ist noch niemand daran gestorben, aber
+Uebelkeit und Kreislaufprobleme sind nicht das, was man sich als "Nachtisch"
+wuenscht).
+
+Zubereitung:
+
+Die Zubereitung dieser "Balls" ist mehr als einfach und bietet sich fuer
+jedeN an, die/der Erfahrungen im Umgang mit Hanfsamen sammeln will.
+Die Samen werden wie oben beschieben, in einer Pfanne geroestet. Dazu gibt
+man die gemahlenen Mandeln und die Gewuerze. Das wird sorgfaeltig miteinander
+vermengt und schliesslich der fluessige Honig zugefuegt. Gut vermischt laesst
+man die Masse ein wenig abkuehlen und formt daraus walnussgrosse Baellchen,
+die man anschliessend in Sesamsamen wendet. Im Kuehlschrank bekommen die
+Baellchen den noetigen Halt und die Festigkeit. Sie sind lange haltbar, sehr
+gesund und lecker.
+
+Artikel aus dem Marijuana Magazin "Grow!" Oktober '95
+
+Ich wuensch euch einen guten Appetit und viel spass beim Kochen...
+
+euer Zuerileu (schrecken in der Unterwelt und in Kuechen)
+
+-----------------------------------------------------------------------------
+
+
+
+Schollenfilet (Tarkin, 31. Okt 1995, 11:17:34):
+Eine Kreation, die uns im Urlaub in der Bretagne ganz spontan einfiel und,
+wie wir finden, sensationell lecker ist: Schollenfilet a la Plomagh (Bei
+Concarneau)
+Zutaten: Ein Schollenfilet pro Nase
+vier dicke Moehren
+sechs Tomaten
+1 Becher Schmand
+125ml trockener Weisswein
+Beilagen, wie zum Beispiel Kartoffeln und Weissbrot
+
+Zubereitung:
+Moehren und Tomaten klein schneiden. Mit etwas Fett in einer Pfanne duenstIn
+der Zwischenzeit Filets mit Zitronensaft betraeufeln. Wenn die Tomaten
+zerfallen sind, die Schollenfilets drauf legen und auf der
+Tomaten-Moehren-Pampe garen lassen. Danach herausnehmen, warm stellen. Das
+Tomaten Moehren-Gemuese mit dem Schmand, dem Weisswein, etwas weissem Pfeffer,
+etwas Salz und etwas Petersilie abschmecken. Fertig! Dazu wie gesagt
+Kartoffeln und unbedingt Weissbrot!
+
+		Bon appetit            Tarkin das Leckermaul**
+
+-----------------------------------------------------------------------------
+
+
+
+Fortsetzung zu Putenragout auf Himbeer-Pfefferrahm (Tarkin, 31. Okt 1995, 11:47:56):
+Eigentlich fehlt nur noch das Abschmecken mit weissem Pfeffer und etwas
+gekoernter Bruehe. Dazu passt am besten weisser Burgunder und Basmatireis. Ich
+hoffe euch schmeckts genauso gut wie mir!
+Ciao       Tarkin das Leckermaul
+
+-----------------------------------------------------------------------------
+
+
+
+Kekse fuer $250 (Troubadix, 12. Nov 1995, 22:46:45):
+
+Hier eine amuesante Story (und ein gutes Keksrezept), die mir
+heute von einer Bekannten forgewarded (geforwarded?) wurde.
+
+>Subject: $250 Cookie Recipe
+>
+>>This message is sent to you with the hope you will forward it
+>>to EVERYONE you have ever even seen the e-mail address
+>>of. In the spirit of the originator, please feel free to post it
+>>anywhere and everywhere.
+>>
+>>Okay, everyone....a true story of justice in the good old U.S.
+>>of A. Thought y'all might enjoy this; if nothing else, it shows
+>>Internet justice, if it can be called that.
+>>
+>>My daughter & I had just finished a salad at Niemann-Marcus
+>>Cafe in Dallas & decided to have a small dessert.  Because
+>>our family are such cookie lovers, we decided to try the
+>>"Niemann-Marcus Cookie". It was so excellent that I asked if
+>>they would give me the recipe and they said with a small
+>>frown, "I'm afraid not."  Well, I said, would you let me buy the
+>>recipe? With a cute smile, she said, "Yes."  I asked how
+>>much, and she responded, "Two fifty." I said with approval,
+>>"just add it to my tab."
+>>
+>>Thirty days later, I received my VISA statement from
+>>Niemann-Marcus and it was $285.00.  I looked again and I
+>>remembered I had only spent $9.95 for two salads and about
+>>$20.00 for a scarf.  As I glanced at the bottom of the
+>>statement, it said, "Cookie Recipe - $250.00."  Boy, was I
+>>upset!!
+>>
+>>I called Niemann's Accounting Dept. and told them the
+>>waitress said it was "two fifty,"and I did not realize she
+>>meant $250.00 for a cookie recipe. I asked them to take
+>>back the recipe and reduce my bill and they said they were
+>>sorry, but because all the recipes were this expensive so not
+>>just everyone could duplicate any of our bakery recipes....the
+>>bill would stand.
+>>
+>>I waited, thinking of how I could get even or even try and get
+>>any  of my money back.  I just said, "Okay, you folks got my
+>>$250.00 and now I'm going to have $250.00 worth of fun." I
+>>told her that I was going to see to it that every cookie lover
+>>will have a $250.00 cookie recipe from Niemann-Marcus for
+>>nothing. She replied, "I wish you wouldn't do this." I said, "I'm
+>>sorry but this is the only way I feel I could get even," and I
+>>will.
+>>
+>>So, here it is, and please pass it to someone else or run a
+>>few copies.... I paid for it; now you can have it for free.
+>>
+>>(Recipe may be halved.):
+>> 2  cups butter
+>> 4  cups flour
+>> 2 tsp. soda
+>> 2  cups sugar
+>> 5  cups blended oatmeal
+>> 24 oz. chocolate chips
+>> 2  cups brown sugar
+>> 1  tsp. salt
+>> 1  8 oz. Hershey Bar (grated)
+>> 4  eggs
+>> 2  tsp. baking powder
+>> 3 cups chopped nuts (your choice)
+>> 2  tsp. vanilla
+>>
+>>measure oatmeal and blend in a blender to a fine powder.
+>>Cream the butter and both sugars. Add eggs and vanilla;
+>>mix together with flour, oatmeal, salt, baking powder, and
+>>soda. Add chocolate chips, Hershey Bar and nuts.  Roll into
+>>balls and place two inches apart on a cookie sheet.  Bake
+>>for 10 minutes at 375 degrees.  Makes 112 cookies.
+>>
+>>Have fun!!!  This is not a joke --- this is a true story..
+>>
+>>That's it. Please, pass it along to everyone you know, single
+>>people, mailing lists, etc.....
+>>
+>>Ride free, citizen!
+
+In diesem Sinne: Guten Appetit,
+Troubadix.
+
+P.S.: Niemann-Marcus ist uebrigens ein total vornehmer
+Edeleinkaufsschuppen...
+
+P.P.S.: Noch was zu den Zutaten: "Chocolate chips" bitte nicht mit den
+gleichnamigen knusprigen Schokoflocken verwechseln, die in Deutschland
+verkauft werden ("Doch was Du noch nicht weisst: Die gibt's jetzt auch in
+weiss"); es handelt sich vielmehr um kleine Tropfen aus Schokolade, die in
+Deutschland leider ziemlich schwer zu kriegen sind; ich habe einfach immer
+eine Tafel Milka in kleine Stueckchen geschnitten.
+Ferner: Hershey ist in den USA wahrscheinlich der fuehrende
+Schokoladenhersteller (aber nur, weil es hier nichts Besseres gibt); einen
+Hershey bar kann man mit gutem Gewissen durch Blockschokolade ersetzen...
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Laeden, Geld und Uptime (Asmodis, 16. Nov 1995, 17:35:11):
+#! rn=Aranya rt=816434557
+[Verlegt von allgemeines, Fyt, 15. Nov 1995, 23:25:19]:
+Hm, die einzigen knackigen braungebrannten Jungs, die mich
+interessieren, sind Zwerge auf dem Grill. Wozu brauch ich
+da Freudenhaeuser?
+:
+Fyt, sich wundernd.
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Laeden, Geld und Uptime (Asmodis, 16. Nov 1995, 17:35:40):
+#! rn=Fyt rt=816474319
+[Verlegt von allgemeines, Baron, 16. Nov 1995, 01:16:02]:
+Hm, Freudenhaeuser bereiten (im Idealfall) JEDER Person Freude. Fuer dich
+waere also ein Zwergengrill (im wahrsten Sinne des Woretes) ein Freudenhaus.
+Aranya hat da halt andere Vorlieben :).
+Baron - Mensch - haelt argentinische Steaklaeden fuer Freudenhaeuser :)
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^11: Laeden, Geld und Uptime (Asmodis, 16. Nov 1995, 17:36:16):
+#! rn=Fyt rt=816481872
+[Verlegt von allgemeines, Raffi, 16. Nov 1995, 11:15:08]:
+
+Also Ich  bevorzuge Australische Steakhaeuser :)
+
+Aber Fyts begeisterung fuer Zwerg am Grill kann ich nicht teilen  Wie waers
+mit geschnetzeltem Fyt auf Efenbeintellern ?
+
+Gruss
+H.
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^12: Laeden, Geld und Uptime (Asmodis, 16. Nov 1995, 17:36:34):
+#! rn=Raffi rt=816516908
+[Verlegt von allgemeines, Throin, 16. Nov 1995, 13:08:58]:
+Ich finde Steak eigentlich grundsaetzlich nicht schlecht. Egal welcher
+Nationalitaet. Und Fyt macht sich auch bestimmt gut am Spiess mit Apfel im
+Maul und Petersilie hinter den Ohren :) Als Beilage empfehlen wir: Salat der
+Saison mit geroesteten Elfenohrenspitzen. Dazu ein grosses Amboss-Bergbock.
+Guten Appetit!
+Throin (Braumeister und Hobbykoch)
+
+
+-----------------------------------------------------------------------------
+
+
+
+re Re^12: Laeden, Geld und Uptime (Throin, 16. Nov 1995, 13:08:58): (Asmodis, 16. Nov 1995, 17:37:03):
+[Verlegt von allgemeines, Roesti, 16. Nov 1995, 14:17:58]:
+grROESTete elfenohren?demnaechst Elfenohren auf Roesti?Wieviel Gewicht nehmen
+die mir weg?...schmeckt sowas?...
+
+Roesti kommt aus dem Fragen nicht mehr raus
+
+
+-----------------------------------------------------------------------------
+
+
+
+Toast Diabolo (Jimdigriz, 11. Dez 1995, 00:44:07):
+Hallo,
+mal was von mir:
+Jim's Version von Toast Diabolo featuring die Universelle Sosse !
+
+fuer 2 personen !
+
+        2 putenschnitzel
+        4 toast
+        100 g Gouda
+        1 grosse Zwiebel
+        1 Knoblauchzehe
+        etwas Salatoel
+        2 streifen Speck
+        1 Bruehwuerfel
+        2-3 Pefferoni ausm Glas (nur die hoellenscharfen)
+        1 Becher Sahne
+        wer mag auch noch Champignons (frische, keine Dosenpilze)
+
+Und los gehts:
+
+Zwiebeln klein schneiden und in einen Topf geben, mit Salatoel
+begiessen bis sie einigermassen bedeckt sind.
+Anbrutzeln lassen, Speck sowie Pepperoni kleinschneiden und dazugeben,
+den Knoblauch und die Pilze auch, weiterbrutzeln lassen, dann
+Bruehwuerfel rein und immer schoen umruehren. Ein Becher Wasser dazu
+geben und umruehren, dann die Sahne rein, weiter umruehren und koecheln
+lassen, dann Kaese kleinschneiden und reingeben, ruehren und kucken
+dass er sich aufloest, mit Salz, Paprika, Pfeffer und Chilli abschmecken.
+Inzwischen die Putenschnitzel braten, Toast toasten.
+Schnitzel auf Toast legen, Sosse drueber giessen.
+Das ganze mit Salat und nem guten Bier geniessen. :)
+
+Die Sosse is auch sehr gut fuer Nudeln.
+
+Achtung das Rezept is nix fuer Luschis, sondern sauscharf
+und darf nur so gekocht werden.
+
+An guadn,
+James Bolivar diGriz
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Toast Diabolo (Roesti, 11. Dez 1995, 19:54:34):
+#! rn=Jimdigriz rt=818639047
+Und nochmal die Frage ...
+Wann gibt es endlich das Morgengrauen Kochbuch?
+
+Roesti (hat am WE cookies nach MG-Rezept gemacht....grossartig:) )
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Toast Diabolo (Hate, 12. Dez 1995, 00:45:01):
+#! rn=Roesti rt=818708074
+Ist schon in Arbeit.
+Hate.
+
+-----------------------------------------------------------------------------
+
+
+
+Cocktailparade (Engywuck, 16. Dez 1995, 10:36:51):
+So.
+Und damit ihr nicht immer nur was zu futtern habt, gibts jetzt die
+Rezepte zu einigen selbst von mir hochpersoenlich entwickelten
+Cocktails. Viel spass.
+
+Engy
+
+
+
+Apricot mjam!
+
+       3 cl  Cointreau
+       3 cl  Apricot Brandy
+       3 cl  Kirschsaft
+       5 cl  Orangensaft
+       1 cl  Zitronensaft
+       4 cl  Tonic Water
+       Eiswuerfel
+       Cocktailkirschen
+
+Alkohol:        11%
+Kategorie:      Longdrink
+Menge:  19 cl
+
+Die fluessigen Zutaten ausser Tonic Water in einen Shaker geben und mit
+einigen Eiswuerfeln gut shaken. In ein Cocktailglas durch das Barsieb
+auf ein paar Eiswuerfel giessen. Mit dem Tonic Water auffuellen. Einen
+Stirrer ins Glas geben und mit einer Cocktailkirsche garnieren.
+
+
+
+
+Cabaret
+
+       5 cl  Maraschino
+       1 cl  Rum (braun)
+       5 cl  Ananassaft
+       5 cl  Orangensaft
+       1 cl  Zitronensaft
+       1 cl  Limettensirup
+       1 cl  Curacao Orange
+       Eiswuerfel
+       Orangen
+
+Alkohol:        12%
+Kategorie:      Cocktail
+Menge:  19 cl
+
+Die fluessigen Betandteile zusammen mit einigen Eiswuerfeln in einen
+Shaker geben und kraeftig schuetteln. Jedoch vom Rum nur ein Teeloeffel
+und NICHT 1cl verwenden. In ein Cocktailglas auf einige Eiswuerfel
+giessen und mit einer Cocktailkirsche garnieren.
+
+
+
+
+Engywuck
+
+       1 cl  Maraschino
+       5 cl  Ananassaft
+       5 cl  Maracujasirup
+       5 cl  Orangensaft
+       1 cl  Limettensirup
+       Eiswuerfel
+       Cocktailkirschen
+
+Alkohol:        2%
+Kategorie:      Cocktail
+Menge:  17 cl
+
+Alles fluessigen Zutaten im Shaker mit ein paar Eiswuerfeln schuetteln.
+In ein Cocktailglas auf ein paar  Eiswuerfel giessen und mit einer
+Cocktailkirsche garnieren.
+
+
+Bemerkungen:
+
+Ein typischer Engywuck: Gut aber harmlos.
+
+
+
+
+
+Fun Fan
+
+       3 cl  Rum (weiss)
+       2 cl  Cointreau
+       5 cl  Ananassaft
+       3 cl  Kirschsaft
+       2 cl  Zitronensaft
+       1 cl  Maracujasirup
+       1 cl  Creme de Bananes
+       Orangen
+       Eiswuerfel
+
+Alkohol:        13%
+Kategorie:      Cocktail
+Menge:  17 cl
+
+Alle fluessigen Zutaten zusammen mit einigen Eiswuerfeln in den Shaker
+geben und schuetteln. Achtung! Von der Creme des Bananes nur einen
+Teeloeffel, nicht 1 cl verwenden! In ein  Longdrinkglas auf einige
+Eiswuerfel geben. Mit einer eingeschnittenen Orangenscheibe am Glasrand
+garnieren.
+
+
+
+
+
+Gin Gently
+
+       5 cl  Gin
+       3 cl  Ananassaft
+       1 cl  Kirschsaft
+       1 cl  Orangensaft
+       2 cl  Zitronensaft
+       1 cl  Limettensirup
+       7 cl  Bitter Lemon
+       Cocktailkirschen
+       Orangen
+
+Alkohol:        10%
+Kategorie:      Longdrink
+Menge:  20 cl
+
+Alle fluessigen Zutaten bis auf den Bitter Lemon in einen Shaker geben
+und mit 2 Eiswuerfeln gut shaken. In ein Longdrinkglas auf 2 Eiswuerfel
+giessen. In das Glas einen Stirrer geben und mit einer Orangenscheibe
+und einer Cocktailkirsche garnieren.
+
+
+
+
+Graue Maus
+
+       1 cl  Blue Curacao
+       1 cl  Apricot Brandy
+       4 cl  Ananassaft
+       4 cl  Kirschsaft
+       4 cl  Orangensaft
+       5 cl  Tonic Water
+       1 cl  Limettensirup
+       1 cl  Creme de Bananes
+       Eiswuerfel
+       Cocktailkirschen
+
+Alkohol:        4%
+Kategorie:      Longdrink
+Menge:  21 cl
+
+Alle fluessigen Zutaten bis auf das Tonic Water in einen Shaker geben
+und mit ein paar Eiswuerfeln schuetteln. Achtung: Von der Creme des
+Bananes NICHT 1 cl, sondern nur einen Teeloeffel verwenden!
+Anschliessend mit Tonic Water auffuellen und auf Eiswuerfel in ein
+Longdrinkglas giessen. Mit Cocktailkirsche garnieren.
+
+
+
+
+Irgendwas
+
+       3 cl  Apricot Brandy
+       3 cl  Feigling
+       1 cl  Gin
+       1 cl  Gruene Banane
+       7 cl  Orangensaft
+       2 cl  Maracujasaft
+       1 cl  Limettensirup
+       2 cl  Tequila Gold
+       Eiswuerfel
+       Cocktailkirschen
+
+Alkohol:        14%
+Kategorie:      Cocktail
+Menge:  20 cl
+
+Alle fluessigen Zutaten im Shaker mit einigen Eiswuerfeln shaken und in
+ein Longdrinkglas auf Eiswuerfel giessen. Mit Cocktailkirsche garnieren.
+
+
+
+
+Maracuja tropic
+
+       2 cl  Tequila Gold
+       2 cl  Rum (braun)
+       1 cl  Tequila (weiss)
+       1 cl  Rum (weiss)
+       7 cl  Maracujasaft
+       6 cl  Ananassaft
+       1 cl  Limettensirup
+       Orangen
+       Eiswuerfel
+
+Alkohol:        12%
+Kategorie:      Longdrink
+Menge:  20 cl
+
+Alle fluessigen Zutaten mit einigen Eiswuerfeln im Shaker gut schuetteln
+und in ein Longdrinkglas auf einige Eiswuerfel giessen. Mit einer
+eingeschnittenen Orangenscheibe garnieren und mit einem Stirrer im
+Glas servieren.
+
+
+
+
+Maeusetoeter
+
+       4 cl  Tequila Gold
+       3 cl  Rum (braun)
+       2 cl  Maraschino
+       7 cl  Orangensaft
+       2 cl  Kirschsaft
+       1 cl  Grenadinesirup
+       1 cl  Zitronensaft
+       Eiswuerfel
+       Cocktailkirschen
+
+Alkohol:        17%
+Kategorie:      Cocktail
+Menge:  20 cl
+
+Alle fluessigen Zutaten mit einigen Eiswuerfeln in den Shaker geben und
+shaken. In ein Cocktailglas auf einige Eiswuerfel giessen. Mit einer
+Cocktailkirschengarnitur und einem Stirrer servieren.
+
+
+
+
+
+
+Orange Mouse
+
+       3 cl  Tequila Gold
+       5 cl  Ananassaft
+       5 cl  Orangensaft
+       1 cl  Grenadinesirup
+       4 cl  Tonic Water
+       5 cl  Curacao Orange
+       Eiswuerfel
+       Cocktailkirschen
+
+Alkohol:        12%
+Kategorie:      Longdrink
+Menge:  23 cl
+
+Alle fluessigen Zutaten ausser dem Tonic Water mit einigen Eiswuerfeln in
+einen Shaker geben und nicht zu sehr schuetteln (schaeumt!). Auf
+Eiswuerfel in ein Longdrinkglas giessen und mit Tonic Water auffuellen.
+Mit einer Cocktailkirsche garnieren.
+
+
+
+
+
+Pink Dream
+
+       8 cl  Kirschsaft
+       5 cl  Ananassaft
+       5 cl  Rum (weiss)
+       2 cl  Zitronensaft
+       1 cl  Limettensirup
+       Eiswuerfel
+       Cocktailkirschen
+
+Alkohol:        9%
+Kategorie:      Cocktail
+Menge:  21 cl
+
+Alle Zutaten in einen Shaker geben und zusammen ordentlich
+durchschuetteln. Durch das Barsieb auf einige Eiswuerfel giessen. Mit
+einer Cocktailkirsche garnieren.
+
+
+
+
+
+Schlafender Loewe
+
+       2 cl  Rum (hochprozentig)
+       2 cl  Tequila Gold
+       1 cl  Gruene Banane
+       7 cl  Orangensaft
+       3 cl  Ananassaft
+       1 cl  Zitronensaft
+       3 cl  Tonic Water
+       1 cl  Curacao Orange
+       Eiswuerfel
+       Cocktailkirschen
+
+Alkohol:        14%
+Kategorie:      Cocktail
+Menge:  20 cl
+
+Alle fluessigen Zutaten ausser dem Tonic Water im Shaker mit einigen
+Eiswuerfeln schuetteln. In ein Longdrinkglas auf einige Eiswuerfel
+giessen und mit Tonic Water auffuellen. Mit einer Cocktailkirsche
+garnieren.
+
+
+
+
+
+Suesse Maus
+
+       1 cl  Amaretto
+       1 cl  Curacao Orange
+       1 cl  Blue Curacao
+       1 cl  Rum (braun)
+       1 cl  Maracujasirup
+       10 cl  Ananassaft
+       2 cl  Kirschsaft
+       Eiswuerfel
+       Cocktailkirschen
+
+Alkohol:        7%
+Kategorie:      Longdrink
+Menge:  17 cl
+
+Alle fluessigen Zutaten mit einigen Eiswuerfeln im Shaker schuetteln und
+auf Eiswuerfel giessen. Mit Cocktailkirsche garnieren.
+
+
+
+
+
+Sweet Temptation
+
+       3 cl  Gin
+       2 cl  Cointreau
+       5 cl  Kirschsaft
+       2 cl  Ananassaft
+       2 cl  Orangensaft
+       3 cl  Zitronensaft
+       1 cl  Maracujasirup
+       1 cl  Limettensirup
+       1 cl  Grenadinesirup
+       Eiswuerfel
+
+Alkohol:        10%
+Kategorie:      Longdrink
+Menge:  20 cl
+
+Alle fluessigen Zutaten in den Shaker geben und mit einigen Eiwuerfeln
+durchshaken. In ein Longdrinkglas fuellen und mit einer Cocktailkirsche
+garnieren.
+
+
+-----------------------------------------------------------------------------
+
+
+
+snowball (Caradhras, 18. Dez 1995, 19:04:23):
+                Sodala
+
+[Seher:Celebdil] 2 cl amaretto saronno, 2 cl sahne, 2 cl whisky :) schuetteln
+[Seher:Celebdil] => snowball
+[Seher:Celebdil] ach, mit Muskat natuerlich noch ueberstaeuben :)
+
+Natuerlich auf Eis schuetteln und dann absieben
+
+     Mjam mjam        Caradhras
+
+      aeh, ach so, doch...     Als Whisky natuerlich mind. nen Scotch
+PS: das richtige fuer kalte Tage im Warmen
+
+-----------------------------------------------------------------------------
+
+
+
+Watt is ene Nachtisch!? (Caradhras, 14. Jan 1996, 16:35:22):
+Guten Morgen liebe Schoeler und Schoelerinnen. Saetzen sae saech.
+Heute stellen wir uns eine der fundamentalsten Frajen der Geschichte:
+Watt is ene Nachtisch?
+
+Tja, watt is ene Nachtisch? Da stelle mer uns mal janz dumm.
+Und dann saje mer uns, datt es zwei Arten von Nachtischen gibt.
+Einmal den janz normalen Nachtisch und einmal den unjenuejenden Nachtisch.
+Den unjenuejenden Nachtisch krieje mer spaeter, der is nicht so verlockend.
+
+Also, watt is ene Nachtisch? Ene Nachtisch is etwas zu futtern, wie ihr
+Schoeler dieser neumodischen Zeit jetzt wohl sagen wuerdet. Wie
+definieren wir nun den Nachtisch? Schoeler Jof, antworten sie.
+Was, sie wissen es nicht? Wie sollen sae dann jemals in dieser Welt
+Verantwortung uebernaehmen koennen? Setzen!
+
+Also, ene Nachtisch ist etwas, was wir essen koennen, nachdem wir keinen
+Hunger mehr haben. Maerken sie saech daese wichtigste aller Gleichungen:
+
+        Nachtisch = rutscht * immer
+
+Und dieses Theoraem wollen wir gleich beweisen. Wir konstruieren einen
+janz normalen Nachtisch, der immer wegkommt. Also einen Beweis durch
+Widerspruch:
+Man nehme zur Konstruktion:
+Eine feuerfeste Form
+Pro Person einen Apfel, aber keinen von den neumodischen grossen,
+sondern den muerben kleinen.
+Sahne fluessich
+Zimt
+gestiftelte Mandeln
+
+Das ganze simulieren wir nach guter alter Vaetersitte in einem
+Backofen bei 160 Grad fuer 20 Minuten. Zuaerst schneiden wir von
+oben den Kaern des Apfels heraus, wobei wir den Apfel ganz lassen.
+Dann setzen wir die Aepfel mit einem der zwei Loecher nach unten,
+fuellen die Loecher locker mit Mandelstiften fuellen und mit etwas
+Sahne begiessen. (Aber nicht zu knapp, sonst wird das Theorem nicht
+erfuellt.) Anschliessend mit Zimt bestaeuben und rinn in den Backofen.
+Die Aepfel natuerlich MIT Schale machen. Anschliessend ausloeffeln
+mit Teeloeffel.
+
+Was gut dazu passt? Vanilleeis :)
+
+          Setzen, 1     *:^)
+
+     Caradhras - nach 5 Monaten erstmal wieder Rezepte ausprobierend
+                 Traeger der weissen Kochmuetze, er will es mal bis
+                  zur schwarzen Kochmuetze schaffen :))
+
+-----------------------------------------------------------------------------
+
+
+
+essen (Groll, 15. Jan 1996, 17:07:20):
+hier etwas fuer die kalorienbewuten:
+man nehme 750 gr steinpilze, mind. 2 grosse zwiebeln ein bis zwei becher
+sahne und jede menge kraeuter (oregano, petersilie, salz , pfeffer ...)
+die pilze anbraten, die zwiebeln dazu und mitschmoren lassen . das ganze zum
+schluss mit der sahne uebergiessen und nochund mit den kraeutern bestreuen und
+nochmal kurz aufkochen.!
+Das schmeckt hervorzueckend zu steaks und pellkartoffeln,den weisswein nicht
+vergessen!
+guten appetit  groll
+
+-----------------------------------------------------------------------------
+
+
+
+Re: essen (Groll, 15. Jan 1996, 17:10:42):
+~#! rn=Groll rt=821722040
+~#! tid=821722040
+ich verga: das ist natuerlich fuer mehrere personen gedacht. wenn ich mitesse
+reichts meist nur fuer zwei aber normalerweise waer es fuer 4 gedacht
+viel spass noch   groll
+
+-----------------------------------------------------------------------------
+
+
+
+Re: essen (Caradhras, 16. Jan 1996, 04:48:37):
+~#! rn=Groll rt=821722040
+~#! tid=821722040
+750 Gramm Steinpilze? Autsch! Das wird gut teuer wenn man sie kauft.
+Hier habe ich naemlich in freier Natur noch keine gesehen. :)
+Nur noch getrocknete habe ich zuhause, kann man glaube ich Faktor 1:10
+rechnen, 1 Gramm getrocknete Steinpilze entsprechen 10 Gramm gesammelten.
+
+Und als ich dann bei uns im grossen Supermarkt gekuckt habe, hat ein
+Tuetchen mit 3! (ja, in Worten drei) Gramm getrockneten Steinpilzen
+drei Deutsche Mark gekostet.
+Die spinnen, die Passauer Suppenmaerkte!
+
+       tschoe     Caradhras :)
+  traeumt von Kartoffelsuppe mit Steinpilzen und Sahne drin
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Watt is ene Nachtisch!? (Caradhras, 16. Jan 1996, 05:36:16):
+~#! rn=Asmodis rt=821719262
+~#! tid=821633722
+Herr Asmodis, die alloholische Gaerung, *hicks* die Gaerung des Allloloo
+*hicks* Ballllldriiiian... Herr Lehrer... *hicks* aeh Asmodiiiis....
+
+        Ffaradhraf, mit 2 f vor dem dh und einem danach *hicks* :)
+
+-----------------------------------------------------------------------------
+
+
+
+Naechstes Wochenende gibts.... (Caradhras, 21. Jan 1996, 03:12:35):
+                    Moin Moin Kinners
+
+So, wenn Kretek (rufe Kreeeeetiiiii) und Apa (rufe Apaaaaaa) und
+Wind (rufe Wiiiiiiind) und ... mitspielen, gibts naechsten Sonntag
+Gans. Und zwar fuer 4 bis 6 Personen. 4 gans aeeeeh ganz arg ver-
+fressenen.
+Dazu gibts Hefeknoedel und Rotkohl, aeh Blaukraut, oder wars
+Rotkraut und Blaukohl? Na, ihr wisst schon.
+
+Gans machen ist ziemlich einfach! Macht sich sozusagen selbst.
+Dauert halt nur lange. Geeignete Gaense fangen ab 3.2 Kilo an,
+fuer 6 Leute sollten es dann schon mind. 4 Kilo sein. Drei Stunden
+sollte das liebe Tierchen schon im Backofen sein.
+PS: uebrigens ist das ganze nichs fuer Schlankheitsbewusste *:^)
+    (Haette ja sein koennen dass es jemand nicht weiss. *grins*)
+
+So, auf an das Rezept fuer 6 Personen:
+
+Gans:
+Man braucht:
+1 Gans (ach nee) tiefgefroren, ab 4 Kilo, am besten eine polnische
+       Hafermastgans, keine Fruehmastgans, die haben weniger Fleisch!
+       Und polnische sind auch besser als ungarische.
+Salz
+Wasser
+Beifuss  (nicht unbedingt noetig)
+Gefluegelschere (unbedingt noetig :)
+und kein flaches Backblech, sondern ein etwas tieferes
+Ein paar Aepfel, hm, 2 oder 3 groessere reichen
+Ein paar Zwiebelsche, mind. mittelgross, mind. 3 Stueck
+2 Birnen, nicht zu weich
+
+Gans schon einen Tag vorher auftauen, aber bitte die Plastikfolie
+aussenrum nicht erst wegnehmen wenn das Tier aufgetaut ist, sonst
+gibts viiiele Salmonellen!! Und die schmecken nicht gut.
+Halben Liter Wasser auf Backblech, darauf die aufgetaute Gans,
+Plastiktuetchen mit Innereien natuerlich rausnehmen und dafuer
+ein kleines Buendchen Beifuss reinstecken. Backofen auf 190 Grad
+bis 200 Grad erhitzen. Gans etwas aussenrum einsalzen, dann mit
+der Brust nach unten aufs Blech.
+Nach einer Stunde umdrehen und nach nochmal einer Stunde again.
+Zwischendrin immer mal wieder die Gans (etwa ab einer Stunde jede
+halbe Stunde) mit der Fluessigkeit (dem Fett) begiessen, das
+sich am Blechboden befindet.
+Die Aepfel, Birnen und Zwiebeln schaelen, Aepfel und Birnen
+entkernen, vierteln, Zwiebeln je nach Groesse halbieren oder
+vierteln. Eine halbe bis eine dreiviertel Stunde bevor die
+Gans rausgenommen wird duerfen die Aepfel, Birnen und Zwiebeln
+mit aufs Backblech huepfen.
+So, datt war die Gans. Nu zum Blaukraut.
+
+Blaukraut:
+etwas schwarzen Pfeffer, frisch gemahlen
+1 Glas Rotessa oder so was, Blaukraut halt :)
+etwas gerauchter Bauch, Rauchfleisch oder so
+2 EL vom Gaensefett aus dem Backofen
+etwas Rotwein, wenig, nur ein Schuss oder so, also
+sagen wir mal 0.1 Liter (den Rest gibts zum Essen, also
+was gescheites, Trollinger, leicht trocken wuerd ich mal
+sagen *schleck* 6 bis 7 Mark die Literflasche)
+2 Zwiebeln
+2 Aepfel
+
+Das Blaukraut kann man auch ohne Probleme einen Tag vorher
+machen, dann schmeckt es eher besser. Aber dann hat man halt
+das Gaensefett nicht direkt aus dem Backofen und muss
+Sonnenblumenoel nehmen.
+So, also wenn man es am selben Tag wie die Gans macht, reicht
+es, wenn man 1.5 Stunden vorher damit anfaengt. Fett in einem
+mittelgrossen Topf erhitzen, dann Rauchfleisch gewuerfelt kurz
+ein bisschen anbraten, solange Zwiebeln schaelen, viertel wenn
+mittelgross, achteln wenn ganz gross. Mit anbraten, solange
+Aepfel schaelen, entkernen, kleinschneiden in hm, auch in Achtel
+wuerde ich mal sagen. Auch mit rin in den Topf. Nach ein paar
+Minuten (Neiiiiin, nicht schwarzwerden lassen! :) leicht pfeffern
+und mit dem Rotwein abloeschen. Dann kann das Kraut dazu rein.
+Das ganze jetzt eine Stunde auf kleinerer Stufe (vielleicht 1 von
+3 oder 4 von 12) vor sich hinbruddeln lassen und dann isses auch
+schon fertig.
+
+Nu zu die Hefeknedeln. Argl, kann kaum mehr weiterschreiben, hab
+Hungeeer. :)
+Man braucht:
+ein Ei
+Salz
+grossen! Kochtopf
+Wasser
+Mehl
+1 Wuerfel Hefe
+Bindfaden (nein, nicht zum mitessen!)
+
+So, nun wird erstmal ein normaler Hefeteig zubereitet.
+Aehm, fragt mich nicht wieviel man von allem nehmen soll,
+schaetz ich jedesmal so Pi mal Daumen ab. Gleichviel Milch
+wie Wasser wuerde ich sagen.
+Also, zuerst nehmen wir mal 0.15 Liter Wasser und 0.15 Liter
+Milch. Das aufwaermen auf dem Herd auf ca. handwarm. Maximal
+40 Grad bitte, ueber 42 Grad fangen glaube ich die Aminosaeuren
+an, kaputtzugehen. Drum ists auch rel. schlecht wenn man ueber
+42 Grad Fieber hat. *huestel* Aber obs stimmt? Bin kein Chemiker,
+fragt am besten einen solchen oder wir behandeln das in unserer
+Sonderstunde: Fragen an Frau Doktor Engywueck.
+Weiter am Text: Hefewuerfel zerbroeseln und in dem Wasser-/
+Milchgemisch aufloesen. Und zwar vollstaendig bitte. Dann kurze
+Zeit warmstellen (15 Min). Danach mitsamt einem Ei und gerade
+so viel gesiebtem Mehl und ein bisschen Salz zu einem Teig
+verarbeiten, dass er nicht mehr feucht ist. In einer Schuessel
+eine halbe Stunde an einem ziemlich warmen Ort (zb einer warmen
+Heizung) gehen lassen, dann sollte er etwa doppelt so gross
+werden)
+Der grosse Kopftopf mit 2/3 voll Wasser sollte schon bereitstehen
+und das leicht gesalzene Wasser schon sieden. Teig teilen, ich
+wuerde mal sagen in zwei Teile, und einen Kloss darauf formen.
+Ja, genau, der wird zieeemlich gross. :) Muss halt noch in den
+Topf passen. Ins Wasser legen, das Wasser weiterhin sieden lassen,
+Deckel drauf und nach 10 Minuten umdrehen. Aus dem Wasser nehmen
+und den naechsten rein. So, jetzt brauchen wir den Bindfaden bzw
+ein 70 cm langes Stueck davon. Farbe egal. :)
+Von dem Hefeknoedel Scheiben mit einem Messer oder so was aehn-
+lichem waere naemlich schlimmer als Blasphemie, dabei quetscht
+man naemlich die Knoedels! Brrr.
+Also schnappt man sich nen Bindfaden und legt den unter den Knoedel,
+so 2 cm vom einen Ende weg. Danach zieht man den Bindfaden ueber
+dem Knoedel ueberkreuz zusammen und 'schneidet' so butterweich
+durch den Knoedel. Leckere Scheiben!
+
+So, jetzt ists auch Zeit, die Gans aus dem Backofen zu nehmen und
+mit der Gefluegelschere zu zerlegen. Der Beifuss hat hiermit aus-
+gedient. Das Fett vom Blech (mit den Zwiebeln, Aepfel, Birnen)
+abgiessen in ein Schuesselchen und evtl. mit 1 EL angeruehrtem
+Mondamin oder Mehl binden. Das dann auf den Esstisch auf einem
+Stoefchen warmstellen. Gans und Blaukraut auch noch servieren
+und dann noch aus schicken hochstieligen Weinglaesern den
+Trollinger, Lemberger oder was auch sonst fuer einen Rotwein
+dazu nuckeln.
+So, und nun hoffe ich, dass sich jemand traut, das ganze
+nachzumachen. :) Ich jedenfalls trau mich, arg viel kann man
+nicht falschmachen. (hoechstens die Gans und das Blaukraut
+auf dem Herd vergessen.)
+
+Ich wuensche guten Appetit (und bringt viel Appetit mit)
+
+   Caradhras - kennt sich in seinem Kochbuch besser aus als in MG
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Naechstes Wochenende gibts.... (Bobo, 22. Jan 1996, 09:34:17):
+~#! rn=Caradhras rt=822190355
+~#! tid=822190355
+Hmmm, Caradhras,
+das klingt gut, aber vor den schwierigsten Sachen hast Du Dich gedrueckt...
+Was ist denn mit der Fuelle? Da hast Du doch sicher eine Idee?
+Vielleicht hab' ich's auch ueberlesen, aber Deine Bemerkungen ueber die
+Sosse waren bestimmt nicht allzu umfangreich....
+Noch ein Tip fuer den Haushalt: zum Knoedelschneiden gibt es so ein
+praktisches Geraet, das vom Aussehen her an einen ueberdimensionalen
+Eierschneider erinnert und mit dessen Hilfe man das Herumhantieren mit dem
+Bindfaden vermeiden kann, denn das braucht laenger und man verbrennt sich
+die Finger... Ach so, apropos verbrennen: den meisten Fluegeltieren kann man
+durchaus noch die eine oder andere Flaumfeder entfernen, wenn man ueber
+einen Gasherd, einen Bunsenbrenner, ein Schweissgeraet oder einen
+Flammenwerfer verfuegt... Am besten mal beim Goblinhexer nach den Kugeln
+fragen... und dann gaaaanz behutsam... oder lieber doch nicht?
+Bevor's brenzlig wird, verkriech ich mich lieber hinterm Herd,
+ciao,
+twBs.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Naechstes Wochenende gibts.... (Grimmborn, 22. Jan 1996, 11:00:47):
+~#! rn=Caradhras rt=822190355
+~#! tid=822190355
+
+Ohne die Kochkuenste von Caradhras anzweifeln zu wollen, wuerde ich gerne ein
+paar Bemerkungen loslassen:
+Eine Gans ohne Fuellung ist nur eine halbe Gans. Ich habe da gute Erfahrung
+gemacht mit einer Fuellung aus Backpflaumen, geviertelten (kleinen) Aepfeln,
+etwas Weissbrot (Toast) und natuerlich Maronen. Wenn man hat sollte man die
+Haelfte dieser Fuellung mit der Leber durch den Fleischwolf drehen und dann
+mit dem Rest mischen, ansonsten muss man sich mit dem Mixer behelfen (auch
+hier Leber nicht vergessen, selbige aber vorher kleinhacken). Von einem Ei
+rate ich ab, das hat mir mal die Bauchdecke der Gans gesprengt... ;-)
+Auch empfehle ich, die Gans abzudecken, wer keinen hinreichend grossen
+Roemertopf oder Braeter hat nimmt halt Alufolie, die dann die letzte halbe
+Stunde eventuell entfernt wird. Zumindest bei meinem Ofen ist jeder Vogel, der
+laenger als 30 min drin ist auf der Oberflaeche von schoener, gleichmaessiger
+schwarzer Farbe. Und das waere doch schade... ;-)
+
+Ach ja, zum Garen kann man auch noch dem Wasser etwas Weisswein zufuegen, vor
+allem in einem Braeter/Roemertopf ist das alles andere als Verschwendung.
+
+Grimmborn der Atheist
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Naechstes Wochenende gibts.... (Caradhras, 23. Jan 1996, 08:31:07):
+~#! rn=Grimmborn rt=822304847
+~#! tid=822190355
+*grins* Schoen, 2 Antworten. *freu*
+Und zu der Fuellung: Ich habe dazu das Rezept nicht aufgeschrieben, da ich
+noch keine Gans mit Fuellung selbst gemacht habe. Und schliesslich schreibe
+ich eigentlich nur das auf, was ich schon selbst ausprobiert habe.
+Selbst wenn es 'mehr' dazu geben koennte.
+Alles klar? Mir ist eine Gans mit Fuelle genauso lieb wie eine ohne, aller-
+dings ess ich immer so viel von den Hefeknoedeln, dass bei noch mehr,
+zb mit Fuelle, irgendjemand Armes den Fussboden aufputzen muesste weil ich
+geplatzt waere.
+
+[Tod:] Eine zu kalorienreiche Gans hat gerade Caradhras umgebracht.
+
+Und das kostet mir zuviel EP. :)
+Gans abdecken habe ich auch noch nicht probiert, ich liebe aber etwas
+knusprigere Haut. Und mit dem Bindfaden hab ich mir auch noch nicht
+die Patschhaendchen verbrannt. Vielleicht muss man es koennen?
+*grins Bobo frech*
+
+      so, guten Abend....          Caradhras der ewige Berg aeh Prophet
+
+-----------------------------------------------------------------------------
+
+
+
+Estragon-Poularde (Grimmborn, 23. Jan 1996, 15:00:33):
+So, ich versuchs auch mal mit nem Rezept...
+
+Man nehme:
+Eine Poularde von rund 1,5 Kilo, ruhig auf gute Qualitaet achten!
+30g(!) getrockneter Estragon oder 100g frischer
+500ml Sahne
+250g Creme fraiche
+Was man sonst noch braucht: Salz, Pfeffer
+
+Man nehme die Poularde (basically ein Haehnchen, aber besser und teurer),
+teile sie in Viertel und reibe selbige gut mit Salz und Pfeffer ein. Dann
+schmore man sie in 60g Butter (hab ich bei den Zutaten vergessen) leicht
+goldbraun, aber schmoren, nicht braten!
+Ich habe das nacheinander gemacht, fuer alle 4 Viertel war der Topf nicht
+gross genug. Dann gebe man die Innereien, eine halbe Zwiebel (oder auch ganze
+Schalotte wenn man hat) und den Estragon dazu und lasse es so 35-40 min bei
+kleiner Flamme schmoren. Nach halber Zeit gebe man 200ml trockenen Wiesswein
+dazu (ich habe Kerner genommen und empfehle daher Riesling. Darf ruhig guter
+Wein sein, das Essen ist teuer genug, das muss man sich nicht wegen einem Glas
+Wein verschlechtern...). Die Poulardenviertel werden entnommen und
+warmgestellt. Wenn man sie in den Ofen mit Oberhitze stellt, wird der Vogel
+knusprig, was sicher kein Fehler ist.
+In den Topf gibt man jetzt die Sahne, kocht auf und laesst 10 min koecheln,
+passiert durch ein Sieb (um die ausgelaugten Estragonblaetter zu entfernen)
+und gibt die Creme fraiche zu. Wieder aufkochen, 4 min koecheln lassen und den
+Vogel zugeben. An dem kleben noch ein paar Estragonblaetter, also keine Sorge,
+man sieht schon, woher der Duft kommt!
+3-4 min koecheln lassen damit sich die Aromen verbinden (schadet der
+knusprigen Haut deutlich weniger als ich erwartet hatte) und mit Kartoffeln
+servieren.
+
+Estragon ist ein Gewuerz, dass sein Aroma erst durch die Hitze richtig
+entfaltet. Man sollte also den Estragon immer frueh zu einem Gericht geben.
+Estragon duldet keine anderen Gewuerze neben sich, hier lohnt es sich
+schlichtweg nicht, zu experimentieren! In kleinen Mengen jedoch verfeinert
+Estragon sehr viele Gewuerze, so ist z.B. Estragon Bestandteil der Kraeuter
+der Provence.
+Ich empfehle franzoesischen Estragon, der besser ist als der russische und
+von feinerem Geschmack. Estragon ist zwar nicht billig, sollte aber in keiner
+Kueche fehlen, die Wert auf Gewuerze legt.
+
+Ach ja: Dieses Gericht reicht fuer rund 4 Personen, von der Kalorienzahl auch
+fuer 8. ;-)
+Ein Aufbewahren empfiehlt sich nicht, das Gericht gewinnt damit durchaus
+nicht.
+
+Grimmborn der Atheist. Hat mal ordentlich Geld ausgegeben.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Estragon-Poularde (Engywuck, 23. Jan 1996, 15:03:27):
+~#! rn=Grimmborn rt=822405633
+~#! tid=822405633
+So, und jetzt bring noch das rezept mit dem Wildschwein fuer 50 Mark ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Estragon-Poularde (Grimmborn, 23. Jan 1996, 15:49:36):
+~#! rn=Engywuck rt=822405807
+~#! tid=822405633
+
+OK, Du hast es so gewollt. Bei dem lag hier ist eh nichts sinnvolles
+moeglich...
+
+Also, wie war das noch?
+300g Wildschweinbraten
+200g Leber (Rind, Schwein; sollte Entenleber sein, aber versucht mal sowas zu
+kriegen..:)
+2 Schalotten
+Kognac und Portwein
+Wacholderbeeren
+Fetten Speck, 200g plus in Scheiben zum Auslegen der Form
+Ja, und was mir noch so einfaellt...
+
+Also, am Tag vorher werden 100g Wildschwein und die beiden feingehackten
+Zwiebeln kraeftig gesalzen und gepfeffert und mit etwas Cognac und Portwein
+eingelegt.
+Am Tag selber nimmt man den Speck, das restliche Wildschwein und die 2/3 der
+Leber und dreht sie durch den Fleischwolf, feine Scheibe. Den entstehenden
+Matsch nennt man "Farce" und so siehts auch aus. :-)
+Diese Farce also _kraeftig_ wuerzen mit Pfeffer und Salz, einen Essloeffel
+gemoerserter Wacholderbeeren untermischen. Die Wuerzung ueberpruefen, indem
+man etwas davon in kochendem Wasser garziehen laesst. Daran denken: Das
+Endprodukt ist kalt und kaltes Fleisch muss immer kraeftiger gewuerzt sein als
+Warmes!
+Ich hatte noch ein paar Maronen in der Farce sowie Maronenstuecke in der
+Marinade, standen nicht im Rezept, aber das Rezept ging eh ganz anders...
+Nun nimmt man eine kleine Form, eckig, aus Gusseisen oder auch Oval, ist
+nicht so wichtig. Die legt man mit den Speckscheiben aus und fuellt die
+Haelfte der Farce darein. Dann kommen die eingelegten Wildschweinstuecke mit
+dem Rest der Leber, ebenfalls gewuerfelt. Oben drauf dann wieder den Rest der
+Farce. Man garniert mit 2 Lorbeerblaettern und einem Thymianzweig (den ich aus
+getrocknetem Thymian gestreut hatte, man kann ja nicht alles im Haus haben...)
+und legt die Speckscheiben drueber. Also vorher so auslegen, dass am Rand auch
+noch Speck zum abdecken bleibt.
+Nun kommt das alles in den Ofen, und zwar in ein Wasserbad. Also die Form in
+ein flaches Backblech stellen das man mit Wasser gefuellt hat und zwar soweit,
+dass die Form zu 2/3 im Wasser steht.
+Wielange in den Ofen stellen und bei welcher Temperatur? Gute Fragen, ich hab
+das vor laengerer Zeit gemacht und weiss es nicht mehr. Also, es hat gedauert
+und war nicht zu warm, also sag ich mal so 2 Stunden bei 200 Grad, das muesste
+hinkommen. Ich hab dne Verdacht, dass es auch nicht so drauf ankommt bei dem
+Gericht.
+Anschliessend rausnehmen und mit einem Brett bedecken, dass man mit rund 500g
+belastet, sonst wird die Konsistenz zu leicht. Nicht mehr Gewicht, dann wirds
+zu trocken. Wenns erkaltet ist gehoert es in den Kuehlschrank fuer 3 Tage zum
+durchziehen, bevor man es isst.
+
+Was ich alles vergass:
+- In die Farce gehoert auch ein Ei
+- Das Gericht heisst "Terrine" und ist eine der aufwendigsten
+  Moeglichkeiten, Rohstoffe in Essen umzuwandeln (W. Siebeck)
+- Es wurde inspiriert von W. Siebecks Weihnachtsmenue in der Zeit,
+  allerdings gefiel das Hauptgericht nicht so und die Suppe war auch
+  nicht so attraktiv, also habe ich nur die Terrine uebernommen
+- "Original" ist das mit Wildentenbrust statt Wildschwein, und er bietet
+  als Alternative Kaninchen an. Aber was ist schon original?
+
+Grimmborn der Atheist. Warnt: Wildschweinbraten kostet 50DM/kg!
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Estragon-Poularde (Bendeigid, 23. Jan 1996, 15:57:23):
+~#! rn=Grimmborn rt=822405633
+~#! tid=822405633
+Uebrigens laesst sich frischer Estragon auch problemlos in jedem
+handelsueblichen Blumentopf auf dem Fensterbrett zuechten. Dann hat man das in
+der Tat teure Zeug immer in geringen Mengen zur Hand. Auf diese Weise laesst
+sich in einem mittelgrossen blumenkasten auch auf einer
+Studentenbudenfensterbank ein kleines Kraeuterbett anpflanzen. geeignet und
+duldsam sind dabei besonders Zitronenmelisse, Pefferminze und Salbei,
+Estragon, Basilikum (ist kniffliger) und Petersilie sowie Schnittlacuh. Da
+aber besonders Schnittlauch und Petersilie sehr oft benoetigt werden (Salate)
+lohnt es sich hier, zwei oder drei Blumentoepfe zu haben, die man reihum
+benutzt, damit sie nachwachsen koennen (die Pflanzen, nicht die Toepfe )
+
+Bendeigid, Hobbygaertner mit Nordseite, wo das leider nicht klappt.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Estragon-Poularde (Caradhras, 24. Jan 1996, 05:32:32):
+~#! rn=Grimmborn rt=822408576
+~#! tid=822405633
+Grimmborn> Warnt: Wildschweinbraten kostet 50DM/kg!
+
+Sehr nett, danke, Teefrosch! Das Poulaerdsche werd ich auf alle
+Faelle mal probieren und dann auch hier kundgeben, wie es war.
+
+Aber datt mit der armen Wildsau ueberleg ich mir noch, vor dem Essen ist
+die Sau arm dran, nach dem Essen ich. *seufz*
+
+          tschoe      Caradhras - hat jetzt schon wieder Spargelhunger
+
+-----------------------------------------------------------------------------
+
+
+
+Garibaldis Lieblingsrezept (Asmodis, 24. Jan 1996, 14:41:55):
+Quelle: de.rec.sf.babylon5
+Art: Fondue
+
+    Bagna Cauda (aus Jeff Smiths "The Frugal Gourmet")
+
+    1/2 Tasse Olivenoel
+    1/4 Pfund Butter (keine Margarine!)
+    5 Knoblauchzehen, fein zerhackt
+    6 zerdrueckte Anchovis
+    Schwarzer Pfeffer
+
+    Oel und Butter zusammen erhitzen, den Knoblauch in einem Teil dieses
+    Oels kochen, bis er weich ist. Die Anchovis hinzufuegen und kochen,
+    bis der Fisch zu einem Teig wird (ca. 5 min.). Diesen Teig mit dem
+    Rest des heissen Oels und Butters verruehren.  In einen Fonduetopf
+    giessen und warmhalten.
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Naechstes Wochenende gibts.... (Kretek, 24. Jan 1996, 19:00:43):
+~#! rn=Grimmborn rt=822304847
+~#! tid=822190355
+Also, solange Caradingsbums die Gans brutzelt, was ja auch den Tatsachen
+entspricht, ist es mir ziemlich egal, ob gefuellt oder nicht, hauptsache,
+ich kann ordentlich reinhauen!
+
+Kretek
+(bringt den Rotwein mit)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Naechstes Wochenende gibts.... (Caradhras, 25. Jan 1996, 09:37:56):
+~#! rn=Kretek rt=822506443
+~#! tid=822190355
+Nana, Du bringst nicht nur den Rotwein mit! Ich werd schon
+was fuer Dich finden, sowas wie Zwiebeln schaelen oder Aepfel
+entkernen oder auf_Blaukraut_aufpassen oder Caradhras unterhalten
+oder...
+Wobei letzteres das schwerste davon ist. :) Und vorletzteres
+lassen wir ihn lieber nicht tun, sonst ist der Topf Blaukraut
+vor dem Essen schon leer.
+
+      Caradhras - kennt doch seine Pappenkretis *:^)
+PS: und was machwer uebernaechste Woche? *smile*
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Estragon-Poularde (Aranya, 25. Jan 1996, 15:39:21):
+~#! rn=Bendeigid rt=822409043
+~#! tid=822405633
+Hmm, komisch, auf meiner Studentenbudenfensterbank hat - glaub ich - ein
+Estragontopf keinen Platz mehr. Da wachsen so komische Pflanzen, die wie das
+Adidas-Zeichen aussehen. Weiss jemand, was DAS wohl sein mag?
+Uebrigens: Damit lassen sich auch nette Kekse backen!
+
+Aranya
+      froh, dass vor ihrem Fenster keine Polizisten vorbeikommen
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Estragon-Poularde (Raffi, 25. Jan 1996, 15:41:09):
+~#! rn=Aranya rt=822580761
+~#! tid=822405633
+
+KEKSE ?
+
+Wo kann man denn mal ne PProbepackung bestellen ?
+
+>Gruss
+H.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Estragon-Poularde (Aranya, 25. Jan 1996, 16:21:28):
+~#! rn=Raffi rt=822580869
+~#! tid=822405633
+Im Allgemeinen werden die in unserer WG sofort nach dem Backen verzehrt.
+Da bleibt nix uebrig und kein Auge trocken.
+
+Aranya
+      sollte mal versuchen, Estragon zu rauchen... :]
+NNN
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Estragon-Poularde (Raffi, 25. Jan 1996, 16:49:48):
+~#! rn=Aranya rt=822583288
+~#! tid=822405633
+
+Dann sei doch so gut und sag mir wann ihr das naechste mal Backt! - ich komm
+dann zum VORkosten :)
+
+Gruss
+H.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Naechstes Wochenende gibts.... (Caradhras, 27. Jan 1996, 13:36:26):
+~#! rn=Caradhras rt=822559076
+~#! tid=822190355
+                    Huhu
+
+Ach, natuerlich hab ich doch glatt noch vergessen, den Nachtisch
+zu erwaehnen zur Gans! Damit die Gans besser rutscht! (Jawohl!
+wuerde Kretek jetzt sagen. :) Und zwar gibt es gans einfach ein
+Vanilleeis (Schoeller manhattan french vanilla empfehle ich da) mit
+einer selbstgemachten Schokosauce (barbarische Art ;-)
+
+Und zwar jaaanz einfach Schokolade, zur Haelfte Nuss-Schoko
+(wir nehmen eine Ritter Sport Vollnuss mal testweise) und
+uuuunbedingt was bitteres, auch wenn man es nicht mag, aber es
+MUSS sein. Da nehmen wir Sarotti Halbbitter. Das ganze zer-
+broeckelt im Wasserbad mit etwas Sahne erhitzen uuuuuund...
+vernaschen. :-) Was denn sonst.
+
+
+Kretek ruft: ENTE!
+Caradhras ruft: Noe, Gans!
+
+          Hmmmmjam
+
+          Caradhras - der verfressene Prophet
+    (prophezeit dass ein Grossteil in seinem Magen laden wird)
+
+-----------------------------------------------------------------------------
+
+
+
+Mal wieder was indisches und fleischloses (Engywuck, 24. Mar 1996, 18:45:37):
+So, das Mittagessen heute war ganz vorzueglich! Und damit ihr auch in den
+Genuss kommt, gibts hier auch das Rezept:
+
+
+Mater Panir (Huettenkaese mit Erbsen)
+
+So, den Panir (Huettenkaese) macht man selbst und setzt ihn am besten
+einen Tag vorher an. Fuer dieses Gericht braucht man:
+
+1,5 L Milch
+80 ml warmes Wasser
+30 ml Essig
+
+Man bringt die Milch zum kochen, mischt dann Wasser und Essig und gibt
+dann soviel Essigwasser langsam zur Milch, bis alle Milch geronnen ist.
+Die geronnene Milch wird mit einem Schaumloeffel abgetrennt und in einem
+Sieb abtropfen gelassen. Dann gibt man sie in ein Kaeseleinen oder ein
+aehnliches Tuch und drueckt den Kaese so gut wie moeglich aus, bis er
+moeglichst trocken ist. Zu einer Kugel oder so formen und ueber Nacht im
+Kuehlschrank aufbewahren.
+
+Dann braucht man noch eine Zwiebelmischung, die macht man so:
+
+1 grosse Zwiebel
+2 Tomaten
+1.5 cm Ingwerwurzel
+3 Knoblauchzehen
+1 gruene Chilischote
+1 TL Essig
+
+Dies alles im Mixer zu einer glatten Paste verarbeiten.
+
+So, jetzt gehts aber los mit dem eigentlichen Gericht:
+
+6 EL Oel
+250 g Panir (s.o) in Wuerfeln von 1 cm Kantenlaenge geschnitten
+6 EL Zwiebelmischung (s.o)
+1 TL Kurkuma, gemahlen
+1/2 TL Chilipulver
+1 TL Koriander, gemahlen
+Salz zum abschmecken
+Eine kleine Dose Erbsen (Abtropfgewicht so 250 g oder weniger)
+200 ml Wasser
+1 Schuss Sahne
+
+1. Oel in einer Pfanne stark erhitzen und Panir braten, bis es goldbraun
+ist. Herausnehmen und auf Kuechenpapier abtropfen lassen.
+
+2. Zwiebelmischung mit dem restlichen Oel unter staendigem Ruehren 3 Min.
+schmoren. Kurkuma, Chilipulver, und Koriander hineingeben und weitere 2-3
+Min schmoren.
+
+3. Erbsen hineingeben und gruendlich mischen. Wasser dazugiessen (ich hab
+da z.T. das Erbsenwasser verwendet) und zum Kochen bringen. Zudecken,
+Hitze reduzieren und 5 Min. koecheln lassen. Panirstuecke hineingeben und
+weiter 10 Min koecheln lassen. Noch ein Schuss Sahne dazu - fertig!
+Mit Salz abschmecken.
+
+Guten Appetit wuenscht
+
+Die kleine Engy
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Mal wieder was indisches und fleischloses (Semira, 24. Mar 1996, 18:46:43):
+~#! rn=Engywuck rt=827689537
+~#! tid=827689537
+Nachtrag:
+
+Ich kann das nur bestaetigen, dass das gut schmeckt...aber ACHTUNG mit dem
+Chili!!! *feuerspuck*
+
+*knuddels*
+
+-----------------------------------------------------------------------------
+
+
+
+Szegediner Gulasch (Kretek, 25. Mar 1996, 13:55:49):
+Halloechen!
+
+Als alter Diplom-Ungar **grins** finde ich, hier gehoert auch mal was
+aus dem Lande meiner Vaeter hin **schwelg**
+Ergo: Szegediner Gulasch, oder auch: Gulasch, mal ganz anders.
+
+Fuer 4 Personen:
+750 - 1000 g (je nach Hunger) Schweinefleisch, am besten Hals oder
+   Schulter; alternativ geht natuerlich auch Rind (wer will hier
+   noch wahnsinniger werden?), oder Huehnchen/Pute
+2 Zwiebeln
+1 Paprikaschote
+3 - 4 Tomaten
+Sauerkraut (die mittelgrosse Dose, ca. 500 g)
+1 Becher Sauerrahm
+Paprikapulver (mild)
+Bruehwuerfel
+
+
+So, jetzt geht's los:
+Fleisch klein wuerfeln (so, wie das Gulaschfleisch vom Metzger geschnitten
+ist, ist's beispielsweise viel zu gross!). Zwiebeln ebenfalls wuerfeln,
+und beides zusammen in einer Pfanne anbraten, bis der Fleischsaft ganz
+verdampft ist und die Zwiebeln goldgelb sind. Das ganze dann mit
+Paprikapulver bestaeuben und mit Wasser aufgiessen, so, dass das Fleisch
+knapp bedeckt ist.
+Dann leicht salzen, einen Bruehwuerfel dazu, und bei geschlossenem
+Deckel (jetzt natuerlich in einem Topf, das haette ich vorher vielleicht
+dazu sagen sollen...) etwa 15 Min. koecheln.
+Danach so lange Gewuerze reinschuetten, bis die Sauce eben wie 'ne
+Gulaschsauce schmeckt, sprich: Paprika (nicht vergessen: MILDEN!),
+Pfeffer, Salz, Kuemmel.
+Zwischenzeitlich das Kraut abwaschen (sonst ist es naemlich zu sauer!),
+und mit ein bisschen Kuemmel so lange kochen, bis es noch etwas bissfest
+ist. Danach abgiessen, am besten sogar etwas pressen (da sollte so wenig
+Fluessigkeit wie moeglich dran sein, sonst wird die Sache verwaessert.)
+Gleichzeitig die Paprikaschote wuerfeln, die Tomaten vierteln.
+In der Zwischenzeit sollte das Fleisch insgesamt etwa 30 od. 35 Minuten
+(immer bei geschlossenem Deckel) gekoechelt haben. Jetzt ist's an der
+Zeit, die Paprikaschoten und die Tomaten sowie Knoblauch nach Belieben,
+natuerlich gepresst, dazu zu geben. Bei Bedarf immer wieder mal ein
+Schlueckchen Wasser aufgiessen, es sollte aber keine Suppe werden! :))
+Nach ca. 45 - 50 Min. Gesamtkochzeit dann das Kraut dazu geben. Am besten
+vorher mit einer Gabel oder so lockern, sonst hat man vielleicht einen
+kompakten Krautklumpen im Gulasch, das waere nicht so ganz Sinn der Sache.
+Weitere 5 Min spaeter (das Kraut wird naemlich eigentlich nur nochmal
+aufgewaermt) die saure Sahne unterruehren. Jetzt sollte das Ganze
+moeglichst nicht mehr aufkochen, sonst flockt die Sahne aus, und das
+macht sich nicht gut!.
+Tja, und nach einem kraeftigen Umruehrer kann jetzt auch schon gefuttert
+werden! Dazu gibt's am besten Salzkartoffeln (wie man die macht, brauche
+ich ja wohl kaum zu posten... oder?), schluerfenderweise macht sich ein
+trockener Rotwein gut; wenn schon ungarisch, dan doch am besten
+gleich 'nen "Egri Bikaver" (auch bekannt als "Erlauer Stierblut").
+
+Und jetzt noch ein gar nicht unwichtiger Kommentar hinterher:
+Wenn das Szegediner Gulasch bei Dir jetzt scharf geworden ist, dann hast
+Du etwas grundlegend falsch gemacht! Entgegen Millionen anderslautender
+Geruechte ist die ungarische Kueche naemlich NICHT SCHARF!!! Keine
+Ahnung, welcher Daemlack das Geruecht vom "zweimal brennenden ungarischen
+Gulasch" aufgebracht hat, aber dafuer gehoert er posthum noch auf den
+Scheiterhaufen! Es werden zwar Unmengen von Paprika hergenommen, aber
+der ist ausnahmslos mild! Wenn jemand im Urlaub ein scharfes Gulasch
+serviert bekommt, dann weiss er wenigstens, dass er / sie in einer
+Touristenfalle gelandet ist...
+
+
+
+So, genug Landeskunde fuer heute!
+
+
+Guten Appetit wuenscht
+
+Massa Jemand :))
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Szegediner Gulasch (Sique, 26. Mar 1996, 23:50:15):
+~#! rn=Kretek rt=827758549
+~#! tid=827758549
+Ich hab mal irgendwo gehoert, dieses Geruecht haette ein
+ungarischer Schriftsteller aufgebracht, dessen Name mir
+im Moment entfallen ist.
+                                                  Sique
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Szegediner Gulasch (Sique, 26. Mar 1996, 23:53:59):
+~#! rn=Sique rt=827880615
+~#! tid=827758549
+Nochwas: Soweit mir bekannt, heisst Gulasch auf Ungarisch
+Poerkoelt. "Gulas" (gesprochen Gulasch) wiederum heisst "Hirte",
+als Speise meint es eine Suppe (manche kennen sie als "Kesselgulasch").
+
+                                                    Sique
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Szegediner Gulasch (Kretek, 27. Mar 1996, 03:41:36):
+~#! rn=Sique rt=827880839
+~#! tid=827758549
+Danke, Sique!
+
+Du hast natuerlich voellig Recht: Das, was der Deutschsprachige so
+gemeinhin als "Gulasch" (im Ungarischen uebrigens 'Gulyas' geschrieben)
+bezeichnet, entspricht viel eher einer Gulaschsuppe. Das, was man bei
+uns gemeinhin unter dem Begriff "Gulasch" versteht, waere dagegen, wie
+Du richtig bemerkst, ein "Poerkoelt" (Mist, Akzente sind hier ja nicht
+moeglich!). Insgesamt kennt der Ungar sogar vier verschiedene Varianten
+des "Gulasch".
+
+Kretek
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Szegediner Gulasch (Creative, 29. Mar 1996, 13:11:08):
+~#! rn=Sique rt=827880839
+~#! tid=827758549
+
+nur schreiben tut mans 'Gulyas'. :)
+-Crea-
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Szegediner Gulasch (Creative, 29. Mar 1996, 13:12:42):
+~#! rn=Kretek rt=827894496
+~#! tid=827758549
+
+jaaaajaaa, ich bin mal wieder langsam. :)
+-Crea-
+
+
+-----------------------------------------------------------------------------
+
+
+
+Spargel! (Caradhras, 20. Apr 1996, 19:52:58):
+So, das obligatorische Posting von letztem Fruehjahr nochmal, ist
+schliesslich schon ein Jahr her. Leckerer Spargel mit Zutaten.
+
+Und weil es wieder Zeit ist, das uebliche Spargelgericht. :)
+Lecker. Mjam! Manch einer kennt es noch vom letzten Jahr.
+Oder wars das vorletzte Jahr? Hm, ja, egal!
+
+Also: Man nehme (nein, nicht Doktor Oetker) pro Person etwa
+ein Pfund Spargel (Pfuesiker und sonstig komisches Zeugs
+moegen mir verzeihen dass es eigentlich kein 'Pfund' mehr
+als Gewichtsmass gibt in Deutschland), fuer ganz arg viel
+Vielfrasse auch etwas mehr. Dann braucht man noch mittel-
+grosse Kartoffeln, festkochend, keine Ahnung wieviel, soviel
+wie man halt Hunger hat, dazu braucht man noch Petersilie
+(so frisch wie moeglich, ein Bund reicht) und Butter.
+Dann noch Schinken dazu, so 100 bis 200 gramm pro Person
+reicht, der Vorderschinken fuer 2 DM von Aldi tuts da
+uebrigens prima! Hm, jetzt noch fuer die Sauce... was
+brauchen wir denn da? Also einmal eine Zitrone, dann noch
+etwas Butter und Mehl, Spargelwasser, eine Sahne (Schlachsahne),
+Salz, weisser Pfeffer, etwas Maggi oder Fondor oder Suppenwuerfel
+und hm, hab ich noch was vergessen? Glaub nicht.
+
+Ach so, den Nachtisch! Vanilleeis (Schoeller French Vanilla
+Manhattan mit Schlagsahne und heissen Himbeeren) oder frische
+Erdbeeren kleingeschnitten in fluessige Sahne mit Zucker oder
+Vanilleeis mit heissen Erdbeeren ... ach, am besten alles. *:^)
+
+So, wie mache ich was und nochmal: Was brauche ich alles:
+
+Fuer 4 Personen (grob abgeschaetzt):
+
+2 Kilo Spargel   (moeglichst dick, 4 Mark oder weniger pro
+                  Pfund ist einigermassen ok wenn er gut ist)
+Eine Butter
+Ein Saeckchen Kartoffeln, hm, sind 2.5 Kilo oder so
+                 (duerfte etwas zuviel sein)
+Petersilie, ein Bund
+Schinken, 3 Packs von Aldi
+Mehl (recht wenig, vielleicht 100 oder 200 Gramm maximal)
+Zitrone, nur eine
+Schlagsahne, auch nur eine
+Salz, weisser Pfeffer, Maggi oder Fondor (Geschmacksverstaerker)
+Zucker, Sonnenblumenoel   ganz wenig
+
+Wie geht es:
+Grosser Topf mit Wasser erhitzen, Spargel schaelen, nicht zu
+wenig abschaelen! Wie gesagt, je dicker die Stangen um so
+besser, wenigstens wenn man von einer Spargel-Normalverteilung
+ausgeht. Wasser sollte nicht ganz kochen, sondern sieden. Ich
+mach es meist so dass ich das vordere Drittel der Spargel
+abschneiden, der Kopf braucht nicht so lange wie der Rest (ist
+auch der bessere Teil), Stangen etwa 25 Minuten bis 30 Minuten,
+Kopf zwischen 15 und 20 Minuten. In das warm werdende Wasser
+schon die Schalen reinschmeissen beim Schaelen, das Spargel-
+wasser brauchen wir nachher noch. Aber bitte nachher die
+Schalen nicht mitessen. So, ein bisschen Zucker noch in das
+Wasser rein, wenn es siedet.
+
+Kartoffeln schaelen und in ihren Topf mit etwas bis etwas mehr
+Salz rein. Wie lange brauchen mittelgrosse Kartoffeln? Hm, so
+30 Minuten denk ich, also die zuerst anmachen. Kartoffeln
+duerfen ruhig auf den Spargel warten. Wenn fertiggekocht Wasser
+abschuetten, Topf innen trocknen und 1/4 der Butter drin warm-
+machen. Da die Kartoffeln dann noch etwas anbraten (am Stueck)
+und kleingeschnittene Petersilie drueberstreuen.
+
+Pfanne nehmen und 1 EL Butter und 1 EL Oel rein, wenn sie heiss
+ist dann den Schinken aus der Packung nehmen, leicht zerrupfen
+und in die Pfanne legen, knusprig anbraten.
+
+Bei der Sauce dazu geht das ganze ganz einfach, 1/3 Butter bis
+1/2 Butter nehmen und erhitzen (nicht zu heiss werden lassen
+die Butter!!) und dann mit 2 bis 3 EL Mehl binden. Eben soviel
+dass es nicht zu fest wird (mit Schneebesen) und langsam mit
+dem Spargelwasser auffuellen (wird immer wieder etwas fester,
+also gut umruehren) und mit Salz, weissem Pfeffer, dem Saft
+von der Zitrone, etwas Sahne (halber Becher reicht wohl) und
+einem Bruehwuerfel abschmecken.
+
+Das wars... Wie man Eis isst und Himbeeren heissmacht mit etwas
+Zucker, na das werdet ihr ja wohl selbst hinkriegen. Und Erd-
+beeren kleinschneiden ist auch nicht so schwer.
+
+         Guten Appetit, ich werde es diese Woche auch
+         noch machen
+
+            Caradhras der Golddrachenberg, knuddelt sein
+                                           Kuscheli
+Der Golddrachenberg Caradhras bruellt: SOOOOOOMMMMMMERRRR!
+Oppps, falsches Mud, muss natuerlich heissen:
+Caradhras ruft: SOOOOOOMMMMMMERRRR!
+
+         :-))
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Spargel! (Kretek, 22. Apr 1996, 01:53:36):
+~#! rn=Caradhras rt=830022778
+~#! tid=830022778
+Dazu faellt mir nur noch eins ein, Caradhras:
+LABER NICHT RUM, SCHMEISS DEN OFEN AN, ICH STEHE BEI DIR AUF DER MATTE!!!
+
+KreTEK
+(Mittlerweile ein treuer Anhaenger der "Bergischen" Kueche!)
+
+KreTEK denkt . o O (GANS!)
+
+Flames, Replys und sonstigen Muell (ja, ok, von mir aus auch sinnvolle 
+Antworten, wenn's denn sein muss...) an:
+
+Massa Kretek (V.i.S.d.P.)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Spargel! (Caradhras, 22. Apr 1996, 10:06:13):
+~#! rn=Kretek rt=830130816
+~#! tid=830022778
+Na die Gans haette auch noch viiiieeeeeel besser gehen koennen.
+Aber fuers erste Mal seit laengerem war sie schon gar nicht so
+schlecht. :) In Zukunft hoffentlich wieder mehr Rezepte von mir
+hier.
+
+        Caradhras (V.S.O.M.)
+-z au ja, Reboot :)
+Opps,. falsche ecke :)
+PS: was heisstn V.i.S.d.P. ?
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Spargel! (Hardil, 22. Apr 1996, 10:06:47):
+~#! rn=Kretek rt=830130816
+~#! tid=830022778
+Auja, Cara*, wenn Du die ganzen Spargel schaelst, komm ich auch. Aber muss es
+gerade Passau sein? Bamberg war schon so weit...
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Spargel! (Anakin, 22. Apr 1996, 10:07:06):
+~#! rn=Caradhras rt=830160373
+~#! tid=830022778
+V.i.S.d.P Verantwortlich im Sinne des Pressegesetztes.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Spargel! (Caradhras, 22. Apr 1996, 10:31:10):
+~#! rn=Hardil rt=830160407
+~#! tid=830022778
+Noe, dafuer hab ich meine 'Untergebenen' wie Kretek zB, ich bin nur
+delegierendes und organisierendes Organ.
+
+       Caradhras - grinst Sklave Kretek an
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Spargel! (Kretek, 22. Apr 1996, 16:15:28):
+~#! rn=Caradhras rt=830161870
+~#! tid=830022778
+Dazu nur eins: GRUMMELBRUMMEL!
+Flames, Replys und sonstigen Muell (ja, ok, von mir aus auch sinnvolle 
+Antworten, wenn's denn sein muss...) an:
+
+Massa Kretek (V.i.S.d.P.)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Spargel! (Kretek, 25. Apr 1996, 12:55:19):
+~#! rn=Caradhras rt=830022778
+~#! tid=830022778
+So, natuerlich kann man ein solches Rezept nicht voellig unkommentiert
+stehen lassen: Gestern (Mittwoch) wurde das Experiment RL ausgefuehrt.
+Von vornherein lief irgendwas falsch: Caradhras erklaerte sich selber
+zum "Kuechenmassa", fuer den armen kleinen Kretek (MASSA Kretek!) blieben
+nur niedere Sklavendienste, wie Spargel schaelen, Kartoffel schaelen,
+Petersilie hacken... Einem Magier eben voellig unangemessen! Aber man
+beugt sich eben der rohen Gewalt...
+Na ja. Vier Leute waren's dann, die sich nach geraumer Zeit heisshungrig
+ueber zwei Kilo Spargel, leckeres Soesschen, Schinken,
+Kartoffeln, und, als Nachtisch, Vanilleeis mit frischen Erdbeeren und
+heissen Himbeeren hermachten (und alles RATZEPUTZ vertilgten!).
+Urteil des Hauses:
+Solltet Ihr mal zur Spargelzeit nach Passau kommen, ladet Euch einfach bei
+Caradhras ein, der kann das! Aber: Es gilt einen Fehler zu vermeiden:
+NIE erzaehlen, es waere zu wenig, die Kartoffeln waeren verkocht,
+an der Sosse waere zuviel Pfeffer, das Eis waere schon fast zerlaufen...
+Dann passiert naemlich folgendes:
+
+> Ein Berg geht beleidigt in eine Ecke.
+> Ein Berg schmollt.
+> troeste berg
+> Ein Berg schimpft: Und sowas lade ich auch noch zum Essen ein! Undankbares
+> Ein Berg schimpft: Pack!
+> troeste berg /ganz lieb
+> Ein Berg sagt: grummel
+> taetschel berg
+> sag lieber berg, toller berg, kuechenberg... :))
+> Ein Berg laechelt Dich freundlich an.
+> Ein Berg huepft um Dich herum.
+> Ein Berg singt: Warum bin ich so froehlich, so froehlich, so froehlich,
+> Ein Berg singt: so ausgesprochen froehlich, so froehlich war ich niiiieeee!
+
+
+
+rufe caradhras nach spargel!
+
+
+Flames, Replys und sonstigen Muell (ja, ok, von mir aus auch sinnvolle 
+Antworten, wenn's denn sein muss...) an:
+
+Massa Kretek (V.i.S.d.P.)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Spargel! (Caradhras, 25. Apr 1996, 17:25:13):
+~#! rn=Kretek rt=830429719
+~#! tid=830022778
+Wah, hilllllllfe, wie?? 'Ladet euch bei Caradhras zum Spargel-
+essen ein.' ????? Ich hab mich wohl verlesen... wer sich bei
+mir 'einlaedt' oder von mir eingeladen wird bestimme immer noch
+ich.
+
+Uebrigens: Kretek macht ein sehr leckeres Chili con Carne,
+garantiert mit BS... aeh ohne BSE. Ladet euch bei ihm ein,
+Chili-Zeit ist jederzeit.
+
+      Caradhras - ueberlegt sich schon das naechste Rezept
+PS: Und wer hat natuerlich zu wenig Kartoffeln geschaelt???
+     Kretek! Wer sonst.   *peitsche such fuers naechste Mal*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Spargel! (Kretek, 26. Apr 1996, 16:19:04):
+~#! rn=Caradhras rt=830445913
+~#! tid=830022778
+... Wozu man natuerlich sagen muss, dass ich AUSDRUECKLICH und auch
+MEHRMALS gefragt habe: "Caradingens, brauchen wir noch mehr Kartoffeln?",
+und jedesmal kam die ein-eindeutige Antwort "Noe, lass mal, das reicht
+schon."
+Ergo: Ich bin NICHT schuld! :))
+Und noch was: Mein Chili ist absolut widerlich! Das von Knorrfix oder Maggi
+schmeckt viieel besser... ;)
+
+Flames, Replys und sonstigen Muell (ja, ok, von mir aus auch sinnvolle 
+Antworten, wenn's denn sein muss...) an:
+
+Massa Kretek (V.i.S.d.P.)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Spargel! (Caradhras, 27. Apr 1996, 13:29:42):
+~#! rn=Kretek rt=830528344
+~#! tid=830022778
+Grummel! Dein Chili ist nicht widerlich und stinkt nicht mal!
+Es ist absolut super, beinahe so gut wie mein Spargelessen.
+Wieso machen wir nicht gleich ne Rubrik passau auf? :) Aber
+hier nach Kochrezepte schreibt ja sonst beinahe keiner.
+
+     Caradhras - taetschelt seinen Zweitie Kretek
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Spargel! (Hardil, 29. Apr 1996, 09:10:56):
+~#! rn=Caradhras rt=830604582
+~#! tid=830022778
+
+rufe Grimmborn nach Kinder-Chili :-)
+
+
+Hmmm, das kapiert jetzt ausser dem Zwerg, Locutus, GulDukat und Durian wieder
+keiner. Aber ich woltle damit eh nur sagen - gutes Chili (real Chili) gibt es
+auch ausserhalb Passaus. Und dazu ein lecker Zitronenbier...
+
+-Hardil. Isst sogar oefters Chili zum Fruehstueck.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Spargel! (Wurzel, 29. Apr 1996, 20:21:02):
+~#! rn=Hardil rt=830761856
+~#! tid=830022778
+was meinst du mit "real chili"?
+ich habe aus new mexico ein chili-kochbuch mitgebracht, ein ganzes buch voll
+mit chili-rezepten :) dazu ein buch ueber die 200 gebraeuchlichsten sorten
+chili-schoten...
+ich koche aber immer meine eigene chili-variante, ist etwas feuriger als es
+die buecher beschreiben :)
+
+wurzel (kennt sich mit chili aus)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Spargel! (Kretek, 29. Apr 1996, 23:38:09):
+~#! rn=Caradhras rt=830604582
+~#! tid=830022778
+Dementi.
+So. Mehr sag ich dazu nich.
+Flames, Replys und sonstigen Muell (ja, ok, von mir aus auch sinnvolle 
+Antworten, wenn's denn sein muss...) an:
+
+Massa Kretek (V.i.S.d.P.)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Spargel! (Caradhras, 29. Apr 1996, 23:42:02):
+~#! rn=Kretek rt=830813889
+~#! tid=830022778
+Dementi? Ist das auch was zu essen? Wie kocht man das?
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Spargel! (Raffi,  2. Mai 1996, 12:25:46):
+~#! rn=Caradhras rt=830814122
+~#! tid=830022778
+Dementi ?
+
+Am besten kalt - dann weiss keiner mehr genau was da dementiert wurde :)
+
+Gruss
+H.
+
+-----------------------------------------------------------------------------
+
+
+
+chili (Wurzel,  3. Mai 1996, 22:37:05):
+also gut, hier ein rezept fuer chili con carne:
+
+fuer ein gutes chili braucht man vor allem chili.
+das hoert sich erstmal bloed an, aber stimmt trotzdem:
+die auswahl der verwendeten schoten bestimmt nachhaltig
+das ergebnis. stilecht wirds natuerlich nur, wenn man
+die schoten aus mexiko nimmt. da bieten sich verschiedene
+an, ganz nach geschmack:
+
+wer nicht so sehr auf scharfe sachen geeicht ist, sollte
+die finger von habaneros lassen. das ist so ziemlich das
+schaerfste, was man bekommen kann. es empfiehlt sich dann,
+z.b. chilcostle oder guajillo zu nehmen. generell sind die
+etwas groesseren dunkleren chile milder als die kleinen
+hellen, haben dafuer meist mehr eigengeschmack.
+man rechnet mit 3-5 schoten pro person, dann wird es nur
+mittelscharf (lasch wuerden die leute sagen, die mein chili
+kennen :))
+
+was braucht man sonst noch:
+
+zeit. vor allem zeit. chili ist kein schnellgericht.
+um ein wirklich gutes chili zu bekommen, laesst man es
+24 stunden auf kleiner flamme ziehen.
+
+fleisch. am besten (aber in deutschland schwer zu bekommen)
+ist pferdefleisch. rindfleisch geht aber auch. wer angst vor
+bse hat, sollte sich ueberlegen, was alles in schweinefleisch
+drin ist, und dann vegetarier werden. ohne fleisch aber kein
+chili. das fleisch sollte in ca. 1 cm grosse stuecke geschnitten
+werden, hackfleisch nehme ich als ergaenzung.
+
+bohnen. darueber existiert ein glaubenskrieg, ob die bohnen
+in das chili kommen oder als beilage pueriert gereicht werden.
+ich hab refried beans noch nie so hinbekommen wie in texas,
+also tu ich die bohnen rein. mir persoenlich schmecken die
+roten kidney-bohnen am besten, aber dunkle pinto-bohnen tun es
+auch (finger weg von den sog. chili-bohnen! die versauen mit
+ihrem ketchup-mix nur den geschmack).
+
+tomaten. geschaelte tomaten, aber die passierten von aldi tuns
+auch. dann tomatenmark, zum eindicken. es gibt nichts ekligeres
+als ein waessriges chili, das eigentlich eher als missglueckte
+bohnensuppe zu bezeichnen ist. leider bekommt man in den meisten
+deutschen kneipen, die in der letzten zeit chili anbieten, nur
+bohnensuppe.
+
+ansonsten: zwiebeln, knoblauch, gewuerze: kumin, oregano,
+basilikum, salz, KEIN pfeffer, etwas rosenpaprika, etc.
+(etc. heisst: wurzels geheimkraeuter, kann man je nach geschmack
+verfeinern :)). ausserdem: ein topf, ein herd, olivenoel...
+das ueberall erhaeltliche chilipulver ist i.a. eine mischung aus
+gemahlenen chile, oregano, kumin und knoblauch. kumin heisst auch
+kreuzkuemmel, ist aber nicht mit dem normalen kuemmel zu
+verwechseln (sieht nur genauso aus, schmeckt aber anders).
+
+und schon koennen wir loslegen.
+zwiebeln, chile und knoblauch zerkleinern, in dem oel anbraten.
+das kleingeschnittene fleisch zufuegen, wenn es gebraeunt ist,
+das hackfleisch dazu. alles zusammen braten lassen, ggf. mit
+etwas tequila abloeschen. in der zwischenzeit aus den tomaten,
+tomatenmark und gewuerzen eine tomatensauce anruehren, dann
+in den topf damit. gut ruehren nicht vergessen.
+
+wenn es zusammen eine viertelstunde gekoechelt hat, bohnen dazu.
+hitze zuruecknehmen, koecheln lassen, gelegentlich ruehren...
+wie gesagt, 24 stunden :) darauf achten, dass das chili nicht zu
+fluessig ist. evtl noch etwas tomatenmark dazu geben.
+
+nach zwei stunden sollte das chili soweit sein, dass man sich ans
+abschmecken machen kann. vorher hats keinen sinn, weil das
+capsaicin aus den schoten erstmal durchziehen muss :) wenns zu
+scharf fuer den empfindlichen gaumen ist, kann man mit ein wenig
+geriebenem kaese die brennwirkung etwas mildern, ohne das chili
+geschmacklich zu verderben. dafuer kommt aber natuerlich nicht
+jeder kaese in frage, sondern nur sorten mit nicht zu starkem
+eigengeschmack, z.b. junger gouda.
+
+dann darf es noch einige zeit ziehen, mit ruehren, versteht sich.
+zartbeseitete geniesser essen dazu reis oder brot, hardcore-fans
+nehmen tortillas.
+
+wenns am tag nach dem essen nochmal brennt, war alles richtig :)
+
+wurzel
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: chili (Hardil,  7. Mai 1996, 14:32:20):
+~#! rn=Wurzel rt=831155825
+~#! tid=831155825
+
+Hmmmtja Wurzel, Dein Rezept klingt ja wirklich ganz nett.
+Aber wo sind die leckeren Jalapenos erwaehnt? Ohne Jalapenos kein richtiges
+Chili... :)
+Ich hatte mal Real Chili angesprochen. Das bezog sich natuerlich (uuuups,
+Werbung im Internet) auf
+
+Real Chili, East Wells Street, Milwaukee, Wisconsin, USA
+
+(das istund bleibt immer noch mein Lieblingsrestaurant, was die
+Chili-Zubereitung angeht: Real Chili - it's not just for breakfast anymore).
+
+Leider bekommt man hier das trockene Weizengebaeck, dass gerne zum Abdaempfen
+im Schuesselchen dazugestellt wird, hier nicht. Aber frag mal Grimmborn nach
+Kinder-Chili :-)
+
+-Hardil. Chili all day, all night.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: chili (Wurzel,  7. Mai 1996, 19:42:35):
+~#! rn=Hardil rt=831472340
+~#! tid=831155825
+jalapenos? in chili? das kann nur eine erfindung von leuten aus wisconsin
+sein... in einem echten guten chili sind keine gruenen schoten.
+nix gegen jalapenos, sind ansonsten sehr lecker (super z.b. fuer guacamole),
+aber leider trotzdem gruen. wirst du in mexico oder texas nicht im chili
+finden...
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: chili (Raffi,  8. Mai 1996, 21:17:23):
+~#! rn=Wurzel rt=831490955
+~#! tid=831155825
+
+Tut mir leid Wurzel, aber ich hab in New Mexico (und das ist ja die gleiche
+Gegend) bereits gruenzeug im Chili bekomen (mal abgesehen von dem  gruenen
+Zeug auf dem Chili Cheaseburger, und auf den Chili Pommes - Das war toedlich!)
+
+Uebr ich hab am WE dein Rezept (mit kleinen veraenderungen, da mein Eisschrank
+trotz kraeftigem gegentreten nicht alles ausspucken wollte) ausprobiert - war
+durchaus essbar :)
+
+Gruss
+H.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: chili (Yendi,  9. Mai 1996, 14:08:51):
+~#! rn=Wurzel rt=831155825
+~#! tid=831155825
+
+Hmm... Was mach ich falsch?
+Bei mir brennts meistens nicht einen Tag nach dem Essen nochmal, sondern
+schon zwei Stunden spaeter... und zweieinhalb Stunden spaeter schon wieder...
+und drei Stunden spaeter schon wieder...
+
+Yendi
+ (der mit den empfindlichen Eingeweiden)
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: chili (Kretek, 10. Mai 1996, 18:23:45):
+~#! rn=Wurzel rt=831155825
+~#! tid=831155825
+Habaneros sind besser! :))
+
+Kretek
+
+Flames, Replys und sonstigen Muell (ja, ok, von mir aus auch sinnvolle 
+Antworten, wenn's denn sein muss...) an:
+
+Massa Kretek (V.i.S.d.P.)
+
+-----------------------------------------------------------------------------
+
+
+
+Man nehme... (Caradhras, 24. Jul 1996, 21:14:03):
+Kuerzlich gemacht, dauert nur etwa 10 Minuten inclusive allem:
+
+Pfanne heissmachen, 2 Putenschnitzel kleinschneiden, rinn in die
+Pfanne. Dann noch eine mittelgrosse Zwiebel reinschneiden (kleine
+Wuerfel) und ein paar Champignons.
+Das ganze auf Stufe 2 von 3 5 Min lang anbraten lassen,
+salzen und 2 EL Sambal Assem drueber, 1 Min mitbraten lassen
+und dann mit etwas Pfeffer und 100 ml Schlagsahne abschmecken.
+
+C'etait tout
+
+  Goldfrosch Caradhras - isst sowas zum 2ten Abendessen 
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Man nehme... (Wurzel, 24. Jul 1996, 21:15:52):
+~#! rn=Caradhras rt=838235643
+~#! tid=838235643
+hoert sich an, als ob es aus dem wok eher noch besser wuerde...
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Man nehme... (Caradhras, 24. Jul 1996, 21:16:10):
+~#! rn=Wurzel rt=838235752
+~#! tid=838235643
+Wenn man als armer Frosch sowas haette.... :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Man nehme... (Jasper, 14. Aug 1996, 06:29:22):
+~#! rn=Caradhras rt=838235770
+~#! tid=838235643
+kann man statt der putenschnitzel auch froschschenkel nehmen ? :)
+
+Jasper wartet auf seine zufallenden augen und liest solange noch
+      magier.urlaub und kochrezepte :) *japs*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Man nehme... (Caradhras, 16. Aug 1996, 14:08:09):
+~#! rn=Jasper rt=839996962
+~#! tid=838235643
+MAUL! *grummel Jasper an*
+Bonner sind alle doof und ...
+(Ausnahmen nur die, die ich mag)
+
+    Goldfrosch Caradhras - plaediert dafuer, Hamburger in Bonner umzu-
+                          benennen, findet die auch doof 
+
+-----------------------------------------------------------------------------
+
+
+
+ein fruehstueck zum wachmachen :) (Wurzel, 29. Aug 1996, 14:44:40):
+ein fruehstueck, heute ausprobiert. man braucht fuer zwei personen:
+
+zwei dicke zehen frischen knoblauch
+zwei mittelgrosse frische chili (mittelscharfe fleischige sorte)
+4-6 eier (je nach hunger)
+etwas geriebenen kaese, nicht zu fett
+einen spritzer olivenoel 
+  ich nehme dafuer italienisches chilioel (olio e peperoncino der
+  firma rebecchi), aber anderes geht auch
+gewuerze: oregano, muskatnuss, cumin, salz
+
+chili kleinschneiden, kerne entfernen. knoblauch zerkleinern.
+in einer beschichteten pfanne (damit man nicht so viel fett braucht) 
+den knoblauch und die chili mit dem oel bei kleiner hitze anschmoren.
+in der zwischenzeit die eier in ein gefaess schlagen, mit oregano,
+frisch geriebener muskatnuss, cumin und salz wuerzen und verruehren.
+den kaese unterruehren, dann die mischung in die pfanne geben und fest
+werden lassen.
+
+als beilage eignet sich baguette (oder toast) mit picandou, einem
+franzoesischen ziegenfrischkaese.
+
+wenn man alles richtig gemacht hat, ist der partner hinterher hellwach :)
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+kurz, schnell & lecker (Caradhras,  9. Sep 1996, 23:03:08):
+                     Glucks! aeh Guggs
+
+Ein kleines Rezept fuer den Abend:
+
+Man braucht:
+etwas Oel    (1 - 2 EL Sonnenblumenoel zB)
+Champignons  (vielleicht 250 Gramm, keine Dosenpilze!)
+Zwiebeln     (zwei mittelgrosse reichen)
+Speck        (recht wenig, 50 - 100 Gramm reichen)
+Schlagsahne  (reichen auch 50 ml)
+Streichkaese (damit mein ich sowas wie Miree oder Le Tartare oder
+              wie das Zeugs auch immer heisst, 50 bis 100 Gramm,
+              vielleicht nennt man es ja auch)
+TUC Salzgebaeck
+
+Salz, Pfeffer, kleines bisschen Paprika(scharf), etwas Kraeuters
+(zB Kraeuter der Provence, Thymian, Oregano, Rosmarin ...)
+und am besten Petersilie (ein kleines bisschen)
+
+Mittelgrosse Pfanne nehmen, Oel rein, Pilze kleinschneiden
+(NEIN, KEINE PILZE AUS DER DOSE!!!), normalgrosse Pilze blaettrig
+schneiden und dann nochmal dritteln. Auf Stufe 2 von 3 anbraten,
+Zwiebeln halbieren, dann in Halbringe schneiden, mit anbraten,
+desgleichen den Speck (den so klein wie moeglich schneiden)
+und mit etwas Salz und etwas mehr Pfeffer und den restlichen
+Gewuerzen (von allem eine kleine Prise) verkassematuckeln.
+Kurz nochmal volle Kanne auf die Platte geben (so eine bis
+zwei Minuten), dabei die Sahne rein und gut verruehren mit dem
+Kaese, dabei abschalten und die Petersilie kleingeschnitten reintun. 
+Noch n bisschen abkuehlen lassen und dann  auf TUC essen, also salzigen
+Crackers in die Richtung, damit schmeckts am besten, passt bestimmt aber
+auch klasse zu Chips u.ae.
+
+      tschuessie       Goldd..urxs Rothorn Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+Re: kurz, schnell & lecker (Wurzel,  9. Sep 1996, 23:07:14):
+~#! rn=Caradhras rt=842302988
+~#! tid=842302988
+hm, fehlt da nicht ein wenig knoblauch? :)
+wurzel 
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: kurz, schnell & lecker (Caradhras,  9. Sep 1996, 23:08:15):
+~#! rn=Wurzel rt=842303234
+~#! tid=842302988
+Wie Du willst, kann natuerlich auch rein.
+
+ Rothorn Caradhras - wird da unwillkuerlich an eine short story von
+                Isaac Isamov erinnert (SF)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: kurz, schnell & lecker (Acrimon,  9. Sep 1996, 23:10:18):
+~#! rn=Caradhras rt=842303295
+~#! tid=842302988
+Und etwas kleingeschnittene Ananas?
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: kurz, schnell & lecker (Wurzel,  9. Sep 1996, 23:10:47):
+~#! rn=Acrimon rt=842303418
+~#! tid=842302988
+ananas? um gottes brille...
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: kurz, schnell & lecker (Caradhras,  9. Sep 1996, 23:13:03):
+~#! rn=Wurzel rt=842303447
+~#! tid=842302988
+Igitt :) Ja nicht. :) Acrimon, das passt schon aus einem Grund nicht:
+Ananas sind dann zu gross, um sie gut mit den Tuc futtern zu koennen.
+Dann kannste ja gleich nen Pilzsalat draus machen, dann solltest du aber
+vielleicht die Tuc weglassen.
+
+        Rothorn Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+Abendmalzeit (Gando,  9. Sep 1996, 23:16:42):
+Es gibt da viel leichtere Sachen, die man kochen kann:
+Dafuer benottigt man:
+1 Kuehlschrank
+1 scharfe kante
+  (am besten Metall)
+etwas Pappe als Unterleger
+1 Glas
+  entweder ein langes Duennes, oder eines mit einer mehr ovalen Form
+  aber das ist egal.
+Und das wichtigst, ozusagen das i-tuepfchen
+1 Flasche Bier
+
+Man legt die flasche bier in den Kuehlschrank und wartet erstma ne stunde
+( in dieser Zeit koennte man z.Bsp ne Pizza bestellen:-)
+wenn man keine Stunde Zeit hat, so kann man ds Bier auch in das Eisfach legen.
+Wenn die Zeit um ist und das bier hoffentlich nicht im eisfach zerplatzt ist,
+nimm man die flasche, setzt sie an der scharfen (metall) kante an und oeffnet
+sie.
+Das bier nun in das glas giessen und prost
+Zu diesem Zeitpunkt muesste auch spaetestens die Pizza da sein
+:-)
+Gando
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Abendmalzeit (Caradhras, 10. Sep 1996, 00:36:59):
+~#! rn=Gando rt=842303802
+~#! tid=842303802
+Pfffffh, ich bin fuer sofortige Einrichtung der Rubrik banause.gando.
+
+Jawohl ja!        :)        Rothorn Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: kurz, schnell & lecker (Yendi, 10. Sep 1996, 13:46:27):
+~#! rn=Caradhras rt=842303295
+~#! tid=842302988
+
+Hiess die Geschichte zufaellig "A Question of Taste", oder aehnlich?
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: kurz, schnell & lecker (Caradhras, 10. Sep 1996, 14:13:36):
+~#! rn=Yendi rt=842355987
+~#! tid=842302988
+Eine Frage des Geschmacks? Hm, koennte gut sein, ist schon ein
+Jahrzehnt her dass ich die gelesen habe. Ging um was wohl? :-)
+
+ Ein Wettkochen natuerlich! *grins*
+
+        Rothorn Caradhras alias Hunga
+
+-----------------------------------------------------------------------------
+
+
+
+Re: auf altar CREO VIM (Caradhras, 10. Sep 1996, 16:40:10):
+~#! rn=Zorro rt=842366256
+~#! tid=842366256
+CREO VIM? Bestimmt auch lecker, wie kocht man denn das? :)
+
+-----------------------------------------------------------------------------
+
+
+
+rosenkohl (Wurzel,  6. Okt 1996, 15:21:56):
+die rosenkohlsaison geht wieder los...
+hier einmal rosenkohl etwas anders.
+
+wir brauchen fuer 2-4 personen (2 hungrige oder 4 normale esser):
+
+1 kg rosenkohl,
+500 g hackfleisch,
+2-4 knoblauchzehen,
+1 zwiebel,
+4 kleine chilischoten (zerkleinert),
+1 essloeffel thailaendische gelbe currypaste (aus dem asien-laden, die
+  kann man ueberhaupt nicht selbst so gut machen),
+geriebenen kaese zum bestreuen,
+provence-kraeuter,
+cumin,
+tequila
+und etwas olivenoel.
+
+hackfleisch mit kleingehacktem knoblauch, zwiebeln und chili im oel anbraten,
+salzen und mit etwas tequila abloeschen. mit der currypaste verruehren und
+provencalische kraeuter und cumin dazugeben. etwas koecheln lassen.
+in der zwischenzeit den rosenkohl putzen und in bruehe nicht zu weich kochen.
+den gekochten rosenkohl dann in eine feuerfeste form geben, hackfleisch 
+drueber und mit dem kaese bestreuen. das ganze dann im backofen ueberbacken, 
+bis der kaese goldbraun ist.
+
+dazu passt baguette oder fladenbrot.
+
+wurzel
+
+p.s. chili passt eigentlich ueberall dazu :)
+
+-----------------------------------------------------------------------------
+
+
+
+kochbuch (Snuggle,  6. Okt 1996, 21:09:16):
+Irgendwer hat doch mal versprochen, die gesammelten Werke dieser Rubrik
+zusammenzufassen und irgendwo abzulegen.
+Ist das eigentlich mal geschehen, wird es geschehen, ist es ueberhaupt noch
+moeglich oder sind die ganze guten Sachen unwiederbringlich verloren?
+
+hungrig,
+Snuggle - hat damals auf diese Ankuendigung hin aufgehoert, die Rezepte 
+mitzuloggen
+
+n
+(nein das war jetzt kein Skript, sondern fehlt weiter oben hinter ganze) :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: kochbuch (Paracelsus,  6. Okt 1996, 21:17:53):
+~#! rn=Snuggle rt=844628956
+~#! tid=844628956
+Tja, so rein theorettich koennten die natuerlich in der Bibliothek von
+Katzmandu veroeffentlicht werden (Falls ich da jeh fertig werde ;).
+Irgend ein Freiwilliger, der die mal sammelt?
+
+Paracelsus.
+
+-----------------------------------------------------------------------------
+
+
+
+Kochrezepte (Grimmborn,  7. Okt 1996, 14:19:33):
+
+Ich hab mal sowas angefangen, zumindest aeltere Rezepte sind erhalten, neuere
+hab ich verloren und muesste sie aus den expireden Artikeln raussuchen. Sagen
+wir, bis Ende des Monats hab ich das geschafft?
+
+Grimmborn der Atheist
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: rosenkohl (Har,  8. Okt 1996, 13:19:10):
+~#! rn=Wurzel rt=844608116
+~#! tid=844608116
+Rosenkohl, Thai-paste, Provence-Kraueter - echt abgefahren, selten so ein
+internationales Rezept gesehen, (ausser bei uns in der Mensa)
+
+Har (staunt)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: rosenkohl (Wurzel,  8. Okt 1996, 18:11:27):
+~#! rn=Har rt=844773550
+~#! tid=844608116
+hm, ich gebs zu, hatte was von reste-kochen... aber war sehr lecker, und das
+rezept findest du bestimmt in keinem kochbuch :)
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Gaensebraten fuer Doofe, also uns... (Methedras, 20. Dez 1996, 17:15:53):
+                       Huhule
+
+Hier mal wieder ein 'kleines' Rezept von gestern abend, SEHR einfach,
+dafuer recht zeitintensiv. Es handelt sich um einen Gaensebraten
+mit Blaukraut (Rotkohl, Rotkraut) und Semmelknoedeln (wenigstens
+pseudomaessig), zum Nachtisch noch Vanilleeis mit heissen Beeren.
+
+Wir waren 6 Personen, folgendes wird benoetigt:
+
+Gans:      Ungarische oder Polnische Hafermastgans, 4.2 Kilogramm
+           (ca. 7 DM bis 7.50 DM pro Kilo)
+           Salz
+           6 mittelgrosse Zwiebeln
+           4 Aepfel
+           2 Birnen
+
+Blaukraut: 2 Glaeser Rotessa Blaukraut (gibt 8-10 Portionen)
+           3 EL Sonnenblumenoel
+           Salz, schwarzer Pfeffer
+           Thymian, Rosmarin (nicht unbedingt notwendig)
+           2 Lorbeerblaetter
+           7 Nelken (nein, NICHT die Blumen)
+           1/2 Liter Rotwein (von demjenigen, der spaeter auch
+                              getrunken wird, siehe spaeter)
+           1 Becher Schlagsahne
+           3 mittelgrosse Zwiebeln
+           3 Aepfel
+
+Knoedel:   2-3 Fertigpackungen, eine Packung ist normal fuer 5 Knoedel
+           Salz
+           6 Scheiben Toastbrot
+           20 Gramm Butter
+           2 EL Sonnenblumenoel
+
+Eis:       2 Liter Vanilleeis (bitte KEINES fuer 2 Mark das Kilo *grausel*)
+           4 EL Zucker
+           0.1 Liter Wasser
+           1 Paeckchen tiefgefrorene Himbeeren (200 Gramm)
+           1 Paeckchen tiefgefrorene gemischte Beeren (200 Gramm)
+
+
+Ei, nu, nun mal die Vorgehensweise:
+
+Backofen an, auf 180 Grad vorheizen, dann Gans MIT DER BRUST NACH 
+UNTEN auf das Blech legen, schadet uebrigens auch nix wenn der Ofen
+noch nicht heiss ist schon dann die Gans draufzulegen. (Na ja, das
+war jetzt zwar kein Deutsch aber ihr versteht schon)
+Ach so, ja, WICHTIG: Die Gans braucht mindestens 24 Stunden zum
+auftauen, und GLEICH zu anfang des Auftauens die Plastikfolie
+aussenrum und den Plastikbeutel innendrin mit den Innereien
+rausnehmen!!
+Die Gans vor dem Braten gut abwaschen und trockenlegen ;-)
+und mit Salz einreiben, sowohl aussen als auch innen.
+Zwei ganze geschaelte Zwiebeln und 2 Aepfel (so sie denn
+reinpassen) ins Innere der Gans befoerdern.
+Die Gans bleibt 2 Stunden auf dieser Seite liegen, alle 15 
+Minuten was von dem Fett der Gans mit einem Loeffel oder einer
+Kelle nehmen und sie uebergiessen.          
+Nach zwei Stunden umdrehen und von der anderen Seite genauso
+alle 15 Minuten mit dem Fett uebergiessen. Eine Stunde vor
+Schluss die restlichen halbierten Zwiebeln und geviertelten
+Aepfel aufs Blech dazu, genau wie die geachtelten Birnen.
+(aber alles vorher schaelen)
+
+Blaukraut: Oel in groesseren Topf, 2 Zwiebeln ziemlich
+kleingewuerfelt gelb werden lassen und 2 Aepfel genauso...
+Dann den Inhalt des ersten Glases rein inn' Topf und so
+peu a peu mit dem Wein und der Sahne abschmecken. :)
+Also ich hab mindestens 5 mal 'abgeschmeckt' :-))
+Die 2 Lorbeerblaetter und die Nelken schon gleich am
+Anfang dazugeben! Das Blaukraut darf ruhig 3 Stunden
+lang vor sich hintuckern, das schadet gar nuescht.
+Wenig Thymian (vielleicht 1/2 TL) und noch viel weniger
+Rosmarin (vielleicht 1/4 TL) noch mit hineingeben und
+ca. eine Stunde vor Schluss die letzte Zwiebel und den
+letzten Apfel kleingewuerfelt (Zwiebel kleiner als Apfel,
+die Apfelstuecke duerfen noch recht gross sein) dazugeben.
+
+Kochstufe 1 ist empfehlenswert fuer die 3 Stunden, am
+Anfang ein klein bisschen mehr. (1 von 3)
+Ach so, Salz und Pfeffer natuerlich nicht vergessen,
+darf schon ein bisschen mehr als eine Prise rein! :)
+
+
+Knoedel: Toastbrot von Rand befreien, die Wuerfel in
+Butter und Oel in der Pfanne etwas anroesten, dann mit
+den Wuerfeln eines halbes Toasts im Inneren mit dem Inhalt
+der Packungen schoene dicke Knoedel formen, in Salzwasser
+zuerst 5 Min kochen lassen und dann noch 20 min ziehen
+lassen. (oder Anweisung auf Packung befolgen, falls anders-
+artig lautend)
+
+
+Nachtisch: Gefrorene Beeren mit dem Zucker und dem Wasser
+in einen kleinen Topf, langsam warm werden lassen und am
+Schluss nochmals kraeftiger erhitzen... 
+
+
+Dazu einen guten Rotwein trinken, so 1/2 Liter pro Person
+reicht schon. :)) Empfehle Trollinger, Schwarzriesling,
+so etwa 5 bis 7 Maak die Flasche.
+
+Ach so, die Sosse.... Tja, wir mochten es alle fett, wir
+haben direkt das Fett mit den Zwiebel-, Birnen- und 
+Apfelstueckchen so hergenommen, das etwas mit Mondamin
+gebunden wurde vorher.
+
+Wie man es besser macht, berichte ich beim naechsten Mal
+im Januar *grins KreteK*, wenn es wieder heisst:
+
+VORSICHT VERFRESSENES PASSAU!
+
+      Unnnnnnnnnnd tschuess + schoene Weihnacht!
+
+                       Caradhras Doppelzentner
+ 
+
+ 
+
+
+
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Gaensebraten fuer Doofe, also uns... (Kretek, 20. Dez 1996, 17:21:15):
+~#! rn=Methedras rt=851098553 rg=kochrezepte
+~#! tid=851098553
+... Ich als "Mitesser" (nein, mich kann man nicht Ausdruecken!) kann nur
+sagen: Cara^H^H^H^HMethedras mag zwar ein lausiger BWLer sein **grins fies**
+aber kochen kann der Kerl spitzenmaessig! Jedesmal, wenn der Kerl mich
+durchfuettert, bin ich nachher so ca. 5 kg schwerer (OK, LEICHT uebertrieben),
+genial!
+Aber nicht, dass ihr jetzt glaubt, ihr koennt im Januar alle nach Passau
+kommen und mir meine Gans wegessen! Finger weg, verfressenes Pack!
+
+
+       | /  |\  |--  ---  |--  | /
+       |<   |/  |-    |   |-   |<
+       | \  |\  |--   |   |--  | \
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Gaensebraten fuer Doofe, also uns... (Methedras, 20. Dez 1996, 17:24:10):
+~#! rn=Kretek rt=851098875 rg=kochrezepte
+~#! tid=851098553
+Pah, jetzt schleimt er wieder, nur weil er das naechste Mal schon
+wieder was will. :-)
+Aber ich vergass noch etwas:
+20 Minuten, bevor die Gans fertig ist, sie mit kaltem Wasser
+bespritzen und nochmals fuer 10 Min rein bei 200 Grad, dann
+umdrehen und die andere Seite auch mit dem Wasser bespritzen,
+und nochmals 10 Min in die Roehre. Das gibt eine knusprigere
+Haut. *schleck* Sozusagen zum Gaensehaut kriegen, das ganse.
+Aeeeeeeeeh ganze. ;-))
+
+           Caradhras SuperBWLer!
+                     - der erste Berg der kochen kann
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Gaensebraten fuer Doofe, also uns... (Kretek, 20. Dez 1996, 17:25:04):
+~#! rn=Methedras rt=851099050 rg=kochrezepte
+~#! tid=851098553
+Fuer Gans schleim ich immer! Und Spargel machen wir '97 auch wieder tonnen-
+weise, gell?
+
+
+       | /  |\  |--  ---  |--  | /
+       |<   |/  |-    |   |-   |<
+       | \  |\  |--   |   |--  | \
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Gaensebraten fuer Doofe, also uns... (Methedras, 20. Dez 1996, 17:26:10):
+~#! rn=Kretek rt=851099104 rg=kochrezepte
+~#! tid=851098553
+Wenn Du beim schaelen usw. mithilfst gerne.
+
+So, Schulz jetzt mit dem Passau-Replien
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Gaensebraten fuer Doofe, also uns... (Grimmborn, 24. Dez 1996, 09:29:24):
+~#! rn=Methedras rt=851099170 rg=kochrezepte
+~#! tid=851098553
+Ja wie, eine Gans ganz ohne Fuellung?
+Ich sag euch was, Jungs, da entgeht euch locker die Haelfte des Genusses. Und
+des Spasses bei der Zubereitung. Das Hantieren mit einem Fleischwolf ist immer
+wieder erheiternd...
+Ausserdem moechte ich anmerken, dass nach meiner diesjaehrigen Erfahrung
+unbedingt eine frische Gans vorzuziehen ist. Die kostet dann zwar rund
+15DM/Kilo, aber man hat keine Auftauverluste und vom Geschmack her - kein
+Vergleich.
+Weiterhin kann man das aufgefangene Gaensefett direkt aus dem Kuehlschrank auf
+Schwarzbrot tun und eine Priese Salz drauf, so gutes Gaenseschmalz bekommt man
+nicht zu kaufen.
+
+Grimmborn der Atheist geht erstmal einen Karpfen kaufen.
+
+-----------------------------------------------------------------------------
+
+
+
+weihnachtsfruehstueck  (Wurzel, 25. Dez 1996, 15:17:12):
+ein kleines "restefruehstueck" :)
+
+beim kaninchen gestern waren die innereien dabei, darunter auch vier (!) 
+nieren (ist ein biologe unter uns, der dazu was sagen kann?).
+
+die nieren habe ich ueber nacht in milch eingelegt, um den feinen
+uringeschmack
+zu entfernen.
+
+was braucht man noch?
+
+feldsalat
+bacon
+eier
+oel (am besten nussoel)
+milden essig (balsamico)
+pfeffer, salz (nein, ausnahmsweise kein chili :)
+
+in einer beschichteten pfanne zwei streifen bacon erhitzen, bis etwas fett
+austritt. dann die aufgeschnittenen nieren dazu geben und bei mittlerer
+hitze braten. den geputzten und gewaschenen feldsalat mit etwas pfeffer
+bestreuen und leicht oelen. dann in die pfanne geben und kurz anduensten.
+herausnehmen, mit etwas balsamessig betraeufeln und mit gekochten eiern
+garnieren.
+
+leicht, schnell gemacht und sehr lecker :)
+
+die kaninchennieren hat man sicher nicht allzu oft zur hand, aber gaense,
+enten und sonstiges viechzeug, das zu dieser jahreszeit gerne auf den tisch
+kommt, hat meistens auch innereien...
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Gaensebraten fuer Doofe, also uns... (Asmodis, 28. Dez 1996, 17:15:45):
+~#! rn=Methedras rt=851098553 rg=kochrezepte
+~#! tid=851098553
+Hmm, die Passauer kann man bestimmt gut den Berg runterrollen :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Gaensebraten fuer Doofe, also uns... (Kretek, 29. Dez 1996, 23:28:42):
+~#! rn=Asmodis rt=851789745 rg=kochrezepte
+~#! tid=851098553
+Jau. :-)
+
+       | /  |\  |--  ---  |--  | /
+       |<   |/  |-    |   |-   |<
+       | \  |\  |--   |   |--  | \
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Gaensebraten fuer Doofe, also uns... (Caradhras, 31. Dez 1996, 23:45:17):
+~#! rn=Kretek rt=851898522 rg=kochrezepte
+~#! tid=851098553
+Hee, moment, hab noch nich mal 100 Kilogramm erreicht. :)
+Ausserdem, lieber Teefrosch, habe ich die Fuellung weggelassen, weil
+sonst das Rezept noch umfangreicher gewesen waere... und das
+erschreckt doch nur noch mehr Nachmacher...
+
+Und echte Gans so ohne eingefroren, die kostet hier in Passau 20
+DM das Kilo und zB in Nuernberg so 25 bis noch mehr Mark das Kilo.
+Schon bei 20 Mark das Kilo lohnt sich der nur leicht bessere
+Geschmack.
+Aeh, der leicht bessere Geschmack durch den weitaus hoeheren
+Preis nicht mehr.
+
+     Mahlzeit, ich geh jetzt Feuerwerk guggen. :)
+
+     31.12.1996    23:45    GUTEN RUTSCH!
+
+               Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+karniggel ???? (Qitess,  2. Jan 1997, 14:05:52):
+
+Also, bi uns to huus gift dat juemmers n korniggelbroten to wiehnochten.
+
+Ich kann karnickelbraten nicht ausstehen...
+
+QI streichelt immer noch diese unappetitlich niedliche hasenpfote, die immer
+da dran ist...
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: karniggel ???? (Wurzel,  2. Jan 1997, 15:38:46):
+~#! rn=Qitess rt=852210352 rg=kochrezepte
+~#! tid=852210352
+das muss an der zubereitungsart liegen... karnickel ist extrem lecker, wenn
+man es richtig macht :)
+
+wurzel (hatte karnickel zu weihnachten)
+
+-----------------------------------------------------------------------------
+
+
+
+auf vielfache nachfrage... (Wurzel,  2. Jan 1997, 15:40:28):
+der ominoese blumenkohl mit chilikruste, wie man ihn in wilhelmsburg gerne
+isst (und nicht nur dort :)
+
+wir brauchen:
+
+1 mittelgrossen blumenkohl
+0.25 l gemuesebruehe
+1 bund koriander
+4 kleine chilischoten
+3 scheiben toastbrot
+40 g parmesan
+60 g butter
+salz
+cumin
+
+koriander und chili hacken, toastbrot zerbroeseln, parmesan reiben. alles
+mischen und unter die zerlassene butter ruehren, cumin dazu, salzen.
+
+den blumenkohl putzen und in roeschen teilen, in der gemuesebruehe bissfest
+anduensten (ca. 7-8 minuten), herausnehmen und abtropfen lassen.
+
+den blumenkohl in eine gefettete ofenfeste form geben, etwas von der bruehe 
+dazu und die chilimischung drueber verteilen.
+
+das ganze im backofen bei 200 grad ca. 15 minuten backen, fertig.
+
+sehr lecker, sehr vegetarisch und sehr gesund :)
+
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+alte rezepte (Qitess,  3. Jan 1997, 17:51:30):
+
+halloele. 
+
+hat nicht noch jemand alte rezepte aus dieser leckeren rubrik von frueher ?
+
+wenn ja bitte schickt sie mir doch per e-mail an B.Grohmann@tu-bs.de
+
+merci vielmals
+
+QI knurrt der Magen.
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: karniggel ???? (Kretek,  6. Jan 1997, 12:53:44):
+~#! rn=Wurzel rt=852215926 rg=kochrezepte
+~#! tid=852210352
+Yeppyeppyepp!
+Toter Karottenfresser RULEZ! Bei uns gibt's das auch jedes Jahr zu
+Weichnachten
+und Ostern (aber erst, nachdem die ganzen Nester mit den leckeren Eierlikoer-
+Schokoladeneiern ausgeliefert sind!)
+
+
+       | /  |\  |--  ---  |--  | /
+       |<   |/  |-    |   |-   |<
+       | \  |\  |--   |   |--  | \
+
+-----------------------------------------------------------------------------
+
+
+
+Wochenend' mit Sonnenschein... (Caradhras, 15. Jan 1997, 20:35:39):
+                       Huhu Kinners
+
+Mal wieder das Rezept vom letztem Wochenende:
+Schaschlik mit Reis fuer Anfaenger
+(ich weiss, dass andere Schaschlik anders machen, mit Leber und
+Schweinefleisch und ..., aber das ist MEIN Rezept so, das wohl!)
+
+Rezept ist fuer zwei Personen, davon einer Vielfrass (ich) und die
+andere Recht-wenig-frass.
+
+Man nehme:
+
+Schaschlikspiesse (aus Holz, gipps fuer 4 Mark im Supermarkt 100 Stueck)
+zwei Putenschnitzel
+eine rote Paprika (gross)
+eine gruene Paprika (gross)
+Schweinebauch (bei Norma *Schleichwerbung* gibts zB 'nen Gelderlaender
+               (300 Gramm) fuer 8 bis 9 Mark das Kilo, das reicht von
+               der Menge her)
+viele mittelgrosse bis etwas kleinere Zwiebeln (vielleicht 5)
+
+etwas Oel (Sonnenblumen-, Keim- o.ae.) ca. 4 EL
+500 ml passierte Tomaten
+Salz, schwarzer Pfeffer, Paprikapulver (scharf)
+50 ml suesse Sahne
+etwas Ketchup
+2 Tassen Reis (3.5 normale Portionen ;-)
+
+einen Backofen und eine Pfanne (oder 2 Pfannen!) und einen kleinen Topf
+einen Mithelfer (dann gehts exponentiell schneller)
+
+Algorithmus:
+
+(Bei Stufenangaben von Herdplatte beziehe ich mich immer auf Maximum
+ 3, bei Herd auf Maximum 10)
+
+Pfanne heiss machen, Stufe 1.5, das Oel rein.
+Putenschnitzel klopfen und schneiden, in ca. 2 auf 3 cm grosse Stuecke.
+(die Stuecke, die viel zu klein sind, gleich noch kleinerschneiden und
+ in die Pfanne hauen)
+Speck genauso kleinschneiden, nur in etwa halb! so grosse Stuecke
+Paprika etwas kleiner als das Fleisch kleinschneiden und die Zwiebeln
+in Ringe schneiden (duenne, ganze Ringe).
+Den 'Abfall', also die zu kleinen Teile, noch kleinerschneiden und
+auch in die Pfanne rinn.
+
+Dann schoen abwechselnd Speck, Paprika, Fleisch und Zwiebeln auf
+die Spiesse stecken und leicht anbraten auf 'beiden' Seiten in der 
+Pfanne, so zwei mal 5 Minuten. Es sollten so insgesamt etwa 10
+Spiesse sein, grob geschaetzt, davon passen auf alle Faelle 5 in
+eine grosse Pfanne. 
+Backofen anmachen, 5 von 10 oder *gruebel* hm, 170 Grad, etwas von
+den passierten Tomaten aufs Blech und die Spiesse dann auch drauf,
+10 Min auf jeder Seite. Solange die restliche Tomaten in die Pfanne
+tun, salzen, pfeffern, paprikaen, sahnen und ketchupen. Vorher etwas
+von dem kleingeschnittenen angebratenen Zeugs mit etwas Oel in einen
+kleinen Topf, Reis dazuschuetten und NICHT anbrennen lassen. :)
+Kurz anroesten und dann mit 3 Tassen Wasser auffuellen, kurz aufkochen
+lassen und auf Stufe 1 und spaeter 0.5 ziehen lassen. (noch 15 Minuten)
+(kommt auf den Reis an)
+
+5 Min, bevor der Reis feddich is, die Spiesse in die Sauce legen und
+warmhalten. Mjammjam, und wer nur eine Pfanne hat, kann ja die
+restlichen Spiessken noch etwas im Ofen lassen, 5 Tueck sind eeeh
+schnell weg.
+
+Dazu einen kraeftigen Rotwein.
+
+      Guten Appetit wuenscht      Rothorn Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+nudelsosse (Wurzel,  2. Feb 1997, 22:18:08):
+nudelsosse einmal anders
+
+ein kleines experiment von heute, fuer zwei leute mit hunger
+
+fuer die sosse:
+
+1 kleiner wirsing
+1 packung "stueckige" tomaten (kann man aber auch selbst machen)
+knoblauch-kaese (bevorzugt schafskaese vom tuerken um die ecke eingelegt :)
+frischkaese (kann gern auch mit knoblauch sein)
+sahne
+bruehe
+etwas armagnac oder aehnliches (optional :)
+muskat, pfeffer, salz, provencalische kraeuter
+
+sonst noch: nudeln, geriebener kaese (z.b. emmentaler)
+
+den wirsing sehr klein schneiden. in einem topf etwas oel erhitzen und den
+wirsing darin anduensten, mit etwas armagnac abloeschen und heisse bruehe
+zugiessen, salzen, kochen lassen. tomaten dazugeben, weiter kochen lassen. 
+restliche gewuerze dazugeben, sahne einruehren. etwas eindicken lassen, dann
+den kleingebroeckelten kaese dazutun, weiter auf kleiner flamme koecheln
+lassen, dabei gelegentlich umruehren. nach ca. einer halben stunde (nach
+geschmack auch kuerzer oder laenger, je nachdem wie knackig der wirsing noch
+sein soll) gesamtkochzeit sollte die sosse fertig sein.
+
+anrichten mit nudeln, mit etwas geriebenem kaese bestreuen.
+
+guten appetit.
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Blumenkohlsalat (Yendi,  3. Feb 1997, 11:18:45):
+
+Ich habe auf der Party am Samstag einen interessanten Salat gefunden:
+Roher Blumenkohl mit einer Bananensahnesauce mit Zimt.
+
+(Ich haette den Blumenkohl allerdings leicht angeduenstet, der war naemlich
+ doch ein wenig zu streng fuer meinen Geschmack...)
+
+YTY
+
+
+-----------------------------------------------------------------------------
+
+
+
+Sparchel aussm Glas.. (Methedras,  8. Mar 1997, 04:29:05):
+     Und endlich mal was richtig ekelhaftes! (echt gewoehnungsbeduerftig,
+     aber icke mags)
+
+Man nehme:
+1 Glas Spargel (GLAS! nicht Dose)
+jungen Gouda
+Salz, Pfeffer, etwas Paprika
+Kraeuterquak
+Miracle Whip oder sowas in die Ecke
+
+
+Spargel der Laenge nach in 3 Teile schneiden, 4 EL Miracle Whip mit
+etwas mehr Kraeuterquark und den Gewuerzen mischen. Kaese in kleine
+mundgerechte Teile zerschneiden (also bei manchen etwas groesser
+*grins KreteK*) und alles auf 'nen grossen Teller und auffuttern!
+
+Die seltsame Mischung dabei als Dip verwenden, selbstverstaendlich
+ist das ganze fast vollkommen ohne Kalorien!
+Oh, Acrimon, ich glaube, den Satz haste jetzt falsch verstanden.
+*grinsfrech & zwinker*
+
+         tschoe           Bergchen Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Sparchel aussm Glas.. (Methedras,  8. Mar 1997, 04:30:17):
+~#! rn=Methedras rt=857791745 rg=kochrezepte
+~#! tid=857791745
+Es reicht uebrigens fuer 2 Portionen etwa. 
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Sparchel aussm Glas.. (Wurzel,  8. Mar 1997, 15:41:38):
+~#! rn=Methedras rt=857791817 rg=kochrezepte
+~#! tid=857791745
+ekelhaft, in der tat... und sowas kurz vor der richtigen spargelsaison, nein
+danke. aber ich probier es vielleicht mal wenn es frischen spargel gibt :)
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Sparchel aussm Glas.. (Methedras,  8. Mar 1997, 18:28:28):
+~#! rn=Wurzel rt=857832098 rg=kochrezepte
+~#! tid=857791745
+Wenn es frischen Spargel gibt, liebe Mammi, dann gibt es ihn natuerlich
+auf andere Art und Weise! Dazu ist der frische wirklich viiiiiiiel
+zu schade.
+
+Zum Beispiel als:
+Spargel mit Kraeuterbuttersauce
+Spargel mit Petersilienbutterkartoffeln und gebratenem Schinken
+Spargel in Pfannkuchen eingerollt und mit Kaese uebernacken
+Spargelragout
+eingebackener Spargel
+Fleischvariationen mit Spargel
+oder sogar (ieeeeeeeeeh!) als Spargeleis *grausel*
+
+  KreteK! Bei Fuss!! Spargelmachen & helfen! :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Sparchel aussm Glas.. (Kretek, 10. Mar 1997, 15:58:05):
+~#! rn=Methedras rt=857842108 rg=kochrezepte
+~#! tid=857791745
+Spargel? Kochen? Machen? Futtern? 20 kg zunehmen? :-)
+Bin dabei, altes Gebirge! ;-)
+
+
+       | /  |\  |--  ---  |--  | /
+       |<   |/  |-    |   |-   |<
+       | \  |\  |--   |   |--  | \
+
+-----------------------------------------------------------------------------
+
+
+
+Spargel I (Caradhras,  1. Apr 1997, 16:35:16):
+                          Huhu
+
+Und mal wieder das Rezept vom Wochenende:
+Pfannkuchen mit Spargel und Kaese ueberbacken:
+
+Man braucht: (fuer etwa oemm... 10 Pfannkuchen = 2 Portionen bei MIR :))
+
+500 ml Milch
+250 g Mehl
+3 Eier              fuer die Pfannkuchen
+etwas Salz
+ca. 50 ml Oel (Distel-, Sonnenblumen...)
+
+500 Gramm Spargel (frischen! keine Dose oder Glas)
+200 g Butter
+ein Putenschnitzel
+2 EL Oel
+100 Gramm Champignons (nein, auch kein Glas oder Dose!)
+200 ml Sahne
+150 g Emmentaler
+100 g Gouda
+3 gehaeufte EL Mehl
+
+Zuerst Putzenschnitzel klopfen! und in ziemlich kleine Stuecke schneiden,
+so max. 1 cm^2. Die Champignons waschen und genauso kleinschneiden.
+Pfanne erhitzen und (wenn heiss) Pilze und Schnitzel reinwerfen,
+auf rel. hoher Hitze (2.5 von 3 oder 7 von 9) etwa 4 Min drinlassen,
+von allen Seiten anbraten. Dann Pfanne vom Feuer nehmen.
+
+In einem grossen Topf vielleicht hmmm, 1.5 Liter Wasser erhitzen,
+nebenher Spargel schaelen (je dicker der Spargel ist, umso besser!)
+und die Schalen ins gesalzene Wasser werfen. Schalen 5 Min leicht
+koecheln lassen, dann herausnehmen (ach so, Spargel vorher waschen
+waere auch nicht schlecht gewesen :) und den Spargel hinein, ca.
+20 Min koecheln lassen, dann herausnehmen. Spargelwasser NICHT
+weggiessen.
+
+Restliche Butter in (schon wieder 'nem Topf!) erhitzen (nicht zu
+stark), dann die 3 EL Mehl rein und gut kloppen mit dme Schneebesen,
+sonst brennts an. Wenn es langsam Farbe annimmt, dann mit Spargel-
+wasser peu a peu abloeschen, aber nicht zu fluessig machen!
+Das ist dann die Mehlschwitze.
+
+In einem kleinen Topf 120 g Butter erhitzen.
+
+Milch, Mehl, die Eier und das Salz fuer die Pfannkuchen verquirlen,
+Pfanne 2 EL Oel erhitzen und (wenn heiss) etwas davon in die Pfanne
+giessen. Die Pfanne sollte moeglichst ohne Kratzer sein, sonst klebt
+der Pfannkuchen gut fest. :-) Und Teflon-Beschichtung kann auch nix
+schaden.
+
+So, und nu immer einen Spargel in einen Pfannkuchen tun, ein kleines
+bisschen von der Putenschnitzel-Pilz-Mischung, etwas zerlassene
+Butter noch innen rein und etwas von der Mehlschwitze noch dazu,
+dann in eine Kasserolle oder aehnlich feuerfeste Form, ein kleines
+bisschen Sahne noch oben druebergiessen und den Kaese drueberstreuen.
+
+Bei 160 Grad etwa 15 Minuten in den Backofen.
+
+---------------------------------------------------------------------
+
+Wer noch Spargelcremesuppe will:
+Den Rest der Mehlschwitze kurz aufkochen lassen mit der restlichen
+Sahne, Saft einer halben Zitrone noch rein, etwas von dem
+Spargelwasser (falls uebrig), etwas Muskatnuss gerieben drueberstaeuben
+und etwas Geschmacksverstaerker (1/2 TL Gemuesesuppe-Instant oder
+1/2 Bruehwuerfel etc. pp.). Wenn noch existent, restliche Spargelstangen
+in 3 cm lange Stuecken in die Suppe mit rein!
+
+
+
+        Guten Appetit                Rothorn  aeh Gruenfrosch Caradhras 
+
+-----------------------------------------------------------------------------
+
+
+
+AL-Frikadellen (Methedras,  7. Apr 1997, 20:48:06):
+                       Huhu :)
+
+AL-Frikadellen:
+
+1.5 Kilogramm Schweinehack
+etwas Salz, Pfeffer
+5 Eier
+3 Semmeln/Weckle/Broetchen/Schrippen/wasweissich (trocken)
+3/4 Kilo Zwiebeln
+etwas Oel
+100 ml Milch
+100 ml Wasser
+
+Weckle kleinschneiden und einweichen in Milch und Wasser.
+Zwiebeln schaelen und ziemlich kleinschneiden in Wuerfel.
+Hackfleisch in grosse Schuessel, Eier drueberhauen, leicht
+salzen und pfeffern, die eingeweichten Broetchenstuecke drueber
+und die Zwiebeln, dann alles gut vermischen. Und zwar mit den Haenden.
+Also besser vorher waschen. :) Oel in Pfanne heissmachen und huebsche,
+flache Frikadellen aus der Masse formen. Noch etwas nachsalzen und
+nachpfeffern.
+
+              tschoe          Hungerberg Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+Senf-Knoblauchburger (Har,  7. Apr 1997, 20:58:13):
+
+Vvon den Frikos inspiriert:
+Senfburger fuer Gourmets
+
+800 g feinstes Rinderhack ohne BSE
+2 EL Senf
+Salz, Pfeffer
+2 Paprika (rot)
+Salatgurke
+Knoblauchbutter (am besten ohne Kraeuter)
+4 Mega-Burgerbroetchen
+Ketchup
+evt. Salatblatt und feine Zwiebelringe
+
+Paprika vierteln und unter dem Grill des Bakofens grillen, bis
+sich die Haut loest, diese abschaelen.
+Rinderhack mit Senf vermischen, leicht salzen und pfeffern und 4
+duenne Burgerchen brutzeln.
+Die Broetchen aufgeschnitten toasten, mit Knoblauchbutter bestreichen,
+Gurkenscheiben
+und Ketchup drauf, Frikadelle, gehaeuteten Parika und evt. Salat und Zwiebeln-
+Fertig, schmeckt geil!
+
+
+viel Spass,
+
+har
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Senf-Knoblauchburger (Augra,  7. Apr 1997, 21:16:23):
+~#! rn=Har rt=860439493 rg=kochrezepte
+~#! tid=860439493
+Fuer beide Rezepte mit Hack gilt die folgende Frage: 
+Mein groesstes Prob mit dem Zeug ist immer das Garkriegen, denn son buerger
+medium oder gar englisch ist ja wohl nicht das Gelbe. Koennten die veehrten
+Herren Kuechenmeister sich also zu Angaben zur Garzeit herablassen?
+
+Augra, isst immer noch tote Tiere..dabei sind Schweinchen so niedlich:)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Senf-Knoblauchburger (Wurzel,  7. Apr 1997, 22:00:40):
+~#! rn=Augra rt=860440583 rg=kochrezepte
+~#! tid=860439493
+die garzeit haengt von der dicke des fleischklopses und der verwendeten hitze
+ab, das kann man also nicht allgemein sagen. wenn du sie lieber ganz durch
+magst, lieber beim e-herd nur auf stufe 2 (von 3) braten und kurz vor dem
+verkohlen runternehmen (bis zu ca. 1,5 cm dicke klappt das ganz gut, dickere
+schmecken eh meistens matschig :)
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Senf-Knoblauchburger (Methedras,  7. Apr 1997, 22:57:30):
+~#! rn=Wurzel rt=860443240 rg=kochrezepte
+~#! tid=860439493
+Jou, ganz genau, Wurzel... Am Anfang nehme ich auch nur 1.5 von 3 als
+Einstellung, damit die Frikadelle etwas mehr an Festigkeit gewinnt beim
+Umdrehen (da ja die Eierkomponente zu einer hoeheren 'festigkeit' der
+frikadelle sorgt) und spaeter dann ein bisschen hoeher, mehr als 2
+aber wohl nicht, hoechstens mal kurzzeitig (2 min) oder so auf 2.5 zum
+anheizen. Mehr als 2 cm dick habe ich sie auch nicht gemacht bzw wenn,
+dann nicht sehr lange, da sie einfach dann nicht so gut werden.
+
+Lass Dir durchaus Zeit fuer die Frikadellen, so 20 Min pro Pfannen-
+durchgang kann ueberhaupt nix schaden... richtig schoen dunkel halt
+machen, aber keine Briketts, dann sind sie gut. :)
+
+    Bergchen Methedras - gibt seiner Mammi Wurzel uneingeschrankt recht
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Senf-Knoblauchburger (Har,  8. Apr 1997, 08:11:15):
+~#! rn=Augra rt=860440583 rg=kochrezepte
+~#! tid=860439493
+Tja zum garkriegen:
+Erst mal lege ich ja wert auf gutes Rindfleisch und wenn Du 1-2 Steaks selber
+durch den Fleischwolf drehst, kannst Du sie ruhig medium essen :)
+Des weiteren sei gesagt: Je flacher, desto schneller durch :-) Ansonsten kann
+man fuer sowas keine Garzeiten angeben, wie es in den Rezeptheften von "meine
+Familie und Ich"m immer gemacht wird. ICh mache das immer frei nach Schnauze
+
+Har
+
+-----------------------------------------------------------------------------
+
+
+
+Re: AL-Frikadellen (Gralkor,  8. Apr 1997, 13:29:10):
+~#! rn=Methedras rt=860438886 rg=kochrezepte
+~#! tid=860438886
+DA fehlte SALZ!!!!!!!!!!!
+Die schmeckten zu flau.
+
+Gralkor, ebenfalls hungrig
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: AL-Frikadellen (Methedras,  8. Apr 1997, 18:32:06):
+~#! rn=Gralkor rt=860498950 rg=kochrezepte
+~#! tid=860438886
+Salz ist ungesund, mein Kind. :) 
+Weisst Du denn das noch nicht?
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: AL-Frikadellen (Wurzel,  8. Apr 1997, 19:15:25):
+~#! rn=Methedras rt=860517126 rg=kochrezepte
+~#! tid=860438886
+salz ist nicht nur ungesund, sondern auch lebensnotwendig... das ist jetzt
+kein widerspruch :) allgemein gilt: wo salz dran gehoert, sollte man auch
+salz drantun, egal obs im rezept steht oder nicht. wer sich genau an rezepte
+haelt, wird eine enttaeuschung nach der anderen erleben. ein rezept ist
+eigentlich immer nur eine idee, die noch der persoenlichen interpretation
+bedarf, damit es gut wird :)
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: AL-Frikadellen (Engywuck,  8. Apr 1997, 19:18:34):
+~#! rn=Wurzel rt=860519725 rg=kochrezepte
+~#! tid=860438886
+Was in der Praxis bedeutet, dass Chili ran muss? ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: AL-Frikadellen (Wurzel,  8. Apr 1997, 19:23:51):
+~#! rn=Engywuck rt=860519914 rg=kochrezepte
+~#! tid=860438886
+nicht unbedingt :) aber kann durchaus sein...
+nach grimmborns interessanter anregung bin ich gerade dabei, ein rezept zu
+entwickeln, mit dem man chili und spargel miteinander vereinbaren kann. das
+ist bei dem doch eher zarten geschmack von spargel kein allzu leichtes
+unterfangen :) wenn es ein brauchbares resultat gibt, werd ich es natuerlich
+hier veroeffentlichen.
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: AL-Frikadellen (Methedras,  8. Apr 1997, 19:53:31):
+~#! rn=Wurzel rt=860520231 rg=kochrezepte
+~#! tid=860438886
+Da kann ich Dir nur eingeschraenkt recht geben, Wurzel:
+Sicher ist Salz das 'Salz ;-) des Lebens' und auch lebensnotwendig, aber
+fast alle Dinge, die lebensnotwenig sind, sind in zu hohen UND zu
+niedrigen Massen aeh Maszen? *kicher* sehr ungesund. IMHO ist bei
+normaler Ernaehrung ueberreichlich viel an Salz enthalten, wenn auch nicht
+unbedingt an Jod. Wer natuerlich dann Jodelsalz naeme wenn er sonst keines
+nimmt, fuer den sach ich nur: Hau rein, Hein! 
+
+                  Bergchen Methedras
+
+-----------------------------------------------------------------------------
+
+
+
+Brockohli in Aluminiumsosse (Engywuck,  8. Apr 1997, 20:15:20):
+Huhu! 
+Ich will auch mal zeigen, dass ich was vom Kochen verstehe. Folgendes Rezept
+hab ich neulich ausprobiert:
+
+Man braucht nichts weiter als einen schoenen Broccoli - den schneidet man in
+kleine Roeschen, tut ihn mit etwas Wasser in einen Topf, und laesst das ganze
+auf hoechster Heizstufe etwa 2-3 Stunden durchschmoren.
+Ein wenig Schwierigkeiten macht es, die dem Topf entstammende Aluminiumsosse
+auf den Teller zu bugsieren, und nicht auf den Linoleumfussboden - aber ihr
+seid da sicher geschickter als ich.
+Noch ein Vorteil: Das Aroma dieses koestlichen Gerichts haelt sich sicher ein
+bis zwei Wochen in der ganzen Wohnung. Somit hat man recht lange was davon,
+und das fuer so wenig aufwand! Kann ich echt nur empfehlen!
+
+Engy*
+
+P.S.: Ihr solltet unbedingt darauf achten, waehrend des Kochens den Deckel auf
+dem Topf zu lassen, denn wir wollen den Broccoli ja schliesslich nicht
+flambieren ?!
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Brockohli in Aluminiumsosse (Semira,  8. Apr 1997, 20:17:16):
+~#! rn=Engywuck rt=860523320 rg=kochrezepte
+~#! tid=860523320
+ich sag ja jetzt nicht, wie meine kueche aussieht und riecht
+
+*schauder*
+
+Maenner und Kochen...das kann knifflich sein
+
+*knuddels*
+
+Semira
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Brockohli in Aluminiumsosse (Methedras,  8. Apr 1997, 20:24:19):
+~#! rn=Semira rt=860523436 rg=kochrezepte
+~#! tid=860523320
+So etwa wie Frauen und Autofahren? Manche koennens halt trotzdem. :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Spargel I (Wurzel, 27. Apr 1997, 20:58:46):
+~#! rn=Grimmborn rt=859930971 rg=kochrezepte
+~#! tid=859905316
+spargel mit chili (auf anregung von grimmborn...)
+
+spargel und chili passen eigentlich nicht zusammen, weil die wuerze von 
+chili den zarten eigengeschmack von spargel zu erschlagen droht. aber
+mit ein wenig phantasie geht es doch...
+
+wir brauchen:
+
+zuallererst viel zeit, und am besten noch einen helfer.
+
+1 kg frischen spargel
+1 kg frischen spinat
+1 kleinen blumenkohl
+500 g gnocchi (am einfachsten nimmt man vorgefertigte, sonst dauerts...)
+8-10 kleine chilischoten
+geriebenen kaese
+eier
+milch
+butter
+salz
+cumin
+6-8 frische knoblauchzehen
+
+spargel schaelen, spinat putzen, dabei nicht die geduld verlieren :)
+spargel FAST fertig kochen (garzeit haengt von der dicke ab), etwas von
+dem spargelwasser abnehmen und in einen kleinen topf geben. in dem 
+spargelwasser dann den spinat kurz aufkochen, bis er weich und labbrig
+aussieht (wie der aus der packung halt). rausholen, abtropfen lassen.
+in einem zweiten topf den in roeschen zerteilten blumenkohl kochen, danach
+dann die gnocchi im selben wasser. in eine grosse feuerfeste form dann
+zuerst den spinat, dann den spargel einschichten, blumenkohlroeschen und
+gnocchi oben drauf verteilen.
+knoblauch hacken, chili zerkleinern und zusammen mit der butter in den topf
+mit dem aufgehobenen spargelwasser geben. kurz aufkochen, etwas geriebenen
+kaese mit dazu zum andicken. wenn der kaese sich aufgeloest hat (ruehren!),
+die mischung ueber die feuerfeste form verteilen. zwei eier mit milch ver-
+ruehren und ebenfalls darueber geben. das ganze dann mit geriebenem kaese
+bestreuen und im ofen bei 180 grad ca. 20 minuten ueberbacken, bis der kaese
+gut zerlaufen und leicht gebraeunt ist.
+
+dazu schmeckt ein trockener bergstraesser, und im hintergrund ein schoener
+blues (z.b. die neueste von john lee hooker) kommt auch gut :)
+
+wurzel (leckt sich immernoch die lippen)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Spargel I (Wurzel, 27. Apr 1997, 21:01:43):
+~#! rn=Wurzel rt=862167526 rg=kochrezepte
+~#! tid=859905316
+ach ich seh grad, ich hab ganz vergessen den cumin zu erwaehnen... der kommt
+natuerlich dahin, wo auch die chilis hingehen. das salz braucht man haupt-
+saechlich fuer das kochwasser :)
+
+im spargelwasser macht sich uebrigens ein spritzer essig und eine prise
+zucker nicht schlecht :)
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Spargel I (Escubar, 27. Apr 1997, 21:09:31):
+~#! rn=Wurzel rt=862167703 rg=kochrezepte
+~#! tid=859905316
+Auch wenn mich das jetzt als kochtechnisch unbegabt entlarvt, was bitte ist
+Cumin???
+
+Eisbaer Escubar, kann ein bisserl koschen, aber nur das was er kennt ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Spargel I (Wurzel, 27. Apr 1997, 21:11:16):
+~#! rn=Escubar rt=862168171 rg=kochrezepte
+~#! tid=859905316
+wird auch kreuzkuemmel genannt. sieht aus wie kuemmel, ist aber keiner und
+schmeckt auch ganz anders. zu bekommen in guten exotic-laeden :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Spargel I (Augra, 27. Apr 1997, 21:15:00):
+~#! rn=Wurzel rt=862168276 rg=kochrezepte
+~#! tid=859905316
+
+hm, ist das so aehnlich wie der unterschied zwischen anis und sternanis? 
+
+Augra, hat das nie begriffen
+
+-----------------------------------------------------------------------------
+
+
+
+Blaetterteigtaschen (Ronda,  5. Mai 1997, 20:56:34):
+Die Dinger hatte ich auf ner fete bei Semira mit - und irgendwie loechern sie
+mich jetzt alle, wie die Dinger gemacht werden... also gut! (So schwer ists
+wirklich nicht - und besonders aufregend auch nicht - aber bitte! Bekommt doch
+alle Hunger vom Lesen... ts =:) )
+
+Blaetterteigtaschen a la Ronda
+Fuer Creative weil er so drauf besteht, das Rezept zu bekommen, aber dafuer
+hat er auch selbst Schuld, dass alle Masse und Mengen so vage sind...
+Also alle Mengen je nach Gefuehl, reicht dann aber auch fuer eine x-beliebige
+Anzahl munterer Esser :)
+
+Grundrezept:
+Im Prinzip gehts nur drum, Blaetterteig (fertig gekauft oder selbstgemacht)
+schoen auszuwellen, in Dreiecke/Quadrate/Kreise zuschneiden und mit Fuellung
+zu belegen (klar, rezepte fuer Fuellung kommen unter). Dann die Teigtaschen an
+den Rendern mit Eigelb bestreichen und zusammendruecken. Dann das ganze von
+aussen auch nochmal mit Eigelb oder Wasser bestreichen, wer mag, kann auch
+Kaese draufstreuen.
+Die Teigtaschen auf ein Backblech legen (moeglichst mit Backpapier, dann gibts
+nicht so nen Sauerei...).
+Dann das ganze bei 180 Grad in den Ofen, wenns mehrere Bleche sind moeglichst
+mit Umluft und so lang backen, bis die Taschen schoen braun sind.
+Moeglichst bald futtern, je nach Lust und Laune passt ein frischer Weisswein
+oder ein Bier gut dazu.
+
+So, und nun die Fuellungen:
+
+Kaesefuellung;
+Man nehme so ein halbes Paeckchen Butter und loese es in einem Topf auf.
+Dahinein gibt man nen guten Kanten geriebenen Kaese (Gouda, naja... halt so
+300-400 gr.) und loest den unter Ruehren auf. Dann nimmt man den Topf vom
+Feuer und ruehrt noch ein Ei rein. Je nach Geschmack kann man noch Muskat,
+Pfeffer, Salz, Gruenzeug (Schnittlauch, Petersilie etc.) oder nen Schuss
+Zitrone rein tun.
+
+Schinkenfuellung:
+Kleine Zwiebelwuerfel in der Pfanne mit etwas Butter anbraten,
+kleingeschnittenen gekochten Schinken reinruehren und mitbraten, damit der
+Geschmack staerker wird. Abschmecken wieder je nach Geschmack mit Muskat,
+Kuemmel, Gruenzeug, einem Schlag Schmand oder nem kraeftigen Schuss Sahne
+(einkochen lassen).
+
+Und Njala hat mich dran erinnert, dass ich fuer die Koelner Fete auch welche
+mit Pilzfuellung gemacht hatte:
+Kleine Zwiebelwuerfel in der Pfanne mit etwas Butter anbraten. Dann geputzte
+Pilze (Champignons z.B.) je nach Groesse halbieren/vierteln und ebenfalls
+anbraten. Die Wuerzerei geschieht wie oben - je nach Phantasie und Geschmack -
+wenn keiner zuschaut, kann man auch gut mit Instantbruehe wuerzen, dann aber
+noch einen Schuss Wasser dazu (nicht genau genug? Na, genau 121,231 ml Wasser
+=:) ).
+
+Also einfach Mut zur Luecke, die Dinger gelingen frei Schnauze" sowieso am
+Besten, einfach mal probieren. Die Pilz- und die Schinkenfuellung eignen sich
+mit etwas mehr Fluessigkeit uebrigens auch gut als Spaghettisauce.
+Guten Appetit, denkt an mich (ich komm auch gern als Betatester vorbei) - und
+gern natuerlich auch Verfeinerungen oder neue Ideen an mich zurueck =:)
+
+                                         Ronda
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Blaetterteigtaschen (Wurzel,  5. Mai 1997, 21:01:16):
+~#! rn=Ronda rt=862858594 rg=kochrezepte
+~#! tid=862858594
+also die kaesefuellung...
+das ist wohl was fuer koerperliche schwerstarbeiter, bei studenten duerfte
+das (in gewissen mengen) zur notwendigkeit weiter geschnittener jeans fuehren.
+ist also zwar wohl lecker, aber insgeheim kostenintensiv :)
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Kaesebroetchen (Murkes,  6. Mai 1997, 10:38:22):
+Hi Leute,
+
+ich suche ein Rezept fuer Kaesebroetchen, also diese leckeren knusprigen mit
+Kaese ueberbackenen Broetchen, die es hier bei uns ueberall in den Baeckereien
+gibt. Ich hab' zwar ein paar ganz brauchbare Broetchenrezepte, aber so ein
+echtes Kaesebroetchenrezept ist halt nicht dabei. Es reicht halt auch nicht
+einfach nur Kaese draufzulegen.
+Wer von Euch ist Baecker und kann mir helfen?
+
+Murkes, dem seine Kaesebroetchen nicht gut genug schmecken :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kaesebroetchen (Wurzel,  6. Mai 1997, 20:24:02):
+~#! rn=Murkes rt=862907902 rg=kochrezepte
+~#! tid=862907902
+also, ich hatte mal gute erfolge damit, geriebenen kaese direkt in den teig
+mit einzukneten.
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Kaesebroetchen (Asmodis,  6. Mai 1997, 22:47:05):
+~#! rn=Wurzel rt=862943042 rg=kochrezepte
+~#! tid=862907902
+Scheinbar ernaehrt sich Wurzel nur von Chili und Kaese :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Kaesebroetchen (Methedras,  9. Mai 1997, 19:14:19):
+~#! rn=Asmodis rt=862951625 rg=kochrezepte
+~#! tid=862907902
+Moment, Teufelchen, Du hast den restlichen Brotteig vergessen.
+
+-----------------------------------------------------------------------------
+
+
+
+Spargelrisotto (Engywuck, 22. Mai 1997, 11:17:23):
+Huhu!
+Tja, da faehrt man doch einfach mal am Wochenende nach Berlin, stoebert 
+in einem Buchladen und trifft ein kleines (wohlfeiles) Kochbuch. Das 
+erste Rezept, dass ich daraus ausprobierte, moechte ich Euch natuerlich 
+nicht vorenthalten, denn es hat doch eigentlich schon ein bisschen gut 
+geschmeckt. Und los gehts...
+
+Spargelrisotto mit gruenen Erbsen
+=================================
+(Mengenangaben fuer 2 Personen oder 1 Grimmborn)
+
+500 g weisser Spargel
+0.5 l (instant-)Gemuesebruehe
+100 g TK-Erbsen
+1 Schalotte (d.h. ne kleine Zwiebel ;)
+1 EL Butter/Margarine
+150 g Rundkorn- oder spezieller Risottoreis
+100 g Sahne
+50 g frisch geriebener Parmesan
+Salz
+frisch gemahlener Pfeffer
+
+Der Spargel schaelen und in grobe Stuecke teilen. Die Gemuesebruehe 
+aufkochen, die Spargelstuecke einlegen und in 10-15 min garen. 
+Herausheben. Die Erbsen kurz in die heisse bruehe geben. Herausheben und 
+mit dem Spargel beiseite stellen. Die Bruehe langsam wieder zum Kochen 
+bringen.
+
+Die Schalotte schaelen und in feine Wuerfel schneiden. Die Butter in 
+einem Topf mit schwerem Boden oder einer tiefen Pfanne bei guter 
+Mittelhitze zerlaufen lassen und die Schalotte darin anschwitzen. Den 
+Reis zufuegen und unter Ruehren mitschwitzen, bis er ebenfalls leicht 
+glasig und ganz mit Fett ueberzogen ist.
+
+Einen Schoepfloeffel nach dem anderen von der heissen Bruehe zufuegen, 
+dabei staendig ruehren. Erst wenn alle Fluessigkeit vom Reis aufgenommen 
+ist, die naechste Menge zugiessen. 
+
+Sobald der Reis fast gar ist, die Sahne zugeben und den Spargel mit den 
+Erbsen unterheben. Nach kurzem Kochen den Kaese unterruehren, salzen, 
+pfeffern und sofort anrichten.
+
+Praedikat: Besonders empfehlenswert!
+
+
+Guten Appetit und Z'par Servu
+
+           YTEdA
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Spargelrisotto (Har, 22. Mai 1997, 15:21:51):
+~#! rn=Engywuck rt=864292643 rg=kochrezepte
+~#! tid=864292643
+Mein Tip:
+Sahne weglassen, so was hat in einem Risotto nichts zu suchen ,
+dafuer aber viel viel mehr Parmesan
+
+Har
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Spargelrisotto (Asmodis, 22. Mai 1997, 15:54:54):
+~#! rn=Har rt=864307311 rg=kochrezepte
+~#! tid=864292643
+Hmm, du hast wohl zuviel Alfredissimo geguckt, der Biolek macht auch
+an fast alle seine Gerichte Parmesan :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Spargelrisotto (Har, 22. Mai 1997, 16:34:19):
+~#! rn=Asmodis rt=864309294 rg=kochrezepte
+~#! tid=864292643
+Ich glaube ich bin fast so Parmesansuechtig wie der Biolek, habe aber noch
+keine elektrische Parmesanreibe wie er (lleider). Im Uebrigen habe ich die
+Erfahrung gemacht, dass ein leidlich guter parmesankaese am Stueck gekauft in
+der Regel _billiger_ ist als diese geriebene Hartkaesepampe, die in Tuetchen
+verpackt in der Nudeleck von Supermaerkten als Parmesankaese verkauft wird.
+
+Har (findet nicht alles Kaese)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Spargelrisotto (Aramos, 24. Mai 1997, 18:07:13):
+~#! rn=Har rt=864311659 rg=kochrezepte
+~#! tid=864292643
+Also wenn hier so viele Leute Parmesan moegen:
+
+Wer von euch hat denn schon mal Sbrinz probiert? :)
+
+Tschau,
+           Aramos (schleckt sich nach manchem Kaese die Finger)
+
+-----------------------------------------------------------------------------
+
+
+
+pikantes Gefluegelgulasch (Garfield,  3. Jun 1997, 13:59:25):
+
+Leckeres Gefluegelgulasch (fuer 3-4 Personen)
+
+500g Haehnchenbrust/Putenschnitzel
+3 Paprika
+2 Zwiebeln
+2 Zehen Knoblauch
+
+200 ml Ketchup
+120 ml Apfelsaft
+je 1 TL Curry, Pfeffer, Thymian
+80 g Rosinen
+150 g Erdnuesse (Dose)
+*****************************************************************
+
+Ketchup, Apfelsaft und Gewuerze mischen.
+Paprika in Streifen mit gehackten Zwiebeln und Knoblauch in Oel
+anbraten und gut duensten. Gemuese aus der Pfanne nehmen und in Stuecke
+geschnittenes Fleisch darin anbraten. (nur kurz)
+Ketchupgemisch und Rosinen dazugeben, koecheln lassen.
+Zum Schluss Gemuese und Erdnuesse unterheben und geniessen.
+*************************************************************************
+
+Schmeckt supergeil.
+
+Testen!
+
+Garfield
+***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Spaghettisosse! (Caradhras, 29. Jun 1997, 00:19:36):
+                 Huhu Kinnings
+
+Anbei ein leckeres Spaghettirezept.
+Wenn man lange Zeit hat zum koecheln lassen, schmeckt es besser, fuer
+welche, die auf kurze Zeit planen (insgesamt 20 Minuten fuer alles)
+stehen die Angaben in [].
+
+Man nehme fuer 8 'kleine' Portionen, 6 normale (fuer mich) oder
+4 grosse Portionen:
+
+1 Kilogramm Spaghetti
+
+6 EL Olivenoel
+300 - 400 Gramm Kochschinken (reicht einer von Aldi/Norma...)
+ (200 g fuer Wenig-Fleisch-Moeger)
+2.5 Becher Schlachsahne (also 500 ml) [1.5 Becher]
+1 Becher Creme fraiche (zu 200 ml)
+Salz, Pfeffer
+200 Gramm Schafskaese
+150 - 200 Gramm Gorgonzola [100 Gramm] 
+4 bis 8 Zehen Knoblauch
+
+Optional 150 Gramm Champignons (sehr gut) oder 1 Putenschnitzel (fuer
+Carnivore)
+
+
+Grooooooooossen Topf mit viiiiiel Wasser aufsetzen (2.5 Liter mind.),
+Wasser zum kochen bringen, salzen und 2 EL Olivenoel rein.
+Waehrenddessen Schinken 2 mal quer durchschneiden und dann in Streifen
+schneiden, im restlichen Oel 5 Minuten lang stark anbraten, Knoblauch ganz 
+kleinschneiden oder auspressen und mit dem Schinken anbraten.
+
+Schafskaese und Gorgonzola in Wuerfel schneiden, dazuwerfen und die Schlach-
+sahne, die Creme fraiche dazukippen, herunterschalten auf 1 von 3 oder
+3 von 10 stellen. Parallel muesste das Wasser kochen, Spaghetti rein und
+nach 8 bis 10 Min (al dente) abgiessen und mit kaltem Wasser kurz abschrecken.
+Nein, davorstellen reicht nicht zum abschrecken, obwohl ihr Mudder seid.
+
+Mischung mit Salz und Pfeffer abschmecken.
+Die Spaghettisosse 5 Min vor Ende auf 0.5 stellen von 3 oder 1-2 von 10.
+Dazu passt gut ein Weisswein, aber ja kein suesser. :) Aber der Rotwein
+vorhin dazu schmeckte auch nicht schlecht.
+
+         Prost Mahlzeit!           Bergchen Rothorn Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Spaghettisosse! (Atoz, 30. Jun 1997, 20:56:09):
+~#! rn=Caradhras rt=867536376 rg=kochrezepte
+~#! tid=867536376
+Caralein ist ja ganz lecker Dein Rezept, aber ich habe das heute schon mal
+irgendwo gelesen ;)))
+tschau Atoz - nicht mehr wissend, in welchem Mud er gerade Zeitung liest
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Spaghettisosse! (Caradhras,  1. Jul 1997, 11:10:17):
+~#! rn=Atoz rt=867696969 rg=kochrezepte
+~#! tid=867536376
+Tja, wenn Du einmal im Jahrhundert auch in AnderLand bist. :)
+
+-----------------------------------------------------------------------------
+
+
+
+Blaetterteich usw. (Caradhras,  6. Jul 1997, 16:39:52):
+                   Guggug
+
+Letzte Woche habe ich mal wieder Kneipenwirt im Wohnheim gemacht,
+dabei gabs Blaetterteig gefuellt und Pastetchen (ragout fin), auch
+gefuellt natuerlich.                  
+
+Folgendes Rezept kam dabei (pi mal daeumle raus):
+
+Gefrorener Blaettteig (ca. 400 g., reichen fuer 12 Probiererle)
+Koeniginnen-Pastete (alias Ragout Fin, gibts fuer knapp 3 Maak 6 Stueck)  
+
+Fuellungen fuer Blaetterteig:
+
+Spinat: Gefrorenen Blattspinat auftauen, salzen, pfeffern, in einer
+        Pfanne 1 kleingeschnittene Zehe Knoblauch anbraten mit 2
+        gehackten Schalotten, Spinat dann mit erhitzen und mit etwas
+        Sahne (wenige EL) umruehren, etwas Muskatnuss drueberstaeuben
+
+Hackfleisch: Hackfleisch mit Zwiebeln und 1 Paprika anbraten, wuerzen
+             mit etwas Cayenne, Chili, scharfem Paprika, Salz, Pfeffer
+
+Schinken/Kaese: 300 Gramm Schinken (ca 12 Scheiben, Hinterkochschinken)
+                und 300 Gramm Schafskaese
+
+Scheiben Blaetterteig ausrollen, halbieren, 3 EL Fuellung drauf und 
+einschlagen. Mit Eigelb bepinseln (Eigelb ist das Pattex des Kochens :)
+und fuer 15 Min in den Backofen bei 180 Grad aufbacken.
+
+Pastetenfuellung:
+Suppenhuhn mit Salz und 1/2 kleingehackten Bund Petersilie fuer
+2 Stunden kochen lassen (ganz bedeckt), rausnehmen, abkuehlen lassen,
+Fleisch von Knochen loesen und etwa in 2 mal 2 cm grosse Stuecke
+'rupfen'. Schalotten und Zwiebeln gelblich anbraten in Oel, klein-
+geschnittene Champignons mit rein, genauso eine Packung tiefge-
+kuehlter Erbsen (ca. 400 gramm), dann mit 1 Becher :) Sahne abloeschen
+und 2 Becher Creme double, Creme fraiche rein, aufkochen lassen mit
+dem Saft einer halben Zitrone und etwas Geschmacksverstaerker (Suppen-
+wuerfel, gibts auch vegetarisch ohne Rind) und etwas Worcester-Sauce.
+Hm, irgendwas hab ich doch noch vergessen. Ach so, salzen, pfeffern
+natuerlich nicht vergessen, dann in die Pasteten einfuellen (Deckel
+vorher rausmachen) und bei 150 Grad fuer 5 Min in den Backofen.
+
+Wers mag: Die Fuellung mit 'nem Schuss Weisswein verfeinern, den
+Rest in einen selbst fuellen. :)
+
+Das Suppenhuhn-Wasser nicht wegschuetten, damit kann man noch eine
+leckere Zwiebelsuppe machen mit Kaese ueberbacken. *lechz*
+
+     *wink froehlich*
+
+               Bergchen Caradhras
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Blaetterteich usw. (Lug,  7. Jul 1997, 01:32:54):
+~#! rn=Caradhras rt=868199992 rg=kochrezepte
+~#! tid=868199992
+Und wo bleibt das mir gewidmete Rezept Cara? ;)
+Nichts vergessend
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Blaetterteich usw. (Grimmborn,  7. Jul 1997, 15:43:54):
+~#! rn=Lug rt=868231974 rg=kochrezepte
+~#! tid=868199992
+Danke, lieber nicht, uns ist schon schlecht...
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Blaetterteich usw. (Caradhras,  7. Jul 1997, 18:37:12):
+~#! rn=Lug rt=868231974 rg=kochrezepte
+~#! tid=868199992
+Oeh, oh... hmmm. :) Stimmt... Muss ich dann nach der naechsten
+Torte schreiben, Lugerl...
+Die letzte Torte ist schon wieder wechgefuttert. *happs*
+
+         Caradhras - der erste Berg, der backen kann (oder so)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Blaetterteich usw. (Lug,  8. Jul 1997, 01:28:52):
+~#! rn=Grimmborn rt=868283034 rg=kochrezepte
+~#! tid=868199992
+Hm Grimmi,
+
+apropos schlecht, da haette ich noch einen Racke Rauchzart im Keller
+vergraben, den koennte ich Dir ja mal kredenzen ;)
+
+Hoe hoe
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Blaetterteich usw. (Grimmborn,  8. Jul 1997, 10:52:26):
+~#! rn=Lug rt=868318132 rg=kochrezepte
+~#! tid=868199992
+Also, Antipathie schoen und gut, aber dass mir hier der blanke Hass entgegen
+schlaegt macht mich ja schon irgendwie betroffen...
+
+Grimmborn der Atheist hat tatsaechlich mal Racke Rauchzart probiert. Und wills
+auch nie, nie, nie wieder tun.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Blaetterteich usw. (Lug,  9. Jul 1997, 01:58:57):
+~#! rn=Grimmborn rt=868351946 rg=kochrezepte
+~#! tid=868199992
+Moin,
+
+na gut. Ich will nicht vor einem internationalem Tribunal angeklagt werden.
+Darum werfe ich den Racke weg. Wie waers mit Old Smuggler?
+
+Pervers kichernd
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Blaetterteich usw. (Kretek, 11. Jul 1997, 13:02:53):
+~#! rn=Grimmborn rt=868351946 rg=kochrezepte
+~#! tid=868199992
+Auf die Gefahr hin, dass ich mich jetzt oute: Was ist "Rache Rauchzart"?
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Blaetterteich usw. (Grimmborn, 11. Jul 1997, 13:15:28):
+~#! rn=Kretek rt=868618973 rg=kochrezepte
+~#! tid=868199992
+"Rache Rauchzart" triffts ziemlich gut...
+"Racke Rauchzart" heisst ein alkoholisches Getraenk, dass sich selber als
+Whisky bezeichnet. Es ist fast so schlimm, ekelhaft und unberechtigt wie
+Bourbon (also Jack Daniels, Jim Beam und solche Giftwaesser...).
+
+Nein ich will keinen "mein Whiskey ist besser als Deiner" - Krieg anfangen.
+Zumal ich _weiss_, dass meine die besten sind.
+Und Bourbons koennen ja an und fuer sich ein leckeres Gesoeff sein (ich waere
+allerdings bereit, auch das zu bestreiten), mit einem gewissen edlen Schnaps
+aus gemaelzter Gerste hat dieser Maisbrand aber auch gar nichts zu tun.
+
+Grimmborn der Atheist
+
+-----------------------------------------------------------------------------
+
+
+
+Quiche (Caradhras, 11. Jul 1997, 16:30:45):
+Und hier das - gerade eben zugeschickte - Rezept an mich von einer
+mitfuehlenden jungen Dame, ich moechte es euch nicht vorenthalten:
+
+-----------------------------------------------------------------
+hier ganz kurz und ohne Einzelheiten:
+
+1. Muerbeteig (Sorte 1 zu 1, also 1 Teil Fett, 1 Teil Mehl, 1 Ei)
+
+2. fetten Speck wuerfeln und auslassen. Lauch, Zwiebeln oder sonstiges
+Gemuese waschen und schnibbeln. Im Fett des Specks duensten. Mit
+Salz und Pfeffer abschmecken. Bei Zwiebelgerichten nie den Kuemmel
+(alternativ Fenchel oder Thymian) vergessen, sonst pupsts! Nach dem
+Duensten den Saft mit Kartoffelmehl binden (moeglicherweise in Weiss-
+wein statt Wasser anloesen, schmeckt besser).
+
+3. flache Auflaufform oder Tortenboden-Form mit dem Teig auslegen,
+einen Rand formen und den Boden mit der Gabel einpieken.
+4. Das Gemuese drauf, die Sauce dazu und (Umluft) bei 160 Grad C etwa
+40 Min. backen, bis die Sauce stockt.
+
+Ich hoffe, dass es schmeckt.
+------------------------------------------------------------------
+
+  Ich auch :)            Hungerbergchen Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Blaetterteich usw. (Yendi, 14. Jul 1997, 11:44:05):
+~#! rn=Grimmborn rt=868619728 rg=kochrezepte
+~#! tid=868199992
+
+
+Hmmmja, ich trinke auch ganz gerne einen alten Glen*, aber dabei fallen mir
+immer die Gas-Chromatographien ein, die ich mal an einer Laborwand habe
+haengen sehen:
+Bei den Whisk(e)ies gab's jede Menge Fuseloel-Zacken, bei gutem Wodka (frag
+mich jetzt nicht nach der Marke) im Prinzip nur einen Ethanol-Peak mit ein
+paar Geschmacks-Huegelchen drumrum -> bessere Vertraeglichkeit.
+
+(Jajaa, ich weiss, immer nur ein Glas, schoen gemaechlich, dann ist das mit
+ der Vertraeglichkeit gar kein Problem -- ich mein' ja auch nur...)
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Blaetterteich usw. (Grimmborn, 14. Jul 1997, 12:01:33):
+~#! rn=Yendi rt=868873445 rg=kochrezepte
+~#! tid=868199992
+Huch, wer hat denn was anderes behauptet? Whiskey, vor allem, wenn er aelter
+als so 20 Jahre ist (altert nicht mehr, wenn er in der Flasche ist, es gilt
+also nur die Lagerzeit im Fass!) enthaelt ziemlich viel, was nicht so gesund
+ist, nicht zuletzt Ethanol. Wodka dagegen enthaelt idealerweise genau zwei
+Stoffe: Wasser und Ethanol. Die Geschmackspeaks gehoeren da eigentlich schon
+gar nicht rein, die sind eine Modeentscheidung.
+Dafuer gibts dann jede Menge Leute, die sich an Wodka besaufen, waehrend der
+Anteil der Leute, die sich an wirklich gutem Whiskey betrinken, eher gering
+sein duerfte. Naja, und wer J.W. oder son Zeuch trinkt ist eh selber schuld,
+der hat zu den ungesunden Inhaltsstoffen auch noch einen ungesunden Geschmack.
+
+Ach so, ohne was verniedlichen zu wollen: Hast Du mal ein GC
+(Gaschromatogramm) von normaler Innenstadtluft gesehen? Und ich persoenlich
+nippe lieber an einem kleinen Glaeschen als dass ich eine Wanderung in der
+Koelner City zur rushhour mache...
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Blaetterteich usw. (Lug, 14. Jul 1997, 19:18:46):
+~#! rn=Grimmborn rt=868874493 rg=kochrezepte
+~#! tid=868199992
+HM,
+
+also manchmal kann man auch zuviel Malt trinken. Ich denke da an die paar
+Glaeschen Highland Park vom letzten WE.
+
+;)
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Blaetterteich usw. (Jimdigriz, 14. Jul 1997, 22:55:02):
+~#! rn=Grimmborn rt=868874493 rg=kochrezepte
+~#! tid=868199992
+
+Hi Grimmborn,
+ Du hast Jehova gesagt ;-) :
+
+>Huch, wer hat denn was anderes behauptet? Whiskey, vor allem, wenn er aelter
+                                                ^^
+
+und 
+Anteil der Leute, die sich an wirklich gutem Whiskey betrinken, eher gering
+                                                  ^^
+
+Als Kenner solltest Du eigentlich wissen, dass sich Scotch
+ "Whisky" schreibt (gaelisch fuer "Water of Life"),
+ der "Whiskey" (mit e) ist naemlich Bourbon, ein Getraenk,
+ dass ich persoenlich nicht in die Naehe von "Whisky"
+ ruecken wuerde. (das ist nicht qualitativ gemeint, es ist einfach
+ ein anderes Getraenk :-}).
+
+grosse Steine, kleine Steine, flache Steine, spitze Steine ...,
+ Jim DiGriz (mag auch Whisky, Tip des Tages: Benromach 17 Years, 
+  Glenhaven independed botteling, 63% cask strength, jaja Angeber ich weiss)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: Blaetterteich usw. (Lug, 14. Jul 1997, 23:23:20):
+~#! rn=Jimdigriz rt=868913702 rg=kochrezepte
+~#! tid=868199992
+Jau Angeber! ;)
+
+Also, 
+
+sie Schotten schreiben es ohne e, aber die Iren m.E. mit e. Ich trink zwar
+lieber schottischen Malt, aber benutz die Schreibung mit e.
+
+Whiskey ist nicht gaelisch, sondern Englisch. Es ist aber tatsaechlich ein
+Lehnwort, von uisge beatha (ja nach Zeit und ort andere Schreibungen
+moeglich), was eine Calque auf Aqua vitae sein koennte (wer was besseres
+weiss, der sage es. ;)
+
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: Blaetterteich usw. (Lug, 14. Jul 1997, 23:51:30):
+~#! rn=Jimdigriz rt=868913702 rg=kochrezepte
+~#! tid=868199992
+Nochmal:
+
+Also das DIL (Dictonary of the Irish Language) gibt:
+
+uisce m. (io-Stamm) 'water' ... with defining adj., or gen.:
+
+uisce betha(d) whiskey  [Man beachte das ir. -e- ;)]
+
+und kann Accalam na senorach "Das Gespraech der Alten" zitieren: d.h. ca. 1200
+
+So ;)
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Re^11: Blaetterteich usw. (Pampers, 15. Jul 1997, 08:50:37):
+~#! rn=Lug rt=868917090 rg=kochrezepte
+~#! tid=868199992
+Ich seid echt alle unglaublich toll gebildet.
+Boah ey. 
+
+Pampers. Intellektelle Scheisse.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^12: Blaetterteich usw. (Grimmborn, 15. Jul 1997, 09:07:04):
+~#! rn=Pampers rt=868949437 rg=kochrezepte
+~#! tid=868199992
+Tststs, was der Bauer nicht kennt, verurteilt er.
+Sieh mal, Pampers: Es gibt Leute, die wirklich klug und gebildet sind. Goenn
+es ihnen und lass ihnen ihren Spass. Wir goennen Dir ja auch Deine
+stumpfsinnige Borniertheit und lassen Dir Deinen Spass dabei. Watt dem einen
+sing Uhl...
+
+Grimmborn der Intellektuelle. Mit Brille!
+
+-----------------------------------------------------------------------------
+
+
+
+Re^13: Blaetterteich usw. (Hardil, 15. Jul 1997, 13:45:49):
+~#! rn=Grimmborn rt=868950424 rg=kochrezepte
+~#! tid=868199992
+
+Lieber Teefrosch,
+
+nenn Pampers mal auf einem Stammtisch oder einem Mud-Treffen intellektuell.
+Und Du wirst sehen, was dabei herauskommt.
+
+In Erinnerungen schwelgend,
+
+-Hardil. Will dann dabeisein. :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^14: Blaetterteich usw. (Grimmborn, 15. Jul 1997, 13:49:11):
+~#! rn=Hardil rt=868967149 rg=kochrezepte
+~#! tid=868199992
+Wieso sollte ich? Der hat doch gar keine Brille?
+
+Grimmborn der Atheist kann genau unterscheiden, ob jemand intellektuell ist
+oder nicht.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^15: Blaetterteich usw. (Wurzel, 16. Jul 1997, 20:01:56):
+~#! rn=Grimmborn rt=868967351 rg=kochrezepte
+~#! tid=868199992
+leute, ihr verhunzt hier die einzige rubrik in die ich (selten genug) ernst
+gemeinte artikel poste. nur so als hinweis, dafuer gibts doch ->schmarrn
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Longdrink a la Knuddeldrache (Hardil, 21. Jul 1997, 09:20:24):
+
+Da befindet man sich ganz froehlich auf einer Geburtstagsfete in Bielefeld,
+ahnt nichts schlimmes, und als man darueber nachdenkt, ob man Gast3 nicht ein
+Wegescript zum Klo mitgeben sollte, outet sich ploetzlich der mir
+gegenuebersitzende Gast6 als...
+Ancalagon, der Knuddeldrache.
+Sowas aber auch.
+Es wurde dann noch ein netter Abend (zwei Wurstseher und ein Wurstmagier
+(Throin war auch noch anwesend, wie ich dann erfuhr -> Gast9)), doch den
+ruehmlichen Hoehpunkt muss ich noch schildern (damit auch die Rubrik richtig
+bleibt):
+
+Longdrink a la Knuddeldrache
+
+Man nehme:
+
+Eine kleine Flasche eines westfaelischen Biergetraenks (Marke nebensaechlich,
+schmeckt eh nicht und ist laut Ancalagon nur zum Mischen geeignet), oeffne sie
+und fuelle damit ein Longdrinkglas etwa bis zur Haelfte.
+Dann nehme man dem naechsten herumlaufenden dreijaehrigen Seppel die Flasche
+Fanta Pink Grapefruit weg, fuelle damit das Glas auf und schaue sich an, wie
+das ganze eine extrem ungesunde Farbe annimmt.
+Nicht geschuettelt, nicht geruehrt, direkt zu trinken.
+
+Ancalagons freundliche Aufforderung, mal zu probieren, habe ich dann
+abgelehnt. :)
+
+-Hardil.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Longdrink a la Knuddeldrache (Ancalagon, 25. Jul 1997, 15:54:35):
+~#! rn=Hardil rt=869469624 rg=kochrezepte
+~#! tid=869469624
+Knuddels!
+Naja, war'n Versuch wert.... Aber ich werde wohl auch beim Radler bleiben.
+Sooo toll wars dann doch nicht..... :)
+Knuddelndsterweise,
+                                 Ancalagon
+
+-----------------------------------------------------------------------------
+
+
+
+Magier am Spiess (Asmodis, 18. Aug 1997, 20:03:20):
+Rechtzeitig zur MUd-Party hier das Rezept fuer Magier am Spiess:
+
+Man Braucht:
+             Einen MG-Magier (moeglichst unbeliebt),
+             4 Knoblauchzehen,
+             Oel (kein Babyoel),
+             Zwiebeln,
+             Tomaten,
+             ein Apfel,
+             Gewuerze
+
+Zubereitung: - Erstmal muss man den Magier totschlagen, sonst gibt das
+               Probleme beim grillen.
+             - Dann streicht man ihn grosszuegig mit dem Oel ein,
+               Die Knoblauchzehen, Zwiebeln und Tomaten werden 
+               kleingewuerfelt, je nach Geschmack gewuerzt und in den 
+               Rachen gestopft (die andere Seite ist vielleicht etwas 
+               unappetitlich), zum Schluss wird der Mund mit dem Apfel 
+               zugestopft.
+             - Dann nur noch das Feuer anheizen, den Magier auf den Spiess 
+               stecken und goldbraun grillen.
+
+Guten Appetit!
+
+P.S.: Dazu passt ein Gatsbyheimer Wirbelwind oder ein Boingischer
+Steinbeissertropfen
+ 
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Magier am Spiess (Jimdigriz, 19. Aug 1997, 18:07:24):
+~#! rn=Asmodis rt=871927400 rg=kochrezepte
+~#! tid=871927400
+Hi Asmodis,
+
+Da kann ich nur sagen, Du hast was wichtiges vergessen,
+oder *wuerg*
+
+Man muss den Magier natuerlich vor dem Stopfen _ausnehmen_.
+Dann ist das auch nicht mehr so unappetitlich mit der 
+anderen Seite. 
+Die Gedaerme kann man ja im Aasee aufloesen %-}
+4 Knoblauchzehen sind natuerlich zu wenig fuer einen
+ausgewachsenen Magier, 4 Knollen schon eher.
+Und dann muss man natuerlich heute schon anfangen mit 
+dem Grillen, wenn er am Samstag gar sein sollte.
+
+Winke,
+ Jim DiGriz
+
+-----------------------------------------------------------------------------
+
+
+
+Gefuelltes Kamel (Yendi, 22. Aug 1997, 13:20:20):
+
+
+Mal sehen, ob ich das noch auswendig auf die Reihe kriege...
+Das Rezept stand vor ein paar Tagen in der TAZ.
+
+
+Gefuelltes Kamel:
+=================
+
+Man braucht:
+	400 Regenpfeifer-Eier
+	400 (?) Datteln
+	20 Karpfen
+	4 Trappen
+	2 Schafe
+	1 grosses Kamel
+	ein paar Kilo Gewuerze
+
+
+Zuerst eine grosse Kochgrube ausheben und ein paar Kubikmeter Glut erzeugen.
+Auf dem Riesenfeuer, was man dazu braucht, kann man schonmal die Regenpfeifer-
+eier garen.
+Karpfen ausnehmen & schuppen und mit gepellten Eiern und Datteln fuellen.
+Trappen ausnehmen & rupfen und mit den gefuellten Karpfen fuellen.
+Schafe ausnehmen & flaemmen und mit den gefuellten Trappen fuellen.
+Kamel ausnehmen & flaemmen und mit den gefuellten Schafen fuellen.
+Kamel in Palmblaetter einschlagen und in der abgedeckten Glut zwei Tage lang
+garen.
+
+Reicht fuer ca. 400 Personen.
+
+Bon Appetit, comme disent les arabes...
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Gefuelltes Kamel (Asmodis, 22. Aug 1997, 14:09:52):
+~#! rn=Yendi rt=872248820 rg=kochrezepte
+~#! tid=872248820
+Gibts das auf der MG-Party ?? Koennte grad so reichen :)
+
+-----------------------------------------------------------------------------
+
+
+
+Kaninchen mal ohne Ohren... (Lug, 31. Aug 1997, 02:56:46):
+
+Moin,
+
+hier isses Grimmborn:
+
+Geschmortes Kaninchen in Weisswein
+
+1 kuechenfertiges Kaninchen (6 Teile + Innereien)
+Salz
+Grober Pfeffer
+Oel
+250g Zwiebeln
+1 Knolle frischer (FRISCHER sagte ich!) Knoblauch
+1 Bund Petersilie
+1/2 l Weisswein (moeglichst guten, leckeren und trockenen)
+
+Kaninchenteile abspuelen, trockentupfen und mit Salz und Pfeffer einreiben. In
+eine geoelte ofenfeste Form oder auf die Fettpfanne des Backofen legen
+(besser!). Zwiebelstuecke, Knoblauch und Petersilie (kann man weglassen - muss
+man aber nicht) einfach dazulegen. Wein zugiessen und ab in den Ofen mit dem
+Blech. Ofen auf 225 Grad - Gas Stufe 4 - Umluft 200 Grad schalten und etwa 1 h
+backen. Den Sud mit Salz (Salz? Wozu Salz?) und Pfeffer abschmecken.
+Fuer 3 Personen sind 2 Kaninchen besser.
+Um das Ganze intensiver zu gestalten, kann man das Karnickel ueber Nacht in
+Wein, Zwiebeln und Knoblauch einlegen. Mit Gefluegelteilen geht das Rezept
+auch schmeckt aber lascher. Und wenn mans knuspriger mag, dreht man die Keulen
+einfach mittendrin um. das geht wider Erwarten.
+
+Viel Spass oder auch Spasz ;)
+
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Champignon-Spargel-Pastete (Engywuck, 16. Nov 1997, 17:31:35):
+Hallo!
+Das Engywuck-Koch-Studio hat wieder zugeschlagen. Und zwar diesmal mit:
+
+Champignon-Spargel-Pastete
+==========================
+
+Zutaten:
+250 g Spargel
+1/4 l Gemuesebruehe (Instant)
+250 g Champignons
+10 g Butter
+20 g Mehl
+125 g Schlagsahne
+1 Eigelb
+Salz, Pfeffer
+1 EL Zitronensaft
+6 Blaetterteigpasteten
+gehackte Petersilie
+
+Anleitung:
+Den Spargel waschen, schaelen, das untere Ende abschneiden und das 
+Gemuese bis zu den Koepfen in schraege Scheiben schneiden.
+Die Gemuesebruehe aufkochen und den Spargel darin ca. 5 Min. garen. Das 
+Gemuese in ein Sieb giessen und den Sud auffangen.
+Die Champignons trocken abreiben oder kurz kalt abwaschen und gut 
+trockentupfen. Die Pilze, bis auf 6 fuer die Garnitur, vierteln. Die 
+Butter in einem Topf erhitzen und alle Champignons darin duensten. 
+Anschliessend die ganzen Champignons herausnehmen und beiseite stellen.
+Die Pilzviertel mit Mehl bestaeuben, kurz anschwitzen und die 
+Gemuesebruehe unter Ruehren angiessen. Die Sahne bis auf 2 EL zufuegen 
+und die Sosse 2 Min. kochen lassen, dann vom Herd nehmen. Das Eigelb mit 
+der restlichen Sahne verschlagen und in die Sosse ruehren. Die 
+Spargelstuecke zufuegen und in der heissen Sosse erwaermen. Das Ragout 
+mit Salz, Pfeffer und Zitronensaft abschmecken.
+Die Blaetterteigpasteten bei 200 Grad im vorgeheizten Backofen ca. 7 Min. 
+backen. Das Ragout in die heissen Pasteten fuellen und mit den beiseite 
+gestellten Champignons und der Petersilie garnieren.
+
+Das Rezept ist fuer 2-3 Personen.
+
+
+Guten Appetit!
+
+Engy*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Champignon-Spargel-Pastete (Engywuck, 17. Nov 1997, 18:35:48):
+~#! rn=Wurzel rt=879714728 rg=kochrezepte
+~#! tid=879697895
+Bei dem Rezept ist es nicht sooooooo entscheidend, dass der Spargel frisch und
+Deutsch ist, weil die Pilze dazu fuehren, dass der Spargelgeschmack etwas
+nivelliert wird. und dafuer tuts auch auslaendischer. Also mir hats geschmeckt
+;)
+ Engy*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Champignon-Spargel-Pastete (Acrimon, 20. Nov 1997, 17:45:42):
+~#! rn=Engywuck rt=879788148 rg=kochrezepte
+~#! tid=879697895
+Auszerdem kann man statt Spargel auch Schwarzwurzel nehmen.
+Schwarzwurzel schmeckt besser und ist gesuende als Spargel, auszerdem ist die
+Schwarzwurzelzeit noch gar nicht so lange her.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Champignon-Spargel-Pastete (Wurzel, 20. Nov 1997, 20:00:18):
+~#! rn=Acrimon rt=880044342 rg=kochrezepte
+~#! tid=879697895
+wusste ich es doch, du hast einen verdrehten geschmack... schwarzwurzeln als
+spargelersatz *schuettel* naja, vielleicht gibts in bayern ja keinen guten
+spargel so wie bei uns, aber ich dachte immer caradhras wuesste wovon er
+schreibt.
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Champignon-Spargel-Pastete (Raffi, 20. Nov 1997, 20:45:03):
+~#! rn=Wurzel rt=880052418 rg=kochrezepte
+~#! tid=879697895
+Hey, in Bayern gibts den Besten!
+
+Gruss
+H.
+(Das mit der Schwarzwurzel ist wirklich Brrrr.)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Champignon-Spargel-Pastete (Gloinson, 25. Nov 1997, 00:22:39):
+~#! rn=Raffi rt=880055103 rg=kochrezepte
+~#! tid=879697895
+Schwarzwurzel ist lecker - aber nicht in dem Zusammenhang. Auf so
+etwas koennen wirklich nur Bayern kommen. Und den besten Spargel
+gibt es immer noch in Brandenburg.
+Postet mal einer was zu Fisch, oder muss ich erst wieder meine
+Mama fragen?
+
+Gloin
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Champignon-Spargel-Pastete (Hobo, 25. Nov 1997, 08:28:21):
+~#! rn=Gloinson rt=880413759 rg=kochrezepte
+~#! tid=879697895
+Fisch?
+
+Frag mal Mieze, die hatte da so ein leckeres Rezept *schleck* *hmmmm*
+
+Tschuessi
+
+   Hobo
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Champignon-Spargel-Pastete (Lug, 27. Nov 1997, 19:23:24):
+~#! rn=Gloinson rt=880413759 rg=kochrezepte
+~#! tid=879697895
+Tsss,
+
+grober Unfug! Der beste Spargel kommt aus der Niedersaechsischen Tiefebene!
+
+Banausen
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Champignon-Spargel-Pastete (Raffi, 27. Nov 1997, 19:57:19):
+~#! rn=Lug rt=880655004 rg=kochrezepte
+~#! tid=879697895
+JaJa, und irgendwer hat mal gesagt der beste Spargel kommt aus der Dose ....
+Das ist genauso wahrscheinlich wie Brandenburd, Niedersachsen oder Groenland.
+
+Gruss
+H.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: Champignon-Spargel-Pastete (Wurzel, 27. Nov 1997, 20:29:08):
+~#! rn=Raffi rt=880657039 rg=kochrezepte
+~#! tid=879697895
+genau. brandenburg, niedersachsen, groenland, bayern oder sonstwo... den
+richtigen spargel gibts nur im griesheimer sand.
+irgendwie versteh ich diese diskussion nicht, schliesslich ist das eine
+feststehende und allgemein anerkannte tatsache.
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re^11: Champignon-Spargel-Pastete (Grimmborn, 28. Nov 1997, 09:58:27):
+~#! rn=Wurzel rt=880658948 rg=kochrezepte
+~#! tid=879697895
+Naja, Dir sei verziehen. Offensichtlich kennst Du keinen Alfterer Spargel.
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+Re^11: Champignon-Spargel-Pastete (Hardil, 28. Nov 1997, 10:55:22):
+~#! rn=Wurzel rt=880658948 rg=kochrezepte
+~#! tid=879697895
+
+Quatsch Greisheimer Sand. Echter guter Freilandspargel kommt aus den
+wunderbaren Boeden Rheinhessens. Dort, wo auch der gute Wein und die
+hervorragenden Kartoffeln herkommen.
+
+-Hardil. Bekommt bei diesem Thread Hunger.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^12: Champignon-Spargel-Pastete (Grimmborn, 28. Nov 1997, 11:25:51):
+~#! rn=Hardil rt=880710922 rg=kochrezepte
+~#! tid=879697895
+Rheinhessen? Guter Wein? Auf diesen Kartoffelaeckern mit leichter Nordneigung?
+Du traeumst.
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+Re^13: Champignon-Spargel-Pastete (Hardil, 28. Nov 1997, 11:29:52):
+~#! rn=Grimmborn rt=880712751 rg=kochrezepte
+~#! tid=879697895
+
+Junger Mann aus dem Land, wo es mehr Muecken als Schweden gibt!
+Wo ein Nordhang ist, ist auch ein Suedhang. :)
+Und ich traeume nicht vom Wein, ich trinke ihn.
+Komm mal vorbei, dann zeig ich Dir, was ein guter Wein ist.
+
+-Hardil. Lokalpatriot. Weinkenner.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^14: Champignon-Spargel-Pastete (Gloinson, 28. Nov 1997, 14:05:17):
+~#! rn=Hardil rt=880712992 rg=kochrezepte
+~#! tid=879697895
+Grimmborn wird alt. Natuerlich kommt guter Wein aus Rheinhessen, aber
+ein besserer Spargel als dort immer noch aus Brandenburg. Koennten
+wir jetzt bitte noch anfangen, ueber die Herkunft der besten Champignons
+zu streiten?
+
+Gloin
+
+-----------------------------------------------------------------------------
+
+
+
+Re^15: Champignon-Spargel-Pastete (Grimmborn, 28. Nov 1997, 14:07:59):
+~#! rn=Gloinson rt=880722317 rg=kochrezepte
+~#! tid=879697895
+Sicher gibts auch guten Wein in Rheinhessen (wenn man mit der Masse a la
+"Liebfrauenberg" vergleicht), aber unbestritten die besten deutschen Weine
+kommen aus Mosel Saar Ruwer. 
+Brandenburger Spargel kann dem aus Alfter nicht annaehernd das Wasser reichen,
+so viele Tunnel koennen da gar nicht absaufen. Und die besten Champignons
+kommen natuerlich vom Bauer Ewald seinem Prickingshof in Westfahlen. Da, wo
+die Menschen so fahd^Hl sind wie die Pilze.
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+Re^16: Champignon-Spargel-Pastete (Gar, 28. Nov 1997, 14:52:05):
+~#! rn=Grimmborn rt=880722479 rg=kochrezepte
+~#! tid=879697895
+Spargel aus Alfter????
+Also ich geb zur Spargelzeit, dauert ja noch was, immer ne Sammelbestellung
+mit Freunden ab, einer wird dann verdammt nach belgien zu fahren. da gibts den
+besten und ist auch lange zeit preiswerter als hier in D.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^17: Champignon-Spargel-Pastete (Bambulko, 28. Nov 1997, 14:53:39):
+~#! rn=Gar rt=880725125 rg=kochrezepte
+~#! tid=879697895
+Also der beste Spargel kommt immer noch aus Koeln-Nippes :-)))
+
+Bambulko
+
+-----------------------------------------------------------------------------
+
+
+
+Das Engywuck-Koch-Studio schlaegt zurueck (Engywuck, 28. Nov 1997, 18:08:31):
+Herzlich willkommen im Engywuck-Koch-Studio. Heute haben wir fuer sie 
+etwas ganz besonderes vorbereitet, naemlich
+
+Spaghetti mit Zucchinisosse
+===========================
+
+Sie brauchen dazu:
+250 g Vollkornspaghetti
+Salz
+1 kg Zucchini
+4 EL Butter
+3-4 Knoblauchzehen
+2 EL gekoernte Gemuesebruehe (instant)
+80 g Gorgonzola
+4 EL saure Sahne
+4 EL Basilikum, gehackt
+
+Und wie wirds gemacht?
+Die Spaghetti in kochendem Salzwasser bissfest garen. In der Zwischenzeit 
+Zucchini putzen, waschen und in duenne Scheiben oder Stifte hobeln. Die 
+Butter in einer Pfanne zerlassen und die Zucchini darin anduensten. Den 
+Knoblauch schaelen, durch eine presse druecken und zu den Zucchini geben. 
+Mit der Bruehe wuerzen und zugedeckt ca. 10 min. duensten.
+Den Gorgonzola (fuer mich anderen wuerzigen Kaese, denn Gorgonzola 
+schmeckt ja wirklich ekelhaft) kleinwuerfeln und zum Gemuese geben. Wenn 
+der Kaese geschmolzen ist, die saure Sahne unterruehren und die Sosse 
+puerieren. 
+Die Nudeln abgiessen, in einem Sieb abtropfen lassen und kurz mit warmem 
+Wasser abbrausen.
+Die Spaghetti auf 4 vorgewaermte Teller verteilen, mit Zucchinisosse 
+uebergiessen und mit Basilikum bestreut servieren.
+
+So, wenn jetzt noch Acrimon schreibt, dass man Zucchini gut durch 
+Auberginen ersetzen kann, waeren auch die naechsten 17 Replys auf dieses 
+Rezept gesichert...
+
+Guten Apetit, (das schreibt man sicher anders)
+     Engywuck
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^16: Champignon-Spargel-Pastete (Avalon, 28. Nov 1997, 19:03:08):
+~#! rn=Grimmborn rt=880722479 rg=kochrezepte
+~#! tid=879697895
+Wein? Hm, ich hab so das Gefuehl, da sucht ihr in eurem Land nur
+den Koenig unter den Einaeugigen *frechgrins*
+
+ava, oesi :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^17: Champignon-Spargel-Pastete (Engywuck, 28. Nov 1997, 19:04:15):
+~#! rn=Avalon rt=880740188 rg=kochrezepte
+~#! tid=879697895
+Wenn ich Oesischen Wein haben will, geh ich ins Labor und hol mir was von dem
+guten Dieethylenglykol.
+
+Engy, Chemiker :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Das Engywuck-Koch-Studio schlaegt zurueck (Acrimon, 28. Nov 1997, 19:07:27):
+~#! rn=Engywuck rt=880736911 rg=kochrezepte
+~#! tid=880736911
+Warum Auberginen?
+Statt Zucchini kann man sehr gut Gaertnergurken nehmen.
+Undwenn alles fertig ist, garniert man die Nudeln am besten mit ein paar
+Orangenscheiben.
+Ein wenig Zitrone zum Druebertraeufeln waere auch nicht schlecht ...
+
+Acrimon, der Rote Ritter sichert heute mehr als 17 Replys.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^18: Champignon-Spargel-Pastete (Avalon, 28. Nov 1997, 19:07:38):
+~#! rn=Engywuck rt=880740255 rg=kochrezepte
+~#! tid=879697895
+Sei froh, so erfriert Deine Gehirnzelle wenigstens nicht :)
+
+ava:)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^12: Champignon-Spargel-Pastete (Wurzel, 28. Nov 1997, 20:56:09):
+~#! rn=Hardil rt=880710922 rg=kochrezepte
+~#! tid=879697895
+wein aus rheinhessen? das erinnert mich immer daran, eines spaeten abends in
+der weinstube, die auch wirklich eine war. also so eine, wo auch mal ein
+echter winzer sitzt und sein glas hebt. ein solcher winzer war es, der zu
+ziemlich vorgerueckter stunde die wahrheit rausgelassen hat: schwankend stand
+er auf und murmelte etwas von "so, ich geh mal eben einen bechtheimer
+pilgerpfad machen..." ah ja, dachte ich mir, so kommts raus.
+
+wurzel
+
+p.s. wenn ueberhaupt deutschen wein, dann bitte bergstraesser. ich weiss, den
+kennt kein schwein, aber das liegt daran, dass wir den immer selbst trinken,
+bevor er ausser landes geschafft werden kann :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^15: Champignon-Spargel-Pastete (Lug, 29. Nov 1997, 01:40:26):
+~#! rn=Gloinson rt=880722317 rg=kochrezepte
+~#! tid=879697895
+Unfug, 
+
+der wirklich beste Spargel kommt aus den Sandboeden zwischen Doetlingen und
+Wildeshausen.
+
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Re^16: Champignon-Spargel-Pastete (Hate,  1. Dez 1997, 10:59:14):
+~#! rn=Lug rt=880764026 rg=kochrezepte
+~#! tid=879697895
+Ihr habt Probleme...
+
+Man importiere Sand aus den ganzen Gegenden, baue ein Gewaechshaus und 
+schaffe die lokalen Klimaverhaeltnisse, baue Spargel an und wenn einer
+unbedingt Spargel Y aus Gegend X haben will, dann hat man den gleich
+nebenan.
+
+Hate.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^17: Champignon-Spargel-Pastete (Raffi,  2. Dez 1997, 20:23:16):
+~#! rn=Hate rt=880970354 rg=kochrezepte
+~#! tid=879697895
+AAAARGH ... und wo bleibt da das wahre Spargelgeniessergefuehl ?
+
+Nee, auch wenn ichs nicht gerne sage, der Beste Spargel waechst noerdlich von
+M ... da wo langsamm diese Leute mit dem unaussprechlich harten B leben.
+
+
+Und ueberhaupt !
+
+H.
+
+-----------------------------------------------------------------------------
+
+
+
+spinatlasagne (Wurzel,  8. Dez 1997, 19:53:54):
+eine leckere spinatlasagne, genau das richtige fuer die jahreszeit...
+
+wir brauchen:
+
+ein pfund hackfleisch
+drei bis vier grosse zwiebeln
+fuenf zehen knoblauch
+ein kilo frischen blattspinat (eher mehr, das kriecht unglaublich zusammen)
+butter
+mehl
+geriebenen kaese zum bestreuen
+gruene lasagnenudeln (gelbe koennens auch sein, ist aber nicht stilecht :)
+passierte tomaten (aus der packung)
+gemuesebruehe
+eine packung kraeuterfrischkaese (200 g)
+creme fraiche
+milch
+olivenoel
+gewuerze
+
+zwiebeln und knoblauch fein hacken, im heissen oel anbraten und hackfleisch
+dazugeben. ordentlich anbraten bis es kruemelig wird, wuerzen (ich nehme dazu,
+wie sollte es anders sein, frisch gemahlenen cumin, chili und oregano, aber
+das ist geschmackssache) und salzen. dann die passierten tomaten dazu,
+aufkochen und dabei gut durchruehren. auf die seite stellen.
+
+butter heissmachen, mehl darin anschwitzen bis es anfaengt zu braeunen, dann
+mit milch und heisser bruehe abloeschen. dabei staendig ruehren, damit es
+nicht ansetzt oder klumpt. frischkaese und creme fraiche unterruehren und
+das ganze nochmal aufkochen lassen. von den mengen her so dimensionieren,
+dass es nicht zu duennfluessig wird. mit weissem pfeffer, muskat und salz
+wuerzen. auf die seite stellen.
+
+spinat putzen und waschen. in einen grossen topf mit salzwasser geben und kurz
+aufkochen. vorher ist normalerweise der topf zu klein, hinterher findet man
+den spinat kaum wieder...
+
+nudeln, hackfleisch, weisse sosse und spinat in schichten in eine auflaufform
+fuellen, mit dem kaese bestreuen und das ganze ab in den backofen. bei 180
+grad
+(umluft) bzw. 200 grad (normaler ofen) ueberbacken. wenn der kaese gut
+zerlaufen ist, rausholen und geniessen...
+
+die menge reicht fuer vier normale esser oder zwei so wie mich :)
+
+wurzel
+
+
+-----------------------------------------------------------------------------
+
+
+
+Hmmm...lecker! (Bambulko, 13. Dez 1997, 15:32:58):
+Hier mal ein paar auszuege aus dem Buch 'Die Suppe luegt." von Hans-Ulrich
+Grimm (Verlag Klett-Cotta, Stuttgart 189 S.
+36DM)[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[
+D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[D[A
+Es gaht darum, woraus Lebensmittel hergestellt werden:
+
+Kunstkaviar aus Schlachtblutabfaellen
+Fleischersatz aus Klaerschlamm
+Muscheln aus Schweinefleisch
+Pfirsichduft aus Rizinusoel
+Pralinenfuellungen aus Erbsenbrei
+Und wenn beim Erdbeerjoghurt "natuerliche Arome" draufsteht, heisst das, das
+das Arome aus Saegespaenen gewonnen wurde.
+
+
+Mahlzeit
+
+Bambulko
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Hmmm...lecker! (Balion, 15. Dez 1997, 15:58:15):
+~#! rn=Bambulko rt=882023578 rg=kochrezepte
+~#! tid=882023578
+Einen Teil der "Zutatan" kann ich ja noch glauben. 
+Aber Klaerschlamm...
+Als naechstes kommt einer und erzaehlt Schokoeis waere aus Radioaktivem
+Restmuell 
+(Weil die Leute in der Werbung immer so strahlen (oder so))
+
+Balion
+
+-----------------------------------------------------------------------------
+
+
+
+kohl (Wurzel, 22. Dez 1997, 17:36:27):
+heute mal was ohne chili, verena hats gekocht...
+
+kohl (nicht helmut, sondern weiss) a la verena
+
+ein weisskohl
+250g schinkenspeck
+kartoffeln
+etwas schweinepastete mit pfeffer (ein stueck leberwurst tuts auch)
+100g saure sahne
+200g kraeuterquark
+eine zwiebel
+eine grosse zehe knoblauch
+kuemmel
+provence-kraeuter
+birnendicksaft
+pfeffer, salz
+etwas milch
+100 ml bruehe
+
+kartoffeln schaelen.
+den kohl waschen, putzen und kleinschneiden. 
+speck, zwiebel und knoblauch kleinschneiden und in etwas oel oder schmalz
+anbraten. den kohl hinzufuegen und anduensten.
+mit der bruehe abloeschen. kuemmel hinzugeben.
+zugedeckt etwa 20 minuten koecheln lassen, wuerzen mit pfeffer und salz.
+inzwischen kartoffeln kochen und zu puree verarbeiten (mit der milch und
+etwas muskat, evtl. auch etwas butter).
+quark, saure sahne, birnendicksaft und kraeuter (nach geschmack) zum kohl
+geben. die pastete zerbroeseln und unterruehren.
+noch ca. 5 minuten unter gelegentlichem ruehren ziehen lassen, fertig.
+
+sehr lecker :)
+
+wurzel
+
+p.s. man kann fuer den geschmack auch noch kleingeschnittene karotten und
+petersilie mitkochen. die pastete ist eh nur fuer den geschmack dabei, daher
+eignet sich am besten franzoesische pfefferpastete mit gruenem pfeffer.
+
+-----------------------------------------------------------------------------
+
+
+
+Kartoffeltorte (Kartoffel, 23. Dez 1997, 13:37:02):
+Nein, keine Eigenkreation, die heisst wirklich so...
+375g kalte, gepellte Kartoffeln
+3 Eier
+200g Zucker
+100g Mehl
+1 Messerspitze gemahlene Nelken
+1 Tl Zimt
+1 Tl Backpulver
+125g gemahlene Haselnuesse
+abgeriebene Schale einer Zitrone
+
+1 halbes Glas Kirschkonfituere
+
+200g Puderzucker
+1EL Arrak
+etwas Zitronensaft
+
+Die Eier trennen und die Eigelb mit dem Zucker etwa 15 Minuten mit dem
+Handruehrgeraet schaumig ruehren.
+Mehl, BAckpulver, Zimt und Nelken mischen und ueber die Eimasse sieben.
+Kartoffeln stampfen und mit den Haselnuessen und der Zitronenschale unter den
+Teig mischen.
+Eiweiss sehr steif schlagen und unter den Teg ziehen, in einer gefetteten, mit
+Gries oder Semmelbroeseln ausgestreuten Springform bei 200 Grad C etwa 60
+Minuten backen.
+
+Aus der Form nehmen und abkuehlen lassen, dann in zwei Boeden teilen (geht
+prima mit nem Bind faden, den man rundrum legt und dann zusammenzieht).
+Den unteren Boden mit der Konfituere Bestreichen, oberen Boden wieder
+aufsetzen.
+Puderzucker mit Zitronensaft und Arrak anruehren und ueber den Kuchen
+verteilen, der Guss sollte am Rand unregelmaessig runterfliessen.
+
+Wer mag, kann noch 6 Marzipankartoffeln halbieren und auf den Rand des Kuchens
+setzen.
+
+Schmeckt zu dieser Jahreszeit am besten.
+
+Guten Appetit,
+Kartoffel
+
+-----------------------------------------------------------------------------
+
+
+
+Rezeptsammlung  (Jimdigriz, 25. Dez 1997, 18:59:02):
+Hallo,
+
+gibt es die Kochrezepte eigentlich alle irgendwo
+archiviert ? Hin und wieder erinnert man sich doch
+an was leckeres und kanns nicht mehr finden :9
+(Grimmborns Wildschweinterrine zB)
+
+Ciao,
+ Jim DiGriz
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Rezeptsammlung  (Key, 25. Dez 1997, 20:00:04):
+~#! rn=Jimdigriz rt=883072742 rg=kochrezepte
+~#! tid=883072742
+Nette Frage :)
+Interessiert mich auch .... und auch die die das Bergchen hier nicht
+veroeffentlicht :)
+
+Key
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Rezeptsammlung  (Grimmborn, 27. Dez 1997, 02:31:14):
+~#! rn=Key rt=883076404 rg=kochrezepte
+~#! tid=883072742
+Ich hab schon vor Jahren versprochen, die zu ordnen, gesammelt hab ich alles.
+Nein, ich verspreche nicht, das ueber den Jahreswechsel zu machen, das klappt
+eh nicht. Naechstes Jahr aber ganz bestimmt...
+
+Grimmborn der Atheist
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Rezeptsammlung  (Jimdigriz, 27. Dez 1997, 10:04:00):
+~#! rn=Grimmborn rt=883186274 rg=kochrezepte
+~#! tid=883072742
+
+Super! 
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Rezeptsammlung  (Caradhras, 30. Dez 1997, 09:31:04):
+~#! rn=Key rt=883076404 rg=kochrezepte
+~#! tid=883072742
+Fressack Sluezzeli. :-) Ich muss mich jetzt erst mal neu mit meinem
+Weihnachtsgeschenk *grins KreteK* beschaeftigen, naemlich einem Wok.
+
+  Bergchen Caradhras - schmeisst mit Kardamom, Putenschnitzeln, etc. um sich
+
+-----------------------------------------------------------------------------
+
+
+
+Currywurst... (Har,  4. Mar 1998, 17:10:18):
+Tach,
+kann es sein, dass icih heute morgen eine Radio-Werbung fuer:
+Knorr-Fix fuer Currywurst 
+gehoert habe oder bin ich da einem Spuk aufgesessen?
+
+Har (sieht sich mit dem Untergang der Zivisilation konfrontiert)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Currywurst... (Yaren,  4. Mar 1998, 18:02:21):
+~#! rn=Har rt=889027818 rg=kochrezepte
+~#! tid=889027818
+Yaren hats auch gehoert - oder verhoert? *gruebel*
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Currywurst... (Wurzel,  5. Mar 1998, 19:27:15):
+~#! rn=Yaren rt=889030941 rg=kochrezepte
+~#! tid=889027818
+untergang der zivilisation? man koennte drueber streiten, ob currywurst etwas
+mit zivilisation zu tun hat, oder auch: wer currywurst isst, darf auch
+knorrfix dafuer nehmen.
+seit der imbiss an der ecke einem doenerfritzen gewichen ist, gibt es auf
+dieser welt sowieso keine gute currywurst mehr.
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Happa Happa Hey! (Caradhras, 12. Jun 1998, 18:33:38):
+                      Halloele!
+
+Hier mal wieder ein 'kleines' Rezept vom letzten Kochen:
+Natuerlich wie immer fast ohne Kalorien. *I*
+Das ganze ist fuer sechs Personen grob gerechnet.
+Diesmal Gang 1 und Gang 4.
+
+X 1. Gang: Spargelcremesuppe 
+2. Gang: Eisbergkaesesalat mit Sahnesauce
+3. Gang: Omelette mit Lecco
+X 4. Gang: Pfannkuchen mit Schinken/Spargelfuellung
+5. Gang: Schweinemedallions in Wein/Sahnesauce
+6. Gang: Vanilleeis mit Apricot Brandy/Eierlikoer/Schokosauce
+7. Gang: Schokoladeneis mit (was sonst?) Schlagsahne!
+8. Gang: Obst und Kaese
+9. Gang: Kaffee mit aeeeeeehm... Sahne? :)
+
+Abschluss: ein Pastis (unfranzoesisch) 
+
+Wir benoetigen zusaetzlich: zwei Baguettes (nein, nicht von Aldi!)
+
+Baguettes in 3 cm breite Stuecke aufschneiden, als Brotkoerbe auf
+den Tisch. Als Getraenke passen am besten Weissweine, zB. Muskateller.
+
+Wir brauchen: 
+
+Fuer 1) und 4)
+
+1 kg Spargel (moeglichst dick)
+100 ml Sahne
+etwas Mehl (4 EL)
+75 g Butter
+Salz
+weisser Pfeffer
+Natriumglutamat o.ae. Geschmacksverstaerker..., also 
+Huehnerbruehenextrakt oder aehnliches
+Saft einer halben Zitrone
+
+1 Liter Milch
+Salz
+6 Eier
+ca. 350 - 400 Gramm Mehl
+Sonnenblumenoel oder Butaris (ca. 100 ml, Gramm)
+
+2 Packungen Hinterkochschinken a 200 Gramm (darf ruhig Aldi sein)
+etwas Butter
+etwas Sahne
+150 g Emmentaler
+150 g Gouda
+1/4 Bund Petersilie
+1/4 Bund Schnittlauch
+
+Milch mit den Eiern gut verquirlen, dann Mehl langsam hereinsieben
+und weiter verquirlen, etwas salzen -> 'Teig' fuer Pfannkuchen
+
+Mittleren Topf 3/4 mit Wasser fuellen, erhitzen,
+grossen Topf 3/4 mit Wasser fuellen, erhitzen,
+grosse Pfanne mit 3 EL Oel erhitzen, in der grossen Pfanne
+jeweils einen Schoepfloeffel vom Teig einfuellen und hellbraune
+Pfannkuchen backen.
+
+Spargel waschen, schaelen, Schalen in den kleinen Topf und leicht
+kochen lassen, ca. 20 Minuten lang.
+Spargel in den grossen Topf, das Wasser sollte fast kochen, 20 bis
+25 Minuten lang. 
+Emmentaler und Gouda reiben, Backofen anheizen, 180 Grad
+
+Wasser des kleinen Topfes abseihen, Topf trocknen und die 75 g Butter
+heisswerden lassen. Nicht! dunkelbraun... sondern nur goldgelb.
+Mit Ruehrbesen unter Ruehren Mehl (4 EL) zugeben und weiterruehren.
+Wenn es dunkelgelb ist, abgeseihtes Spargelwasser zugeben, immer
+0.2 Liter auf einmal und kraeftig weiterruehren beim aufkochen, bis
+es die richtige Konsistenz angenommen hat. Den Schuss Sahne hinzugeben,
+salzen, pfeffern und ca. 1 TL vom Geschmacksverstaerker dazu, den
+Zitronensaft auch noch. Von den gekochten Spargeln die Spitzen
+abschneiden und in die Suppe hinein. Servieren mit etwas Petersilie.
+
+Pfannkuchen einzeln hernehmen, eine Scheibe Schinken hinein, etwas
+von dem geriebenen Kaese darueber und zwei Stangen Spargel, dann
+eng aufrollen. In eine feuerfeste Form hinein und mit dem restlichen
+geriebenen Kaese und etwas Sahne und dem feingeschnittenen Schnittlauch
+und der feingeschnittenen Petersilie bestreuen.
+
+Ab in den Backofen fuer 15 Minuten.
+
+
+           Fortsetzung folgt, viel Spass beim Abnehmen
+
+                  Bergfrosch Rothorn Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Happa Happa Hey! (Wurzel, 15. Jun 1998, 18:00:30):
+~#! rn=Caradhras rt=897669218 rg=kochrezepte
+~#! tid=897669218
+was ist denn unfranzoesischer pastis?
+sowas wie racke bei den whiskys?
+
+wurzel schuettelt sich
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Happa Happa Hey! (Caradhras, 17. Jun 1998, 18:11:42):
+~#! rn=Wurzel rt=897926430 rg=kochrezepte
+~#! tid=897669218
+Nee, unfranzoesisch ist pur, franzoesisch ist mit Wasser.
+Ich habe ihn mal auf auf die zweite Art versucht, aber da kann ich
+gleich Anisgewuerz in Wasser schuetten.
+
+   Rothorn Caradhras - liebt Alk erst mit >= 40 Vol %
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Happa Happa Hey! (Acrimon, 20. Jun 1998, 18:26:46):
+~#! rn=Caradhras rt=897669218 rg=kochrezepte
+~#! tid=897669218
+Und wie fuege ich die fehlenden Kalorien bei?
+
+Acrimon, der Rote Ritter vertraegt kalorienarmes Essen nicht so gut.
+
+PS: Wer Geschmacksverstaerker benoetigt, ist ein EXTREM schlechter Koch.
+Vor allem ist das alles andere als gesund.
+Und bei Caradhras wundert es mich doppelt - man sagt, er koche gut, aber
+offensichtlich ist das nicht so. Geschmacksverstaerker? Wie vulgaer und
+aufdringlich!
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Happa Happa Hey! (Grimmborn, 21. Jun 1998, 00:07:37):
+~#! rn=Acrimon rt=898360006 rg=kochrezepte
+~#! tid=897669218
+Lass mich raten, Du weisst nicht was Geschmacksverstaerker ist?
+Ein weit verbreiteter Geschmacksverstaerker ist beispielsweise Fett, oder was
+glaubst Du wieso man Oel in den Salat und Sahne in die Sosse kippt?
+
+Grimmborn der Atheist, Chemiker und Hobbykoch
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Happa Happa Hey! (Caradhras, 25. Jun 1998, 13:42:05):
+~#! rn=Grimmborn rt=898380457 rg=kochrezepte
+~#! tid=897669218
+Richtig, Teefrosch, aber ich meinte wirklich so etwas wie Natrium-
+glutamat... aber Sahne und Oel sind auch gute Beispiele fuer
+Geschmacksverstaerker. :)
+Ich kann gut kochen? Wer sagt das? Ich sage, dass ich aus billigen Dingen
+schnell und einfach gute Sachen kochen kann... wer von mir Schroben-
+hausener Spargel in zarter Buttersauce an wasweissich erwartet, ist
+falsch gewickelt. Bei mir gibts Spargel aus Griechenland fuer 2.99
+oder 1.99 das Pfund, und das so gut zubereitet, dass Ottonormalmudder
+den Unterschied zu dem deutschen Spargel nicht merkt.
+Das wohl, bei Swafnir!
+
+Und falls Du die Ironie mit den Kalorien nicht verstanden hast, Acri...
+dann lass Dir gesagt sein, dass meine Gerichte prinzipiell immer soviel
+Kalorien haben, dass eine (meiner) Portion(en) fuer einen Tag reichen.
+Auch wieder Ottonormalmuddern. Der Du ja nicht bist.
+
+  In seinem Tuempel vor sich hinbruddelnd
+
+      ein kleiner Bergfrosch namens Rothorn Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+Chilli con Carne ala Therin (Therin, 25. Aug 1998, 19:27:12):
+Auf mehrfachen Wunsch:
+
+Die Daten beziehen sich auf 1 Pfund Gehacktes und 3 Dosen Kidneybohnen (rot)
+mit "angemessen viel" Zwiebeln und Knoblauch.
+Nachdem das Gehackte angebraten, die gewuerfelten und gegarten Zwiebeln und
+die Bohnen dazugegeben wurden kommen folgende Zutaten dazu:
+
+12 Gramm Maismehl
+10 Gramm Cumin (Kreuzkuemmel, Mutterkuemmel)
+5 Gramm Chillies, gemahlen
+10 Gramm Glutamat
+min. 140 Gramm Tomatenmark (bis die Farbe "stimmt")
+2 Gramm Oregano
+6 Gramm Paprika, edelsuess
+10 Gramm Salz (nach Geschmack)
+2 Gramm Roten Pfeffer (nach Geschmack)
+20 Gramm Tabasco (nach Geschmack)
+1 Paeckchen Sahne
+Wein zum auffuellen der Fluessigkeit.
+
+Abschmecken erfolgt mit Cumin und Chillies :)
+
+So, das war jetzt so das Rezept wie ich es spontan und auswendig aufsagen
+konnte. :)
+T.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Chilli con Carne ala Therin (Wurzel, 26. Aug 1998, 18:59:00):
+~#! rn=Therin rt=904066032 rg=kochrezepte
+~#! tid=904066032
+zu wenig chillies. eindeutig. maismehl, glutamat (igitt) und sahne braucht
+es auch nicht, und pfeffer ist nachgerade ein sakrileg...
+paprika ist auch nichts anderes als eine chilisorte, genauso wie tabasco.
+das ist also okay. aber das wichtigste hast du vergessen: ein gutes chili
+koechelt 24 stunden auf kleiner flamme, damit es richtig durchzieht
+und hinterher weniger fluessigkeit hat. das ist ja keine bohnensuppe.
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Chilli con Carne ala Therin (Therin, 26. Aug 1998, 22:29:00):
+~#! rn=Wurzel rt=904150740 rg=kochrezepte
+~#! tid=904066032
+Es kommt schwer auf die Sorte an. Ich bevorzuge Chilis als Geschmackstraeger
+und nicht als Schaerfetraeger. "Hier" in D findest Du halt selten frische
+Schoten und das getrocknete Zeug ist meist mehr scharf als es schmeckt.
+(Chilli muss scharf sein, aber dafuer braucht man ja nicht unbedingt die
+Chilischoten.)
+Sahne: Ich finde Sahne ist ein muss. Es rundet viele Gerichte einfach ab und
+den Geschmackskontrast moechte ich nicht missen.
+Maismehl: Ich benutze es erst seit kuerzerer Zeit, aber habe festgestellt, das
+es sehr gut hinein passt.
+
+Und dass Chilli keine Suppe ist, ist klar. zaehfluessig muss es sein :)
+
+T.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Chilli con Carne ala Therin (Raffi, 27. Aug 1998, 20:13:32):
+~#! rn=Therin rt=904163340 rg=kochrezepte
+~#! tid=904066032
+Eine Zaehfluessige Suppe ? So wie Haferschleim ?
+
+Grins
+H.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Chilli con Carne ala Therin (Therin, 27. Aug 1998, 20:13:52):
+~#! rn=Raffi rt=904241612 rg=kochrezepte
+~#! tid=904066032
+
+BANAUSE!
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Chilli con Carne ala Therin (Wurzel, 28. Aug 1998, 09:06:33):
+~#! rn=Therin rt=904241632 rg=kochrezepte
+~#! tid=904066032
+ein ordentliches chili kann man in eine tortilla einrollen und anheben,
+ohne dass es tropft. versuch das mal mit dem zeug, das du in deutschen
+kneipen als chili angedreht bekommst...
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Chilli con Carne ala Therin (Raffi, 28. Aug 1998, 14:37:53):
+~#! rn=Therin rt=904241632 rg=kochrezepte
+~#! tid=904066032
+Wiso banause ?
+(noch dazu so laut ?)
+
+Kannst ja mal an meinem Vitaminschrank schnuppern (Kuehlwasser gratis).
+
+Gruss
+H.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Chilli con Carne ala Therin (Asmodis, 28. Aug 1998, 20:51:19):
+~#! rn=Raffi rt=904307873 rg=kochrezepte
+~#! tid=904066032
+Warum gibts eigentlich keine Kochrezepte mehr von Cara*? Die waren besser ...
+,
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Chilli con Carne ala Therin (Caradhras, 29. Aug 1998, 12:11:06):
+~#! rn=Asmodis rt=904330279 rg=kochrezepte
+~#! tid=904066032
+Weil der kein MorgenGrauen nicht mehr spielt. Seit September 1995.
+Dafuer hat er gestern nacht gross gekocht. Lecker wars!
+
+  Lasst Maenner an den Herd! Die koennen besser kochen als Frauen. *grins*
+
+          Der Golddrachenbergfrosch Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Chilli con Carne ala Therin (Asmodis, 30. Aug 1998, 13:31:55):
+~#! rn=Caradhras rt=904385466 rg=kochrezepte
+~#! tid=904066032
+Cara*, du musst doch hier nicht spielen, um der Nachwelt deine Kochrezepte zu
+hinterlassen :-)
+Ich spiele ja schliesslich hier auch nicht mehr ...
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Chilli con Carne ala Therin (Caradhras,  2. Sep 1998, 19:44:27):
+~#! rn=Asmodis rt=904476715 rg=kochrezepte
+~#! tid=904066032
+                   Kuckuck :)
+
+Was wie wo? Hat doch eh nie einer nachgekocht. :)
+Aber was ganz ganz einfach ist, was ich letzten Freitag mit 
+Toast, Weissbrot mit Tomaten-Ruehrei, gefuellten Tomaten auf zwei
+verschiedenen Arten und zum Nachtisch gefuellte Honigmelonen mit
+verschiedenen Fruechten und Vanilleeis mit fluessiger Nuss-
+Schokolade gegessen habe: Kuemmelkartoffeln mit verschiedenen Dips.
+
+Ganz einfach, habe ich schon auf dem MG-Treffen I in Muenster 
+gemacht:
+Kartoffeln schrubben, gut in Wasser liegen lassen, der Laenge nach
+halbieren, Backofen 200 Grad vorheizen, nasse Kartoffeln mit der
+Schale nach unten aufs Blech, mit 1 bis 2 EL Kuemmel bestreuen und
+mit 4 bis 5 EL Olivenoel betraeufeln. 45 Min. backen.
+
+Dip1: 1 Becher saurer Sahne mit 1 Becher Magermilchjoghurt gut! verruehren,
+      Salz, Pfeffer und etwas Cayenne-Pfeffer rein. Feddisch.
+
+Dip2: 1/8 Liter Schlachsahne, 1 TL Senf, Salz, Pfeffer mit viel kleinst-
+      gehackten Kraeutern (Petersilie, Schnittlauch, Basilikum, Zitronen-
+      melisse...) und einem Schuss Worcestersauce vermixen. Auch feddisch.
+
+        Alles feddisch und schoen billich.
+
+  *wink*     Ein Bergfrosch mit Kontostand < 0 GE
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: Chilli con Carne ala Therin (Lug,  5. Sep 1998, 05:19:29):
+~#! rn=Caradhras rt=904758267 rg=kochrezepte
+~#! tid=904066032
+
+Aeh Cara?
+
+Du wolltest mir noch ein Rezepot widmen.
+
+Grummel
+Lug.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^11: Chilli con Carne ala Therin (Caradhras,  8. Sep 1998, 10:28:42):
+~#! rn=Lug rt=904965569 rg=kochrezepte
+~#! tid=904066032
+Echt? Oeeeeeeeh, oh, ja. :) Ich sagte aber nicht, in welchem Jahrhundert.
+*blush* Na gut, mein naechstes Rezept belongs to u.
+
+     *winke froehlich aus dem Sumpf*
+
+               der Bergfrosch aus Passau
+
+-----------------------------------------------------------------------------
+
+
+
+Re^12: Chilli con Carne ala Therin (Lug,  8. Sep 1998, 23:28:03):
+~#! rn=Caradhras rt=905243322 rg=kochrezepte
+~#! tid=904066032
+
+Wird aber zeit ;)
+
+Sumpfbanause
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: Chilli con Carne ala Therin (Acrimon, 14. Sep 1998, 15:26:25):
+~#! rn=Caradhras rt=904758267 rg=kochrezepte
+~#! tid=904066032
+Hmm.
+Olivenoel ist zwar das beste Oel, das es gibt, aber man darf es nicht erhitzen
+(das vertraegt das Olivenoel nicht).
+Zum Erhitzen nimmt man besser Fette, die die Hitze aushalten (z.B. diverse
+Backfette).
+
+Acrimon, der Rote Ritter
+
+-----------------------------------------------------------------------------
+
+
+
+Re^11: Chilli con Carne ala Therin (Embe, 14. Sep 1998, 15:46:42):
+~#! rn=Acrimon rt=905779585 rg=kochrezepte
+~#! tid=904066032
+nix da, das beste "ol das es gibt ist k"urkiskern"ol.
+kein anderes "ol hat soviel aroma.
+das k"urbiskern"ol schmeckt so gut, das ich manchmal einen l"offel voll
+einfach so futtere....
+
+gruss, eMBee.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^12: Chilli con Carne ala Therin (Yaren, 14. Sep 1998, 16:13:46):
+~#! rn=Embe rt=905780802 rg=kochrezepte
+~#! tid=904066032
+Dann probier mal Sesamoel, von wenig keins hat soviel Aroma :-)
+Das ist allerdings auch nur zum Wuerzen geeignet, fuer Gemuese verwende ich
+auch meistens Olivenoel, wenns neutral sein soll dann Disteloel.
+
+Yaren.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^13: Chilli con Carne ala Therin (Embe, 14. Sep 1998, 16:26:13):
+~#! rn=Yaren rt=905782426 rg=kochrezepte
+~#! tid=904066032
+sesam"ol kenn ich auch, ja schmeckt nicht schlecht, kann mit dem
+k"urbiskern"ol aber nicht konkurrieren... :-)
+
+gruss, eMBee.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^12: Chilli con Carne ala Therin (Songoku,  9. Okt 1998, 14:33:57):
+~#! rn=Embe rt=905780802 rg=kochrezepte
+~#! tid=904066032
+Traubenkernoel!!!!
+
+-----------------------------------------------------------------------------
+
+
+
+Re^13: Chilli con Carne ala Therin (Embe,  9. Okt 1998, 18:01:56):
+~#! rn=Songoku rt=907943637 rg=kochrezepte
+~#! tid=904066032
+das kenn ich noch nicht, wo gibts das?
+
+gruss, eMBee.
+
+-----------------------------------------------------------------------------
+
+
+
+Fuer Yendi: Mango-Lassi (Caradhras, 17. Feb 1999, 15:59:29):
+                Kuckuck ihr Froesche und Nichtfroesche
+
+Weil Yendi mich ansprach, mal wieder ein Rezept hier reinzuschreiben,
+kommt nu' zwar kein neues Rezept, aber wenigstens ein gutes.
+(Ist aus Indien, dann kanns ja nicht neu sein)
+
+                   Mango-Lassi
+
+Fuer 3 Liter nehme man:
+
+2 Mangos
+1.5 Liter Milch
+800 ml Joghurt (Natur)
+600 ml Wasser (Wasserhuhn)
+Zucker nach Belieben
+1 TL Rosenwasser (gibts in jeder Apofotheke)
+
+Algorithmus:
+Mangos schaelen, in kleine Stueckchen zerteilen (Vorsicht, grosser Kern!)
+und im Mixer (Stabmixer etc.) sehr gut puerieren.
+Puerierte Mangos mit Milch, Joghurt und dem Wasser, Rosenwasser, Zucker
+aufmixen und sofort servieren. Ist 'ne Frage des eigenen Geschmacks, ob
+man mehr Mango mag oder weniger. Kleiner Tip:
+
+Reife Mangos verwenden, also zwei Wochen vorher einkaufen und zuhause
+erst mal liegen lassen. Die Mangokonzentration kann auch durchaus das
+zwei oder dreifache des oben beschriebenen sein. Just as you like it.
+
+              *winke winke*      Bergchen Rothorn Caradhras
+PS: Weiss jemand ein anstaendiges, geschmacksneutrales Gewuerz, das
+    gelbe Farbe ergibt und moeglichst noch gesund ist? Und nicht 5 Mark
+    pro Gramm kostet wie Safran.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Fuer Yendi: Mango-Lassi (Caradhras, 17. Feb 1999, 16:09:09):
+~#! rn=Caradhras rt=919267169 rg=kochrezepte
+~#! tid=919267169
+Man kann natuerlich auch andere Lassis machen, einfach mal 
+ausprobieren. Ich werde es nachher gleich testen.
+Und statt dem Wasser kann man auch wieder Milch hernehmen usw.
+Einfach mal testen.
+
+            Just try it!       Bergchen Caradhras
+PS: Man kann Lassis auch salzig machen... 
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Fuer Yendi: Mango-Lassi (Acrimon, 18. Feb 1999, 09:21:07):
+~#! rn=Caradhras rt=919267169 rg=kochrezepte
+~#! tid=919267169
+> Weiss jemand ein anstaendiges, geschmacksneutrales Gewuerz, das gelbe Farbe
+> ergibt und moeglichst noch gesund ist? Und nicht 5 Mark pro Gramm kostet wie
+> Safran.
+
+Kurkuma natuerlich.
+Faerbt sehr stark und ist ein relativ mildes Gewuerz, dazu noch billig und
+relativ leicht erhaeltlich und sehr gesund.
+
+Acrimon, der Rote Ritter
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Fuer Yendi: Mango-Lassi (Caradhras, 18. Feb 1999, 17:06:08):
+~#! rn=Acrimon rt=919329667 rg=kochrezepte
+~#! tid=919267169
+                Sorry Babe
+
+Kurkuma naemlich genau nicht, denn schon das hat fuer eine Lassi,
+in der jede Nuance des Geschmacks etwas ganz neues ergibt, zu
+viel Eigengeschmack. Ich suche etwas mit noch viel weniger
+Eigengeschmack. Und ich bin ziemlich sicher, dass ich es nicht
+finden werde.
+
+           *wink lieb*     Bergchen Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Fuer Yendi: Mango-Lassi (Yendi, 18. Feb 1999, 19:19:42):
+~#! rn=Caradhras rt=919357568 rg=kochrezepte
+~#! tid=919267169
+Speisefarbstoff?
+
+YTY
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Fuer Yendi: Mango-Lassi (Jasper, 19. Feb 1999, 05:02:42):
+~#! rn=Caradhras rt=919267169 rg=kochrezepte
+~#! tid=919267169
+nimm gelbe wasserfarbe aus nem malkasten :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Fuer Yendi: Mango-Lassi (Hobo, 19. Feb 1999, 08:50:10):
+~#! rn=Caradhras rt=919267169 rg=kochrezepte
+~#! tid=919267169
+Ich dachte immer, die Begriffe "geschmacksneutral" und "Gewuerz" sind
+komplementaer?
+Naja, ausser man hat irgendwo 15 Jahre altes Curry rumstehen, aber damit
+"wuerzt" man dann auch maximal noch einmal...
+
+ Hobo
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Fuer Yendi: Mango-Lassi (Caradhras, 19. Feb 1999, 21:32:59):
+~#! rn=Hobo rt=919414210 rg=kochrezepte
+~#! tid=919267169
+Der Begriff geschmacksneutral kann auf zwei verschiedene
+Arten verwendet werden, liebes Hexschen Hobo:
+Einmal in deinem oben aufgefuehrten, naemlich die wirkliche
+Neutralitaet des Geschmacks in Bezug auf 'keinen Geschmack'
+und einmal die in meinem Sinne als 'den Geschmack nicht
+veraendernd, sondern eher unterstuetzend und verstaerkend'.
+Geschmacksneutral heisst bei mir also:
+Bitte den Mangogeschmack nicht aendern, bei Dir dagegen:
+Bitte bei angenommenem neutralen Geschmack den in diesem
+Falle nicht aendernd.
+
+       Hope that helps :)
+   Bergchen Caradhras - nach Referenzgrossen suchend
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Fuer Yendi: Mango-Lassi (Yendi, 19. Feb 1999, 21:38:18):
+~#! rn=Caradhras rt=919459979 rg=kochrezepte
+~#! tid=919267169
+Glutamat?
+
+YTY
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Fuer Yendi: Mango-Lassi (Asmodis, 19. Feb 1999, 21:57:28):
+~#! rn=Jasper rt=919400562 rg=kochrezepte
+~#! tid=919267169
+Hmm, ich glaube, Wasserfarbe schmeckt nach Metall, also auch nicht
+geschmacksneutral :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Fuer Yendi: Mango-Lassi (Kadabra, 20. Feb 1999, 00:13:50):
+~#! rn=Caradhras rt=919459979 rg=kochrezepte
+~#! tid=919267169
+Ueber Geschmack laest sich nicht streiten
+Aeh sachma macht die mango dir das lassi (muss immer Wuff Wuff denken )
+nich gelb genug ??
+kadabra (in alten hexenrezepten wuehlend)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Fuer Yendi: Mango-Lassi (Caradhras, 21. Feb 1999, 00:21:17):
+~#! rn=Kadabra rt=919469630 rg=kochrezepte
+~#! tid=919267169
+Noe, machts leider nicht, Kadabra, hoechstens, wenn man die Konzentration
+der Mangos ziemlich nach oben pusht, also 2 Mangos auf 1.5 Liter
+nimmt. Aber selbst dann wirds nicht so schoen wie beim Inder...
+so schoen gelb. *seufz*
+
+           *wink*         der Mangoberg Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Fuer Yendi: Mango-Lassi (Qitess, 23. Feb 1999, 16:44:43):
+~#! rn=Caradhras rt=919267169 rg=kochrezepte
+~#! tid=919267169
+cara, wenn du 5 mark fuer ein gramm safran ausgibst, bist du wirklich bloed.. 
+nee aehm, falsche zeit, wenn du es ausgeben wuerdest, warst du wirklich bloed.
+so solltes heissen. wenn du jemanden kennst, der nach griechenland oder so
+fliegt/faehrt/geht, dann lass dir von da welches mitbringen. gibt es auch
+immer gleich in einem schicken, landestypischen tongefaess :)
+ansonsten such eine sanfte curry-mischung, die is auch gelbwirksam :)
+QI** hat zuhause auch ein ganzes toepfchen safran von kreta
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Fuer Yendi: Mango-Lassi (Acrimon, 23. Feb 1999, 17:25:12):
+~#! rn=Yendi rt=919460298 rg=kochrezepte
+~#! tid=919267169
+Glutamat ist (mehr oder weniger) giftig.
+Caradhras hat nach etwas Gesundem gesucht.
+Und zur Info fuer die Anderen: Kurkuma ist der Grundstoff der
+Curry-Wuerzmischungen, der die gelbe Farbe bietet, aber nicht die Schaerfe,
+und ist auszerdem sehr gesund.
+Was Besseres weisz ich jedenfalls nicht.
+
+Irgendwo musz Caradhras Abstriche machen - entweder die Mango-Lassi ist von
+zweifelhafter Gesundheits-Qualitaet und hat einen ueberzogenen Geschmack
+(wegen Glutamat), oder sie hat einen Beigeschmack von Kurkuma, oder sie hat
+eine unnatuerliche Farbe (Lebensmittelfarbe), wobei ich die Gesundheits-Werte
+von Lebensmittelfarbe nicht kenne (soll ja nicht das Beste sein).
+Oder faellt noch jemandem eine andere gesunde, gelb-faerbende Pflanze ein?
+
+Acrimon, der Rote Ritter
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Fuer Yendi: Mango-Lassi (Wurzel, 23. Feb 1999, 20:02:26):
+~#! rn=Acrimon rt=919790712 rg=kochrezepte
+~#! tid=919267169
+ich habe keine probleme mit safran. das zeug ist zwar nicht billig, aber
+sehr sparsam, so dass der preis nicht so ins gewicht faellt.
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Fuer Key's Sammlung (Hreidmar,  2. Mar 1999, 15:30:41):
+Damit Key das arme Bergchen nicht weiter anquengelt, hier ein sehr
+wohlschmeckendes Kartoffelsuppenrezept:
+
+Kartoffelcremesuppe mit Steinpilzen
+
+Zutaten
+2 Schalotten
+300g Steinpilze
+2 EL Butterschmalz
+1 Bund Suppengruen
+400g Kartoffeln
+400ml Pilzfond (aus dem Glas)
+100ml trockener Weisswein
+Salz, weisser Pfeffer
+100ml Sahne
+etwas glatte Petersilie zum Garnieren
+
+Zubereitung:
+
+Die Schalotten schaelen und in feine Wuerfel schneiden. Die Steinpilze putzen
+und in Scheiben schneiden. Die Schalotten und die Pilze dann in 1 EL heissem
+Butterschmalz kurz anbraten.
+Das Suppengruen putzen, waschen und kleinschneiden. Einige Porreestreifen
+beiseite legen (fuer die Garnitur). Die Kartoffeln schaelen, waschen und in
+kleine Wuerfel schneiden. Den Rest Butterschmalz in einem Topf erhitzen, die
+Kartoffeln und das Suppengruen darin anduensten und mit weissem Pfeffer
+wuerzen. Mit dem Weisswein und dem Pilzfond abloeschen und noch ca. 5 Minuten
+duensten.
+Das Gemuese und die Kartoffeln mit dem Mixstab fein puerieren und mit Salz und
+Pfeffer abschmecken. Die Sahne steif schlagen und unterziehen. Pilze und
+Schalotten hinzugeben. Die Suppe servieren und portionsweise mit Petersilie
+und Porreestreifen garnieren.
+
+Als Tip: man muss nicht unbedingt frische Pilze nehmen. In Wasser
+aufgequollene getrocknete Steinpilze tun's auch.
+
+Hreidmar wuenscht guten Appetit.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Fuer Key's Sammlung (Caradhras,  3. Mar 1999, 20:27:32):
+~#! rn=Hreidmar rt=920388641 rg=kochrezepte
+~#! tid=920388641
+Ja, die ist lecker, Hreidmar! Die habe ich mir frueher auch oefters
+gemacht. Nur nicht mit so vielen Steinpilzen, wer will denn das
+zahlen? Puh... und suchen geht grade so schlecht. :)
+Aber falls ihr getrocknete Steinpilze nehmt: Bitte NICHT 300 Gramm.
+*grins* Das ist naemlich eine grosse Tuete voll.
+
+     *wink lieb voellig rezeptlos, da 14 h am Tag am lernen*
+
+         Bergchen Caradhras (hat da wer Huegel gesagt??) *knurr*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Fuer Yendi: Mango-Lassi (Mango, 15. Mar 1999, 19:17:12):
+~#! rn=Wurzel rt=919800146 rg=kochrezepte
+~#! tid=919267169
+Wenn ihr nochmal in meiner abwesenheit so ueber mich herzieht, dann setzt es
+was :(
+
+Mango, nicht geschuettelt, nicht geruehrt und nich puerriert!
+
+
+-----------------------------------------------------------------------------
+
+
+
+Chicoree-Curry-Suppe (Hreidmar, 16. Mar 1999, 11:45:56):
+Da Caradhras in letzter Zeit so wenig hier schreibt, versuche ich mich
+nochmal. Hier also das gestern getestet Rezept fuer Chicoree-Curry-Suppe:
+
+Chicoree-Curry-Suppe
+
+Zutaten:
+
+3 Zwiebeln
+
+50 g durchwachsener Speck (gewuerfelt)
+
+1 EL Butter
+
+4 TL Curry
+
+1 kg Chicoree
+
+1 EL Zitronensaft
+
+2 EL Mehl
+
+1 l Instantbruehe
+
+Salz, Pfeffer, Zucker
+
+2 EL Creme fraiche
+
+100 g gekochter Schinken (ohne Fettrand)
+
+1/2 Kaestchen Kresse
+
+
+Zubereitung:
+
+Zwiebeln schaelen und fein hacken. Die Speckwuerfel in einer Pfanne auslassen,
+Butter dazugeben. Die Zwiebeln darin glasig duensten und den Curry
+einruehren. Den Chicoree putzen, laengs halbieren, bittere Keile
+entfernen. Die Stauden waschen, trockentupfen, in Streifen schneiden und zu
+den Zwiebeln geben.
+
+Den Zitronensaft ueber das Gemuese traeufeln und 5 Minuten weitergaren. Mit
+dem Mehl bestaeuben und die Bruehe angiessen, ca. 5 Minuten bei milder Hitze
+koecheln lassen.
+
+Mit Salz, Pfeffer, Zucker und Creme fraiche abschmecken. Den
+gekochten Schinken in feine Streifen schneiden, zufuegen und kurz
+erhitzen. Die Suppe auf Teller verteilen. Kresse abschneiden und darueber
+streuen. Dazu schmeckt frisches Baguette.
+
+Tip: Die Zwiebeln mit 2 EL Sojasauce abloeschen, statt Zucker Honig verwenden.
+
+Hreidmar wuenscht guten Appetit!
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Chicoree-Curry-Suppe (Caradhras, 16. Mar 1999, 17:26:46):
+~#! rn=Hreidmar rt=921581156 rg=kochrezepte
+~#! tid=921581156
+Eiiin Kilo Chicoree? *hust* Soooo viel? Mamma mia.
+Wenn Du mir ein Semester schenkst, koche ich Dir gerne lauter Rezepte
+vor. :) 
+         *winke winke*     Bergchen Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Chicoree-Curry-Suppe (Hreidmar, 17. Mar 1999, 10:32:30):
+~#! rn=Caradhras rt=921601606 rg=kochrezepte
+~#! tid=921581156
+Ok, ich gebe ja zu, das 1kg Chicoree auch nicht zu den billigsten Artikeln
+gehoert, aber ich habe dafuer auch nicht mehr als...gruebel...rund 7 DM
+ausgegeben. Abgesehen davon, wenn schon so wenig totes Tier drin ist: nach
+irgendwas muss es ja schmecken, oder? ;-)
+
+Hreidmar
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Chicoree-Curry-Suppe (Key, 17. Mar 1999, 11:22:44):
+~#! rn=Hreidmar rt=921663150 rg=kochrezepte
+~#! tid=921581156
+Also ich geb fuern gutes Essen auch gerne mal ne Mark mehr aus :)
+Also ist der Preis fast egal ,) solange es gut schmeckt
+
+Key schiebt Caradhras durchs Diplom(?) :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Chicoree-Curry-Suppe (Caradhras, 17. Mar 1999, 12:21:41):
+~#! rn=Key rt=921666164 rg=kochrezepte
+~#! tid=921581156
+Richtich, Key, es ist nur ein Problem, wenn man staendig ne Mark
+mehr ausgibt, weil es immer gut schmecken soll. Das gibt dann ein
+paar hundert Mark mehr im Monat. Ich kenn das, schon ausprobiert. :)
+Und schon arm geworden deshalb.
+
+         datt arme Bergchen Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Chicoree-Curry-Suppe (Hreidmar, 17. Mar 1999, 12:35:49):
+~#! rn=Caradhras rt=921669701 rg=kochrezepte
+~#! tid=921581156
+Na gut. Dann halt mal was guenstigeres:
+
+Tortellini in Speck-Sahne-Sauce
+
+Zutaten:
+
+Tortellini (am besten die nicht ganz trockenen)
+
+2 fingerdicke Scheiben durchwachsener Speck 
+
+4 grosse Zwiebeln
+
+2 Knoblauchzehen
+
+500ml Sahne
+
+Salz, Pfeffer, Paprika
+
+Kraeuter (z.B. eine Gewuerzmischung)
+
+
+Zubereitung:
+
+Den Speck in feine Wuerfel schneiden. Die Zwiebeln und die Knoblauchzehen
+schaelen und ebenfalls fein wuerfeln. Die Speckwuerfel mit etwas Oel anbraten
+und die Zwiebeln hinzugeben. Nachdem die Zwiebeln glasig geworden sind, mit
+der Sahne abloeschen, mit Salz, Pfeffer, Knoblauch, Paprika und Kraeutern
+abschmecken. Noch ungefaehr 15 Minuten einkochen lassen, bis die Sauce schon
+saehmig ist. Fettich!
+
+So besser? ;-)
+
+Hreidmar
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Chicoree-Curry-Suppe (Caradhras, 17. Mar 1999, 13:05:41):
+~#! rn=Hreidmar rt=921670549 rg=kochrezepte
+~#! tid=921581156
+Suppa. Jetzt fehlt nur noch jemand, der das Zeugs von gestern abend
+bei mir abspuelt, ich bin naemlich um 3 ins Bett und nach 5 Stunden
+wieder aufgestanden. Naechstes Rezept fuer Biertrinker:
+
+Goassmoass:
+
+
+1 Masskrug, dort eine Halbe Starkbier einfuellen, ein halber Liter
+Cola drauf (Vorsicht, schaeumt :) und dann noch zwei Stamperl...
+aeh, wie heisst das im Norden? Keine Ahnung, also 4 cl Kirschlikoer
+dazu. Und sueffeln. :-) Schwer! lecker das ganze.
+
+     Bergchen Caradhras - Biertrinker, Weintrinker, Milchtrinker,
+                          Safttrinker, Allestrinker
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Chicoree-Curry-Suppe (Hreidmar, 17. Mar 1999, 13:56:16):
+~#! rn=Caradhras rt=921672341 rg=kochrezepte
+~#! tid=921581156
+Hmm, also beim Spuelen kann ich dir leider nicht helfen, ausser es findet sich
+noch ein faehiger Magier, der ein "remote-abspuelen" programmiert. ;-)
+
+Und das Bierrezept hoert sich gefaehrlich an.
+
+Hreidmar, etwas von "Wer Schnaps trinkt, zuendet auch Haeuser an." murmelnd.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Chicoree-Curry-Suppe (Ronda, 17. Mar 1999, 21:22:41):
+~#! rn=Hreidmar rt=921675376 rg=kochrezepte
+~#! tid=921581156
+Sorry, aber Dein Bierrezept klingt eher nach Spuelwasser :(
+
+Ronda
+*steht mehr auf Bier pur oder Cola pur - aber nicht mischen :(*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Chicoree-Curry-Suppe (Asmodis, 18. Mar 1999, 04:56:27):
+~#! rn=Caradhras rt=921672341 rg=kochrezepte
+~#! tid=921581156
+Erinnert mich an ein Bier-Cola-Whiskey-Mix, den ich mal zu mir genommen
+habe. Nunja, man ueberlebt auch sowas ...
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Chicoree-Curry-Suppe (Caradhras, 18. Mar 1999, 12:05:26):
+~#! rn=Asmodis rt=921729387 rg=kochrezepte
+~#! tid=921581156
+Pah, ihr wisst ja nicht, was gut ist. Ich haette auch gedacht:
+So etwas graussliches, wie kann man das nur trinken, das sind 
+ja perverse.
+Aber seit ich es ein zweites Mal probiert habe... *schleck*
+Lecker. Lechz. Naechste Woche gibts ein neues Rezept, und zwar
+mit Garnelen und ... Mango. *grins Mango* Aus dem Wok und aus
+... aeh oder aus der Pfanne.
+
+          *wink lieb und herzig*    Bergchen Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Chicoree-Curry-Suppe (Jimdigriz, 18. Mar 1999, 16:35:38):
+~#! rn=Caradhras rt=921755126 rg=kochrezepte
+~#! tid=921581156
+Huhu,
+
+Ich gehoere ja nun auch eher zu den Bierpuristen
+und Cola-Hassern. Aber einer Goassn-Mass kann
+selbst ich einiges abgewinnen, trotz Papp-Suess
+und stark. 
+Hat einfach auch was kultiges, und gibt
+nen relaxten Rausch (und auch kein Kopfweh
+zumindest bei mir ned ;-))
+
+*prost*,
+ Jim DiGriz
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Chicoree-Curry-Suppe (Asmodis, 22. Mar 1999, 00:33:22):
+~#! rn=Caradhras rt=921755126 rg=kochrezepte
+~#! tid=921581156
+Hmm, wie passt Mango in die Pfanne ? vorher durch den Fleischwolf gedreht ?
+:-)
+
+-----------------------------------------------------------------------------
+
+
+
+bayrischer spargel (Wurzel,  8. Mai 1999, 22:14:28):
+manch einer kann sich sicherlich noch an die spargeldiskussionen der
+letzten jahre erinnern. ich habe jetzt mal die gelegenheit genutzt, einige
+proben des bayrischen spargels zu untersuchen, wobei ich als methode der
+untersuchung die einfachste gewaehlt habe: essen. mehr zur methode weiter
+unten, vorab erstmal das zwischenergebnis: durchwachsen. es ist wohl mit
+spargel so, dass er stark lagenabhaengig ist, vergleichbar mit wein etwa.
+und siehe da, nach drei oder vier versuchen kann man herausfinden, dass es
+durchaus essbaren bis sehr guten spargel in bayern gibt, der sogar mit
+dem suedhessischen gewaechs verglichen werden kann.
+
+genug gelabert, hier das rezept:
+
+1 kg frischer spargel (aus poersbach oder so aehnlich)
+400 g frische entenleber
+200 g steinpilze (importiert, haben in deutschland wohl gerade nicht saison)
+kartoffeln (habe ich nicht gewogen, je nach hunger)
+butter, thymian, knoblauch, salz, pfeffer, butterschmalz
+
+spargel schaelen, enden abschneiden (nicht die koepfe, das andere ende!).
+kartoffeln schaelen. leber waschen und abtupfen, pfeffern. pilze waschen,
+putzen und kleinschneiden.
+
+spargel in einem topf mit salzwasser (mit einer kleinen prise zucker, das
+rundet etwas geschmacklich ab) kochen. kartoffeln kochen (ohne zucker, mit
+salz).
+die entenleber in etwas butterschmalz anbraten bei kleiner hitze. pilze in
+butter anbraten, pfeffern. butter mit dem thymian und knoblauch zerlassen.
+
+das ergebnis auf teller haeufen, essen.
+
+bei dem thema "leber" hoere ich oft, dass viele leute sie nicht moegen. wenn
+man nachfragt, liegt es meistens daran, dass sie falsch zubereitet wird. wer
+glaubt, dass man leber braten kann wie ein steak, braucht sich nicht zu
+wundern, wenn das ergebnis mehr "leder" als "leber" ist... hier gilt eben:
+in der ruhe liegt die kraft. langsam braten, bei geringer hitze. und wie
+immer bei fleisch: erst hinterher salzen, sonst trocknet es aus.
+
+die menge oben ist uebrigens fuer zwei hungrige oder drei bis vier normale
+esser geeignet :)
+
+wurzel                          
+
+-----------------------------------------------------------------------------
+
+
+
+Re: bayrischer spargel (Grimman,  9. Mai 1999, 17:39:32):
+~#! rn=Wurzel rt=926194468 rg=kochrezepte
+~#! tid=926194468
+Der einzig wahre Spargel aus Deutschland kommt aus Beelitz
+
+GrimMan , weiss das halt
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: bayrischer spargel (Grimmborn,  9. Mai 1999, 18:54:43):
+~#! rn=Grimman rt=926264372 rg=kochrezepte
+~#! tid=926194468
+Deine Kenntnisse von Geographie sind ziemlich peinlich.
+
+Grimmborn der Atheist summt "von der Maas bis an die Memel..."
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: bayrischer spargel (Grimman,  9. Mai 1999, 18:56:11):
+~#! rn=Grimmborn rt=926268883 rg=kochrezepte
+~#! tid=926194468
+Nagut,trotzdem ist der Beelitzer Spargel besser als alle moechtegern
+Bodenstangen aus Bayern!
+
+GrimMan
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: bayrischer spargel (Gnome,  9. Mai 1999, 20:34:57):
+~#! rn=Grimmborn rt=926268883 rg=kochrezepte
+~#! tid=926194468
+nein, grimmi.
+ueber deine mangelnden kenntnisse der feinen kueche wuerd ich mir eher
+sorgen machen... sofern du da einen wert drauf legst.
+
+der beste spargel kommt tatsaechlich aus beelitz und umland.
+
+gnOme
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: bayrischer spargel (Grimmborn, 10. Mai 1999, 00:06:05):
+~#! rn=Gnome rt=926274897 rg=kochrezepte
+~#! tid=926194468
+Ist Dir nicht mal aufgefallen, dass jede Region ihr Gebiet hat, wo der "einzig
+wahre Spargel" herkommt? Wenn ich jetzt sage, der einzig wahre Spargel kommt
+aus Alfter im Vorgebirge, koenntest Du da sicher widersprechen weil Du
+Alfterer und Beelitzer Spargel vergleichend gegessen hast? Ich denke nicht.
+Insofern ist Deine Beurteilung nicht die Elektronen wert aus denen sie
+besteht. Weil es naemlich Bullenscheisse ist, absolute Urteile ueber Dinge
+abzugeben, die man nicht vollstaendig kennt.
+
+Ach ja, und meine Kenntnisse von feiner Kueche (aktiv und passiv) sind so
+schrecklich mangelnd auch wieder nicht.
+
+Grimmborn der Atheist
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: bayrischer spargel (Caradhras, 10. Mai 1999, 08:50:45):
+~#! rn=Grimmborn rt=926287565 rg=kochrezepte
+~#! tid=926194468
+Hey, der beste Spargel kommt aus Griechenland! Von Aldi. Fuer 2 Mark 29.
+Am besten naemlich fuer meinen Geldbeutel. Mehr kann er sich nicht
+leisten. Heiss ja nich' Wurzel. *grins*
+
+Bei der Definition von 'bestem' kommt es also immer noch auf die
+persoenlichen Praeferenzen an, nicht vergessen.
+
+    WirtschaftsBergchen Caradhras - mit grausamer Budgetrestriktion
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: bayrischer spargel (Grimman, 10. Mai 1999, 15:56:20):
+~#! rn=Caradhras rt=926319045 rg=kochrezepte
+~#! tid=926194468
+Hmmmmm ... GnOme:genau das sag ich doch ...
+Besser so ?
+
+GrimMan , hat auch nen Plan vom Futtern ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: bayrischer spargel (Wurzel, 10. Mai 1999, 21:26:43):
+~#! rn=Caradhras rt=926319045 rg=kochrezepte
+~#! tid=926194468
+es gibt gewisse grenzen.
+vor kurzem war ich zum spargelessen eingeladen, und dort gab es aldispargel
+aus griechenland. sowas kann das ende einer freundschaft bedeuten... das
+grenzt ja schon an koerperverletzung mit vorsatz.
+these: wer mudden kann, hat auch genug geld fuer ordentlichen spargel. es
+gibt ja auch schon fuer relativ wenig geld guten stoff. es muss nicht immer
+der fuer 25 mark sein. und wenn es ganz schlimm kommt mit der geldboerse,
+kann man immer noch selber stechen gehen (zur not auch nachts :)
+
+wurzel (bei spargel keine kompromisse!)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: bayrischer spargel (Jasper, 11. Mai 1999, 04:50:52):
+~#! rn=Wurzel rt=926364403 rg=kochrezepte
+~#! tid=926194468
+wenn man kochen kann, und vor allem ne ordentliche sosse, dann schmeckt
+spargel, egal wo er herkommt. zumindest zur jetzigen jahreszeit.
+
+jasper laesst sich den spargel aus belgien fuer 5dm/kilo mitbringen,
+       was nicht heissen soll dass der dann besser als der spargel ausm
+       aldi ist :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: bayrischer spargel (Apsu, 11. Mai 1999, 09:49:51):
+~#! rn=Wurzel rt=926364403 rg=kochrezepte
+~#! tid=926194468
+Oder man hat nen notorischen Schuldner mit Spargelfeld, der nicht blechen
+will. Da kostets nur Taschenlampenbatterien 
+
+Grins, Apsu
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: bayrischer spargel (Kartoffel, 11. Mai 1999, 21:28:00):
+~#! rn=Caradhras rt=926319045 rg=kochrezepte
+~#! tid=926194468
+Jo, der is voellig in Ordnung, gabs heut abend auch bei uns ...
+
+'Toffel - laesst sich aber auch gerne von ihren Eltern "richtigen" deutschen
+Spargel vom Bauern im Nachbarort mitbringen ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Kaesesuppe (Caradhras, 12. Mai 1999, 20:55:01):
+                 Halloeli
+
+Wer etwas einfaches, schnelles und kalorienreiches will,
+kann folgendes mal versuchen:
+
+         Unlust-Kaesesuppe      /* Unlust auf kochen */
+
+Man braucht (fragt mich nicht fuer wieviel Portionen, duerfte
+3/4 einer Tagesration fuer mich sein, also 8 Portionen):
+
+zwei grosse Zwiebeln
+zwei Knoblauchzehen
+zwei kleine Paprika (rot und gruen ist huebsch)
+400 g Champignons
+400 g Hackfleisch (bei mir nur Schwein)
+2 Paeckchen Schmelzkaese (Sahne, Schinken oder Kraeuter passt gut)
+  a 150 Gramm
+300 ml Sahne
+Leitungswasser
+Koernerbruehe (Gemuese-)
+Salz
+Pfeffer
+etwas zum nachschaerfen (bisschen Tabasco, Cayennepfeffer, Chilis,
+                         Daves Insanity Sauce...)
+3 EL Olivenoel
+20 Minuten Zeit
+
+Zwiebeln einigermassen kleinschnippseln, in Oel anbraten, Pilze
+in Scheiben schneiden (vorher waschen), auch rein, genauso mit
+den Paprika. Nach 5 Minuten Hackfleisch zugeben, nochmal 5 Minuten
+mit anbraten. Knoblauchzehen kleingeschnitten zugeben, mit Sahne
+abloeschen und Schmelzkaese in einigermassen kleinen Portionen
+hineinruehren. Mit Wasser aufgiessen (vielleicht 0.5 Liter oder
+0.7 Liter) und fuer 500 ml Fluessigkeit Koernerbruehe zugeben.
+Aufkochen lassen, salzen, pfeffern, anschaerfen.
+
+Dazu passend: Baguette/Weissbrot mit:
+
+200 Gramm Butter
+1/2 Bund Petersilie
+1/2 Bund Schnittlauch
+Gewuerzsalz
+
+Butter warm werden lassen, Petersilie und Schnittlauch sehr
+fein schneiden und mit der Butter verruehren. Gut salzen.
+Wieder fest werden lassen und auf Baguette schmieren.
+
+       In einer Stunde esse ich das. :-)
+
+            Mahlzeit!      Bergchen Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kaesesuppe (Kartoffel, 14. Mai 1999, 09:46:52):
+~#! rn=Caradhras rt=926535301 rg=kochrezepte
+~#! tid=926535301
+So was aehnliches kenn ich auch, allerdings nehm ich Lauch anstelle des
+Gemueses und der wird dann puerriert in der Suppe (das angebratene Hack dann
+natuerlich erst _nach_ dem Puerieren drantun ;) )
+
+'Toffel
+
+-----------------------------------------------------------------------------
+
+
+
+coq au vin (Juan, 29. Mai 1999, 10:05:52):
+Hilfe!!!!!!
+ich suche dringend ein gescheites coq au vin rezept, so mit speck, pilzen etc.
+Falls jemand von euch weiss wo man sowas kriegen kann, bzw ein ueber hat dann
+bitte mailt es mir.
+danke
+
+-----------------------------------------------------------------------------
+
+
+
+juan (Teasel, 29. Mai 1999, 17:16:59):
+Hi Juan....
+Hi Juan....
+Ich habs mal nach folgendem Rezept gekocht:
+Ich habs mal nach folgendem Rezept gekocht:
+2 Haehnchen
+2 EL Oel
+2 gewuerfelte zweibeln
+4 moehren
+3 EL Mehl
+3/4 liter Rotwein
+1 Petersilienblatt, geschn.
+1 Lorbeerblatt
+20-30 kleine Zwiebeln
+1 EL Butter
+1 EL Zucker
+50 gr durchwachsener Speck
+250 g Champignons
+2 EL Petersilie gehackt
+2 EL Petersilie gehackt
+Haehnchen in Portionsstuecke teilen und in oel anbraten bis sich Bratensatz
+gebildet hat
+Zwiebeln und eine grob geschnittene Moehre dazugeben, 3 Min braun braten, mit
+Mehl bestaeuben, Rotwein zugiessen.
+Petersilienblatt, Lorbeer beigeben, mit salz wuerzen, 20 min bei mittl
+Temperatur schmoren lassen
+Mhren in stuecke schneiden, mit den kl. zwiebeln in Butter und oel auf
+hoechster Stufe 2 Min anbraten, mit Zucker, salz und pfeffer wuerzen, mit 4 EL
+Wasser 4 Min duensten
+Speckwuerfel und Champignons anbraten (2 min)
+Fleisch nach 20 Min herausnehmen, Sauce durch Sieb giessen, Gemuese mit
+Loeffel zerdruecken, mit Salz und pfeffer wuerzen und wieder zu fleisch in
+topf geben
+alles andere darauf geben, ca 15 kochen bei mittl Hitze
+alles andere darauf geben, ca 15 kochen bei mittl Hitze
+Mit Petersilie bestreuen
+Mit Petersilie bestreuen
+Ich hoffe das hilft dir weiter, bei meinen Gaesten hats jedenfalls anklang
+gefunden.
+Ich hoffe das hilft dir weiter, bei meinen Gaesten hats jedenfalls anklang
+gefunden.
+Guten Appetit
+Guten Appetit
+Teasel
+
+-----------------------------------------------------------------------------
+
+
+
+danke (Juan, 30. Mai 1999, 06:42:27):
+Danke!!!!
+hoert sich ganz nach dem rezept an, dass ich gesucht habe.
+Gruss
+Juan, der nun sich unverzueglich in die kueche begibt
+
+-----------------------------------------------------------------------------
+
+
+
+fruehstueck (Wurzel,  8. Aug 1999, 10:10:46):
+fruehstueck ist immer so eine sache. heute lag da so ein kuerbis, und ich
+banause hab natuerlich keine ahnung, was man mit so einem teil anfaengt.
+aber immer nur spiegeleier und speck sind auf die dauer auch langweilig...
+also gut, mal was ausprobieren. das ergebnis vorweg: war sehr lecker :)
+
+ein mittelgrosser kuerbis
+vier eier
+pfeffer, salz, thymian
+olivenoel
+
+den kuerbis schaelen, kerne entfernen, in stuecke schneiden.
+in einer kuechenmaschine (geht bestimmt auch anders, wenn man keine hat)
+fein zerkleinern, eier dazu und durchquirlen. pfeffer reinmahlen, salz und
+thymian dazu, nochmal durchruehren.
+in einer pfanne (am besten beschichtet) olivenoel erhitzen.
+die kuerbis-eier-masse zu kleinen pfannkuchen backen (geht im prinzip genau
+wie kartoffelpuffer: wenn der rand braun geworden ist, wenden. aber
+vorsichtig,
+das zeug ist recht weich).
+
+vielleicht sollte man ahornsirup dazu tun, hatte ich aber nicht da. auf jeden
+fall werd ich aber mal testen, was man mit kuerbissen noch so alles machen
+kann... wenn es wieder ein positives ergebnis bringt, werdet ihr es hier
+finden :)
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re: fruehstueck (Wurzel,  8. Aug 1999, 11:47:50):
+~#! rn=Wurzel rt=934107046 rg=kochrezepte
+~#! tid=934107046
+ach so, die menge reicht fuer zwei. falls sich jemand ueber die vier eier
+wundert :) bei kleinen kuerbissen mag das anders sein, aber dann sollten es
+auch weniger eier sein
+probiert es einfach mal aus, lohnt sich.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: fruehstueck (Gnome, 11. Aug 1999, 14:54:24):
+~#! rn=Wurzel rt=934112870 rg=kochrezepte
+~#! tid=934107046
+kuerbissuppe, bzw. kuerbis-kartoffel-suppe schmeckt absolut himmlisch,
+jedenfalls wenns meine mutter macht. :)
+rezept leider nicht zur hand, aber demnaechst mal in dieser rubrik.
+
+gnOme
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: fruehstueck (Yaren, 12. Aug 1999, 13:23:40):
+~#! rn=Gnome rt=934383264 rg=kochrezepte
+~#! tid=934107046
+kuerbissuppe ja, aber es muss eine scharfe sein, so mit sechuan-pfeffer und
+chili-schoten *schleck* :-)
+
+yaren
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: fruehstueck (Wurzel, 12. Aug 1999, 17:30:36):
+~#! rn=Yaren rt=934464220 rg=kochrezepte
+~#! tid=934107046
+hoert sich an, als waer das was fuer mich :)
+wo ist das rezept? her damit ...
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: fruehstueck (Grimmborn, 12. Aug 1999, 22:14:50):
+~#! rn=Wurzel rt=934479036 rg=kochrezepte
+~#! tid=934107046
+Du brauchst Kuerbis und Kartoffeln (etwa halbe-halbe) und etwas Wasser. Salz.
+Kuerbis und Kartoffeln im Salzwasser kochen. Puerieren. Nach Geschmack Chilli
+rein (ich hab da so puerierte Chillis aus dem Glas, aber das geht sicher auch
+anders). Mit Sahne abloesc^Wabschmecken. Essen.
+
+Kindereinfach und lecker.
+
+Grimmborn der Atheist
+
+-----------------------------------------------------------------------------
+
+
+
+Resteessen ;) (Mesirii, 12. Aug 1999, 22:20:36):
+Noch was schnelles:
+
+z.b. als Aufstrich fuer Fladenbrot (lecker)
+oder als Sosse fuer Pasta
+
+Zutaten:
+Champis (frisch oder Dose)
+1 Aubergine
+1/2 Feta (kann auch nachgemachter sein)
+2-3 Tomaten
+Zwiebeln, Knoblauch
+Salz, Pfeffer, Kraeuter d. Provence, Basilikum
+1 Pfanne
+1 Puerierstab
+
+Zwiebeln, Knoblauch kleinmachen, in Pfanne anschwitzen
+dann Champis dazu
+in der Zwischenzeit Aubergine wuerfeln und dann auch dran
+
+solange einkochen lassen bis die Fluessigkeit fast alle ist
+
+Feta kleinschnippeln und rein, wuerzen
+
+und dann alles mit dem Puerierstab zu Mus verarbeiten
+
+fertig
+
+ca. 20 Minuten
+
+ist lecker und macht satt (Wurzel und Cara* die doppelte Menge ;)
+
+Mesi
+
+-----------------------------------------------------------------------------
+
+
+
+Zur Feier des Tages... (Caradhras, 12. Dez 1999, 21:24:36):
+Huhu
+
+Mal wieder ein kleines (natuerlich selbstprobiertes) Rezept:
+
+Mandelparfait
+
+Man benoetigt:
+4 kleine Foermchen (ca. 100 ml je)
+80 bis 100 g Zucker
+40 bis 50 g gehackte, in Scheiben geschnittene oder wie auch immer
+                      geartete Mandeln
+3 Eigelb
+10 ml Zitronensaft
+1 TK-Paeckchen gemischte Beeren (salto oder so was)
+200 g Schlachsahne
+
+50 Gramm Zucker in Pfanne karamelisieren lassen (etwa auf Stufe
+1 bis 1.5 von 3 ist das), dann die Mandeln noch etwas feiner
+hacken, 3/4 davon mit in die Pfanne geben, wenn der Zucker
+karamelisiert ist, unterruehren. Wenn es hellbraun ist, 
+schnell! aus der Pfanne auf Backpapier geben, mit Loeffel
+glattstreichen, abkuehlen lassen. 
+
+3 Eigelb, restlichen Zucker und den Zitronensaft verruehren,
+ueber Wasserbad zu einer Creme aufschlagen, dann kaltruehren.
+Abgekuehltes Caramel zerbroeckeln (klein!), in die Eiercreme
+geben, die Sahne schlagen, darunterheben.
+
+Die Foermchen kurz mit kaltem Wasser ausspuelen, in die leicht
+feuchten Foermchen die Creme verteilen und 4 Stunden in das
+Tiefkuehlfach.
+
+So lange die Beeren auftauen lassen, mit einem Stabmixer puerieren
+und etwas Zucker dazugeben (1 bis 2 EL, je nachdem, ob ihr's sauer
+moegt). In einer kleinen Pfanne etwas Butter (oh, vergessen im Rezept)
+zerlaufen lassen (10 bis 15 Gramm reichen), darin die restlichen Mandeln
+braeunen und dann die gestuerzten Foermchen (quatsch, der Inhalt derselben)
+auf einem Teller mit der Beerensauce und etwas Mandeln servieren.
+
+Mahlzeit. Und hat KAUM Kalorien. :)
+
+          Bergchen Caradhras - wie immer hungrig
+PS: Was macht ihr eigentlich mit dem Eiweiss, das uebrig ist?
+    Jemand da noch ein paar Tipps?
+
+-----------------------------------------------------------------------------
+
+
+
+Kekse (Groo, 12. Dez 1999, 23:00:42):
+Schokoladenkekse
+Teig: 140 g Butter mit 50 g Puderzucker verrhren. 20 g Kakao, 1/2 EL Espresso
+und 20 g zartbitter
+Raspelschokolade darunterrhren. Mit nassen Hnden haselnugroe Kugeln formen,
+auf ein mit Backpapier
+ausgelegtes Blech setzen und die Kugeln mit einer bemehlten Gabel flach
+drcken. Bei 175 Grad 8-10
+Minuten backen. Auskhlen lassen. Gu: 200 g kuvertre hacken und im Wasserbad
+erhitzen. Pltzchen zur
+Hlfte eintauchen. Trocknen lassen. (40 Stck.)
+ 
+Zimtbllchen
+3 Eiwei steif schlagen. 250 g Puderzucker und 1 Pckchen Vanillezucker
+einrieseln lassen, dabei stndig
+weiter rhren. Ca. 4 EL vom Eischnee beiseite stellen. Zimt  und 300 g gehackte
+Haselnsse unter die
+restliche Masseheben. Mit nassen Hnden walnussgroe Kugeln formen. Auf ein
+Backblech setzen und mit
+einem Holzlffelstiel eine Vertiefung in die mitte drcken. Bllchen mit
+restlichem Eischnee bestreichen und
+jeweils eine ganze Haslnuss daraufsetzen. Bei 125 Grad ca. 25 - 30 minuten
+backen. (etwa 50 Stck.)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Zur Feier des Tages... (Wurzel, 15. Dez 1999, 17:46:43):
+~#! rn=Caradhras rt=945030276 rg=kochrezepte
+~#! tid=945030276
+kaum kalorien? wenn ich das lese, frage ich mich ob ausser kalorien noch was
+anderes dran ist... 
+
+wurzel
+
+p.s. uebrig gebliebenes eiweiss werfe ich weg.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Zur Feier des Tages... (Yendi, 16. Dez 1999, 15:06:43):
+~#! rn=Caradhras rt=945030276 rg=kochrezepte
+~#! tid=945030276
+Aus uebriggebliebenem Eiweiss kann man wunderbar Kokosmakronen machen...
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Zur Feier des Tages... (Jasper, 16. Dez 1999, 20:50:40):
+~#! rn=Jasper rt=945367698 rg=kochrezepte
+~#! tid=945030276
+alternativ kannst du dir auch den hund anschaffen und ihm/ihr das eiweiss in
+den futternapf kippen, was besseres faellt mir damit auch nie ein.
+PS: wenn du das eiweiss an nen hund verfuetterst solltest du es vorher etwas
+aufschlagen, sonst ziehen sich die faeden vom bart des hundes durch die ganze
+wohnung 
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kekse (Caradhras, 16. Dez 1999, 21:41:11):
+~#! rn=Groo rt=945036042 rg=kochrezepte
+~#! tid=945036042
+Gute Idee mit den Plaetzchen.
+Ganz vergessen, dass schon Weihnachten ist.
+
+Jo, Wurzel, das hat wenich Kalorien, normalerweise hat, was ich
+mache, mehr Kalorien. Jaja, ich weiss, ungesund, aber dafuer
+gut. 
+/ignoriere jesper :)
+
+           Bergchen Caradhras - macht naechste Woche Plaetzle
+
+-----------------------------------------------------------------------------
+
+
+
+spargel... (Wurzel, 28. Apr 2000, 22:09:14):
+es gibt zwar schlimmeres als bayrischen spargel, aber so ganz ist er das
+dann doch nicht. mit anderen worten: weiss jemand, wie man das zeug so
+hinbekommt, wie richtiger spargel aus dem griesheimer sand schmeckt?
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re: spargel... (Trance, 29. Apr 2000, 12:45:02):
+~#! rn=Wurzel rt=956952554 rg=kochrezepte
+~#! tid=956952554
+
+Ahh, der alljaehrleiche Spargelflamewar!
+
+So langsam muesste sich doch auch ins tiefste bayern rumgesprochen haben, das
+der einzig wahre Spargel im Hanuaerland in der Ortenau waechst. Wers nicht
+glauben mag, soll mal in die Blume in Auenheim gehn. Ich geh dann gern mit!
+
+Gruss, Trance, keine Spargelfetischistin ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: spargel... (Liara, 29. Apr 2000, 13:54:24):
+~#! rn=Trance rt=957005102 rg=kochrezepte
+~#! tid=956952554
+Der einzig wahre Deutsche Spargel kommt natuerlich aus BORNHEIM.
+
+Liara, Zwergenzauberine ... und wer Spargel nicht selber zubereitet, sondern
+Essen geht, hat eh keine Ahnung ;-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: spargel... (Ronda,  1. Mai 2000, 15:58:25):
+~#! rn=Liara rt=957009264 rg=kochrezepte
+~#! tid=956952554
+Ok, ok, geht klar... wer macht mit?
+Da sich da ja einige fuer die einzig wahren Spargel-Kocher halten: wer mag mit
+Spargeltester machen und einmal quer durch (MG)-Deutschland fahren, um sich
+bei all den Spitzenkoechen einmal durchzufre... oehm... durchzutesten?
+
+Ronda *laeuft allein bei dem Gedanken schon das (Spargel)-Wasser im Mud
+zusammen*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: spargel... (Leibniz,  1. Mai 2000, 19:06:12):
+~#! rn=Ronda rt=957189505 rg=kochrezepte
+~#! tid=956952554
+ichichichich
+
+leibi schmatzt schon
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: spargel... (Catweazle,  4. Mai 2000, 00:24:09):
+~#! rn=Trance rt=957005102 rg=kochrezepte
+~#! tid=956952554
+Spargelflamewar? Alljaehrlich?
+
+Faszinierend, was es so alles gibt. Koennt ich Euch nicht um ein paar
+sinnvolle Dinge schlagen? Betriewbssysteme zum Beispiel. Oder Editoren. 
+
+YTC
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: spargel... (Iscariat,  4. Mai 2000, 00:27:31):
+~#! rn=Trance rt=957005102 rg=kochrezepte
+~#! tid=956952554
+
+Ich moechte freundlichst daraufhinweisen, das der einzig wahre Spargel von der
+Wildeshauser Geest stammt.
+
+Mit freundlichem Gruss
+Iscariat
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: spargel... (Yendi,  4. Mai 2000, 11:01:45):
+~#! rn=Catweazle rt=957392649 rg=kochrezepte
+~#! tid=956952554
+Was gibt es ueber Betriebssysteme schon zu sagen?
+WindowsXX ist Standard und Optimum.
+
+Yendi
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: spargel... (Zarniya,  4. Mai 2000, 11:02:27):
+~#! rn=Yendi rt=957430905 rg=kochrezepte
+~#! tid=956952554
+du meinst Opium, oder?
+
+Marc
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: spargel... (Karis,  4. Mai 2000, 11:03:27):
+~#! rn=Yendi rt=957430905 rg=kochrezepte
+~#! tid=956952554
+Das XWindows standard und Optimum ist, ist klar.
+Bisher unbekannt war mir, dass das schon als Betriebssystem laeuft ;)
+
+Karis, kennt sich da total aus ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: spargel... (Hobo,  4. Mai 2000, 11:05:35):
+~#! rn=Yendi rt=957430905 rg=kochrezepte
+~#! tid=956952554
+Spargel, Spargel *mjam*
+
+Mir aellt da grad so halbwegs ein Rezept ein, das wirklich lecker war.
+Man nehme Spargel (weissen), ein halbes Brot (Ober- oder Unterseite, nicht
+links/rechts), Sauce hollondaise mit Kerbel und einen Ofen.
+Fuelle das ausgehoehlte Brot mit den Spargelstangen (sauber und gekocht),
+uebergiesse das Ganze mit Sauce und lasse es im Backofen (angestellt!), bis
+die Sauce leicht angebraeunt ist.
+
+->*
+schmatz
+*
+
+   Hobo
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: spargel... (Apsu,  4. Mai 2000, 15:41:10):
+~#! rn=Yendi rt=957430905 rg=kochrezepte
+~#! tid=956952554
+>WindowsXX ist Standard und Optimum.
+                            ^^^^^^^
+
+typo Optimum sollte wohl Opium heissen.
+
+Apsu ;-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: spargel... (Wurzel,  4. Mai 2000, 23:25:06):
+~#! rn=Catweazle rt=957392649 rg=kochrezepte
+~#! tid=956952554
+betriebssysteme? editoren? quatsch. spargel hat wenigstens eine gewisse
+wichtigkeit. und wer sich einmal wirklich die muehe gemacht hat, die
+spargelregionen abzufressen, weiss dass die unterschiede relevant sind (und
+deutlich groesser als beispielsweise zwischen windoof und linux). essen ist
+kultur! und spargel wird es auch noch in hundert jahren geben, wenn kein
+mensch mehr windoof kennt.
+
+wurzel
+
+p.s. kennt eigentlich noch jemand das einzige wirklich lustige betriebssystem?
+     bevor jemand fragt: cp/m natuerlich :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: spargel... (Liara, 14. Mai 2000, 14:07:40):
+~#! rn=Wurzel rt=957475506 rg=kochrezepte
+~#! tid=956952554
+Ach ja, ganz vergessen ... *g*
+
+Spargelschaeler und Spargelkochtoepfe sind was fuer Weicheier. ;-)
+
+Liara, Zwergenzauberine
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: spargel... (Trance, 14. Mai 2000, 19:21:31):
+~#! rn=Liara rt=958306060 rg=kochrezepte
+~#! tid=956952554
+Genau. Ist "Spargelschaelerbenutzer" schon auf der Weicheier-Synonymliste?
+
+Trance.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: spargel... (Wurzel, 14. Mai 2000, 23:19:44):
+~#! rn=Trance rt=958324891 rg=kochrezepte
+~#! tid=956952554
+ist es, jedenfalls auf der liste die ich gesehen hab :)
+trotzdem werden spargel in einem entsprechenden spargeltopf besser. und mit
+einem spargelschaeler laesst sich auch schneller ein gutes ergebnis
+erzielen.
+
+wurzel duscht auch warm :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: spargel... (Hobo, 15. Mai 2000, 08:31:22):
+~#! rn=Wurzel rt=958339184 rg=kochrezepte
+~#! tid=956952554
+Es gibt uebrigens auch Spargelschaelmaschinen - mit lasergesteuerten Messern.
+
+  Hobo - hat mal wieder fern gesehen
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: spargel... (Wurzel, 15. Mai 2000, 21:12:08):
+~#! rn=Hobo rt=958372282 rg=kochrezepte
+~#! tid=956952554
+hm, DAS ist nun wirklich dekadent :)
+wo gibts die?
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: spargel... (Hobo, 16. Mai 2000, 08:38:25):
+~#! rn=Wurzel rt=958417928 rg=kochrezepte
+~#! tid=956952554
+Hmm, bei so nem Pfaelzer (wo auch sonst) Bauern auf dem Hof.
+Der verkauft seinen Spargel gleich im Laden und hat sich so ein Maschinchen
+fuer 40 TDM (wenn ich's noch richtig weiss) hingestellt.
+Also eher nix fuer die kleine Kueche ;)
+
+   Hobo
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: spargel... (Yendi, 16. Mai 2000, 10:54:57):
+~#! rn=Hobo rt=958372282 rg=kochrezepte
+~#! tid=956952554
+Artikel in der heutigen TAZ: 50,- DM fuer ein huebsches kleines
+Spargelschaelautomatchen mit freischwingenden, sich der Form der Stange
+automagisch anpassenden Messern.
+Soll sehr schnell, effizient und elegant arbeiten.
+Weitere Ausbausaetze fuer Moehren, Gurgen etc. sind in Arbeit.
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: spargel... (Wurzel, 16. Mai 2000, 22:13:18):
+~#! rn=Yendi rt=958467297 rg=kochrezepte
+~#! tid=956952554
+ist das teil denn auch lasergesteuert? wenn schon dekadent, dann richtig :)
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: spargel... (Apsu, 17. Mai 2000, 19:58:02):
+~#! rn=Wurzel rt=958507998 rg=kochrezepte
+~#! tid=956952554
+Und wo bleibt bei dem Lasergesteuerten Spargelschaeler der eingebaute
+Whirlpool? 
+
+Apsu, schwitzend
+
+-----------------------------------------------------------------------------
+
+
+
+Tortillas ? (Njala, 16. Nov 2000, 13:57:35):
+Heyla, 
+
+Gibt es hier einen Gluecklichen, der ein Rezept dafuer hat, Tortillas selbst
+herzustellen ? Moeglichst aus Maismehl. 
+Mir ist schon klar, dass man die Dinger fertig kaufen kann, aber ich liebe die
+Herausforderung. 
+
+   Njala
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Tortillas ? (Sand, 16. Nov 2000, 21:37:05):
+~#! rn=Njala rt=974379455 rg=kochrezepte
+~#! tid=974379455
+http://kochbuch.unix-ag.uni-kl.de/ Dann Stichwortsuche, dort nach
+Tortillas suchen.
+HTH, Sand
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Tortillas ? (Wurzel, 16. Nov 2000, 21:38:46):
+~#! rn=Njala rt=974379455 rg=kochrezepte
+~#! tid=974379455
+ist recht einfach...
+
+500 g masa harina (maismehl)
+300 ml wasser
+1 tl salz
+
+zutaten zu einem teig vermischen und kneten. wenn es klebt, mehr masa harina
+nehmen, wenn es staubt, mehr wasser. ordentlich durchkneten.
+aus dem teig kleine portionen abnehmen, zu kugeln formen. wenn du eine
+tortillapresse besitzt: jetzt ist der zeitpunkt dafuer :) wenn nicht, sonst
+auf irgend eine art SEHR duenn machen, mit einem teigroller o.ae.
+in eine schwere bratpfanne (gusseisen ist am besten) etwas schweineschmalz
+geben, alternativ erdnussoel oder ein anderes oel, was sich stark 
+erhitzen laesst. heiss machen, die tortillas von beiden seiten kurz braten,
+bis sich die raender heben und die tortillas leicht gebraeunt sind. fertig.
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Tortillas ? (Wurzel, 16. Nov 2000, 21:41:03):
+~#! rn=Wurzel rt=974407126 rg=kochrezepte
+~#! tid=974379455
+ganz vergessen... es gibt natuerlich auch varianten. sehr beliebt (bei mir
+zumindestens :) ist die variante, gemahlene chilis in den teig zu mischen...
+
+viel erfolg
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Tortillas ? (Kartoffel, 16. Nov 2000, 23:32:31):
+~#! rn=Wurzel rt=974407263 rg=kochrezepte
+~#! tid=974379455
+Hatte mich schon gewundert...
+
+Ein Wurzel-REzept ganz ohne Chilis, das geht ja schliesslich nicht :)
+
+'Toffel 
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Tortillas ? (Qitess, 20. Nov 2000, 21:50:22):
+~#! rn=Njala rt=974379455 rg=kochrezepte
+~#! tid=974379455
+wasser, maismehl und eier i...aeh huch, ich seh nix mehr...
+nochmal von vorne:
+wasser, maismehl, eier und ein bisserl m,ilch zusammenmischen, bis ein netter
+ziehmiger brei entsteht. in der pfanne mit wenig fett anbacken. fertig.
+ja.
+schmeckt. die zusammensetzung im genauen weiss ich aber auch nicht mehr, ich
+habs mir nicht aufgeschrieben...
+QI**
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Tortillas ? (Liara, 20. Nov 2000, 22:11:09):
+~#! rn=Qitess rt=974753422 rg=kochrezepte
+~#! tid=974379455
+Wieso muessen Leute eigentlich in (fast) alles Eier reintun. :-)
+
+LZ
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Tortillas ? (Lug, 20. Nov 2000, 22:12:01):
+~#! rn=Liara rt=974754669 rg=kochrezepte
+~#! tid=974379455
+In die Eier Satans heisst es:
+
+Und KEINE Eier...
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Tortillas ? (Zarniya, 21. Nov 2000, 09:02:15):
+~#! rn=Lug rt=974754721 rg=kochrezepte
+~#! tid=974379455
+Was schon fast Kultur ist, wenn Lug hier einen versteckten Hinweis auf das
+supergeile Album von der Gruppe TOOL deutet, wo der Song zu finden ist...
+Einfach nett, dieser Slowmotion Grunge gemischt mit den Instrumenten der
+australischen Ureinwohner... 
+
+Marc
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Tortillas ? (Yendi, 21. Nov 2000, 11:37:17):
+~#! rn=Zarniya rt=974793735 rg=kochrezepte
+~#! tid=974379455
+Naja, der Akzent ist aber heftig.
+
+YTY
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Tortillas ? (Qitess, 21. Nov 2000, 17:14:09):
+~#! rn=Liara rt=974754669 rg=kochrezepte
+~#! tid=974379455
+du kannst sie auch weglassen, tut keinen abbruch, wenn du sie vorher aber -
+vor allem das eiweiss - schoen schaumig schlaegst, bekommt das gebaeck einen
+sehr fluffigen charakter.
+qi**
+      hat was gegen allergiker, die immer riummosern irgendetwasnicht zu
+vertragen.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Tortillas ? (Ancalagon, 23. Nov 2000, 22:00:34):
+~#! rn=Qitess rt=974823249 rg=kochrezepte
+~#! tid=974379455
+Tagchen!
+Hmm, Tortillas hatte ich eigentlich nicht als "fluffig" in erinnerung...... :)
+Ancalagon plaediert fuer "Eier rauslassen"!
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Tortillas ? (Wurzel, 26. Nov 2000, 17:30:59):
+~#! rn=Ancalagon rt=975013234 rg=kochrezepte
+~#! tid=974379455
+dem schliesse ich mich an. wer pfannkuchen macht, sollte sie nicht als
+tortillas bezeichnen. auch nicht, wenn maismehl verwendet wird.
+man kann tortillas uebrigens auch mit weizenmehl machen (natuerlich ohne
+eier oder sowas).
+wird auch in mexico gelegentlich gemacht, allerdings eher selten, da weizen
+dort wohl teurer ist als mais. wenn man hierzulande zum mexikaner geht,
+bekommt man fast ausschliesslich weizentortillas (wie immer, wird auch da
+alles geschmacklich europaeisiert, gibt leider nur sehr wenige ausnahmen)
+
+wurzel
+
+p.s. ich kenne da einen inder, wenn man dort "scharf" bestellt, dann ist es
+auch scharf... meist heisst "scharf" oder "sehr scharf" ja nur, dass es nicht
+ganz so labberig schmeckt wie der rest. bei besagtem inder hagelt es denn
+auch regelmaessig beschwerden, wenn der wagemutige deutsche familienvater
+"scharf" bestellt und es hinterher nicht essen kann, weil seine zarten
+schleimhaeute weggeaetzt werden... mal sehen, wie lange der inder das noch
+durchhaelt.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Tortillas ? (Alboin, 26. Nov 2000, 21:49:44):
+~#! rn=Wurzel rt=975256259 rg=kochrezepte
+~#! tid=974379455
+kicher* das erinnert mich an so ein Festival wo ne mobile Bude mit indischem
+Essen war. So naiv wie ich war dachte ich das Essen waere hoechstens
+europaeisch scharf und zerkleinerte noch ein paar frische chillis ueber dem
+Essen. Beim Essen war ich dann wohl eher mit dem Wegwischen der Traenen als
+mit dem Kauen beschaeftigt ;-)
+
+Alboin
+
+-----------------------------------------------------------------------------
+
+
+
+fuer tower :) (Wurzel,  6. Jan 2001, 15:44:31):
+hm, ein "westindischer pfeffertopf" ist nachgefragt worden...
+und dann auch noch mit zutaten, die hierzulande leicht zu bekommen sind.
+
+ich hab mal ein jambalaya-rezept genommen und leicht modifiziert. garantie
+dafuer, dass es "original" schmeckt, kann ich allerdings nicht uebernehmen :)
+
+man braucht:
+
+200 g weisse bohnen
+150 g reis
+1 huehnerbrust
+1 chorizo (hm, ein ersatz dafuer ist nicht einfach. evtl eine scharfe salami,
+           wie es sie beim italiener als pepperoniwurst gibt)
+1 packung shrimps (am besten tiefgekuehlte bereits geschaelte nehmen)
+1 rote paprika
+1 gelbe oder gruene paprika
+1 frische jalapeno-chilischote, wenn zu bekommen, ansonsten 1 rote pepperoni
+2 kleine zwiebeln
+2-3 frische knoblauchzehen
+1 tl chilipulver, mild
+cayennepfeffer
+1 prise zucker
+etwas salz
+oel oder schmalz zum anbraten
+sonstige gewuerze: kurkuma, cumin, koriander
+
+bohnen ueber nacht einweichen.
+chorizo in scheiben schneiden und in einer pfanne scharf anbraten. zwiebeln
+kleinschneiden und kurz mit anbraten. knoblauch in stuecke schneiden.
+shrimps auftauen lassen, kurz mit kaltem wasser abspuelen und abtropfen
+lassen.
+paprika und chili kleinschneiden, kerne und trennwaende entfernen. wer will,
+kann die teile vorher noch haeuten, aber vorsicht: das will gekonnt sein :)
+
+bohnen im wasser zum kochen bringen. nach etwa 20 minuten den reis, die chili
+und paprika sowie chorizo dazu geben. temperatur runterregeln. weitere 5-10 
+minuten spaeter zwiebeln, knoblauch und die kleingeschnittene huehnerbrust 
+dazu geben. unter haeufigem ruehren leicht koecheln lassen, ggf etwas 
+fluessigkeit nachgiessen (am besten huehnerfond, geht aber auch ordinaeres 
+wasser :) und wuerzen. es sollte nicht zu viel fluessigkeit werden, es ist
+keine suppe...
+nach 10 minuten shrimps dazu geben, nochmal kurz und heftig aufkochen (ruehren
+nicht vergessen).
+
+dazu wuerde ich ein weissbrot und einen leichten wein empfehlen.
+
+viel spass
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re: *wuerg**brech*kotz* (Gloinson, 24. Apr 2001, 18:45:19):
+~#! rn=Solmyr rt=988130484 rg=schmarrn
+~#! tid=988130484
+Ich empfehle bei Magenverstimmung ungesuessten schwarzen Tee und Zwieback.
+Kohlefrass ist zwar wirksam aber eben eklig. In der DDR gabs das als Pulver
+zum Runterwuergen *oerks*.
+
+Gloin(son) sagt: Los, weitere Tips!
+
+PS: Auf die Pizza empfehle ich viel Kaese. Nein, noch mehr! :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: *wuerg**brech*kotz* (Solmyr, 24. Apr 2001, 18:46:25):
+~#! rn=Gloinson rt=988130719 rg=kochrezepte
+~#! tid=988130484
+Kohle verabreicht man ja eigentlich auch nur bei nem TablettenIntox und davon
+ist XXX ja hoffentlich meilenweit entfernt :)
+
+Sol*
+
+-----------------------------------------------------------------------------
+
+
+
+Truthahn mit Whisky (Karis, 17. Jun 2001, 23:01:37):
+Sehr empfehlenswert. In den verschiedensten Faellen. Insbesondere, nachdem
+die Spargelzeit ja nun wohl vorbei ist (war eh ein schlechtes Jahr...)
+Aber kommen wir zu Potte:
+
+Truthahn mit Whisky.
+
+Man kaufe einen Truthahn von fuenf Kilo (fuer sechs Personen) und eine
+Flasche Whisky.
+
+Dazu Salz, Pfeffer, Olivenoel und Speckstreifen.
+
+Truthahn mit Speckstreifen belegen, schnueren, salzen, pfeffern und etwas
+Olivenoel dazugeben.
+
+Ofen auf 200 grad einstellen.
+
+Dann ein Glas Whisky einschenken und auf gutes Gelingen trinken.
+
+Anschliessend den Truthahn auf einem Backblech in den Ofen schieben.
+
+Nun schenke man sich zewi schnelle Glaeser Whisky ein und trinke wieder auf
+gutes Gelingen.
+
+Den Thermostat nach 20 min auf 250 Grad stellen, damit es ordentlich brummt.
+
+Danach schenkt man sich drei weitere Whisky ein.
+
+Nach halm Schdunde oeffnen, wenden und den Braten ueberwachen.
+
+Die Fisskieflasche ergreiff unn sich eins hinner die Binde kipp.
+
+Nach 'ner weitern albernen Schunnde langsam bis zzum Ofen hinschlendern und 
+die Trute umwenden.
+
+Drauf actn, sisch nitt die Hand zu Vabrennn an die Schaisss-Ohfnduer.
+
+Sisch wadere ffuenff odda siehm Wixki innen Glas sisch unn dann unn so...
+
+D Drute weehrent drrai Schunn'nt (iss auch egal) waiderbraan un all ssehn
+Minud'n pinkeln.
+
+Wenn uerntwi moeschlisch, ssum Trathuhn hinkrieschn unn den Ohwn aus'm Viech
+ziehn.
+
+Nommal ein Schlugg geneemign un anschliesnt wida fasuchen, das Biest
+rauszukrign.
+
+Den fadammt'n Vogel vom Bodn aufflaesen unn uff ner Bladde hinrichten.
+
+Uffbasse, dass nitt Ausrutschn auff'm schaissffettichen Kuehnboden.
+
+Wenn sisch drossdem nitt fameiden fasuhn wida
+ufssuschichtnodersohahahaisallesjaeeeeehscheissegaaaaal!!!!!!!!!!!!
+
+...
+
+Ein wenig schlafen. Am naechsten Tag den Truthahn mit Mayonaise und
+Aspirin kalt essen.
+
+Generaelchen Karis.
+
+PS. Fuer den ersten Teil kann man auch Whiskey nehmen. 
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Truthahn mit Whisky (Wurzel, 18. Jun 2001, 11:36:03):
+~#! rn=Karis rt=992811697 rg=kochrezepte
+~#! tid=992811697
+bis auf den letzten teil ist das rezept ganz okay. aspirin stimmt auch noch,
+aber einen truthahn, der mehrere stunden bei 250 grad gebraten hat, kann
+man eigentlich nur noch als ersatz fuer streusalz im winter verwenden. und
+mayonaise passt da auch nicht dazu.
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Mein Lieblingscocktail (Foobar,  9. Jul 2001, 15:00:27):
+Moin.
+
+Zwar wird bei meinem Lieblingscocktail nix gekocht, ich halte dies hier aber
+fuer die passendste Rubrik.
+
+Zutaten:
+--------
+
+2 cl guter Weizenkorn
+1 Tuetchen Ahoi-Brause (Geschmacksrichtung egal, ich empfehle Waldmeister)
+
+Zubereitung:
+------------
+
+Korn (bitte eiskalt) in ein Schnapsglas fuellen.
+Brause-Tuetchen oeffnen.
+Brause in den Mund schuetten.
+Korn in den Mund schuetten.
+Kurz aufschaeumen lassen und schliesslich herunterschlucken.
+
+Prost!
+
+Foobar
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Mein Lieblingscocktail (Foobar,  9. Jul 2001, 15:03:12):
+~#! rn=Foobar rt=994683627 rg=kochrezepte
+~#! tid=994683627
+Oh, ich hab den Namen vergessen. Dieser Cocktail ist bei uns als "Korn Ahoi"
+bekannt ;o)
+
+Foobar
+
+-----------------------------------------------------------------------------
+
+
+
+Kuchen ... (Liara, 13. Aug 2001, 22:38:32):
+Wie verhindere ich das Durchweichen eines Kuchenbodens mit dem Saft des
+Obstbelags?
+
+LZZ, bittet um saemtliche Kuechenweisheiten von Oma und so ... ;-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kuchen ... (Mupfel, 13. Aug 2001, 22:56:21):
+~#! rn=Liara rt=997735112 rg=kochrezepte
+~#! tid=997735112
+Margarine drauf schmieren
+
+-mupfel-
+hilft gerne mit Omas Rezepten aus
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kuchen ... (Linflas, 13. Aug 2001, 22:56:51):
+~#! rn=Liara rt=997735112 rg=kochrezepte
+~#! tid=997735112
+Obst abtrocknen. Alternativ legst du was drunter. Alufolie soll da helfen,
+aber nicht gut schmecken, ich empfehle eine Creme dazwischenzupacken.
+
+LinflAS.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Kuchen ... (Morgoth, 13. Aug 2001, 22:56:57):
+~#! rn=Mupfel rt=997736181 rg=kochrezepte
+~#! tid=997735112
+alufolie drunter legen soll auch helfen
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Kuchen ... (Grimmborn, 13. Aug 2001, 22:57:46):
+~#! rn=Morgoth rt=997736217 rg=kochrezepte
+~#! tid=997735112
+Man sieht oft das Obst in so einem Gelatinegelee. Aber was die Backkunst
+angeht bin ich ziemlich inkompetent...
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kuchen ... (Liara, 13. Aug 2001, 22:58:25):
+~#! rn=Liara rt=997735112 rg=kochrezepte
+~#! tid=997735112
+Hier uebrigens das passende Rezept dazu:
+
+Johannisbeer-Pfirsich-Crumble
+
+250 g rote Johannisbeeren
+750 g Pfirsiche
+Backpapier oder Fett fuer die Form
+190 g Butter
+150 g Zucker (100 g reichen)
+2 Pck. Vanillinzucker
+1 Prise Salz
+1 Prise Zimt
+150 g gehackte Haselnuesse (Mandeln ohne Schale sind noch besser)
+270 g Mehl
+Puderzucker zum Bestaeuben
+
+- wenig Aufwand!, Vorbereitungszeit 20 Minuten, Backzeit 40 Minuten
+
+Beeren waschen, trocknen, von den Rispen streifen; Pfirsiche waschen,
+halbieren, entsteinen, je nach Groesse in 4 - 6 Spalten teilen;
+Elektro-Ofen auf 175 Grad vorheizen, Boden einer Springform (26 cm
+Durchmesser) mit Backpapier auslegen oder einfetten;
+Butter mit Zucker, Vanillinzucker, Salz, Zimt, Nuessen und Mehl zu Streuseln
+verarbeiten (Knethaken Mixer);
+gut 3/4 der Streusel leicht auf den Boden der Form druecken (einen kleinen
+Rand formen hilft schonmal, damit der Kuchen nicht sofort auslaeuft ;), Obst
+darauf verteilen, mit den uebrigen Streuseln bestreuen;
+Kuchen im Ofen auf der mittleren Schiene bei 175 Grad (Gas:Stufe 2) in etwa 40
+Minuten goldbraun backen, mit Puderzucker ueberstaeuben;
+vor dem Ueberfuehren auf eine Kuchenplatte besser abkuehlen lassen ;-)
+
+Hab's getestet, schmeckt sensationell nach Streuseln und die Kombination der
+suessen Pfirsiche mit den eher saeuerlichen Beeren ist Spitze! Macht praktisch
+gar keine Arbeit ... habe halt nur das Durchweich-Problem. ;-)
+Habe es schonmal mit Mandelblaettchen auf dem Boden versucht und helles
+Tortenzeugs draufgestreut. Das ging ganz gut, aber schmeckte etwas durch.
+
+LZZ
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Kuchen ... (Mupfel, 13. Aug 2001, 22:58:53):
+~#! rn=Morgoth rt=997736217 rg=kochrezepte
+~#! tid=997735112
+Nee ehrlich. so mach ich das auch immer, vor allem zur erdbeerzeit: fertigen
+boden kaufen, *duenne* schicht margarine drauf (eventuell da noch etwas
+vanillepudding drauf) und dann die fruechte... gibt nix besseres
+
+-mupfel-
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Kuchen ... (Weatherwax, 13. Aug 2001, 22:59:25):
+~#! rn=Linflas rt=997736211 rg=kochrezepte
+~#! tid=997735112
+Eine Tag- oder eine Nachtcreme?
+
+Wx
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Kuchen ... (Kartoffel, 13. Aug 2001, 22:59:29):
+~#! rn=Morgoth rt=997736217 rg=kochrezepte
+~#! tid=997735112
+
+hab mal gelesen, dass es helfen soll, ein Paeckchen Sahnesteif auf den Boden
+zu streuen.#
+Schwiegermutter macht gerne ne Schicht Marzipan zwischen Boden und Obst.
+
+Gruss
+`Toffel
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Kuchen ... (Linflas, 13. Aug 2001, 23:06:33):
+~#! rn=Kartoffel rt=997736369 rg=kochrezepte
+~#! tid=997735112
+Ihr seid ja allesamt ekelhaft. Margarine auf den Tortenboden schm,eckt doch
+Scheisse. Und es handelt sich weder um Tages-, noch nachtcreme, sondern um
+reinste und feinste Sahnecreme, die man hoechstens zum Faeltchenwegdruecken in
+der Nacht auf die blanke Haut schmieren sollte - oder halt um den Tortenboden
+vom achsogeliebtenm Obst zu trennen um ein durchnaessen zu vermeiden.
+
+Linflas, ohne Punkt, Komma, mit einem langen Satz und nervigem win2k-telnet.
+\
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Kuchen ... (Linflas, 13. Aug 2001, 23:11:19):
+~#! rn=Linflas rt=997736793 rg=kochrezepte
+~#! tid=997735112
+Da faellt mir aber auch noch was ein: Oblaten eignen sich sicherlich
+hervorragend um das gesuchte Ergebnis zu erzielen, sollte man auf Sahne und
+frische Eier aufgrund einer Salmonellengefahr nicht zurueckgreifen wollen.
+ISonst favorisire ich immernoch Torten. Da hat man keinen Boden der
+durchweicht, sie schmecken eh besser, viel sahniger und sowieso lecker. Nichts
+geht ueber eine gute Schwarrzwaelderkirschtorte - obwohl das schon das einzige
+aus dem Schwarzwald ist, was mich reizt. Hoechstens noch Kuckucksuhren. Aber
+sonst gibtsa da ja nix mehr.
+
+Linflas, zur Zeit im provinziellen Exil.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Kuchen ... (Liara, 13. Aug 2001, 23:12:19):
+~#! rn=Linflas rt=997737079 rg=kochrezepte
+~#! tid=997735112
+Dich reizen Schwarzwaelder Kirsch und Kuckucksuhren?
+
+LZZ, wundert sich ueber gar nix mehr ;-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Kuchen ... (Amaryllis, 13. Aug 2001, 23:13:27):
+~#! rn=Linflas rt=997737079 rg=kochrezepte
+~#! tid=997735112
+Aha. Man sieht deutlich, dass Du vom Schwarzwald _ueberhaupt_ keine Ahnung
+hast.
+
+Ama*, Sueddeutschel vom Fach und ueberhaupt, gerade erst vom Schwarzwald nach
+Koelle gezogen, und einiges vermissend...
+
+-----------------------------------------------------------------------------
+
+
+
+Wan Tan (Vanion, 13. Aug 2001, 23:13:31):
+Hi,
+
+Wenn wir grad mal dabei sind, diese Rubrik wieder zu befuellen: 
+
+Hat jemand eine Nette Idee, was man in Wan Tan-Blaetter fuellen koennte?
+
+V*, bittet um nicht allzu exotische Fuellungen (ich kenn euch doch)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Wan Tan (Linflas, 13. Aug 2001, 23:14:23):
+~#! rn=Vanion rt=997737211 rg=kochrezepte
+~#! tid=997737211
+Reis?
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Kuchen ... (Linflas, 13. Aug 2001, 23:16:46):
+~#! rn=Amaryllis rt=997737207 rg=kochrezepte
+~#! tid=997735112
+Klar, Ama*, fuer mich gilt ja auch der Weisswurstaequator den ich bisher nur
+einmal ueberquert habe um Muenchen eine Woche lang zu besuchen. Leider war es
+dort schon nach zwei Stunden langweilig, wie soll es dann im Schwarzwald sein?
+:-)
+
+Linflas, Neu-Berliner aus Ueberzeugung.
+.,
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Kuchen ... (Mupfel, 13. Aug 2001, 23:21:46):
+~#! rn=Linflas rt=997737406 rg=kochrezepte
+~#! tid=997735112
+Im Schwarzwald ist zunaechst einmal Wald. Und Berge. Und im Winter erstaunlich
+viel Schnee (frag mal Amaryllis *vorsichtig* danach ;) Und in den
+Tourigebieten einigermassen aufgeschlossene Bewohner...
+
+-mupfel-
+,
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Kuchen ... (Grimmborn, 13. Aug 2001, 23:23:35):
+~#! rn=Linflas rt=997737406 rg=kochrezepte
+~#! tid=997735112
+Muenchen ist kein Massstab, das ist das groesste Dorf Deutschlands (noch
+groesser als Duesseldorf). 
+Aber generell bin ich fuer klare Verhaeltnisse: Entweder ne richtige Stadt, so
+wie Berlin oder Koeln, oder richtiges Land, so wie meinetwegen der
+Schwarzwald, oder eben die Eifel (gut, Westfalen ist wieder was anderes...).
+Aber so halbe Dinge wie Muenchen, neee...
+
+Um beim Thema zu bleiben: Hat jemand ein Rezept fuer Artischockencremesuppe
+parat? Ansonsten muesste ich mal experimentieren, bei einer Spargelcremesuppe
+die Spargel gegen Artischockenboeden austauschen.
+
+Grimmborn der Atheist
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Wan Tan (Troy, 14. Aug 2001, 08:57:10):
+~#! rn=Vanion rt=997737211 rg=kochrezepte
+~#! tid=997737211
+Kuehe? Schweine? Pulloverschweine? Naja, was meinst DU mit "nicht
+exotisch"? "Gut Buergerlich"? "Bodenstaendig Deutsch"? oder vielleicht
+"europaeisch"?
+
+Troy meint, dass Wan Tan mit Haifleisch genial schmecken...
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Wan Tan (Vanion, 14. Aug 2001, 09:55:38):
+~#! rn=Troy rt=997772230 rg=kochrezepte
+~#! tid=997737211
+Mit nicht zu exotisch meinte ich die eher kranken Ideen, die erfahrungsgemaess
+immer dem Geiste irgendeines Mudders entspringen, sobald er solche Artikel
+liesst. 
+
+V* hat keine Lust, eine Hobbitfuellung zu machen.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kuchen ... (Unasai, 14. Aug 2001, 11:41:19):
+~#! rn=Liara rt=997735112 rg=kochrezepte
+~#! tid=997735112
+Um das durchweichen des Bodens zu verhindern hat meine omi, entweder eine sehr
+duenne schicht sahnesteif, backpulver, buttercreme oder vanille pudding
+gestrichen. Je nach art des kuchens...sahnesteif und backpulver ist halt
+relativ geschmacklos, bei sehr sauren beeren macht sich der pudding gut und
+unter erdbeeren kam halt immer diebuttercreme :)
+
+Una* *kuchenbaeckerin aus leidenschaft*
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Kuchen ... (Denti, 14. Aug 2001, 11:42:47):
+~#! rn=Unasai rt=997782079 rg=kochrezepte
+~#! tid=997735112
+
+Ich mach ganz gerne eine duenne Schicht Persipan/Marzipan drunter, das
+verhindert das durchweichen recht recht zuverlaessig, wenns sein muss
+auch ueber zwei bis drei Tage.
+
+Denti, auch ein Kuchenbacker aus Leidenschaft :-))
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kuchen ... (Nicktar, 14. Aug 2001, 11:44:11):
+~#! rn=Liara rt=997735112 rg=kochrezepte
+~#! tid=997735112
+Enweder Du zuckerst den Boden, was bei sehr saftigen Fruechten wenig bis nix
+bringt oder du streichst ihn duenn mit einer Masse aus Butter und viel Zucker
+ein.
+
+Nicktar
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Kuchen ... (Varlarion, 14. Aug 2001, 11:44:12):
+~#! rn=Denti rt=997782167 rg=kochrezepte
+~#! tid=997735112
+Hey, wir machen das so: jeder von euch backt einen Kuchen, schickt ihn mir,
+ich probier die dann und urteile ueber die beste Moeglichkeit, das
+Durchweichen zu verhindern. (Aber bitte keine Erdbeerkuchen.)
+
+Varl*, Kuchenesser aus Leidenschaft
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Kuchen ... (Ark, 14. Aug 2001, 11:45:53):
+~#! rn=Varlarion rt=997782252 rg=kochrezepte
+~#! tid=997735112
+Richtig, die Erdbeerkuchen bitte an mich schicken.
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Kuchen ... (Zarniya, 14. Aug 2001, 11:48:05):
+~#! rn=Ark rt=997782353 rg=kochrezepte
+~#! tid=997735112
+
+Hi, 
+
+ich will ja niemanden hier ernuechtern, aber damit es nicht durchweicht, nimmt
+der Profi einfach Saftbinder... Das ist nix anderes als Speisestaerke, zB
+Mondamin, nur feiner.
+
+Marc (Mit Konditorin als Freundin... )
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Kuchen ... (Linflas, 14. Aug 2001, 22:23:06):
+~#! rn=Varlarion rt=997782252 rg=kochrezepte
+~#! tid=997735112
+Ok, Varlarion, ich nehm Alufolie. Ich hoffe es schmeckt.
+
+Linflas backt Kuchen.
+
+-----------------------------------------------------------------------------
+
+
+
+salat mit tomaten und schafskaese (Whitetiger, 18. Aug 2001, 19:45:20):
+salat mit tomaten und schafskaese
+
+zutaten:
+- olivenoel
+- balsamico-essig
+- suesser senf
+- sahne
+- salz
+- zucker
+- pfeffer
+- salat
+- tomaten
+- schafskaese
+
+zubereitung:
+die zutaten bis auf den salat in einer schuessel miteinander vermengen und
+dabei abschmecken bis es gut schmeckt. dann ein bisschen ziehen lassen und
+schliesslich den salat dazutun und nochmal vermengen.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^27: Kuchen ... (Linflas, 20. Aug 2001, 02:45:35):
+~#! on=Montanus ot=998237426 og=diskussion
+~#! rn=Daria rt=998212135 rg=diskussion
+~#! tid=997735112
+Maultaschen:
+ist nicht wirklich schwer. :-)
+Machtse deinen Nudelteig (je nach Gusto mit oder ohne Eiern, auch die
+Mehlsorte ist meist ein Glaubenskrieg) und rollste ihn flach aus.
+Fuellung: ich empfehle ja frischen Spinat, gewuerzt mit etwas Salz, viel
+Pfeffer und ganz viel Knboblauch, und dazu Pinienkerne. Andere packen da
+lieber sio Hackmett rein, aber das versaut m.E. nachden Geschmack.
+Mit Rollmesser Teig zerteilen, in die Mitte jeweils Haeufchen Fuellung,
+zuklappen, mit Gabel die Raender festdruecken, und dann ab in die Suppe.
+Tips: Vorsicht, die Fuellung darf nciht zu fluessig sein! Spinat sehr gut
+entwaessern! Manche nehmen auch gerne etwas Frischkaese fuer die Fuellung
+dazu, ist auch nciht schlecht.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^28: Kuchen ... (Linflas, 20. Aug 2001, 02:45:47):
+~#! on=Linflas ot=998267721 og=diskussion
+~#! rn=Montanus rt=998237426 rg=diskussion
+~#! tid=997735112
+Jaja, die Maultaschen, genau das richtige fuer Plaudertaschen:
+Ein nettes kleines feines und leichtes Essen kalt und warm lecker auch mit und
+ohne Suppe. 
+Also Nudelteig ist klar, ich nehme dann immer eine Tasse um kleine Kreise
+auszustechen, mache kleine Baellchen aus Fuellung, lege die auf die kleinen
+Scheiben drauf und klappe das um. Fest ankleben - fertig.
+Was die Fuellung angeht hat Montanus ja schon recht: Alles was schmeckt ist
+gut. Meine kleinen Tips sind: Kaese, und zwar am besten weissen, lockeren,
+wobei ich da nicht Frischkaese nehmen wuerde. Wer Kontakte nach Polen hat, der
+sollte mal nach polnischem "weissen Kaese" fragen, der eignet sich
+hervorragend. Man kocht ein paar Kartoffeln, stampft die ein und braet
+Zwiebeln glasig, was dann mit dem Kaese vermischt wird. Gibt eine gute
+Fuellung ab. Alternativ nimmt man auch pueriertes Sauerkraut, was in manchen
+polnischen Familien etwas fuer Weihnachten ist.
+Es eignen sich aber auch Johannisbeeren. Dann Pilze. Das sind so
+Standartfuellungen, stets erweiterbar.
+Noch ein Tip: Maultaschen sind eine sehr gute Beilage zu einem guten Fondue,
+Raclette geht auch. Ich bevorzuge sie dann immer nach dem Kochen noch etwas in
+der Pfanne anzubraten, damit sie auch huebsch kross werden.
+
+Viel Spass...
+
+Linflas wundert sich, wieso sein Magen knurrt.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^29: Kuchen ... (Helvetia, 20. Aug 2001, 21:38:02):
+~#! rn=Linflas rt=998268347 rg=kochrezepte
+~#! tid=997735112
+Also Fondue oder Raclette, serrviert mit Maultschen, ist bestimmt keines mehr
+von beidem. Na wems schmeckt ;-)
+
+Helvetia
+
+-----------------------------------------------------------------------------
+
+
+
+Huehnchen in Marsala-Sauce (Hreidmar, 20. Aug 2001, 21:38:10):
+Erstmal eine kurze Zutatenliste:
+4 Huehnerbrueste
+1 kleine Zwiebel
+ca. 300g Champignons
+1 Glas Milch
+1 Knoblauchzehe
+Maismehl (normales Mehl tut es aber auch)
+1 halbes Glas Marsala (den kriegt man in ziemlich jeden Supermarkt)
+1 halber Becher Sahne
+Salz, Estragon, Petersilie (getrocknet oder frisch), Pfeffer
+
+Die Huehnerbrueste waschen, in nicht zu kleine Stuecke schneiden und im
+Maismehl waelzen.
+Die Zwiebel pellen und in Wuerfel schneiden. Den Knoblauch schaelen. Die
+Champignons putzen (mit dem Pinsel reicht meistens) und in Scheiben schneiden.
+In einer Pfanne Butterschmalz (oder eine Mischung aus Butter und Oel)
+erhitzen. Herrjeh, da habe ich doch glatt den Butterschmalz in der
+Zutatenliste vergessen. Zur Not tut es auch handelsuebliches Sonnenblumenoel,
+das sollte eigentlich in jedem Haushalt zu finden sein.
+Die Knoblauchzehe in dem heissen Fett anroesten und wenn sie gut gebraeunt
+ist, wieder rausnehmen.
+Die Champignons mit der Zwiebel in der Pfanne gut anbraten, die Hitze
+reduzieren, mit der Milch abloeschen. Nun mit etwas Salz, einer Prise Estragon
+und der Petersilie wuerzen. Alles bei kleiner Hitze einreduzieren.
+In einer zweiten Pfanne Butterschmalz erhitzen, die Huehnerbrueste darin
+kraeftig anbraten. Das Fleisch darf ruhig ein wenig braun werden, das ergibt
+dann einen wunderbaren, fast schon nussigen Geschmack! Mit dem Marsala
+abloeschen (Achtung, das kann ordentlich zischen) und die Sahne hinzugiessen.
+Etwas salzen, ein bisschen einreduzieren. Die Hitze reduzieren, die
+Champignons hinzugeben und alles noch ein wenig ziehen lassen. Nach Geschmack
+mit Salz und Pfeffer abschmecken.
+Dazu schmeckt Reis oder auch Baguette-Brot.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Kuchen ... (Kellybundy, 26. Aug 2001, 20:22:53):
+~#! rn=Linflas rt=997820586 rg=kochrezepte
+~#! tid=997735112
+Nimm Blattsilber oder Blattgold. Die Inder machen das auch so ;-)
+
+Dumpfbacke
+
+-----------------------------------------------------------------------------
+
+
+
+pflaumenmus (Gnome, 24. Sep 2001, 21:15:15):
+hi,
+
+aus aktuellem anlass hier mal was fuer den herbst und verregnete abende:
+
+pflaumenmus selbstgemacht:
+-------------------------
+
+- pflaumen (ach...)
+- zucker
+- zimt
+- nelken
+- viel geduld
+
+soviel pflaumen kaufen, wie in euern groessten kochtopf passt. in etwa so
+3-5 kg. waschen, entkernen (viel spass dabei), rein in topf. zucker im
+verhaeltnis 1:10 drauftun. ein paar nelken und 3-4 kleine zimtstangen dazu.
+backofen auf 150 grad, rein damit und _keinen_ deckel drauf. saft muss
+verdunsten. nun lassen wir das ganze 4-5h schmoren. alle halbe stunde
+mal umruehren. wenn das ganze die konsistenz von pflaumenmus erreicht
+hat, die zimtstangen rausfischen und in saubere (!) glaeser abfuellen.
+die nelken findet man bei den braun-in-braun-toenen nur schwer,
+spaetestens beim draufbeissen dann aber. :)
+wer jetzt braunen kadiszucker aus dem topf holt, hat beim verhaeltnis
+von pflaumen zu zucker was vertauscht ;-)
+die effizienz liegt etwa bei 1:4.
+
+wohl bekommt's!
+
+gnOme
+
+-----------------------------------------------------------------------------
+
+
+
+Re: pflaumenmus (Xenada, 25. Sep 2001, 11:05:26):
+~#! rn=Gnome rt=1001358915 rg=kochrezepte
+~#! tid=1001358915
+Und man passe  danach gut darauf auf, das kein verfressener Zwerg in die
+Naehe kommt :)
+
+Xenada die Gnome vom Mus vertreibt weil auch was haben wollen :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: pflaumenmus (Gwendula, 25. Sep 2001, 11:09:28):
+~#! rn=Xenada rt=1001408726 rg=kochrezepte
+~#! tid=1001358915
+dementi! ich bin nicht verfressen!
+aber schliesslich muss der koch immer probieren, gell? :)
+
+gnOme, macht bad schwartau konkurrenz...
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: pflaumenmus (Xenada, 25. Sep 2001, 11:14:55):
+~#! rn=Gwendula rt=1001408968 rg=kochrezepte
+~#! tid=1001358915
+tsss....du warst doch nur fuer hilfsarbeiten wies pfluecke zustaendig...
+naechstes mal darfste alles machen ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: pflaumenmus (Grimmborn, 27. Sep 2001, 02:13:46):
+~#! rn=Gnome rt=1001358915 rg=kochrezepte
+~#! tid=1001358915
+Also, Deine "4-5h" kannst Du ja wohl knicken, zumindest im Nichtumluftofen.
+Meine sieben Pfund Pflaumen sind seit knapp 8h im Ofen und brauchen noch
+einige Zeit bis das wirklich Mus gibt. Und ich habe die Temperatur vor einigen
+Stunden schon auf 175 Grad erhoeht.
+
+Grimmborn der Atheist
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: pflaumenmus (Gnome, 27. Sep 2001, 02:18:40):
+~#! rn=Grimmborn rt=1001549626 rg=kochrezepte
+~#! tid=1001358915
+hmmm, stimmt. ich habs im umluftofen gemacht. aber ich haette nicht
+gedacht, dass das SO einen grossen unterschied macht... :-/
+
+evtl. auf dem herd vorher unter staendigem ruehren ne halbe stunde
+einkochen?
+
+gnOme
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: pflaumenmus (Grimmborn, 27. Sep 2001, 02:20:52):
+~#! rn=Gnome rt=1001549920 rg=kochrezepte
+~#! tid=1001358915
+Bischen spaet fuer den Tip. ;-)
+
+GdA auf Nachtschicht
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: pflaumenmus (Gnome, 27. Sep 2001, 02:24:51):
+~#! rn=Grimmborn rt=1001550052 rg=kochrezepte
+~#! tid=1001358915
+haste wenigstens nen grund, alleys wiederholung zu gucken ;-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: pflaumenmus (Grimmborn, 27. Sep 2001, 02:25:53):
+~#! rn=Gnome rt=1001550291 rg=kochrezepte
+~#! tid=1001358915
+Die ist doch schon lange vorbei. Geguckt habe ich sie natuerlich trotzdem...
+
+GdA, Ally-Fan aus Leidenschaft
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: pflaumenmus (Wurzel, 27. Sep 2001, 20:24:57):
+~#! rn=Grimmborn rt=1001550353 rg=kochrezepte
+~#! tid=1001358915
+umluftoefen haben die eigenschaft, sehr viel staerker zu trocknen. bei
+manchen sachen ist das erwuenscht (wie offensichtlich bei pflaumenmus), bei
+anderen eher verpoent. temperaturangaben von umluft sollte man fuer andere
+oefen um 20-30 grad erhoehen.
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re: pflaumenmus (Gnome, 27. Sep 2001, 20:51:10):
+~#! rn=Gnome rt=1001358915 rg=kochrezepte
+~#! tid=1001358915
+zusatz:
+wer sein mus noch etwas delikater gestalten moechte, kann versuchen,
+ein glas rotwein den pflaumen zuzugeben. ich habe es nocht _nicht_
+ausprobiert, aber ich koennte mir vorstellen, dass es noch mehr
+mundet als jetzt eh schon.
+
+guten mampf. :)
+
+gnOme
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: pflaumenmus (Xenada, 27. Sep 2001, 21:45:06):
+~#! rn=Gnome rt=1001616670 rg=kochrezepte
+~#! tid=1001358915
+kannste solche vorschlaege nicht eher brigen?
+Xenada kocht dieses Jahr mit Sicherheit nich nochmal Plaumenmus.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: pflaumenmus (Gandur, 27. Sep 2001, 22:01:20):
+~#! rn=Xenada rt=1001619906 rg=kochrezepte
+~#! tid=1001358915
+und naechstes jahr gibt es kein pflaumenmuss mit wein ... man muss
+die kleine ja nicht schon so frueh an den allohol gewoehnen ;)
+
+gruss, gandur
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: pflaumenmus (Xenada, 27. Sep 2001, 22:03:53):
+~#! rn=Gandur rt=1001620880 rg=kochrezepte
+~#! tid=1001358915
+wer sagt das wir ihr was abgeben? ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Gemuese - Curry - Pfanne (Elizabeth, 26. Nov 2001, 18:17:05):
+Also, man braucht dazu Reis, Paprika, Zwiebeln, kidneybohnen und mais. 
+(Gewuerze waeren natuerlich auch nicht schlecht ;) )
+Man kocht zuerst den Reis und schnipselt in gleicher Zeit das ganze
+Gemuesegelumpe klein und pappt es in eine Pfanne.
+Dort wuerzt man das dann auch nochmal und gibt, wenn er fertig ist, den Reis
+dazu. 
+Noch ein bissel schmurgeln lassen und lecker. 
+
+Guten Appetit. (kleine abweichungen sind natuerlich moeglich)
+
+Ach nu haett ich fast Curry vergessen - Also natuerlich noch Curry drueber, 
+aber erst am Schluss, sonst wirds so scharf :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Gemuese - Curry - Pfanne (Bambi, 26. Nov 2001, 18:18:05):
+~#! rn=Elizabeth rt=1006795025 rg=kochrezepte
+~#! tid=1006795025
+Aeh, das ist vegetarisch, oder?
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Gemuese - Curry - Pfanne (Elizabeth, 26. Nov 2001, 18:18:57):
+~#! rn=Bambi rt=1006795085 rg=kochrezepte
+~#! tid=1006795025
+Na, wenn ich kein Fleisch aufgefuehrt habe ist es wohl so.
+Zumal ich auch kein Fleisch esse... also.. guten Hunger.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Gemuese - Curry - Pfanne (Montanus, 26. Nov 2001, 18:25:35):
+~#! rn=Elizabeth rt=1006795340 rg=kochrezepte
+~#! tid=1006795025
+Naja, ich sage eher: die arme Gemuese-Pfanne.
+Udn das arme Gemuese.
+Probiers mal damit, das Gruenzeug nicht in die Pfanne zu pappen. Sondern erst
+mal langsam die Zwiebeln und den Knoblauch (den du vergessen hast zu
+erwaehnen) in Butter schmoren lassen. Dann die Paprika, die Zucchini, die
+Aubergine (beide auch vergessen) und nur wirklich zur Not Dosengemuese
+dazugeben und daempfen.
+Mit Rotwein loeschen, wuerzen, udn dann kannste meintewegen auch den Reis
+unterheben.
+JMTC
+
+-Montanus im Auftrag von Pizzapepe
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Gemuese - Curry - Pfanne (Humni, 26. Nov 2001, 18:45:22):
+~#! rn=Montanus rt=1006795535 rg=kochrezepte
+~#! tid=1006795025
+Egal, ich bin stolzer neuer WOK-Besitzer und werde ihn heute abend
+ausprobieren. Das wird sowas aehnliches werden wie das, was ihr da vorschlagt
+- aber mit mehr und anderem Gruenzeug ;-)
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Gemuese - Curry - Pfanne (Montanus, 26. Nov 2001, 18:46:24):
+~#! rn=Humni rt=1006796722 rg=kochrezepte
+~#! tid=1006795025
+Im Wok sehr gut zu machen sind saemtliche Kraut-Varianten. Es empfiehlt sich
+dabei, die kleinen Chili-Schoten schoen vorher im Oel ziehen zu lassen und
+auszukochen, dann brauch man nur noch wenig nachwuerzen. ;-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Gemuese - Curry - Pfanne (Elizabeth, 26. Nov 2001, 18:46:36):
+~#! rn=Elberet rt=1006796748 rg=kochrezepte
+~#! tid=1006795025
+Also manche leute haben wirklich komische essgewohnheiten ;) .oO( wein im
+essen, aubergine....)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Gemuese - Curry - Pfanne (Elberet, 26. Nov 2001, 18:47:32):
+~#! rn=Elizabeth rt=1006796796 rg=kochrezepte
+~#! tid=1006795025
+och, wein ist nicht so schlecht, man nehme einen zaehen Hahn. Also
+vorzugsweise einen Mit Diensterfahrung auf dem Misthaufen. Den koche man 5 h
+in Weinsosse. Gibt ein vorzuegliches Gericht.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Gemuese - Curry - Pfanne (Montanus, 26. Nov 2001, 18:48:16):
+~#! rn=Elizabeth rt=1006796796 rg=kochrezepte
+~#! tid=1006795025
+Sobald Du anfangen kannst, mitzureden, mit was fuer einem Wein man welches
+Gericht abschmeckt oder loescht - dann koennen wir auch ueber das Woertchen
+"komisch" reden. ;-)
+
+-----------------------------------------------------------------------------
+
+
+
+experiment (Wurzel,  1. Jan 2002, 12:19:37):
+es gibt leute, die koennen kochen, und es gibt leute, die kuchen backen.
+natuerlich gibt es auch leute, die weder das eine noch das andere machen,
+aber nur ganz selten findet man jemanden, der beides beherrscht. jedenfalls
+gehoere ich nicht zu den kuchenbaeckern. nun fand ich beim stoebern in meinem
+kuechenschrank eine kuchenbackform, weiss der geier wo die herkommt. so eine
+runde form, wo man den rand abnehmen kann, wenn der kuchen fertig ist. fuer
+kuchenleute sicher eine praktische sache, aber was fange ich damit an? ganz
+klar: wir machen ein experiment.
+
+einen hefeteig bekomme ich noch hin, immerhin braucht man sowas auch fuer
+pizza. ansonsten mal schauen, was noch da ist... um das ergebnis vorweg zu
+nehmen: ausgesprochen lecker (sonst wuerde ich hier auch den mantel des
+schweigens darueber huellen :) nur wie ich es nennen soll, weiss ich nicht.
+
+wir brauchen:
+mehl
+hefe
+zucker
+olivenoel
+hackfleisch
+getrocknete tomaten (gibts in olivenoel eingelegt zu kaufen, selber trocknen
+habe ich noch nicht versucht)
+tomatenmark
+zwiebeln
+knoblauch
+frische pilze
+kaese
+pesto
+oregano
+chili
+cumin
+pfeffer
+salz
+
+hackfleisch mit zwiebeln und knoblauch anbraten, mit gemahlener chili, cumin,
+salz und pfeffer wuerzen, mit etwas tomatenmark die fluessigkeit binden, 
+abkuehlen lassen bei offenem topf (damit es trockener wird).
+
+einen normalen hefeteig zubereiten mit kleiner variation: oregano direkt ins
+mehl geben und mit durchkneten. es soll kein suesser teig werden, daher den
+zucker sparsam dosieren (etwa 1 teeloeffel auf 400 g mehl).
+der zucker ist wichtig fuer den teig, damit die hefe was zu fressen hat und
+nicht die staerke aus dem mehl anknabbert. wenn man zuviel zucker verwendet,
+wird der teig suess, wenn es zuwenig ist, schmeckt er irgendwie leer...
+
+mit dem teig die kuchenform auskleiden, etwas teig uebriglassen. er darf also
+nicht zu trocken sein, sonst klebt er nicht am rand der form :) auf den boden
+eine lage geschnittene pilze legen, darueber eine lage vom inzwischen kuehlen
+hackfleisch. das ganze decken wir ab mit einem teigdeckel, dafuer brauchen wir
+das, was uebrig ist. auf diesen deckel kommen dann nochmal pilze, fleisch und
+obendrauf die getrockneten tomaten und etwas pesto. mit geriebenem kaese
+bedecken. im vorgeheizten backofen ca 30 minuten backen (am besten bei reiner
+unterhitze, die oberhitze erst spaeter dazuschalten, sonst wird der kaese zu
+schnell braun).
+
+wenn das ganze fertig ist, kommt der trick der kuchenform: rand abnehmen, wie
+einen kuchen schneiden :) dazu schmeckt beispielsweise ein feldsalat prima.
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re: experiment (Gnome,  1. Jan 2002, 17:04:58):
+~#! rn=Wurzel rt=1009883977 rg=kochrezepte
+~#! tid=1009883977
+dieses spezielle rezept ist bestimmt dein eigenes, die machart
+desselben hat aber schon einen namen: 'quiche'
+in dem fall wohl eine italienische quiche. :)
+
+gnOme
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: experiment (Grimmborn,  1. Jan 2002, 17:27:01):
+~#! rn=Gnome rt=1009901098 rg=kochrezepte
+~#! tid=1009883977
+Eine Quiche ist nicht gedeckt, iirc. Dann nennt man das Pie, und weil da noch
+was auf dem Deckel ist ist das schon was eher ungewoehnlicheres. Aber das
+Grundprinzip ist natuerlich nicht neu. Wobei es neue Grundprinzipien in der
+Kueche vermutlich seit ein paar Jahrhunderten nicht mehr gegeben hat, die
+Kunst liegt in der Variation.
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: experiment (Wurzel,  1. Jan 2002, 22:50:59):
+~#! rn=Grimmborn rt=1009902421 rg=kochrezepte
+~#! tid=1009883977
+habe letztens gelesen, dass pizza eine erfindung des 20. jahrhunderts sei.
+weiss nicht ob das stimmt, aber das ist fuer mich schon ein grundprinzip :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: experiment (Grimmborn,  1. Jan 2002, 23:00:27):
+~#! rn=Wurzel rt=1009921859 rg=kochrezepte
+~#! tid=1009883977
+Ohne die Geschichte der Pizza zu kennen: Das Prinzip "Teig nehmen und Sachen
+drauflegen, dann ab in den Ofen" ist vermutlich wesentlich aelter. Aber
+vielleicht sehe ich da "Grundprinzip" ein bischen zu grundsaetzlich.
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: experiment (Wurzel,  1. Jan 2002, 23:07:22):
+~#! rn=Grimmborn rt=1009922427 rg=kochrezepte
+~#! tid=1009883977
+mag sein, wie es will: fuer mich ist pizza ein grundnahrungsmittel (ohne
+pizzaservice waere ich im buero ziemlich aufgeschmissen, da nur eine absolut
+ungeniessbare mensa in der naehe ist), das hat prinzipiellen charakter :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: experiment (Gnome,  1. Jan 2002, 23:07:56):
+~#! rn=Grimmborn rt=1009922427 rg=kochrezepte
+~#! tid=1009883977
+pizza war urspruenglich ein reste-essen der armen in italien.
+geguckt, was noch da war, ab aufs/ins brot damit und dann in ofen.
+so vor 200-300 jahren. teig, schnickschnack und co. kamen erst
+sehr viel spaeter. aber wir schweifen ab.
+
+gnOme
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: experiment (Zarniya,  2. Jan 2002, 12:45:22):
+~#! rn=Gnome rt=1009922876 rg=kochrezepte
+~#! tid=1009883977
+sowas wie eine Grundversion von Pizza gibt es auf JEDEM guten
+Mittelalterlichen Markt oder Fest... die Idee ist sehr sehr alt.
+
+Marc
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: experiment (Gloinson,  2. Jan 2002, 14:58:50):
+~#! rn=Zarniya rt=1009971922 rg=kochrezepte
+~#! tid=1009883977
+Nur weil es das auf einem heutigen mittelalterlichen Markt gibt zeigt das noch
+nicht viel. IMHO ist das Prinzip des getrennten Ofens oder der vorsichtig
+beheizbaren Brutzelplatte fuer die Zubereitung einer "Pizza" auch nicht
+trivial und damit bis vor einiger Zeit den etwas betuchteren Leuten
+vorbehalten.
+
+Gloin(son)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: experiment (Anthea,  2. Jan 2002, 16:26:41):
+~#! rn=Gloinson rt=1009979930 rg=kochrezepte
+~#! tid=1009883977
+So die "gut belegte und mit vielen Geschmacksvarianten versehene" Pizza ist
+tatsaechlich eine sehr junge Erfindung und kommt scheinbar wirklich aus den
+USA. Es gab in Deutschland schon massenweise Pizzerien mit diesem Zeuch bevor
+die Italiener in Italien mitgekriegt hatten, was da so laeuft.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: experiment (Zarniya,  3. Jan 2002, 08:37:02):
+~#! rn=Anthea rt=1009985201 rg=kochrezepte
+~#! tid=1009883977
+Was Amerikaner so unter Pizza verstehen, kann man an dieser leider sehr
+verbreiten Kette mit den Huetten sehen, wo viele Deutsche immer noch denken,
+dass es um Huete geht..... BAH!
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: experiment (Grimmborn,  3. Jan 2002, 08:38:58):
+~#! rn=Zarniya rt=1010043422 rg=kochrezepte
+~#! tid=1009883977
+Wieso? Geschmacklich gesehen halte ich es fuer ziemlich wahrscheinlich, dass
+es dort um Huete geht...
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+Re^11: experiment (Schleicher,  3. Jan 2002, 13:23:30):
+~#! rn=Grimmborn rt=1010043538 rg=kochrezepte
+~#! tid=1009883977
+Hmm, seit wann es Pizza gibt? Oder gebackenen Teig mit Belag? Sehr sehr lange
+denke ich... ich schmeiss einfach mal die Begriffe Flammkuchen und
+Zwiebelkuchen in die Runde wenn ich mich recht irre gibt es diese beiden
+Gerichte schon seit dem Mittelalter...
+
+Schleicher hungrig
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: experiment (Qitess, 13. Jan 2002, 18:46:20):
+~#! rn=Gloinson rt=1009979930 rg=kochrezepte
+~#! tid=1009883977
+quark. brot bzw pizza muss man nicht in einem geschlossenen ofen backen.
+macht man das ganze auf einem geheizten stein ist es in etwa das gleiche.
+packt man den teig (auch mit belag) in ton oder in aehnliche sache, dann hat
+man einen quasi mini ofen.
+und jetzt sag nicht, dass es den betuchten leuten vorbehalten war, mahlzeiten
+in matsche einzuwickeln..
+ausserdem kann man auch mit den simplen mitteln erdloch und kohlehaufen
+_vorsichtig_ eine brutzelplatte beheizen.
+QI**
+
+-----------------------------------------------------------------------------
+
+
+
+Gebackenes Kamel (mit Fuellung) (Cuchullin, 17. Jan 2002, 20:50:48):
+
+GEBACKENES KAMEL (MIT FUELLUNG)
+
+Fuer ca. 400 Personen:
+     4 Trappen, gereinigt und gerupft,
+     2 Schafe
+     1 grosses Kamel
+   500 Datteln
+   200 Regenpfeifereier
+    20 Karpfen
+       div. Gewuerze
+
+Man grabe ein Feuerloch. Flammenmeer auf eine ca. 1m tiefe Lage
+gluehender Kohlen hinunterbrennen lassen. Die Eier separat hart-
+kochen. Die geschuppten Karpfen sodann mit geschaelten Eiern und
+den Datteln fuellen. Die fein gewuerzten Trappen mit den gefuellten
+Karpfen fuellen. Schafe mit den gefuellten Trappen fuellen, sodann
+Kamel mit den gefuellten Schafen fuellen. Das Kamel kurz ansengen,
+dann mit Doumpalmenblaettern umwickeln und in der Glut vergraben.
+Zwei Tage lang backen, Als Beilage Reis servieren.
+
+[Aus: T. Coraghessan Boyle, Wassermusik] 
+
+Cuchullin (autsch ;))
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Gebackenes Kamel (mit Fuellung) (Montanus, 17. Jan 2002, 21:29:00):
+~#! rn=Cuchullin rt=1011297048 rg=kochrezepte
+~#! tid=1011297048
+rufe Oetti nach Kamelherde! :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Gebackenes Kamel (mit Fuellung) (Wurzel, 19. Jan 2002, 00:54:58):
+~#! rn=Montanus rt=1011299340 rg=kochrezepte
+~#! tid=1011297048
+kann man die karpfen nicht durch was anderes ersetzen? fisch kann man nicht
+essen, sagt humni. da stimme ich ihm ausnahmsweise zu.
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re: experiment (Rakal,  4. Feb 2002, 13:39:20):
+~#! rn=Wurzel rt=1009883977 rg=kochrezepte
+~#! tid=1009883977
+Auch, wenn der Thread vermutlich laengst zu Ende ist, dieser um ein anderes
+Thema ging und die meisten mit der Beschreibung der Kuchenform etwas
+anzufangen wussten... Meine Mum nennt sowas 'Springform', da man deren Rand
+nach dem Backen aufspringen laesst
+
+Rakal.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: experiment (Mupfel,  4. Feb 2002, 23:28:01):
+~#! rn=Rakal rt=1012826360 rg=kochrezepte
+~#! tid=1009883977
+Hm ich glaub das ist tatsaechlich auch die technische Bezeichnung dafuer.
+
+-mupfel-
+btw: wieso heissen Springbroetchen Springbroetchen? Aufgesprungen sehense ja
+eigentlich nicht aus...
+
+-----------------------------------------------------------------------------
+
+
+
+Gemischtcurry (Grimmborn, 25. Feb 2002, 16:38:34):
+Hier kommt das Curry"rezept", das ich vergangenes WE gekocht habe. Ob es mit
+dem von Elisabeth zu tun hat oder nicht weiss ich nicht.
+
+Ein Stueck tote Kuh nehmen (sehr indisch, ja. Aber der Braten, der im
+Kuehlschrank war war eh ein bischen gross), in nicht zu grosse Wuerfel
+schneiden. Anbraten, zwei gewuerfelte Zwiebeln zugeben. Ein gutes halbes
+Glaeschen St. Michaels (das ist die Marke von Marks & Spencer) scharfe
+Currypaste zugeben, mit rund nem halben Liter Wasser auffuellen. Vier
+getrocknete Chillischoten zerkruemeln, dazugeben. Eine groessere
+Suesskartoffel (die wog gut 400g) wuerfeln und ebenso wie eine in Stuecke
+geschnittene rote Paprika dazugeben. Einen guten Schuss Tomatenmark zum Binden
+der Sosse (haette ich mit anbraten sollen, habs aber vergessen). 15 min mit
+Deckel koecheln lassen. Basmatireis waschen und aufsetzen, kochen, wenn er al
+dente ist abgiessen, im Reiskochtopf Butter zerlassen, den Reis darin nochmal
+anduensten. Behaupten dass das Essen fertig ist, auf den Teller haeufen,
+essen.
+
+Grimmborn der Atheist
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Gemischtcurry (Grimmborn, 25. Feb 2002, 16:40:10):
+~#! rn=Grimmborn rt=1014651514 rg=kochrezepte
+~#! tid=1014651514
+Hmpf, das ist nicht eindeutig, also: Curry 15 min koecheln lassen. _Dann_ den
+Reis vorbereiten. D.h. das Curry koechelt in der Summe dann knapp ne
+Dreiviertelstunde oder so vor sich hin.
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+Epoisses-Soufflee (Grimmborn, 21. Jul 2002, 13:16:56):
+Zutaten: 
+Vier Eier, getrennt
+300 ml Milch
+2 Essloeffel Butter
+60 ml Mehl
+120g Epoisses (ein sehr guter, sehr aromatischer, sehr fliessender Kaese)
+60 ml gehackte Walnuesse
+
+Eiweiss steif schlagen. Eigelb mit 60 ml der Milch (in einem anderen Gefaess!)
+verruehren. Butter in einem Topf schmelzen, Mehl hinzuruehren, mit dem Rest
+der Milch auffuellen (eine Bechamelsosse, halt). Den Epoisses in kleinen
+Stuecken hinzuruehren bis er schmilzt, mit Pfeffer, Salz und Muskat
+abschmecken. Lecker.
+Vom Herd nehmen und die Eigelb und die Walnuesse in die erstaunlich feste
+Bechamelsosse (eher: Bechamelcreme) einruehren. Vorsichtig ein Viertel der
+Eiweisse hinzuruehren, dann den Rest unterheben. In eine gebutterte und mit
+Mehl ausgeklopfte Souffleeform geben, in den auf 190 Grad vorgeheizten Ofen
+(keine Umluft!) auf die untere Schiene stellen. Jetzt eine gute Stunde lang
+(ich sag mal 75 min, aber ich war vom Rezept irritiert und hab nach 45 min
+reingeguckt, was ein Fehler war) drinnen lassen, nicht(!) die Tuer
+zwischendurch oeffnen. Das Soufflee sollte sauber aufgehen und wird relativ
+schnell goldbraun. Nicht nervoes werden, dunkler wirds erstmal nicht. Nach dne
+75 min rausnehmen, sofort servieren und aufessen. 
+
+Grimmborn der Atheist
+
+-----------------------------------------------------------------------------
+
+
+
+Chocolate Chip Cookies (Rochus, 10. Aug 2002, 16:17:47):
+CHOCOLATE CHIP COOKIES
+ 
+Materials:
+ 
+1.) 532.35 cm3 gluten
+2.) 4.9 cm3 NaHCO3
+3.) 4.9 cm3 refined halite
+4.) 236.6 cm3 partially hydrogenated tallow triglyceride
+5.) 177.45 cm3 crystalline C12H22O11
+6.) 177.45 cm3 unrefined C12H22O11
+7.) 4.9 cm3 methyl ether of protocatechuic aldehyde
+8.) 2.0 CaCO3 encapsulated avian albumen-coated protein
+9.) 473.2 cm3 theobroma cacoa
+10.) 236.6 cm3 de-encapsulated juglans regia fruits (sieve size 10)
+ 
+Procedure:
+ 
+To a 2-L jacketed round reactor vessel (reactor #1) with an overall heat
+transfer coefficient of about 100 Btu/F-ft2-hr, add ingredients (1), (2),
+and (3) with consistent agitation. In a second 2-L reactor vessel (reactor #2)
+with a radial flow impeller operating at 100 rpm, add ingredients (4), (5),
+(6), and (7), processing until the mixture is homogeneous. Add to ingredients
+in reactor #2, ingredient (8) and three volumetrically equal portions of
+the homogeneous mixture in reactor #1, processing after each addition until
+the mixture is again homogeneous.
+ 
+Upon completion of the previous step, add ingredients (9) and (10), slowly
+with constant agitation at an impeller rate of 50 rpm. Care must be taken
+at this point in the reaction to control any temperature rise that may be
+the result of an exothermic reaction.
+ 
+Using a screw extrude attached to a #4 nodulizer, place 10.0 cm3 nodules of
+the mixture in ordered ranks on a 316SS sheet (30.0 cm X 60.0 cm).
+Heat in a 460 K oven for a period of time that is in agreement with
+Frank & Johnson's first order rate expression (see JACOS, 21, 55), or until
+golden brown.
+ 
+Once the reaction is complete, place the sheet on a 297 K heat-transfer table,
+allowing the product to come to thermal equilibrium with ambient
+atmospheric temperature.                                                      
+
+(Von slashdot.org)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Chocolate Chip Cookies (Zarniya, 12. Aug 2002, 09:38:40):
+~#! rn=Rochus rt=1028989067 rg=kochrezepte
+~#! tid=1028989067
+Nettes Rezept...
+
+Bei dem Thema faellt mir ein, hat einer von Euch vielleicht den Text von dem
+Song der WISEGUYS mit dem Rezept der Choclate Chips?
+
+Marc
+
+-----------------------------------------------------------------------------
+
+
+
+Kuerbissuppe (Kadabra,  5. Nov 2002, 20:08:55):
+Man nehme einen schnuckeligen Muskatkuerbis, schleppe ihn
+nach Hause, saege ihn auf und kratze Kerne und Fasern raus.
+Den Deckel in feine Wuerfel schneiden, zwei gelbe Paprika
+ebenfalls fein wuerfeln und ausserdem 4 Zwiebeln.
+In 4 Essloeffeln Distel- oder Sojaoel erst die Zwiebeln anbraten,
+dann die Paprika und zum Schluss die Haelfte der Kuerbiswuerfel.
+Das Ganze dann mit Gemuese- oder Fleischbruehe aufgiessen,
+eine halbe Stunde kochen lassen und anschliessend mit
+dem Puerierstab puerieren. Mit Salz, frischgemahlenem Pfeffer und
+etwas geriebenem Ingwer und Muskatnuss abschmecken, restliche
+Kuerbiswuerfel hinzufuegen und nach 20 Min heiss servieren.
+Dazu etwas Creme Fraiche reichen und gruene Kuerbiskerne.
+Bon Appetit!
+
+-----------------------------------------------------------------------------
+
+
+
+Schmorkuerbis (Kadabra,  5. Nov 2002, 20:15:25):
+Oh - da war ja noch der Rest vom Muskatkuerbis :-)
+125 gr. Butter schmelzen, mit 100 gr. braunem Zucker, einem
+halben Teeloeffel Nelkenpulver, einem halben Teeloeffel Muskat
+und einem halben Teeloeffel Zimt vermischen. Dieses Zeugs
+innen auf den Kuerbis streichen, etwas Ahornsirup auf den
+Rand streichen und anschliessend den Rand mit duennen
+Speckscheiben belegen. Den Kuerbis auf ein tiefes Backblech
+stellen, c.a. 3cm hoch kochendes Wasser angiessen und ab in 
+den vorgeheizten Ofen bei 220 grad. Nach 1 Stunde mal mitm
+Messerchen pieken - dann duerfte er durch sein. Die Sauce die sich
+im inneren des Kuerbis' gesammelt hat in eine Schuessel geben und
+zusammen mit dem Speck extra servieren. Aus dem Kuerbis Scheiben
+schneiden und fertig :-) **
+
+-----------------------------------------------------------------------------
+
+
+
+Schmorkuerbis Nachtrag (Kadabra,  5. Nov 2002, 20:21:17):
+Aeh noch besser schmeckt es wenn man nicht vergisst in 
+die Butter-Zuckerpampe noch einen halben Teeloeffel Salz zu
+ruehren .... Ich bin soooo vergesslich :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kuerbissuppe (Gnome,  5. Nov 2002, 20:46:21):
+~#! rn=Kadabra rt=1036523335 rg=kochrezepte
+~#! tid=1036523335
+mit disteloel braten? die kuerbissuppe mit (fleisch)bruehe versauen?
+zwiebeln in kuerbissupee?
+
+ohje.
+
+kuerbissuppe:
+------------
+
+egal, welchen kuerbis man nimmt, man sollte nur relativ viel nehmen,
+er schrumpft etwas beim kochen.
+das kuerbisinnere (ohne kerne) in wuerfel schneiden und ab in den
+topf damit. etwa zwei finger breit wasser dazugeben, deckel drauf,
+warten. nach einiger zeit anfangen, den weichgewordenen kuerbis
+entweder zu puerieren oder zu zerstampfen. wenn kuerbisstueckchen
+ueberbleiben, ist das nicht weiter schlimm. salz und pfeffer nach
+belieben dazugeben. ein teeloeffel muskat und VIEL frisch
+im moerser zerstampften kardamon (das gibt erst den kick) sind ein muss.
+optional, aber genial ists mit frischem, halbzerstampften rotem pfeffer.
+ein ordentlicher schlag butter oder creme fraiche erledigen den rest.
+beim servieren gruene kuerbiskerne oben drauf.
+that's it.
+
+gnOme
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Kuerbissuppe (Grimmborn,  5. Nov 2002, 20:50:15):
+~#! rn=Gnome rt=1036525581 rg=kochrezepte
+~#! tid=1036523335
+Also, ich lese diese Rezepte ja mit Interesse...
+Richtige Kuerbissuppe allerdings geht so:
+1/3 Kartoffeln, 2/3 Hokkaidokuerbis in Wuerfel schneiden, mit wenig Wasser,
+Salz und Bruehe (ich hab Liebigs Fleischextrakt genommen, aber das ist
+natuerlich kein Muss) aufsetzen, leicht vor sich hinkoecheln lassen. Etwas
+Chili zugeben. Puerieren. Mit Chili abschmecken. Einen Schuss Sahne zugeben.
+Wieder mit Chili abschmecken. Servieren. 
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Kuerbissuppe (Gnome,  5. Nov 2002, 20:52:36):
+~#! rn=Gnome rt=1036525581 rg=kochrezepte
+~#! tid=1036523335
+achja... wer meint, kuerbisse seien nicht essbar oder schmecken nicht
+oder ueberhaupt, liegt absolut falsch.
+ZIERkuerbisse schmecken nur begrenzt gut, das ist richtig.
+und was den geschmack von normalen kuerbissen angeht: vergesst, was
+ihr bisher ueber kuerbisse zu wissen glaubt und probiert es einfach
+aus. mit diesem eklig eingelegte zeug, wo einem schon beim geruch
+das wuergen kommt, hat kuerbissuppe nichts zu tun.
+jedenfalls nicht, wenn man sie richtig macht. ;-)
+
+gnOme
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Kuerbissuppe (Gnome,  5. Nov 2002, 20:54:40):
+~#! rn=Grimmborn rt=1036525815 rg=kochrezepte
+~#! tid=1036523335
+gut, kartoffeln _kann_ man gelten lassen, das gibt der suppe eine
+gewisse sehmigkeit, die aber nicht jedem behagt.
+kuerbis pur reicht... und bitte lasst die bruehe weg. *schuettel*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Kuerbissuppe (Grimmborn,  5. Nov 2002, 20:57:44):
+~#! rn=Gnome rt=1036526080 rg=kochrezepte
+~#! tid=1036523335
+Kuerbis pur wird mir zu suesslich, aber ich habs bisher auch nur mit Hokkaido
+versucht. Durch die Kartoffeln wird das ein bischen abgemildert.
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Kuerbissuppe (Amaryllis,  5. Nov 2002, 20:57:56):
+~#! rn=Gnome rt=1036526080 rg=kochrezepte
+~#! tid=1036523335
+Kochrezepte sind genauso Geschmackssache wie die Tatsache, ob man Kuerbis mag
+oder nicht. Wieso willst Du also Kadabra unbedingt absprechen, in _ihre_
+Kuerbissuppe Bruehe zu geben?
+
+Ich will mich ja nich einmischen, aber ich finds grad interessant,
+verschiedene Rezepte zum gleichen "Thema" zu lesen und ggf. auch mal
+auszuprobieren. Und was mir dann persoenlich am besten schmeckt, wird man
+sehen - und wenns das mit Bruehe ist :-)
+
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Kuerbissuppe (Gloinson,  5. Nov 2002, 21:58:35):
+~#! rn=Gnome rt=1036525956 rg=kochrezepte
+~#! tid=1036523335
+Ich intperetiere das als Einladung zu einer Kuerbissuppe in naechster Zeit ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Kuerbissuppe (Gnome,  5. Nov 2002, 21:59:59):
+~#! rn=Gloinson rt=1036529915 rg=kochrezepte
+~#! tid=1036523335
+wenn DU den kuerbis organisierst, mache ich sogar eine in thale. :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Kuerbissuppe (Gloinson,  5. Nov 2002, 22:03:29):
+~#! rn=Gnome rt=1036529999 rg=kochrezepte
+~#! tid=1036523335
+Schnell meine Eltern anrufen ob noch eine der grossen Kullern da ist :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Kuerbissuppe (Anthea,  6. Nov 2002, 09:24:48):
+~#! rn=Gloinson rt=1036530209 rg=kochrezepte
+~#! tid=1036523335
+Ich hab am Wochenende einen Gruenen Kuerbis gegessen. Echt lecker das Dingen,
+aber so gar nicht wie ein normaler Kuerbis. Das Fruchtfleisch war nicht so
+faserig wie bei den meisten anderen, und im Geschmack kam es eher an Maroni
+ran als an "normalen" Kuerbis. Echt gut mal so zur Abwechslung ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Kuerbissuppe (Gloinson,  6. Nov 2002, 12:15:59):
+~#! rn=Anthea rt=1036571088 rg=kochrezepte
+~#! tid=1036523335
+Leider haben meine Eltern die grossen gelben Kullern auch schon verwurstet.
+Naja, ist eh zu kalt geworden um sie draussen zu lagern.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Kuerbissuppe (Montanus,  6. Nov 2002, 19:59:22):
+~#! rn=Gloinson rt=1036581359 rg=kochrezepte
+~#! tid=1036523335
+Wie, Kuerbisse verwursten? Das moechte ich nciht probieren.
+
+Meine Rezeptvariation:
+2 Pfund Hokkaido, ein Pfund Kartoffeln und etwas Gemuese der Saison:
+
+eine halbe Zwiebel in Butter anduensten, dann nach und nach 2 Tomaten, eine
+geraspelte Karotte, 100g frischen Ingwer, ein wenig Knofi und die
+kleingewuerfelten Kartoffeln und Kuerbis dazugeben und mitduensten.
+Ruhig 20 Min oder laenger duensten, dann mit 1,5 l Wasser aufgiessen,
+aufkochen lassen und puerieren.
+Mit Salz, Pfeffer, Muskat abschmecken, mit Saurer Sahne oder Kuerbisoel
+servieren. Petersilie taugt als Dekoration, ebenso wie frisch angebackene
+Croutons.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Kuerbissuppe (Wurzel,  7. Nov 2002, 12:21:37):
+~#! rn=Montanus rt=1036609162 rg=kochrezepte
+~#! tid=1036523335
+kuerbissuppe ist nicht wirklich meine spezialitaet, neige aber (mit wenigen
+abwandlungen) zu grimmborns variante. wobei ich nicht unbedingt auf hokkaido
+bestehen wuerde, es ist sowieso etwas vermessen zu behaupten das sei das
+einzig wahre wenn man noch nichts anderes probiert hat. bruehe mach ich
+lieber selbst, extrakte gefallen mir da nicht so gut. und mit gewuerzen ist
+das eh geschmackssache.
+
+wurzel hat eh keine zeit mehr zum kochen
+
+-----------------------------------------------------------------------------
+
+
+
+Back(?)rezept (Qitess,  7. Nov 2002, 20:51:37):
+Die Toffi-Fee-Torte, oder auch Die Torti-Fee:
+
+Man benoetigt:
+1 Tortenboden (selbstgemacht oder gekauft - is wurscht)
+1 Pckg. Karamelpudding
+1 kleines Toepfchen Pickerd (oder sonstwas) Kakao-Glasur
+1 Pckg. klaren Tortenguss
+1,5 - 2 Pckg. Toffi-Fees
+2 EL Zucker
+Schokostreusel
+
+Auf den Tortenboden kommt zuerst die Schokocreme und zwar 'kariert' also immer
+kreuzweise mit der creme Linien ziehen.
+Den Karamelpudding nach Packungsangaben fertigstellen und erKALTen lassen.
+die erste Schicht Pudding auf den Tortenboden mit dem Schokospurkaromuster
+geben. wichtig ist, dass die Schokolade kalt und hart geworden ist
+(Kuehlschrank).
+Auf den Pudding wieder so ein Karomuster ziehen.
+Wenn die Schokolade kalt und hart ist, wieder eine Schicht Pudding.
+...Und immer so weiter bis Pudding und Schokoladenguss alle sind. Den Pudding
+immer schoen duenn ausstreichen.
+
+Ach, ich habe was vergessen:
+
+Als allererstes wird ein Kranz aus aufrecht stehenden  Loeffelbiskuitdritteln
+auf den Tortenboden gestellt (am Rand, damit mehr 'Pampe' auf den Boden
+passt...)
+
+Wenn Pudding und Schokocreme alle sind Torte mit Toffi-Fees und
+Schokostreuseln frei nach Belieben garnieren.
+
+Den Tortenguss nach Packungsangaben machen und ueber die Toffi-Fees geben.
+
+Ein herrlich karamelig-schokoladiger Kuchen ist fertig.
+
+Mahlzeit.
+
+QI**
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Back(?)rezept (Zarniya,  8. Nov 2002, 10:09:01):
+~#! rn=Qitess rt=1036698697 rg=kochrezepte
+~#! tid=1036698697
+Tortenguss auf Schokolade??????????? Du bist pervers! Meine Freundin
+(Konditorin) hat das gelesen .... Kopfschuetteln ist da ne milde Beschreibung
+der Reaktion! :-)
+
+Marc
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Back(?)rezept (Qitess,  8. Nov 2002, 12:17:39):
+~#! rn=Zarniya rt=1036746541 rg=kochrezepte
+~#! tid=1036698697
+Tja, Konditoren sind eben auch bloss Handwerker, und die sind ja bekannt
+dafuer, dass sie sehr selten mal was neues ausprobieren.
+Ohne jetzt deiner freundin zu nahe treten zu wollen.
+die torte ist optisch sehr gut angekommen, und sie hat erstklassig geschmeckt
+und ist ratzefatz aufgegessen worden. und zwar im nullkommanichts und obwohl
+einige der mitessenden eigentlich satt waren.
+
+noch ein kleiner tip: zur verfeinerung des tortengusses kann man statt des
+zuckers (den man von der packungsanleitung dranmachen soll) auch karamel- oder
+vanille-backoel dranmachen.
+
+QI**
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Back(?)rezept (Grimmborn,  8. Nov 2002, 12:22:09):
+~#! rn=Qitess rt=1036754259 rg=kochrezepte
+~#! tid=1036698697
+Du machst Tortenguss also mit 100 ml Vanillebackoel statt 100g Zucker? Und das
+geht/schmeckt?
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Back(?)rezept (Humni,  8. Nov 2002, 13:23:14):
+~#! rn=Grimmborn rt=1036754529 rg=kochrezepte
+~#! tid=1036698697
+Also, ich denke Handwerker sollte man nicht unterschaetzen. Vor allem wenn es
+um Erfindungsreichtum geht, und wenn ich die Kraetionen gerade von einem
+Konditormeiter in einer Grossbaeckerei sehe wo ich mal gejobbt habe... also
+das war wirklich ziemlich genial, und das ,,gemeine Volk'' hat die gekauft wie
+doof, gerade die nicht Standardkuchenstuecke.
+
+Nur meine Idee, aus den Nussecken durch eine andere Schoko-Umhuellung ,,Star
+Trek Kommunikatoren'' zu machen stiess nicht auf Gegenliebe. Allerdings waren
+das auch keine Konditoren, sondern meine dummen Kolleginnen, die das fuer
+bescheuert hielten. Dem Konditormeister hab ich das gar nicht mehr gezeigt,
+sondern lieber aufgegessen.
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Back(?)rezept (Qitess,  9. Nov 2002, 10:49:32):
+~#! rn=Grimmborn rt=1036754529 rg=kochrezepte
+~#! tid=1036698697
+
+AAAARGH!
+
+ich nehme statt 2 EL Zucker ein halbes (je nach Belieben auch ein ganzes)
+Flaeschchen Backoel. Du Hampel! Und in den Flaeschchen sind ca.2 ml
+Fluessigkeit drin, glaub ich.
+
+Achja - und die Handwerker, die ich so kennengelernt habe sind eher unkreativ
+gewesen ....
+
+QI**
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Kuerbissuppe (Gnome, 10. Nov 2002, 15:01:43):
+~#! rn=Gnome rt=1036525581 rg=kochrezepte
+~#! tid=1036523335
+tja, also gleich 2 fehler in EINEM artikel sind wirklich selten,
+passieren mir aber auch mal :)
+
+zum ersten heisst es "kardamom" und zum zweiten wird es gar nicht
+verwendet. es muss statt kardamom naemlich koriander rein. VIEL.
+naja, faengt auch mit k an... *hust* *rausred*
+
+wo ist die asche? (c) anatol
+
+gnOme
+
+-----------------------------------------------------------------------------
+
+
+
+Spargelzeit! (Bambulko, 14. Apr 2003, 19:26:13):
+Die Spargelzeit faengt an, aber mir schmeckt der Spargel noch nicht so
+richtig. Um den Spargel voll geniessen zu koennen muss ich vorher in der MPA
+die alljaehrliche Diskussion "Wo-kommt-der-beste-Spargel-her?" lesen. Also
+fangt mal an :-)
+
+Bambulko
+
+-----------------------------------------------------------------------------
+
+
+
+Pangalaktischer Donnergurgler (Whitetiger, 12. Jul 2003, 13:58:10):
+Man nehme den Inhalt einer Flasche Alten Janx-Geist.
+Man fuege ein Teil Wasser aus den Meeren von Santraginus V hinzu - Oh, dieses
+santraginesische Meerwasser. Oh, diese santraginesischen Fische!!!
+Man lasse drei Wuerfel arkturanischen Mega-Gin in der Mischung zergehen (sie
+muss gut gefroren sein, sonst verfliegt das Benzin darin).
+Nun lasse man vier Liter fallianisches Sumpfgas hindurchperlen - zur
+Erinnerung an all die gluecklichen Anhalter, die vor Freude in den Suempfen
+von Fallia starben.
+Ueber einen umgedrehten Silberloeffel lasse man nun ein Teil qualaktinischen
+Hyperminz-Extrakt troepfeln, der nach allen dunklen, zu Kopf steigenden
+qualaktinischen Zonen duftet: zart, suess und mystisch.
+Man werfe den Zahn eines algolianischen Sonnentigers hinein. Schau zu, wie er
+sich aufloest und sich die Feuer der algolianischen Sonne tief im Herzen des
+Drinks verteilen.
+Ein Spritzer Zamphuor.
+Zum Schluss eine Olive.
+Trinken ... aber ... sehr vorsichtig ...
+
+
+Quelle: "Per Anhalter durch die Galaxis" von Douglas Adams.
+
+WhiteTiger
+
+-----------------------------------------------------------------------------
+
+
+
+Chili con Carne (mittelscharf) (Rochus,  4. Aug 2003, 00:34:49):
+Also, das zweite Brieselang-Chili enthielt:
+
+Zutaten:
+750 g Rindergehacktes
+2 Dosen Kidney-Bohnen
+1 Dose Chili-Bohnen
+3 Paprika (Rot/Gruen/Gelb)
+1 1/2 Dosen Mais
+4 1/2 Packungen passierte Tomaten (a 500 ml)
+
+1 Glas Jalapenos
+4 scharfe Peperoni
+7 kleine getrocknete Chilies (Thai-Chili)
+
+Zum Wuerzen:
+Salz
+Pfeffer (wesentlich mehr weisser als schwarzer)
+Paprika (edelsuees)
+Cumin (aka. Kreuzkuemmel) in groesseren Mengen
+Oregano, ebenfalls in grosser Menge
+Zitronensaft (kraeftiger Schuss)
+Majoran
+Worcester-Sauce
+Koriander
+Basilikum
+3 Lorbeer-Blaetter
+Ach, bei den Hauptzutaten fehlen noch 5 mittlere Zwiebeln
+und ne halbe Tube Tomatenmark :)
+
+Zubereitung:
+Zwiebeln und Paprika kleinschneiden.
+Etwas mehr Oel erhitzen als reichen wuerde den Topfboden
+zu bedecken, Zwiebeln hinzugeben, nach wenigen Minuten dann
+(die Zwiebeln sollten nicht oder nur sehr leicht braun sein)
+das Rindfeisch von allen Seiten anbraten, bis nichts rotes
+mehr zu sehen ist.
+Anschliessend wieder mit Tomatenmark rot faerben :)
+Dann zuerst eine Packung passierte Tomaten hinzugeben,
+kurz warten bis es kocht, danach die Dose Jalapenos
+(Die Schaerfe soll ja fruehzeitig ins Fleisch ziehen :)
+In einem Ruehrbecher dann eine halbe Packung passierte
+Tomaten, die Peperoni und die (zuvor in warmen Wasser
+eingeweichten) getrockneten Chilies mit einem Puerierstab
+zermixen (Ihr wollt nicht auf groessere Stuecke der
+getrockneten Chilies beissen :), in den Topf damit.
+
+Nach und nach die anderen Zutaten hinzugeben (die Tomaten
+am besten immer dann wenn es dickfluessig wird).
+Bei den Kidney-Bohnen hab ich diesmal von einer Dose den
+Saft abgegossen, von einer Dose nicht. Wer nicht ganz so
+erfahren im Abschaetzen des Fluessigkeitsbedarfs ist
+sollte etwas Gemuesebruehe (mit Bruehwuerfeln) vorbereiten
+um im Bedarfsfall auffuellen zu koennen.
+
+Gesamtkochzeit sollte etwa 1 Stunde sein, etwa 15 Minuten
+vor Ende der Kochzeit wuerzen.
+(Die Lorbeer-Blaetter sollten gleich nach dem Fleisch rein,
+alle anderen Gewuerze am Ende)
+Den groessten Teil am Geschmack machen Salz, Cumin,
+Oregano, Worcester-Sauce und Zitronensaft aus.
+Majoran, Koriander und Basilikum gehoert zur Feinabstimmung :)
+
+Variationen:
+Das MILDE Chili hatte keine Peperonis oder getrocknete Chilies.
+NOCH milder wird es mit Kidney- statt Chili-Bohnen, die
+Jalapeno-Menge sollte man nicht unter ein halbes Glas
+auf 500g Fleisch sinken lassen.
+Das milde Chili entsprach auch ungefaehr dem letzen in
+Berlin, woran sich sogar ausgesprochene nicht-scharf-Esser
+gewoehnen konnten, und die mildeste Variante dem in Halle.
+
+Schaerfer als mit 12 Peperonis, 15 getrockneten Chilies
+und 2 Dosen Chili-Bohnen (auf 600g Fleisch) habe ich noch
+nicht probiert und moechte ich vor einer Indien-Reise
+auch nicht empfehlen :) (Das entspricht dem letzten
+scharfen Chili in meiner Wohnung - Humni konnte es
+zwar ohne Brot essen, aber das ist schon mutig :)
+
+Ach ja, hab bei den Zutaten ja noch was vergessen:
+Mindestens 2 Fladenbrote zu dem mittelscharfen
+servieren, sonst spucken die Gaeste Feuer :)
+Fuer die schaerfste Variante rechnet mal ein
+halbes Fladenbrot pro Teller...
+
+PS:
+Capsaicin ist nicht wasserloeslich, aber fettloeslich.
+Das heisst, es wird bei Wasser-basierten Getraenken
+nciht weggespuelt, da werden nur die Geschmacksknospen
+freigespuelt und es wird NOCH schaerfer...
+Deshalb hilft Milch/Joghurt oder aehnliches da besser.
+Brot saugt die Schaerfe auch gut weg.
+Also: Finger weg von Bier oder Cola (vor allem
+von MEINER Cola! :)
+
+  Rochus
+
+-----------------------------------------------------------------------------
+
+
+
+rindfleischpfanne szechuan (Rochus,  6. Aug 2003, 12:08:06):
+~p
+Zutaten (fuer 6 Personen):
+900g mageres Steakfleisch
+Pflanzenoel
+Sojasauce
+3 Fruehlingszwiebeln
+4 kleine getrocknete (Thai)-Chilies
+Cayenne-Pfeffer
+Salz
+Cumin (aka. Kreuzkuemmel)
+Koriander
+Majoran
+
+Fleisch gut durchkueheln, in duenne Streifen schneiden.
+Ca. 3 EL Pflanzenoel und 2 EL Sojasauce mit sehr klein gehackten
+Fruehlingszwiebeln gruendlich verruehren und unter das
+Fleisch mischen, anschliessend mindestens 2 Stunden
+zugedeckt zum Marinieren wegstellen.
+
+Chilies zerstossen und mit etwa 1-2 TL Cayenne-Pfeffer mischen.
+Etwas Oel im Wok erhitzen (grosse Pfanne tuts auch),
+das Chili/Pfeffer-Gemisch etwa 30 Sekunden darin schwenken.
+Das Fleisch hinzugeben, kurz braten bis es gar ist
+(sollte nicht viel laenger als 5 Minuten dauern wenn die Streifen
+duenn genug sind).
+(Marinadenueberschuss mit hinzugeben)
+Mit Salz, Cumin, Koriander und Majoran wuerzen.
+
+Am besten serviert man das Fleisch auf Nudeln
+(chinesische Glasnudeln, ersatzweise gehen auch lange Eiernudeln,
+z.B. Bandnudeln)
+
+Im Originalrezept sollte man noch 3 TL Sesamoel nach dem
+braten unterruehren, das hatte ich aber nicht :)
+Dafuer waren Koriander, Cumin und Majoran nicht im Originalrezept.
+
+Viel Spass :-)
+
+  Rochus
+
+-----------------------------------------------------------------------------
+
+
+
+Re: rindfleischpfanne szechuan (Rochus,  6. Aug 2003, 12:10:00):
+~#! rn=Rochus rt=1060164486 rg=kochrezepte
+~#! tid=1060164486
+Ach ja, und im Originalrezept waren Szechuanpfefferbeeren
+statt dem Chili/Cayenne-Pfeffer-Gemisch :-)
+
+  Rochus.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: rindfleischpfanne szechuan (Croft,  6. Aug 2003, 12:20:26):
+~#! rn=Rochus rt=1060164600 rg=kochrezepte
+~#! tid=1060164486
+Dann fehlen nur noch die Rezepte fuer die Muffins & den
+Tomaten-Oliven-Feta-Nudelsalat.  Maharet? :o)
+
+Croft
+
+-----------------------------------------------------------------------------
+
+
+
+Muffins?!? (Apollonia,  6. Aug 2003, 12:21:23):
+Also mit Muffinrezepten kann ich Dich totwerfen...
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Muffins?!? (Croft,  6. Aug 2003, 12:21:47):
+~#! rn=Apollonia rt=1060165283 rg=kochrezepte
+~#! tid=1060165283
+Ich will nicht Muffinrezepte sondern _das_ Muffinrezept :-)
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Muffins?!? (Maharet,  6. Aug 2003, 16:06:54):
+~#! rn=Croft rt=1060165307 rg=kochrezepte
+~#! tid=1060165283
+Ok, zur Kenntnis genommen und in Arbeit.
+
+:o) Maharet
+
+-----------------------------------------------------------------------------
+
+
+
+Schoko-Muffins (Maharet,  6. Aug 2003, 16:18:55):
+Schoko-Muffins 
+
+190g Mehl, 
+2 1/2 Tl Backpulver, 
+3 El Kakao, 
+75g Schokoladenstueckchen 
+1 Ei 
+120g Zucker, 
+1 Paeckchen Vanillezucker, 
+80ml Sonneblumenoel 
+240 bis 300ml reine Buttermilch 
+
+1. Die trockenen Zutaten in einer Schuessel mischen.
+2. Die feuchten Zutaten in einer anderen Schuessel mischen (nur mit einem
+Loeffel umruehren, nicht das Ei schaumig schlagen)
+3. Wenn der Ofen vorgeheizt und die Muffinsform eingefettet ist, die trockenen
+in die feuchten Zutaten geben und unterheben.  Nur mit einem Loeffel arbeiten,
+bloss kein Handruehrgeraet benutzen, sonst werden sie nicht so schoen locker. 
+Muffins sind eben gerade _keine_ kleinen Ruehrkuchen.
+4. Bei ca 190  20-25 (eher 22 Minuten) backen.
+5. 10 Minuten in der Form kuehlen lassen, dann rausnehmen (nicht eher, sonst
+zerfallen sie nur) und auf einem Kuechenblech auskuehlen lassen.  
+**r
+
+Maha
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Schoko-Muffins (Apollonia,  6. Aug 2003, 16:19:57):
+~#! rn=Maharet rt=1060179535 rg=kochrezepte
+~#! tid=1060179535
+Und die gehen ohne Natron auf, wenn Du Buttermilch nimmst? *wunder*
+
+Apo*
+die Muffinsbaeckerin in Person *g*
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Schoko-Muffins (Maharet,  6. Aug 2003, 16:20:51):
+~#! rn=Apollonia rt=1060179597 rg=kochrezepte
+~#! tid=1060179535
+Dafuer ist das Backpulver da. Das funktioniert :o)
+
+Maha
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Schoko-Muffins (Croft,  6. Aug 2003, 16:21:29):
+~#! rn=Maharet rt=1060179535 rg=kochrezepte
+~#! tid=1060179535
+Danke!  Nu fehlt nur noch das Nudelsalatrezept in einer sinnvollen
+Portionierung :o)
+
+Croft
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Schoko-Muffins (Apollonia,  6. Aug 2003, 16:21:47):
+~#! rn=Maharet rt=1060179651 rg=kochrezepte
+~#! tid=1060179535
+Also ich hau da nen halben TL Natron noch rein und fette nicht das Blech ein,
+sondern benutze Foermchen, das geht allerdings nicht mit jedem Teig. Aber ich
+hasse es, wenn die Bleche hinterher so eingesaut sind *g*
+
+Apo*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Schoko-Muffins (Maharet,  6. Aug 2003, 16:23:14):
+~#! rn=Apollonia rt=1060179707 rg=kochrezepte
+~#! tid=1060179535
+Also in dieses Rezept wuerd ich kein Natron tun, wie gesagt, dafuer ist das
+Backpulver da.  Das enthaelt doch auch Natron, oder?
+Das mit den Papierfoermchen ist Geschmackssache.  Fuers Backen sind die
+angenehmer, ich hab samstag maechtig geflucht.  Aber zum Essen find ich es
+schoener, wenn man nicht das Papier abziehen muss.
+
+Maha
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Schoko-Muffins (Amazora,  6. Aug 2003, 16:23:28):
+~#! rn=Apollonia rt=1060179707 rg=kochrezepte
+~#! tid=1060179535
+du bist nur zu faul zum spuelen, schwesterherz ;-)
+amazora zeigt ihre spuelhaende
+,
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Schoko-Muffins (Croft,  6. Aug 2003, 16:25:09):
+~#! rn=Maharet rt=1060179794 rg=kochrezepte
+~#! tid=1060179535
+Imho halten sich die Muffins mit Foermchen auch besser, da sie nicht so
+leicht austrocken :-)
+
+Croft
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Schoko-Muffins (Maharet,  6. Aug 2003, 16:26:52):
+~#! rn=Croft rt=1060179909 rg=kochrezepte
+~#! tid=1060179535
+So lange blieben bei mir noch nie Muffins uebrig, als dass ich dazu was sagen
+koennte 
+o)
+
+Maha
+
+-----------------------------------------------------------------------------
+
+
+
+Kirschmuffins (Maharet,  6. Aug 2003, 16:27:22):
+Kirschmuffins
+
+ca 200 g Sauerkirschen, entkernt (ich nehm die aus'm Glas, anderes Obst geht
+auch)
+110 g Zucker
+280 g Mehl
+1/2 TL Natron
+1/2 TL Salz
+50 g Butter, geschmolzen (oder 40 g Oel)
+1 Ei
+220-300 g saure Sahne
+1 Pkt. Vanillezucker
+
+Zubereitung wie die Schoko-Muffins (s.o.)
+
+Maha
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kirschmuffins (Maharet,  6. Aug 2003, 16:28:02):
+~#! rn=Maharet rt=1060180042 rg=kochrezepte
+~#! tid=1060180042
+Bei Mandarinen-Muffins nehm ich statt Vanillezucker Zitronen- oder
+Orangenzucker.
+
+Maha
+
+-----------------------------------------------------------------------------
+
+
+
+Mediterraner Nudelsalat (Maharet,  6. Aug 2003, 16:33:59):
+Mediterraner Nudelsalat 
+
+Zutaten fuer 4 Portionen, bei der Party war es die 20fache Menge:
+
+250 g Nudeln, vorzugsweise Penne
+250 g Kirschtomate(n), halbiert
+125 g Feta, in kleine Wuerfel
+100 g schwarze Oliven
+1 Zwiebel, gewuerfelt
+2 Zehen Knoblauch, zerdrueckt
+2 EL Petersilie, gehackt
+2 EL Basilikum, gehackt
+1/8 Liter Gemuesebruehe
+4 EL Essig (zB weissen Balsamico)
+5 EL Olivenoel
+1 Prise Zucker 
+Salz und Pfeffer 
+
+1. Nudeln al dente kochen (ruhig mit mehr Biss als fuers normale
+Pastagericht), kalt abbrausen, dass sie schnell abkuehlen
+2. Bruehe (kalt), Oel, Essig, Gewuerze und Kraeuter untermischen.
+3. Restliche Zutaten unterheben.
+4. Moeglichst ueber Nacht im Kuehlschrank ziehen lassen.  Die Fluessigkeit
+wird dabei von den Nudeln vollkommen aufgenommen.  Daher am naechsten Tag ggf
+nachwuerzen und nochmal Oel zugeben.
+
+
+Maha
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Chili con Carne (mittelscharf) (Mupfel,  6. Aug 2003, 22:41:19):
+~#! rn=Rochus rt=1059950089 rg=kochrezepte
+~#! tid=1059950089
+Naja wenn'de damit Grimmborn bewirten willst, nimmt der seine scharfen
+Flaeschchen mit, damit "da etwas Schaerfe reinkommt" oder so ;)
+
+-mupfel-
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Chili con Carne (mittelscharf) (Apollonia,  6. Aug 2003, 22:43:37):
+~#! rn=Mupfel rt=1060202479 rg=kochrezepte
+~#! tid=1059950089
+Mein Kommentar dazu war: Und wo is das jetzt scharf?
+
+Apo*
+isst auch nicht grad fuer Normalsterbliche
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Chili con Carne (mittelscharf) (Rochus,  7. Aug 2003, 19:36:16):
+~#! rn=Apollonia rt=1060202617 rg=kochrezepte
+~#! tid=1059950089
+Na, nachdem Leute wie Arkana (die 15 Thai-Chilis im Chili vertraegt),
+Orktoeter (Der sich Harissa auftischen laesst) und
+Humni (der mein zweitschaerfstes Chili ohne Brot essen konnte)
+das MILDE Chili schon etwas stark bei der Hitze fanden,
+habe ich mich bei dem schaerferen doch SEHR zurueckgehalten...
+Sonst haette ich das doppelte reingetan, nur das haetten
+dann nur noch ich, Du und Pitfall essen koennen...
+Und selbst mit Pitfall haetten wir nicht den ganzen Topf geschafft :-)
+
+  Rochus
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Chili con Carne (mittelscharf) (Croft,  7. Aug 2003, 22:51:39):
+~#! rn=Rochus rt=1060277776 rg=kochrezepte
+~#! tid=1059950089
+Du hast mich nicht gefragt...
+
+Croft
+
+-----------------------------------------------------------------------------
+
+
+
+Marinaden (Apollonia,  9. Aug 2003, 22:19:14):
+~#! on=Apollonia ot=1060460316 og=www
+Auf Wunsch meiner Grillgaeste hier die 3 Marinaden fuers Fleisch (fuer je ca.
+1 - 1,5 kg Fleisch):
+
+Die Scharfe
+
+2 Zitronen
+250 ml suesse Chilisosse
+4 Thai Chilis (okay, bei mir waren's 8)
+4 EL Honig
+Salz
+Pfeffer
+2 Zehen Knoblauch
+
+Zitronen auspressen und den Saft mit Honig und Chilisosse verruehren,
+Knoblauch und Chilischoten kleinhacken, wuerzen.
+
+
+Die Asiatische
+
+6 EL Sojasosse
+4 EL Honig
+4 EL Hoisin-Sosse
+4 EL Reisessig oder Weissweinessig
+2 EL Reiswein oder trockener Sherry
+2 TL Zucker
+6 EL Huehnerbruehe
+
+Einfach alles zusammenruehren (c:
+
+
+Die Suesse
+
+125 ml Ahornsirup
+1 Zwiebel
+50 ml Chilisosse
+30 ml Apfelessig
+15 ml Senf
+5 ml Worcestersosse
+
+Zwiebel so fein wie moeglich hacken und mit dem Rest zusammenmischen.
+
+
+Bei den Marinaden mit Honig spielt natuerlich der Honig eine entscheidende
+Rolle, ich nehme normalerweise Wildblueten- oder Waldhonig.
+
+Apo*
+4 kg Fleisch bei 8 Personen spricht irgendwie fuer sich *g*
+
+-----------------------------------------------------------------------------
+
+
+
+Pulsnitzer Pfefferkuchen (Alboin, 29. Okt 2003, 22:59:28):
+Leute, Leute die Rubriken sterben ja langsam aus, vor allen Dingen die, die
+mehr mit Realitaet zu tun haben ;-)
+Oki, da mir Pulsnitzer Pfefferkuchen von allen am besten schmecken, sie aber
+auch sehr teuer sind und auch nicht immer zu haben sind, will ich Euch dieses
+Rezept nicht vorenthalten.
+
+Zutaten:
+500g Honig
+60g Butter
+60g Kakao
+15g Pfefferkuchengewuerz
+625g Mehl
+1 Ei
+10g Hirschhornsalz
+5g Pottasche
+1/8L Wasser
+70g gehackte Mandeln
+3 geriebene Bittermandeln (wers nicht bekommt: ein halbes Roehrchen
+Bittermandelaroma ist auch ok)
+50g Zitronat
+50g Orangeat
+
+Verarbeitung:
+Honig, Wasser, Butter erhitzen und abkuehlen lassen. Mehl, Kakao, Gewuerze, Ei
+und aufgeloeste Triebmittel nach und nach zugeben. Mandeln, Zitronat und
+Orangeat unterkneten. Teig ueber nacht kuehl stellen. Am naechsten Tag bei 175
+Grad (Gas Stufe 1-2) Pfefferkuchen backen.
+
+Ich selber mache natuerlich noch eine Kakaouglasur rauf und auch ist es
+vielleicht ratsam das Zitronat und Orangeat ordentlich zu zerkleinern
+(Puerierer oder so) da die Klumpen beim Mampfen irgendwie stoeren.
+
+Alboin
+
+-----------------------------------------------------------------------------
+
+
+
+Schottischer Cocktail (Anthea,  9. Dez 2003, 16:48:31):
+
+Man nehme einen grossen Teil Scotch und mische ihn mit einem grossen Teil
+Whisky.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Schottischer Cocktail (Croft,  9. Dez 2003, 16:50:13):
+~#! rn=Anthea rt=1070984911 rg=kochrezepte
+~#! tid=1070984911
+Blended heisst das dann, oder?
+
+Croft
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Schottischer Cocktail (Anthea,  9. Dez 2003, 16:50:37):
+~#! rn=Croft rt=1070985013 rg=kochrezepte
+~#! tid=1070984911
+Kommt drauf an, was Du nimmst.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Schottischer Cocktail (Grimmborn,  9. Dez 2003, 17:13:36):
+~#! rn=Anthea rt=1070985037 rg=kochrezepte
+~#! tid=1070984911
+In meinen guten Malt lasse ich keinen Scotch. Wo kaemen wir denn da hin? Pfui!
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Schottischer Cocktail (Montanus,  9. Dez 2003, 22:07:57):
+~#! rn=Grimmborn rt=1070986416 rg=kochrezepte
+~#! tid=1070984911
+Wo kommen wir da hin?
+Tja, ein nicht naeher genannt sollender Mudder hat zur Verkostung am Freitag
+eine Flasche Uhu-Whisky dabeigehabt, die dermassen nach Klebstoff roch udn
+schmeckte, dass man auch beim Schnueffeln high werden haette koennen.
+Dagegen muss ich hier nochmal M*t und ihren Ardbeg 15 loben.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Schottischer Cocktail (Maharet,  9. Dez 2003, 23:34:26):
+~#! rn=Montanus rt=1071004077 rg=kochrezepte
+~#! tid=1070984911
+Ardbeg 17
+
+-----------------------------------------------------------------------------
+
+
+
+Moehren-Apfel-Suppe mit Curry (Morgoth, 11. Feb 2004, 21:03:26):
+
+hier ist das Rezept fuer 4 Portionen:
+2 TL Sonnenblumenoel
+1 EL Currypulver
+500g klein geschnittene Moehren
+1 grosse Zwiebel (zerhackt)
+1 saurer Kochapfel, klein geschnitten
+750mL Huehnerbruehe
+Salz, schwarzer Pfeffer
+Naturjogurt + Moehrenschnitze zum garnieren
+
+- Oel in einem Topf erhitzen und Curry 2-3 min. anbraten
+- Moehren, Zwiebel + Apfel rein, umruehren bis alles mit Curry bedeckt ist
+- bei schwacher Hitze ca. 15 min. braten, dabei Topf bewegen
+- Puerieren und Bruehe hinzugeben, abschmecken
+- Auf den Teller und mit Jogurt + Moehrenschnitzen garnieren
+- ESSEN !!!
+
+M* 
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Moehren-Apfel-Suppe mit Curry (Bran, 11. Feb 2004, 21:50:48):
+~#! rn=Morgoth rt=1076529806 rg=kochrezepte
+~#! tid=1076529806
+Gekocht und fuer ausgesprochen lecker befunden. Wobei ich Creme Fraiche noch
+feiner fand als Joghurt.
+
+Bran, leckt grade den Teller aus.
+
+-----------------------------------------------------------------------------
+
+
+
+penne a la gnome (Gnome, 12. Feb 2004, 15:23:50):
+penne a la gnome per dos personas:
+---------------------------------
+
+- 500 g penne
+- 1 grosse aubergine
+- 5 grosse tomaten
+- 1 knoblauchknolle
+- kraeuter der provence
+- getrocknete, gebrochene chili o. ae.
+- sojasosse
+- salz und pfeffer
+
+penne al dente kochen. waehrenddessen aubergine mundgerecht kleinschnippeln
+und bei viel(!) butter etwas anduensten. auberginen mit sojasosse abloeschen
+und die tomaten schoen kleingeschnitten beigeben. kraeuter, chili und salz
+je nach gusto oben drauf, verruehren, deckel drauf. nach 5 min viel(!)
+knoblauch dazugeben (entweder geschnitten oder zerdrueckt oder beides).
+wieder deckel drauf, ab und zu umruehren, und bei kleiner flamme warten
+bis tomaten gut verkocht sind.
+mit frisch gemahlenem pfeffer oben drauf und einem kuehlen bier
+daneben servieren.
+
+*mampf*
+
+gnOme
+
+-----------------------------------------------------------------------------
+
+
+
+Re: penne a la gnome (Gnome, 12. Feb 2004, 16:25:36):
+~#! rn=Gnome rt=1076595830 rg=kochrezepte
+~#! tid=1076595830
+das wichtigste haett ich ja fast wieder vergessen:
+ganz zum schluss einen ordentlichen batzen creme fraiche oder schmand
+rein. sonst schmeckts nur halb so gut.
+
+gnOme
+
+-----------------------------------------------------------------------------
+
+
+
+Vanillebroetchen (Perdita, 14. Feb 2004, 14:03:27):
+gerade von ner Kollegin bekommen, probiert, fuer lecker befunden und
+nachgebacken.
+Vanillebroetchen - einfach, schnell und lecker
+
+75g Quark
+3 EL Milch
+3 EL Oel
+40g Zucker
+1 Pck. Vanillezucker
+1 Pr. Salz
+150g Mehl
+2 gestr. TL Backpulver
+1 Vanille-Sossenpulver
+
+Backofen auf 200C stellen, alle Zutaten zusammenruehren, zu Broetchen formen
+(sollen angeblich 8 Stueck werden), mit Dosenmilch bestreichen und 15 min.
+backen.
+
+Wie gesagt: einfach, schnell und lecker!
+
+Perdita
+
+-----------------------------------------------------------------------------
+
+
+
+Chili con Bulgur (Eisi, 15. Feb 2004, 10:04:33):
+was fuer die Veggies:
+
+Chili con Bulgur
+f|r ca. 4 Personen.
+
+(die Mengen sind alle geschaetzt, ich mach das immer nach Gefuehl :)
+
+2 Zwiebeln
+1-3 Knoblauchzehen (je nach Terminlage :)
+1 kl. Stange Lauch
+1 Karotte
+2-3 Tomaten
+1 rote Paprika
+1 kl. Dose Mais
+2 Dosen Kidney-Bohnen
+200g Bulgur
+3/4l Gemuesebruehe
+Olivenoel
+Salz
+Pfeffer
+rote Currypaste, falls vorhanden.
+Kreuzkuemmel, Kardamom, falls keine Currypaste: Tabasco zum abschmecken.
+
+Zubereitung
+(ca. 40min)
+
+Die Zwiebeln und den Knoblauch in etwas Olivenoel anduensten.
+Den Bulgur spuelen und dazugeben und kurz mitduensten, mit Gemuesebruehe
+auffuellen.
+Gemuese kleinschnipseln und dazugeben: Karotte, Lauch, Paprika.
+Etwa einen Teeloeffel Currypaste dazu, mit Salz, Pfeffer und den Gewuerzen
+abschmecken.
+Leicht koecheln lassen. Der Bulgur saugt viel Bruehe auf, also Gemuesebruehe
+oder
+Wasser entsprechend nachfuellen. Das braucht ca. 20 Minuten. Mais und
+Kidneybohnen
+dazu, Tomaten dazu. Noch ein bisschen koecheln lassen und dann auf Sparflamme.
+Kann ein ganze Party lang aufm Herd stehen bleiben und warm gehalten werden,
+ist aber vermutlich eh gleich alle :)
+
+Dazu passt Baguette und ein Rotwein, z.B. ein Rioja. Oder Bier *g*
+
+Guten Appetit!
+
+- Bulgur ist Weizengruetze, gibts beim Tuerken um die Ecke
+- Die Currypaste stammt aus der indischen Kueche, sollte es in entsprechenden
+Laeden geben.
+- Ich mach das gern bei Parties, daneben einen Topf Chili con Carne fuer die
+Carnivoren.
+
+-----------------------------------------------------------------------------
+
+
+
+Spaghetti mit Schafskaese (provenzalische Art) (Whitetiger, 18. Feb 2004, 11:57:31):
+Zutaten:
+  500 g Spaghetti (... oder andere lange duenne Nudeln...)
+  Salzwasser
+  6 EL Olivenoel
+  1 in Scheiben geschnittene Knoblauchzehe (... oder auch zwei...)
+  1 TL getrocknete Provence-Kraeuter
+  1 EL eingelegte gruene Pfefferkoerner
+  250 g fein zerbroeckelter Schafskaese
+
+* Spaghetti in reichlich Salzwasser al dente kochen.
+* Auf ein Sieb giessen und abtropfen lassen.
+* Olivenoel in einem Topf (... grosse Pfanne passt eigentlich besser...)
+leicht erhitzen.
+* Knoblauch und Kraeuter darin kurz anduensten.
+* Spaghetti und Pfefferkoerner dazugeben. Alles gut vermischen.
+* Zum Schluss den Schafskaese unterziehen.
+
+Aus "Spaghetti" von Bodo A. Schieren, gestern gekocht, sind eigentlich alles
+prima Rezepte da drin...
+
+Tiger
+
+-----------------------------------------------------------------------------
+
+
+
+Bananenmilch (Mupfel, 31. Mar 2004, 21:46:11):
+Man nehme:
+1 Liter Milch
+2-4 Bananen (je nach Groesse)
+1 Schluck Sahne
+1 Bisschen Vanillezucker
+
+Die Bananen puerieren, dann Sahne und Vanillezucker mit untermixen. IMmer
+schoen weitermixen, und sukzessive (hach ich liebe dieses Wort ;) die Milch
+zugeben. 
+Schon fertig! Je nach Jahreszeit kann man auch die eine oder andere Kugel
+Vanilleeis mit untermixen.
+
+-mupfel-
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Bananenmilch (Liara,  2. Apr 2004, 10:41:57):
+~#! rn=Mupfel rt=1080762371 rg=kochrezepte
+~#! tid=1080762371
+Wieso muss eigentlich in allem, was man zu sich nimmt, Zucker enthalten sein?
+:)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Bananenmilch (Boing,  2. Apr 2004, 10:42:35):
+~#! rn=Liara rt=1080895317 rg=kochrezepte
+~#! tid=1080762371
+Lass ihn doch einfach weg ...
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Bananenmilch (Croft,  2. Apr 2004, 10:52:17):
+~#! rn=Boing rt=1080895355 rg=kochrezepte
+~#! tid=1080762371
+Ersetz den Vanillezucker durch Vanille.
+
+Croft
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Bananenmilch (Mupfel,  2. Apr 2004, 10:53:28):
+~#! rn=Croft rt=1080895937 rg=kochrezepte
+~#! tid=1080762371
+Btw die Bananen enthalten auch Zucker.
+
+-mupfel-
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Bananenmilch (Liara,  2. Apr 2004, 10:55:50):
+~#! rn=Mupfel rt=1080896008 rg=kochrezepte
+~#! tid=1080762371
+Ihr Schlaukoepfe! :>
+Ich verstehe einfach nicht, wieso Bananensuesse nicht reicht. Wahrscheinlich
+weiss heutzutage niemand mehr, wie Bananen eigentlich schmecken. *g* Immer
+gleich Zucker in's Rezept ...
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Bananenmilch (Gloinson,  2. Apr 2004, 10:56:38):
+~#! rn=Liara rt=1080896150 rg=kochrezepte
+~#! tid=1080762371
+Pack noch ein wenig keunstliches Vanille-Aroma dazu.
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Bananenmilch (Elberet,  2. Apr 2004, 10:57:18):
+~#! rn=Liara rt=1080896150 rg=kochrezepte
+~#! tid=1080762371
+hast du mal reife (ich meine reife) Bananen gegessen? Dann weisst du, wie
+Bananen schmecken.
+
+Elbi
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Bananenmilch (Muadib,  2. Apr 2004, 10:59:29):
+~#! rn=Elberet rt=1080896238 rg=kochrezepte
+~#! tid=1080762371
+bananen schmecken lecker, vor allem wenn man sie direkt im erzeugerland am
+fruchtstand gereift geniessen kann anstatt die nachgereiften dinger hier
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Bananenmilch (Montanus,  2. Apr 2004, 11:02:17):
+~#! rn=Muadib rt=1080896369 rg=kochrezepte
+~#! tid=1080762371
+Klar, ich flieg immer mal kurz nahc  Costa Rica, wenn ich Appetit auf Bananen
+habe.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Bananenmilch (Boing,  2. Apr 2004, 11:02:39):
+~#! rn=Muadib rt=1080896369 rg=kochrezepte
+~#! tid=1080762371
+Das ist bei Ananas uebrigens genauso ... :)
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Bananenmilch (Elberet,  2. Apr 2004, 11:03:13):
+~#! rn=Boing rt=1080896559 rg=kochrezepte
+~#! tid=1080762371
+das ist mit jeder Frucht so, oder? :)
+ich kenn das vor allem bei Melonen und Pfirsichen
+
+Elbi
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: Bananenmilch (Boing,  2. Apr 2004, 11:03:39):
+~#! rn=Elberet rt=1080896593 rg=kochrezepte
+~#! tid=1080762371
+Anzunehmen ... aber bei Ananas weiss ich es aus eigener Erfahrung ... ;)
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Bananenmilch (Mupfel,  2. Apr 2004, 11:03:41):
+~#! rn=Liara rt=1080896150 rg=kochrezepte
+~#! tid=1080762371
+Gna! Also beim Vanillezucker gings mir primaer um das vanillearoma. Hab keine
+"pure" Vanille im Haus, musses also der Zucker tun.
+gez kla?
+
+-mupfel-
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: Bananenmilch (Montanus,  2. Apr 2004, 11:03:51):
+~#! rn=Elberet rt=1080896593 rg=kochrezepte
+~#! tid=1080762371
+Das ist mit ziemlich vielen Dingen so. UndNachbars Kirschen schmecken auch
+immer besser als die eigenen.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^11: Bananenmilch (Gloinson,  2. Apr 2004, 11:04:13):
+~#! rn=Montanus rt=1080896631 rg=kochrezepte
+~#! tid=1080762371
+Klar, wenn die eigenen staendig ersaufen.
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^11: Bananenmilch (Muadib,  2. Apr 2004, 11:04:31):
+~#! rn=Montanus rt=1080896631 rg=kochrezepte
+~#! tid=1080762371
+irgendwie machst du einen leicht angeaetzten eindruck montanus, woran liegts
+:)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^12: Bananenmilch (Maharet,  2. Apr 2004, 11:04:51):
+~#! rn=Muadib rt=1080896671 rg=kochrezepte
+~#! tid=1080762371
+Zu wenig Zucker in der Bananenmilch?
+
+-----------------------------------------------------------------------------
+
+
+
+Re^13: Bananenmilch (Muadib,  2. Apr 2004, 11:05:01):
+~#! rn=Maharet rt=1080896691 rg=kochrezepte
+~#! tid=1080762371
+:wiehert
+
+-----------------------------------------------------------------------------
+
+
+
+Re^12: Bananenmilch (Montanus,  2. Apr 2004, 11:05:09):
+~#! rn=Muadib rt=1080896671 rg=kochrezepte
+~#! tid=1080762371
+Ich aerger mich nru drueber, dass der Thread in der falschen Rubrik gefuehrt
+wird. ;-) Neee, sonst geht es mri gut.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Bananenmilch (Liara,  2. Apr 2004, 11:18:42):
+~#! rn=Mupfel rt=1080896621 rg=kochrezepte
+~#! tid=1080762371
+Der Geschmack von Vanille ist uebrigens eine reine Erfindung der
+Lebensmittelaroma-Macher. Habe mal fuer ein Heidengeld ein Toepfchen Vanille
+gekauft ... aber es hat nie nach Vanille geschmeckt, selbst wenn man alles
+reingekippt hat und der Teig/Pudding etc. total schwarz war. ;)
+P. S.: Ihr seid alle Angeber! *schnief* *auchmaloriginalobstessenmoechte*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Bananenmilch (Boing,  2. Apr 2004, 11:19:35):
+~#! rn=Liara rt=1080897522 rg=kochrezepte
+~#! tid=1080762371
+Pflueck Dir nen Apfel ... :)
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Bananenmilch (Maharet,  2. Apr 2004, 11:19:49):
+~#! rn=Boing rt=1080897575 rg=kochrezepte
+~#! tid=1080762371
+Im April?
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: Bananenmilch (Boing,  2. Apr 2004, 11:20:27):
+~#! rn=Maharet rt=1080897589 rg=kochrezepte
+~#! tid=1080762371
+Nein, man kann Liaras 'mal' durchaus etwas weitraeumiger interpretieren :)
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Bananenmilch (Catweazle,  2. Apr 2004, 11:20:31):
+~#! rn=Boing rt=1080897575 rg=kochrezepte
+~#! tid=1080762371
+Ich hatte mal Urlaub in Indonesien, ja.
+
+Seitdem wuerde ich diese komischen gelben krummen Dinger die es hierzulande
+gibt _nie_ wieder als Banane bezeichnen wollen. 
+
+YTC
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: Bananenmilch (Montanus,  2. Apr 2004, 11:23:00):
+~#! rn=Catweazle rt=1080897631 rg=kochrezepte
+~#! tid=1080762371
+husch, husch, wieder zurueck in die richtige Rubrik!
+;-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^11: Bananenmilch (Liara,  2. Apr 2004, 11:32:43):
+~#! rn=Montanus rt=1080897780 rg=kochrezepte
+~#! tid=1080762371
+Poeh, ihr schreibt meinen Thread woanders weiter?
+
+-----------------------------------------------------------------------------
+
+
+
+Re^12: Bananenmilch (Montanus,  2. Apr 2004, 11:33:18):
+~#! rn=Liara rt=1080898363 rg=kochrezepte
+~#! tid=1080762371
+Nicht wirklich. Aber Catty hat da auch noch andere Schreibverpflichtungen.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Bananenmilch (Muadib,  2. Apr 2004, 11:42:42):
+~#! rn=Liara rt=1080897522 rg=kochrezepte
+~#! tid=1080762371
+ein toepfchen?
+warum nicht aus der schote gekratzt?
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Bananenmilch (Elberet,  2. Apr 2004, 11:43:52):
+~#! rn=Liara rt=1080897522 rg=kochrezepte
+~#! tid=1080762371
+hmm wenn du Vanille reinsteckst schmeckt der auch nach Vanille, vielleicht
+stellst du Dir unter Vanillegeschmack was falsches vor ;)
+
+Elbi
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Bananenmilch (Liara,  2. Apr 2004, 11:44:44):
+~#! rn=Muadib rt=1080898962 rg=kochrezepte
+~#! tid=1080762371
+Jo, das habe ich mir dann nachher auch gedacht. Aber ich brauchte da eine
+ganze Menge ... Leider hat Schotengekratztes bei mir bisher auch nie nach
+Vanille geschmeckt. ;<
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: Bananenmilch (Muadib,  2. Apr 2004, 11:45:18):
+~#! rn=Liara rt=1080899084 rg=kochrezepte
+~#! tid=1080762371
+das ist ... erstaunlich
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Bananenmilch (Kellybundy,  2. Apr 2004, 19:56:59):
+~#! rn=Liara rt=1080897522 rg=kochrezepte
+~#! tid=1080762371
+Liegt vielleicht daran, dass Du ethyl-vanilin statt echten Vanilins erstanden
+hast. Ethylvanilin ist zwar nicht guenstiger herzustellen, ist aber im Aroma
+sehr viel kraeftiger und ergiebiger, leider auch ordinaerer. Wer nen guten
+Gaumen und nen einigermassen funktionierenden Riechkolben hat, wird den
+geschmacklichen/geruchlichen Unterschied nie vergessen.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Bananenmilch (Kellybundy,  2. Apr 2004, 19:59:45):
+~#! rn=Kellybundy rt=1080928619 rg=kochrezepte
+~#! tid=1080762371
+P.S.:Unverschaemterweise geht beides unter Vanillearoma, Ethylvanillin muss
+also leider nicht extra gekennzeichnet werden. IMHO eine Sauerei.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: Bananenmilch (Montanus,  4. Apr 2004, 11:51:58):
+~#! rn=Kellybundy rt=1080928785 rg=kochrezepte
+~#! tid=1080762371
+Bananenmilch a la Leibi sieht dann so aus:
+
+Man nehme eine Mupfel, Martinis frisch gewonnenen Elektromixbecher, die
+vorhandenen Utensilien fuer Bananenmilch und Bacardi.
+Nachdem man Mupfel eine Bananenmilch hat erzeugen lassen, fuelle man in alle
+Glaeser vorher schon mal einen guten Schluck Rum, und hinterher auch noch in
+den gemixten Rest.
+Prost...
+Achja, und natuerlich geht es auch ohen Zucker und ohen Vanille. Ob es auch
+ohne Mupfel geht, weis ich allerdings nicht. Und ohen den Mixer waere er
+aufgeschmissen gewesen.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^11: Bananenmilch (Gloinson,  4. Apr 2004, 20:27:15):
+~#! rn=Montanus rt=1081072318 rg=kochrezepte
+~#! tid=1080762371
+Die Bananen waren zu unreif. Gnarf. Und das meinem Mixer :)
+
+
+-----------------------------------------------------------------------------
+
+
+
+Kuerbischutney (Whitetiger,  4. Apr 2004, 20:50:48):
+K ue r b i s c h u t n e y
+
+Zutaten:
+
+1 kg Kuerbisfleisch
+1 Apfelsine
+2 gruene oder rote Paprika
+125 g Korinthen
+875 g Zucker
+1 Teeloeffel Salz
+1 Teeloeffel Curry
+1 Messerspitze gemahlene Nelken
+1 Messerspitze gemahlenen Pfeffer
+1 1/2 Tassen Essig
+
+Das Kuerbisfleisch in duenne Scheiben schneiden, Orange und Paprika wuerfeln,
+mit Korinthen und 500 g Zucker weich kochen. Dann wuerzen und dicklich
+einkochen lassen. Essig und Restzucker hinzufuegen und 5 Minuten aufkochen
+lassen, anschliessend weitere 15 Minuten koecheln lassen und abfuellen. Guten
+Appetit.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: Bananenmilch (Darklor,  9. Apr 2004, 00:11:36):
+~#! rn=Liara rt=1080899084 rg=kochrezepte
+~#! tid=1080762371
+Sondern eher wie angebrannte Milch?
+
+Darklor
+
+-----------------------------------------------------------------------------
+
+
+
+artikel das ultimative Brot (Hixtine,  3. Mai 2004, 13:23:31):
+das Das U L T I M A T I V E Brot
+
+500 g Dinkel- oder Weizenvollkornmehl
+25 g  Frischhefe
+500 ml lauwarmes Wasser
+2 TL  Salz
+3 EL  Obstessig
+je 80 g Leinsamen, Sonnenblumenkerne, Sesam
+
+Zubereitung:
+* Hefe in Wasser aufloesen
+* Alles mit Knethaken des Mixers verruehren
+* Teig in eine vorgefettete Kastenform fuellen
+* bei 220 Grad ne stunde backen (Umluft 180)
+* 24 Stunden Kuehlen lassen
+
+;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: artikel das ultimative Brot (Maharet,  3. Mai 2004, 13:24:13):
+~#! rn=Hixtine rt=1083583411 rg=kochrezepte
+~#! tid=1083583411
+Und den Teig gar nicht gehen lassen vor dem Backen?
+
+Maha, Spion und Giftmischer aD
+
+-----------------------------------------------------------------------------
+
+
+
+Zusatz zum Brotrezept (Hixtine,  3. Mai 2004, 13:27:19):
+Ich hab verUps, 
+
+ich habe vergessen:
+Bevor man den Teig in eine Kastenform zugibt muss der Teig viertel stunde
+ruhen
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Zusatz zum Brotrezept (Croft,  3. Mai 2004, 13:43:42):
+~#! rn=Hixtine rt=1083583639 rg=kochrezepte
+~#! tid=1083583639
+Den Vorteig spart man sich auch?
+
+Croft
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Zusatz zum Brotrezept (Maharet,  3. Mai 2004, 13:44:36):
+~#! rn=Croft rt=1083584622 rg=kochrezepte
+~#! tid=1083583639
+Braucht man nicht unbedingt, wenn die Hefe gut ist.  Ich wuerd einen machen,
+damit ich im Fall des Fehlschlags nicht so viel Mehl wegschmeissen muss.
+
+Maha, Spion und Giftmischer aD
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Zusatz zum Brotrezept (Jameson,  3. Mai 2004, 13:46:28):
+~#! rn=Maharet rt=1083584676 rg=kochrezepte
+~#! tid=1083583639
+Wenn wir fuer unser derzeit verwendetes Brotrezept ganz neu (Sauer)Teig
+ansetzen, geht das in 3 Stufen, mit 2-3 Tagen Dauer...
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Zusatz zum Brotrezept (Maharet,  3. Mai 2004, 13:48:52):
+~#! rn=Jameson rt=1083584788 rg=kochrezepte
+~#! tid=1083583639
+Sauerteig ist auch nicht gleich Hefeteig ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Zusatz zum Brotrezept (Jameson,  3. Mai 2004, 13:54:20):
+~#! rn=Maharet rt=1083584932 rg=kochrezepte
+~#! tid=1083583639
+Das ist richtig, war auch nur mal so'n Vergleich.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Zusatz zum Brotrezept (Croft,  3. Mai 2004, 13:54:48):
+~#! rn=Jameson rt=1083585260 rg=kochrezepte
+~#! tid=1083583639
+:reicht Jameson einen Apfel und eine Birne.
+
+Croft
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Zusatz zum Brotrezept (Jameson,  3. Mai 2004, 13:55:38):
+~#! rn=Croft rt=1083585288 rg=kochrezepte
+~#! tid=1083583639
+:isst die Birne und backt mit dem Apfel und ein paar seiner Kollegen ein
+leckeres Apfelbrot.
+
+-----------------------------------------------------------------------------
+
+
+
+Lasagne Bolognese (Matis,  4. Mai 2004, 22:38:34):
+Da eben Teile sowieso schon auf -allgemein standen, hier das gesamte Rezept
+(und ein bisschen Englischueben):
+
+Lasagne Bolognese
+=================
+
+  Serves: 4
+  Preparation Time: 40 min
+  Cooking Time: 35 minutes
+
+
+a)  Bolognese Sauce:
+     - 2x 15ml spoon olive oil
+     - 1 onion, finely chopped
+     - 2 cloves garlic
+     - 500g minced beef or chicken
+     - 1 tbsp plain flour
+     - 1x 400g can chopped tomatoes
+     - 150ml water
+     - pinch sugar
+     - 2 tbsp tomato puree
+     - 2 tsp died oregano
+     - 2 tsp dried basil
+     - salt & pepper
+
+     Heat the oil in a pan and cook the onion and garlic until soft,
+     not browned. Add the mince and stir until browned then add the
+     flour and cook for 1 minute. Stir in the tomatoes, water, sugar,
+     tomato puree, herbs and seasoning and simmer for 30 minutes.
+
+b) Cheese Sauce:
+    - 450ml milk
+    - 40g butter
+    - 40g plain flour
+    - 125 mature cheddar cheese, grated
+    - salt & pepper
+
+    Place the milk, butter an flour in a pan and heat gently whilst
+    whisking continously. Once thickened simmer the sauce for 5
+    minutes, stirring occasionally. Add the seasoningg and the cheddar
+    cheese.
+
+c) Lasagne:
+    - 9 sheets lasagne
+    - 50g mature cheddar cheese, grated
+    - 50g freshlt grated parmesan
+
+    Layer three sheets of lasagne in the base of an ovenproof dish and
+    cover with half the meat sauce, then one third of the cheese sauce.
+    Top with more lasagne sheets, the remaining meat sauce, lasagne
+    sheets and cheese sauce. Sprinkle with the cheddar cheese and
+    parmesan. Cook in the centre of a preheated oven (200 degree) for
+    3--35 minutes until golden brown.
+
+Matis
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Lasagne Bolognese (Montanus,  5. Mai 2004, 00:08:35):
+~#! rn=Matis rt=1083703114 rg=kochrezepte
+~#! tid=1083703114
+Wenn das ein echtes Rezewpt auf Englisch ist, dann musst du allerding dei
+Gradzahl noch irgendwie korrigieren. Denn Celsius ist halt doch nicht die
+beliebrtesteSkala bei unseren Nachbarn. fahrenheit aehltda doch viel mehr...
+Irgendwo fehlte ein 'z'. Dies sei hiermit nachgereicht...
+
+-----------------------------------------------------------------------------
+
+
+
+FUER KEKS (Lug,  5. Jun 2004, 00:17:21):
+
+Mini Corndogs
+
+1 c Flour
+1/2 c Cornmeal
+1 tb Sugar
+1 1/2 ts Salt
+2 tb Vegetable shortening
+1 Egg, beaten slightly
+3/4 c Milk
+Oil
+8 Frankfurters, cut into
+-thirds
+
+Combine flour, cornmeal, sugar, baking powder, and salt in a medium bowl.
+With a pastry blender, cut vegetable shortening into flour mixture until
+there are fine crumbs. Add egg and milk and blend well. Pour vegetable oil
+to a 2 inch depth in a deep fryer or large saucepan. Heat to 375 degrees.
+Pat frankfurter dry with paper towels. Insert a toothpick into the center
+of each frankfurter. Dip each frankfurter into batter and then into hot oil
+until golden brown. Drain on paper
+
+Blach...
+
+Lugifer
+
+-----------------------------------------------------------------------------
+
+
+
+Marmelade mit Prozenten (Jameson,  3. Sep 2004, 10:50:37):
+Ich habe ein Glas leckere Blaubeermarmelade geschenkt bekommen, bei dem der
+Marmeladenkoch zum Konservieren (bzw. ich habe den Verdacht weil er drauf
+steht ;-) ziemlich viel Alkohol hinzugefuegt hat. Laesst sich da noch was
+retten? Ich wuerde das Glas ja nochmal erhitzen, dabei wuerde sich der Alkohol
+sicher verfluechtigen, aber geht der Schnapsgeschmack auch weg?
+
+jAmeson
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Marmelade mit Prozenten (Montanus,  3. Sep 2004, 10:52:22):
+~#! rn=Jameson rt=1094201437 rg=kochrezepte
+~#! tid=1094201437
+Setz es bei Megaschmarrn aus - ich glaube, hochproentige Blaubaeren kaemen bei
+den Meisten gan zgut an. *g*
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Marmelade mit Prozenten (Maharet,  3. Sep 2004, 19:17:08):
+~#! rn=Montanus rt=1094201542 rg=kochrezepte
+~#! tid=1094201437
+Der Geschmack sollte bleiben. Das ist ja das Prinzip von Weinsaucen zB - der
+Geschmack des Weines soll ja drinbleiben, die Sauce aber (im Allgemeinen) auch
+kindertauglich.
+Was dir aber passieren kann, ist, dass die Marmalade danach nicht wieder fest
+wird. Probier's aus und berichte :)
+
+Maha
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Marmelade mit Prozenten (Kellybundy,  3. Sep 2004, 20:58:41):
+~#! rn=Jameson rt=1094201437 rg=kochrezepte
+~#! tid=1094201437
+Wie hat der konserviert? Seine Leber durch kraeftiges Probieren des Fungizides
+waehrend der Marmeladenproduktion? und ab und zu mal nen Schuss in den Sud
+gegeben? oder hat er ein Zellophanhaeutchen in hochprozentigem eingelegt und
+zuoberst auf der potentiellen Blaubeer-Drogen-Mischung postiert?
+
+Blondchen
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Marmelade mit Prozenten (Jameson,  6. Sep 2004, 11:48:54):
+~#! rn=Maharet rt=1094231828 rg=kochrezepte
+~#! tid=1094201437
+Ich werd's mal ausprobieren :) Fest werden braucht sie eigentlich auch gar
+nicht, zumindest nicht so fest wie im Moment.
+Wenn's uebrigens nur so mit Zellophan waer wie frueher bei Oma, waer es wohl
+nicht so schlimm, das sinkt nicht so weit ein, wenn man's richtig macht. Noe,
+nix wie rein mit dem Zeug vermute ich, ich bin nicht mal sicher ob nur
+obendrauf oder gleich reingemischt (nach dem Kochen).
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Suche neuen Besitzer (Ronda, 13. Nov 2004, 21:39:20):
+~#! rn=Hobo rt=1100378282 rg=suche-biete
+~#! tid=1100378282
+Hmm... wo wir grad beim Thema waeren... nur so theoretisch... wie viel
+Sauerbraten und Salami kann man aus so nem durchschnittlichen Pferdchen
+machen? Und weiss irgendwer irgendwelche Rezepte?
+
+Ronda *geht vor Hobo grinsend in Deckung*
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Suche neuen Besitzer (Wurzel, 14. Nov 2004, 12:52:06):
+~#! rn=Ronda rt=1100378360 rg=kochrezepte
+~#! tid=1100378282
+zwar sind sauerbraten und salami ziemlich traditionelle rezepte fuer 
+pferdefleisch, aber ich empfehle mal ein pferdesteak vom grill. es gibt
+nichts besseres.
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Muadibs Kochtipps fuer blutige Anfaenger (Muadib, 15. Jan 2005, 18:28:09):
+Auf Wunsch einzelner Mudder sei hier ein kleines Rezept untergebracht.
+
+Rezept fuer heisses Wasser
+
+Man nehme eine Kochgelegenheit, einen Topf und etwas Wasser (etwas weniger als
+in den Topf hineingeht, und nicht allzu wenig)
+
+Man fuelle das Wasser in den Topf. Am besten geht das wenn man die Oeffnung
+oben hat.
+Danach stellt man den Topf auf die Kochgelegenheit.
+Man aktiviere die Kochgelegenheit auf einer hohen Stufe.
+Man warte bis reichlich Dampf aufsteigt aber das Wasser noch keine Blasen
+zeigt.
+Nun ist das Wasser in etwa heiss.
+Herzlichen Glueckwunsch.
+
+Solltest Du mit diesem Rezept das gewuenschte Resultat erzielt haben und zwar
+ohne Ungluecke, kannst Du zu einem fortgeschrittenen Level uebergehen:
+KOCHENDES WASSER
+
+Einfach heisses Wasser bereiten und es auf der aktivierten Kochgelegenheit
+lassen bis das Wasser deutlich Blasen wirft. Dann kocht es.
+Gratulation
+
+So das sei es gewesen.
+
+Naechste Folge: Was macht man nun mit dem kochenden Wasser?
+
+-----------------------------------------------------------------------------
+
+
+
+Anatolischer Weisskohlauflauf (Perdita,  9. Mar 2005, 20:13:21):
+In diesem Rezept kommt zwar entgegen der Ankuendigung im Titel kein Anatol
+vor, aber schmecken tut's!
+
+Wer es richtig echt tuerkisch will, sollte statt dem Rinderhack
+Lammhackfleisch nehmen.
+
+Fuer 4 Personen
+1 Weisskohl (etwa 750 g) --- hm, meiner wog etwa 2 kg, aber vielleicht gibt es
+ja auch kleine Weisskoehle
+60 g Butter
+Salz, schwarzer Pfeffer
+scharfes Paprikapulver
+200 ml Fleischbruehe
+3 Zwiebeln
+400 g Rinderhackfleisch
+4 EL Tomatenmark
+200 g Schafskaese
+3 Eier
+200 ml Milch
+Butter fuer die Form
+
+Den Kohl von den aeusseren Blaettern befreien und waschen. Vierteln, den
+Strunk herausschneiden und die Viertel in feine Streifen schneiden oder
+hobeln. Die Haelfte der Butter erhitzen und die Streifen unter Ruehren darin
+anbraten. Mit Salz, Pfeffer und Paprika wuerzen. Knapp die Haelfte der Bruehe
+angiessen und den Kohl zugedeckt 20 Minuten schmoren.
+
+Die Zwiebeln schaelen und fein wuerfeln. Die restliche Butter in einer Pfanne
+zerlassen und die Zwiebeln darin anbraten. Das Hackfleisch dazugeben und
+kruemelig braten. Salzen, pfeffern und bei schwacher Hitze in etwa 10 Minuten
+durchbraten.
+
+Den Backofen auf 175C vorheizen. Eine Auflaufform mit Butter ausfetten. Die
+restliche Bruehe mit dem Tomatenmark verruehren. Den Schafskaese grob
+zerbroeckeln.
+
+Den Kohl und das Hackfleisch in die Form geben. Die Fleischbruehe
+daruebergiessen und den Kaese darauf verteilen. Die Eier mit der Milch
+verquirlen, salzen, pfeffern und ueber den Auflauf giessen. Im Ofen (Gas 2;
+Umluft 160C) auf unterer Schiene 30 Minuten backen.
+
+Ich finde uebrigens, dass das Rezept eher fuer 6 als nur fuer 4 Leute reicht.
+Als Serviertip wird im Rezept angegeben, Sesamringe oder Fladenbrot und einen
+Salat aus Tomaten, Gurken und Zwiebeln sowie ein Schaelchen mit Oliven dazu zu
+reichen.
+
+Wie auch immer, es schmeckt lecker!
+
+Perdita
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Anatolischer Weisskohlauflauf (Wurzel, 11. Mar 2005, 11:42:36):
+~#! rn=Perdita rt=1110395601 rg=kochrezepte
+~#! tid=1110395601
+hm, etwas "tuerkischer" wird es nicht nur mit lammfleisch, sondern auch mit
+olivenoel anstelle der butter. nebenbei bemerkt, auch etwas gesuender.
+und ich finde, dass das rezept von den mengen her eher fuer zwei als fuer
+sechs leute reicht. oder eben vier durchschnittsesser :)
+
+-----------------------------------------------------------------------------
+
+
+
+Orkgulasch (Catweazle,  8. Apr 2005, 09:06:50):
+~#! on=Cornholio ot=1112943403 og=entwicklung
+Hat jemand ausgefallene Kochrezepte zum Thema MorgenGrauen?
+Wenn die online gestellt werden, ist das eine Attraktion mehr
+auf den Seiten. Vielleicht weckt das dann auch das Interesse
+der Besucher, die danach gesucht haben (in 2 Monaten dann
+die Webserverlogs auswerten), auch mal mitzuspielen.
+Vor allem waeren es dann auch welche, die nicht nur aus der
+IT-Ecke kommen (welche bei der Suche nach Java-Telnet-Clients
+u.a. auf das MorgenGrauen stossen).
+
+Beispiele:
+Orkgulasch, Elfenbizet, Hobbitschokokekse...
+
+Ein wenig Eigennutz ist da auch dabei :)
+
+Cornholio, sich auf Kochrezepte freuend
+
+PS.
+Obwohl wir nicht die ersten waeren, die Telnet- und MUD-Clients
+auf den Seiten erklaeren wuerden, haette es einen aehnlichen Effekt:
+Irgendwann wuerden die Suchmaschinen auch diese Seite erspidern.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Orkgulasch (Humni,  8. Apr 2005, 22:36:34):
+~#! rn=Catweazle rt=1112944010 rg=kochrezepte
+~#! tid=1112944010
+Schau Dich mal bei meinen Hexen um.... ;-) da gibts ein Kochbuch. Ob das
+online... ach egal.
+
+Humni hat genug verraten.
+
+-----------------------------------------------------------------------------
+
+
+
+Fisch in Honig-Orangensauce mit Reis (Maharet, 14. Dez 2006, 22:30:16):
+4 Fischfilets (z.B. Lachs) 
+
+Saft von 4 Orangen 
+
+2 TL Honig 
+
+2 Knoblauchzehen 
+
+Salz 
+
+1 Becher Creme fraiche 
+
+1 EL Sojasauce 
+
+Petersilie 
+
+Reis 
+
+
+
+
+
+Reis garen. Fischfilets in Orangensaft mit Honig, Knoblauch und einer Prise
+Salz 10-15 min duensten. Creme fraiche, Sojasauce und Petersilie zufuegen,
+weitere 5 min kochen lassen.
+
+Das ergibt recht viel Sauce, was uns gut gepasst hat.  Die ist naemlich lecker
+;) Und so konnte der geduenstete Brokkoli, den es dazu gab, auch gleich noch
+be-sauce-t werden.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Fisch in Honig-Orangensauce mit Reis (Humni, 15. Dez 2006, 17:31:10):
+~#! rn=Maharet rt=1166131816 rg=kochrezepte
+~#! tid=1166131816
+Fisch kann man nicht essen, denn jeder Mensch, der schon einmal Fisch gegessen
+hat, ist daran gestorben oder wird noch sterben.
+
+Ich empfehle, den Fisch einfach wegzulassen und dafuer was anderes zu nehmen.
+Dann schmeckt das vermutlich auch.
+
+Bierfilets in Honig-Orangensauce mit Reis
+
+4 Flaschen Bier (z.B. Veltins)
+
+
+Saft von 4 Orangen
+
+2 TL Honig
+
+2 Knoblauchzehen
+
+Salz
+
+1 Becher Creme fraiche
+
+1 EL Sojasauce
+
+Petersilie
+
+Reis
+
+
+
+
+
+Reis garen. Bier in Orangensaft mit Honig, Knoblauch und einer Prise
+Salz 10-15 min duensten. Creme fraiche, Sojasauce und Petersilie zufuegen,
+weitere 5 min kochen lassen.
+
+
+Man kann auch bedunsteten Broccoli dazu mit Sauce uebergiessen oder so.
+
+Ich habs aber nicht probiert.
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Fisch in Honig-Orangensauce mit Reis (Gloinson, 15. Dez 2006, 17:36:25):
+~#! rn=Humni rt=1166200270 rg=kochrezepte
+~#! tid=1166131816
+Sushi schmeckt uebrigens auch am naechsten Tag noch toll. Fuer Sushi kann man
+ja Fisch benutzen, also hat man im Kuehlschrank:
+
+- Pilze, geschnitten
+- Lachs, geschnitten
+- Thunfisch, geschnitten
+
+eventuell noch uebrig.
+
+Das Ganze braet man in einer Pfanne, kippt Tomatenmark darueber, wuerzt nach
+Geschmack und giesst es ueber ein paar Nudeln, die man noch von der
+Einweihungsfete in einem Glas zu stehen hatte.
+
+Ich nenne das ganze "Sushi - ungerollt".
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Fisch in Honig-Orangensauce mit Reis (Maharet, 15. Dez 2006, 17:59:21):
+~#! rn=Humni rt=1166200270 rg=kochrezepte
+~#! tid=1166131816
+Hehe, ok, kann man ja mal probieren, aber ob das Flaschenglas weich wird, wage
+ich zu bezweifeln ;)
+
+Ansonsten:  Ich kann mir gut vorstellen, dass das auch zB mit Huehnchen statt
+Fisch gut schmeckt.  Waere einen Versuch wert.
+
+Maha
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Fisch in Honig-Orangensauce mit Reis (Nedime, 15. Dez 2006, 18:00:13):
+~#! rn=Maharet rt=1166201961 rg=kochrezepte
+~#! tid=1166131816
+Na, da wissen wir doch schon mal, was wir einen Tag im Urlaub kochen ;).
+
+Nedime
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Fisch in Honig-Orangensauce mit Reis (Croft, 15. Dez 2006, 18:02:12):
+~#! rn=Gloinson rt=1166200585 rg=kochrezepte
+~#! tid=1166131816
+Und wo ist da der Reis?
+
+Croft
+
+-----------------------------------------------------------------------------
+
+
+
+Quinoa-Mango-Salat mit Walnuessen (Maharet, 13. Mai 2007, 13:09:32):
+Quinoa ist unser Lieblingsgetreide. Wer das noch nicht probiert hat: Quinoa
+kaufen und in allen moeglichen Kombinationen ausprobieren!
+Wer keine Idee hat, hier ein Vorschlag:
+
+Quinoa-Mango-Salat mit Walnuessen
+
+Dressing
+    * 1 EL Ingwer
+    * 80g Joghurt
+    * Saft einer halben Limette
+    * 1 TL Currypulver
+    * 1/2 TL Salz
+    * 1/2 TL schwarzer Pfeffer
+    * 60ml Olivenoel 
+
+Salat
+    * 250g Quinoa
+    * Salz
+    * 1-2 reife Mangos
+    * 1 rote Paprika
+    * 1 Peperoni
+    * eine Handvoll frische Pfefferminze
+    * 100-125g Walnuesse 
+
+Zubereitung:
+   1. Ingwer schaelen, fein wuerfeln, mit den restlichen Dressingzutaten
+verruehren.
+   2. Quinoa im Reiskocher garen (Ich bin da recht pragmatisch veranlagt).
+   3. Mangos schaelen, wuerfeln. Paprika und Peperoni entkernen und wuerfeln.
+Pfefferminze klein schneiden.
+   4. Walnuesse roesten.
+   5. Alles miteinander verruehren, einige Zeit durchziehen lassen. 
+
+
+Lecker!
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Quinoa-Mango-Salat mit Walnuessen (Alboin, 13. Mai 2007, 13:34:31):
+~#! rn=Maharet rt=1179054572 rg=kochrezepte
+~#! tid=1179054572
+Auch wenn es meistens auf der Verpackung schon steht: Wichtig ist die Quinoa
+vor dem Kochen mit heissem Wasser zu waschen, damit die Bitterstoffe entfernt
+werden.
+
+al
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Quinoa-Mango-Salat mit Walnuessen (Mesirii, 13. Mai 2007, 13:37:17):
+~#! rn=Alboin rt=1179056071 rg=kochrezepte
+~#! tid=1179054572
+Haben wir nie gemacht, Reiskocher reichte und Bitterstoffe waren da keine
+Mesi
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Quinoa-Mango-Salat mit Walnuessen (Maharet, 13. Mai 2007, 13:37:29):
+~#! rn=Alboin rt=1179056071 rg=kochrezepte
+~#! tid=1179054572
+yep, und das gilt fuer alle Getreide.  Auch bei meinem anderen
+Lieblingsgetreide, der Hirse ;)
+
+Auch wenn ich mich da nicht immer diszipliniert dran halte und weder
+geschmacklich noch gesundheitlich irgendwelche Beeintraechtigungen feststellen
+konnte.
+
+-----------------------------------------------------------------------------
+
+
+
+Kartoffel-Gurken-Salat mit Cranberries (Maharet, 13. Mai 2007, 13:51:56):
+Den Quinoa-Salat gab's gestern, heute waren Kartoffeln angesagt:
+
+Kartoffel-Gurken-Salat mit Cranberries
+    
+    * gut 500g festkochende Kartoffeln
+    * 1 Gurke
+    * Petersilie
+    * evtl. Walnuesse 
+
+fruf rer's Dressing:
+
+    * 1 kleine Zwiebel
+    * 4-5 EL getrocknete Cranberries
+    * 1 unbehandelte Zitrone
+    * 4 EL Apfelsaft
+    * Salz, Pfeffer
+    * 150-200g Joghurt
+    * 2 EL Sonnenblumenoel
+    * ggf. Basenkraeuter von Sonnentor (wenn man sie eh gerade da hat, extra
+kaufen braucht man die nicht)
+    
+
+Zubereitung:
+
+   1. Kartoffeln als Pellkartoffeln kochen, abschrecken, pellen, in Scheiben
+schneiden.
+   2. Gurke schaelen, vierteln, entkernen, in feine Scheiben schneiden.
+   3. Zwiebel fein wuerfeln, Cranberries grob hacken, Zitronenschale
+abreiben, Zitronensaft auspressen, mit Apfelsaft mischen und aufkochen lassen.
+Abkuehlen lassen, Joghurt und Sonnenblumenoel unterruehren. Mit Salz und
+Pfeffer (und Basenkraeutern) wuerzen.
+   4. Walnuesse grob hacken und anroesten. Petersilie kleinschneiden (oder
+gefrorenen nehmen).
+   5. Alles locker miteinander vermengen und ein bisschen ziehen lassen. 
+   
+Foto gibt's hier:
+http://www.maharet.org/wiki/index.php?n=Main.Kartoffel-Gurken-SalatMitCranberr
+ies
+
+Auch sehr lecker!  Allerdings bei uns heute ohne Walnuesse, die waren gestern
+vollstaendig fuer den anderen Salat draufgegangen.  Ansonsten ist das ein
+schoen leichter Kartoffelsalat, richtig sommerlich. War mag schon noch
+Mayonnaisen-Pampe? ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kartoffel-Gurken-Salat mit Cranberries (Maharet, 13. Mai 2007, 13:52:40):
+~#! rn=Maharet rt=1179057116 rg=kochrezepte
+~#! tid=1179057116
+ok, das "Fuer's Dressing" reparier ich jetzt nicht, ihr versteht mich da schon
+;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Kartoffel-Gurken-Salat mit Cranberries (Boing, 13. Mai 2007, 23:31:20):
+~#! rn=Maharet rt=1179057160 rg=kochrezepte
+~#! tid=1179057116
+"cranberries" weckt bei mir ganz arg negative Assoziationen ...
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Moehrensuppe mit Cranberries (Maharet, 17. Mai 2007, 14:43:59):
+   Heute gab es Suppe, denn heute Abend gehen wir zu einer Geburtstagsparty,
+auf der es eh wieder viel zu viel zu essen geben wird.  Unter anderem unseren
+Kartoffel-Gurken-Salat ;)
+   Aber Cranberries fanden wir so lecker, da haben wir gleich noch was
+anderes mit ausprobiert:
+   
+   Moehrensuppe mit Cranberries
+   
+    * 400g Karotten
+    * 150g Kartoffeln
+    * 1 kleine Petersilienwurzel, wenn vorhanden (Wir hatten heute keine, da
+es die nur im 6er Pack gab.)
+    * 1 groCe Zwiebel
+    * 50g getrocknete Cranberries
+    * 3 EL Butter
+    * 1 TL Curry
+    * 1 TL Kurkuma oder Sonnenkuss von Sonnentor
+    * 750 ml Gemuesebruehe
+    * 50g frische Cranberries
+    * 200g Saure Sahne
+    * Salz, Pfeffer, Zucker 
+
+   1. Karotten, Kartoffeln, ggf. Petersilienwurzel und Zwiebel wuerfeln.
+   2. Getrocknete Cranberries grob hacken.
+   3. Zwiebel in 2 EL Butter mit Curry und Kurkuma/Sonnenkuss anduensten.
+   4. Karotten, Kartoffeln, Petersilienwurzel und Cranberries dazugeben, kurz
+mitduensten. Gemuesebruehe angieCen.
+   5. Wenn das Gemuese weichgekocht ist, puerieren.
+   6. Frische Cranberries in der restlichen Butter kurz anbraten, an die
+Suppe geben.
+   7. Saure Sahne unterruehren, mit Salz, Pfeffer und Zucker abschmecken. 
+   
+   Ich dachte, ich wuerde keine Moehrensuppe moegen, in der kein Ingwer drin
+ist. Stimmt aber nicht :) Und die Saeure der Cranberries gibt der Suppe den
+richtigen Pfiff.
+   
+   Ein Hobbit und ein Dunkelelf, die gerade zu Besuch sind, wollten
+(unabhaengig voneinander) das Rezept haben. Hier ist es nun auch fuer alle
+anderen Hobbits und Dunkelelfen. Und ausnahmsweise auch fuer die Anderen.
+   ~r
+
+-----------------------------------------------------------------------------
+
+
+
+Nudeln mit Sosse (Derin, 19. Jun 2007, 14:05:51):
+Pasta mit Gorgonzola-Sosse
+
+Nudeln (al Dente)
+
+Sosse:
+  1/3 Flasche trockenen Weisswein
+  etwas mehr als 100 g Gorgonzola mit Mascapone
+  1 kleines Stueck Parmesan
+  1 Lage Parmaschinken
+  1 kl. Zwiebel
+  2 kl. Zehen Knoblauch
+  knapp 1/4 Becher suesse Sahne
+  Oel (zum Braten)
+
+Zwiebel halbieren und in duenne Streifen schneiden. Knoblauch duenn
+aufschneiden. Parmaschinken entweder in Streifen schneiden oder zer-
+rupfen. Gorgonzola vorsichtig entrinden. Parmesan fein reiben.
+
+Oel in der Pfanne erhitzen, Zwiebeln darin glasig anduensten. Knoblauch
+dazugeben, Parmaschinken nur ganz kurz mitbraten. Dann mit Weisswein
+abloeschen. Die Mischung sollte auf gar keinen Fall mehr kochen, aber
+weiterhin Hitze bekommen. Jetzt Gorgonzola und Parmesan dazugeben, mit
+einem Schneebesen den Kaese aufloesen. Zum Abschluss die Sahne dazu --
+fertig.
+
+-----------------------------------------------------------------------------
+
+
+
+Plaetzchenrezept (Derin, 22. Dez 2007, 18:35:33):
+Knusperchen (Rezept von Oma)
+
+  300 g Mehl
+  200 g Zucker
+  150 g Fett (Butter/Magarine)
+  2 Messerspitzen Zimt
+  2 Messerspitzen Salz
+  4 Essl. Milch
+  1/2 Backpulver
+
+Alles gut durchkneten, ausrollen und ausstechen. Bei guter
+Mittelhitze backen lassen und mit Eigelb und Zucker oder nur
+mit Wasser oder Milch auf dem noch heissen Blech bestreichen.
+
+-----------------------------------------------------------------------------
+
+
+
+Spass mit Spinat und Linsen ... (Vanion, 24. Jun 2008, 20:00:11):
+... oder Wie ich mein Kind zum schreien bringe ... :)
+
+Hi,
+
+ich habe in letzter Zeit mal wieder einige Rezepte ausprobiert, die ich schon
+lange auf dem Todo hatte. Da ich mit diesen Rezepten klarkomme, sind keine
+Sternekoch-Kenntnisse noetig. Und die Rezepte bieten gute Moeglichkeiten,
+rechts und links abzuweichen und eigenes zu probieren.
+
+V*
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Spass mit Spinat und Linsen ... (Vanion, 24. Jun 2008, 20:02:12):
+~#! rn=Vanion rt=1214330411 rg=kochrezepte
+~#! tid=1214330411
+Spinat mit Roten Linsen und Curry (fuer 4 Personen)
+
+Zutaten:
+600g frischen Spinat (ich benutzze aus Bequemlichkeit TK, dann
+                      aber Blattspinat, nix Blubb oder so)
+200g rote Linsen
+
+1 Zwiebel
+2 Knoblauchzehen
+1 EL Oel 
+1 Chilischote
+Currypulver oder -Paste
+1/2 Bund Koriander
+
+600 ml Gemuesebruehe (z.B. instant oder wers Zeit hat, selbstgebastelt)
+100g saure Sahne oder Joghurt
+
+1 Bund Fruehlingszwiebeln (muss nicht dabei sein)
+200g Dosenmais (muss nich dabei sein)
+
+1. Bei frischem Spinat: Welke Blaetter aussortieren, dicke Stiele abknipsen, 
+   und waschen.
+   Bei TK-Spinat: Frostschrank auf, rausnehmen, fertig :)
+   Knoblauch, Zwiebeln und Chili wuerfeln (wer es nicht so scharf mag, 
+   entferne die Koerner der Chili, die haben's in sich.
+
+2. Oel in einem Wok, eine Pfanne oder einen beschichteten Topf geben.
+   Zwiebeln, Knoblauch, Chili und Curry in den Topf. Das ganze scharf 
+   anbraten (Currypaste wird erst so richtig wuerzig (scharf), wenn man sie 
+   anbraet, das riecht sehr intensiv, wenn man viel nimmt. Wirklich, sehr!)
+   Die Linsen dazugeben und einmal gut durchruehren. Dass die Linsen dabei 
+   warm werden macht nichts. Anschliessend kommt die Bruehe drauf, und das 
+   ganze koechelt 15 Minuten bei schwacher Hitze.
+   (In die Linsen kann man ganz prima etwas Thymian tun, wenn man welchen da 
+    hat.) 
+
+2a Kurz mal in die MPA schaun, obs was neues gibt.
+
+3. Mais abtropfen (ich hab keinen benutzt) und mit dem Spinat unter die Linsen
+   mischen. Eventuell etwas Salz dazu, das muss aber nicht, die Gemuesebruehe
+   ist eh schon salzig. 
+   Bei frischem Spinat so lange koecheln bis selbiger zusammengefallen ist, 
+   bei TK-Spinat bis die Brocken (den gibt es in so Portionierbroeckchen) 
+   aufgetaut sind und sich das ganze gut durchmischen laesst.
+
+4. In der Zwischenzeit kann man den Koriander waschen und die Blaetter ab-
+   zupfen. Fruehlingszwiebeln kleinschneiden. Beides wandert zusammen mit der
+   sauren Sahne (oder dem Joghurt) in die Linsen.
+
+5. Bei kleiner Flamme noch mal umruehren und kurz durchziehen lassen.
+
+Dazu passt hervorragend Fladenbrot, ich kann mir aber auch Kartoffeln gut
+vorstellen. Hmm, wenn man die (nicht zu weich) kocht, und anstatt des ekligen
+Maises in die Linsen wirft, und gaaanz vorsichtig umruehrt, wird das sicher
+lecker *fuers naechste mal aufschreib*)
+
+Achja, Koriander ist eigen. Ich habe etwas zu viel benutzt, weil ich nicht
+rechnen kann (die vierfache Menge *weia*). Den schmeckt man schnell raus. *eg*
+
+V*
+
+-----------------------------------------------------------------------------
+
+
+
+Marokkanischer Linsenauflauf (fuer 4 Personen) (Vanion, 24. Jun 2008, 20:21:01):
+~#! rn=Vanion rt=1214331567 rg=kochrezepte
+~#! tid=1214330411
+
+300g Linsen
+500g Spinat
+600 ml Gemuesebruehe (instant)
+200g Schafskaese (Feta, von mir aus auch Kuh-Feta)
+2 Zwiebeln
+2 Knoblauchzehen
+2 TL Olivenoel
+1 Dose Tomaten (zerkleinert, 400g)
+2 Chilischoten
+2 EL Tomatenmark
+1 Lorbeerblatt
+1 TL getr. Thymian (ich hab frischen auf dem Balkon, aetsch)
+Salz, Pfeffer
+Muskat (gerieben, 1 Messerspitze)
+Fladenbrot
+
+1. Linsen in einem Sieb abspuelen und dann zusammen mit der Bruehe zum kochen
+bringen. Nach 10 Min. auf der Kochstelle garen, den Topf von der Flamme nehmen
+und die Linsen in Ruhe quellen lassen. Die Haelfte des Schafskaeses
+zerkleinern und unter die Linsen mischen.
+
+2. Zwiebeln, Knoblauch und Chili zerkleinern die Haelfte Zwiebeln und
+Knoblauch + die ganze Chili im Oel anbraten. Das ganze mit den Dosentomaten
+abloeschen. Tomatenmark, Lorbeer, Thymian, Pfeffer und Salz dazu, das ganze
+dann saemig einkochen (also etwas dickfluessiger werden lassen)
+
+3. Ofen auf 200 Grad vorheizen. Spinat waschen. Restliche Zwiebeln und Knobi
+mit etwas Oel in einem Topf, anbraten und den Spinat und das Muskat (nach
+Geschmack) dazu (oder gleich TK-Spinat nehmen)
+
+4. Ein Drittel der Linsenmasse auf dem Boden einer Auflaufform verteilen, die
+Haelfte des Spinats darueber, dann die Tomatenpaste, dann wieder Spinat und
+oben drauf die Linsen. Den restlichen Schafskaese drueberstreuen. Den Auflauf
+40 Minuten auf mittlerer schiene bei 200 Grad backen. Wenn man am Ende noch
+das Brot mit in den ofen legt, wird das auch schoen knusprig.
+
+Guten Hunger.
+V*
+
+-----------------------------------------------------------------------------
+
+
+
+Drei-Gaenge-Drachenmenue (Humni,  7. Aug 2008, 22:05:54):
+Zutaten:
+1 Knoblauchzehe
+1 Eichblattsalat
+1 Putenschnitzel
+2 EL Senfhonig
+5 Eier
+1 Spieler (m/w egal)
+Salz
+Pfeffer
+1 Kinderhandvoll Sonnenblumenkerne
+5 Walnusskerne
+1 kleine Dose Mais
+0,15l Milch
+12 gelbe Cocktailtomaten
+3 Scheiben Toastbrot
+Rapsoel
+
+Die Toastbrotscheiben entrinden, den Spieler mit Drachenfeuer ein wenig
+anbraten (bis er leise wimmert). Das Putenschnitzel in Streifen schneiden.
+Eine Pfanne heissmachen und Rapsoel reintun. Heiss werden lassen, dann die
+Putenstreifen da reintun und ab und an wenden (nennt man Braten). Den Spieler
+jetzt aufrichten und auf den Detz hauen, da das Gewimmer nervt.
+
+Die Streifen, wenn sie einigermassen braun sind, rausnehmen. Den Salat putzen,
+die Toastscheiben in Stueckchen schneiden und auch mit Rapsoel anbraten.
+
+3 Eier trennen, das Eigelb in eine Schuessel tun (nennen wir sie Harald), das
+Eiweiss in eine andere (nennen wir sie Sabine).
+
+Knoblauch klein hacken oder pressen oder sowas, in Harald tun. Salz und
+Pfeffer auch drauf. Den Senf auch in Harald. Dann Oel dazutun (da geht wohl
+auch Olivenoel, wenn man Rapsoel zu geschmacklos findet), etwa 3 EL. Das ganze
+Schlagen (mit einem Besen, nicht wie den Spieler).
+
+Mais, Nuesse, Sonnenblumenkerne in Harald tun, ebenso den Salat. Den Spieler,
+der dabei wieder aufwacht, nochmal ein wenig mit Drachenfeuer einheizen.
+
+Die Cocktailtomaten kleinschneiden, auch in Harald tun, ebenso die
+Putenstreifen. Dann alles mischen ("unterheben" sagt der Chef der Kusine dazu
+oder so).
+
+Die uebrigen Eier aufschlagen, in Sabine tun, ebenso die Milch in Sabine tun,
+in der Pfanne unter Ruehren erhitzen. Vorher besser Pfeffer rein.
+
+Die gebratenen Toastteilchen auf Harald obendrauftun (wer mag kann parmesan
+drauftun, geht auch ohne, steht nicht bei den Zutaten).
+
+Dann erst den Inhalt von Harald essen ("Drachensalat"), dann den Spieler
+fressen (Hauptgang), dann das Ruehrei auffuttern.
+
+Guten Hunger.
+
+Humni
+PS: Entstanden aus einem "Mens Health", den ich zum Geburtstag bekommen habe,
+und dem darin befindlichen Rezept fuer "Caesarsalat". Eventuelle
+Aehnlichkeiten sind nicht rein zufaellig. Naja, Anchovis sind leider nicht
+essbar.
+PPS: Ja, mein Rezept ist anders - es ist besser.
+
+-----------------------------------------------------------------------------
+
+
+
+Videojug (Vanion, 24. Mar 2009, 13:03:10):
+Hi,
+
+kuerzlich war ich auf der Suche nach einem halbwegs authentischen American
+Pancake-Rezept. Gefunden habe ich www.videojug.com/tag/food-and-drink
+
+Da hat sich mittlerweile eine ziemlich aktive und internationale Community
+angesammelt, die Rezepte mit einfachen Videos erklaert. Eine Menge leckerer
+Sachen zum Nachkochen. Panncakes gabs auch :)
+
+V*
+
+-----------------------------------------------------------------------------
+
+
+
+Kartoffelgratin  (Tin, 20. Okt 2013, 19:48:21):
+Huhu,
+
+Damit diese Rubrik nicht verwahrlost hier in unserer tollen Zeitung liegen
+muss, habe ich gedacht, ich stell mal ein Rezept rein, das ich ausprobiert
+habe, das schnell geht und das schmeckt.
+Ja, ich geh davon aus, dass man nach der Arbeit abends nicht noch stundenlang
+schnibbeln will, aber sorry, hier ist doch ein bissi schnibbeln gefragt. Ist
+was ganz leckeres: Kartoffelgratin
+http://www.chefkoch.de/rezepte/837601188560864/Kartoffelgratin.html
+
+Frohes ausprobieren und guten Hunger.
+Wenn ihr moegt, kann ich euch auch mal ein Rezept aus dem Kochbuch von Daddy
+abtippen.:)
+
+gruss
+tin
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kartoffelgratin  (Croft, 20. Okt 2013, 23:44:15):
+~#! rn=Tin rt=1382291301 rg=kochrezepte
+~#! tid=1382291301
+Ok. Und was isst man dazu? :D
+
+Croft
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Kartoffelgratin  (Tin, 20. Okt 2013, 23:48:09):
+~#! rn=Croft rt=1382305455 rg=kochrezepte
+~#! tid=1382291301
+Frikadellen, Hackbraten, Schnitzel oder Bratwurst w|rde passen. 
+... oh sollte ein wuerde werden. oder einfach einen gruenen salat
+
+tin
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kartoffelgratin  (Nok, 21. Okt 2013, 20:17:37):
+~#! rn=Tin rt=1382291301 rg=kochrezepte
+~#! tid=1382291301
+Wenn ich mal meiner Mutter beim Kochen geholfen hab und sowas anstand, hab ich
+die Kartoffeln mit nem Eierschneider in Scheiben zerlegt. Geht recht fix.
+(Koennte sich aber auch auf bereits gekochte Kartoffeln bezogen haben, ist
+schon ne Weile her.)
+
+Nok.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Kartoffelgratin  (Tin, 21. Okt 2013, 20:20:20):
+~#! rn=Nok rt=1382379457 rg=kochrezepte
+~#! tid=1382291301
+Hm,  benutz ich nicht, hab ich nicht. kann dazu nichts sagen.
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Kartoffelgratin  (Phage, 25. Okt 2013, 00:25:08):
+~#! rn=Tin rt=1382379620 rg=kochrezepte
+~#! tid=1382291301
+Empfehle V-Hobel, ja das sind die Dinger aus der Fernsehwerbung/ShoppingTV.
+Aber fuer Scheibchen schneide super geeignet. Mudda hat bestimmt noch sowas im
+Schrank verbuddelt.
+
+
+-----------------------------------------------------------------------------
+
+
+
+mal was suesses (Tin, 25. Okt 2013, 11:56:55):
+Njaaaaammm
+einmal klicken:-D
+
+http://www.chefkoch.de/rezepte/2201591353018494/Amerikanische-Apfel-Zimt-Waffe
+ln-mit-in-Butter-gebratenen-Aepfeln.html
+
+gruss
+tin
+
+-----------------------------------------------------------------------------
+
+
+
+Wird gleich gekocht (Tin, 19. Feb 2014, 15:15:48):
+http://www.chefkoch.de/rezepte/2161611346999588/Gnocchi-Auflauf-mit-Tomatensos
+se-Gorgonzola-und-Blattspinat.html
+Nur ohne Spinat.
+
+tin
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Wird gleich gekocht (Croft, 19. Feb 2014, 15:22:53):
+~#! rn=Tin rt=1392819348 rg=kochrezepte
+~#! tid=1392819348
+> Nur ohne Spinat.
+D:
+
+Croft
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Wird gleich gekocht (Ark, 19. Feb 2014, 18:56:01):
+~#! rn=Tin rt=1392819348 rg=kochrezepte
+~#! tid=1392819348
+Warum ohne Spinat? Ohne ist doch ziemlich oed? :)
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Wird gleich gekocht (Tin, 19. Feb 2014, 20:10:34):
+~#! rn=Ark rt=1392832561 rg=kochrezepte
+~#! tid=1392819348
+Weil der nicht schmeckt.
+
+tin
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Wird gleich gekocht (Ark, 19. Feb 2014, 20:19:53):
+~#! rn=Tin rt=1392837034 rg=kochrezepte
+~#! tid=1392819348
+Dann guten Spinat kaufen :-)
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Wird gleich gekocht (Tin, 19. Feb 2014, 20:20:10):
+~#! rn=Ark rt=1392837593 rg=kochrezepte
+~#! tid=1392819348
+den gibts nicht. mag ich nicht.
+
+tin
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Wird gleich gekocht (Ark, 19. Feb 2014, 21:37:50):
+~#! rn=Tin rt=1392837610 rg=kochrezepte
+~#! tid=1392819348
+Ja, als ich jung war, mochte ich den auch nicht. Das gibt sich, sei getroestet
+:D
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Wird gleich gekocht (Tin, 19. Feb 2014, 21:38:08):
+~#! rn=Ark rt=1392842270 rg=kochrezepte
+~#! tid=1392819348
+mal sehen
+
+tin
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Wird gleich gekocht (Vanion, 19. Feb 2014, 23:20:53):
+~#! rn=Tin rt=1392842288 rg=kochrezepte
+~#! tid=1392819348
+Hmmm. Spinat. :) Gute Idee fuer morgen. Kartoffeln sind da...
+
+V*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Wird gleich gekocht (Tin, 19. Feb 2014, 23:23:03):
+~#! rn=Vanion rt=1392848453 rg=kochrezepte
+~#! tid=1392819348
+guten hunger
+
+
+tin
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Wird gleich gekocht (Vanion, 19. Feb 2014, 23:25:21):
+~#! rn=Tin rt=1392848583 rg=kochrezepte
+~#! tid=1392819348
+Erst morgen. Oder Freitag. Morgen wird's vermutlich zu spaet zum kochen. Hab
+Sportausschuss und danach selbst Sport :)
+
+V*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^181694: Hach... nu is was drin, inner MPA. (Tin, 19. Feb 2014, 23:28:58):
+~#! rn=Vanion rt=1392848678 rg=megaschmarrn
+~#! tid=982328278
+hm, ich weiss nicht, was stiefmama morgen kocht... Hoffendlich was gescheites.
+Aber das heute hat gut geschmeckt:)
+
+tin
+
+-----------------------------------------------------------------------------
+
+
+
+Re^181695: Hach... nu is was drin, inner MPA. (Croft, 20. Feb 2014, 00:13:35):
+~#! rn=Tin rt=1392848938 rg=kochrezepte
+~#! tid=982328278
+Mit Spinat hoffe ich!
+
+Croft
+
+-----------------------------------------------------------------------------
+
+
+
