PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Zeichnen von "Bäumen" mit ecltrees-Paket



Christine
17-03-2005, 13:05
Um in einer linguistischen Publikation "Bäume" zu zeichnen verwende ich das
ecltrees-Paket. Ein Problem konnte ich bisher nicht lösen. Die "Äste"/Striche unter den labels beginnen direkt am Label, was sehr unschön aussieht, ich hätte gern einen kleinen Abstand. Der Befehl
\setlength{\EdgeLabelSep}{2ex} bewirkt nichts.
Kann mir da jemand einen Tipp geben?

Christine

Danke für den Tipp, leider hat die Änderung im Stylefile nichts gebracht.
Der nichtvorhandene Abstand vom oberen Label zu den abgehenden "Ästen" ist
gemeint: CP
/\

Die "Äste" berühren bei mir die Buchstaben. :mad:

Ch.

edico
17-03-2005, 14:09
... ich habe vom style soviel Ahnung wie Kuh vom Eislaufen.
Wo plazierst du den Befehl? Und müsstest du nicht \setlength{\GapDepth}{2ex} o.ä. deklarieren?
Zeig doch evtl. mal den code des bundles oder eines examples, um das Bsp. replizieren zu können.
Welche packages hast du weiterhin eingebunden? Ist zu deinem setlength ein Widerspruch?
... ich würde gerne mal mitdenken ... ;-)
edico

P.S. was ich oben geschrieben haben, kannste knicken:
1. Nachtrag:
nun ist es mir klar, wie es für dich laufen sollte. Gehe nun - wie folgt - vor:
[1] sichere deinen ecltree+.sty
[2] öffne den ectree+.sty in einem editor
[3] kommentiere die folgende Zeile (~ 17) so aus: %\def\@TopLabel{\raisebox{1ex}{#1}}% changed wdm
[4] füge ein: \def\@TopLabel{\raisebox{2ex}{#1}}% changed wdm
und schau dir den Unterschied an! Hier ist dein Stellrädchen! Evtl. auch für grösseres spacing
[5]sichere den file und schliesse ihn
[6] compile wie gehabt
... du solltest bisherige diesbezügliche commands zumindest auskommentieren, wenn nicht löschen.

Christine
20-03-2005, 10:32
das stellrädchen ist das falsche, es reguliert den abstand am ende der äste.
ch.

edico
20-03-2005, 13:00
ich spreche über % ecltree+.sty, Version 1.2, March 2002 und mit der version läufts so wie beschrieben.
%
\documentclass[12pt]{scrartcl}
\usepackage[latin1]{inputenc}
\usepackage{times}
\usepackage{graphicx}
\usepackage{ecltree+}
\usepackage{setspace}
\onehalfspacing
\setlength{\parindent}{0cm}
\setlength{\parskip}{1ex}
\XY{2}{6} % delegating GapWidth|GapDepth
\begin{document}
\thispagestyle{empty}
\wichtig{Zeichnen von ''Bäumen'' mit ecltrees-Paket}
\begin{center}
\begin{bundle}{Have you seen Mary?}
\chunk{Have}
\chunk{you}
\chunk{\begin{bundle}{seen Mary?}
\chunk{seen}
\chunk{Mary}
\end{bundle}}
\end{bundle}
\end{center}
%
edico

Christine
20-03-2005, 19:30
danke.
mit den bäumen klappts jetzt wie gewünscht.
aber der text hat sich fast verdoppelt im umfang, weil zwischen den zeilen mehr platz ist. was tun? ich hab nur max. 250 seiten und viel stoff.

dann kommt folgende fehlermeldung:
Latex Error: Command \subj already defined or name \end... illegal see p. 192
of the manuel 1.71...\subj}[1]\chunk [\usebox{\subjLabel}]}#}

ich nehme an das bezieht sich auf ecltree+ sty, habe ich aus dem netz vom runtergeladen. ???
ch.

edico
20-03-2005, 20:07
[1] Die Bäumchen sind jetzt ok. Das ist doch schon prächtig. Der ecltree-Urstyle liess sich nicht anpassen (soweit ich es einsehen kann), deswegen konntest du keine Veränderungen erreichen - nur zum Verständnis.
[2] Wenn du mein Beispiel mit dem neuen style problemlos compilieren kannst, dann liegen Veränderungen an anderen Widrigkeiten und/oder Wechselwirkungen, nicht an diesem style selbst, der bei mir - da ich ihn auch «runtergeladen» habe, denn woher sollte ich sonst beziehen ;-) - alles ordentlich macht, soweit ich derzeit überblicke.
[3] Und du sprichst nun vom Fliesstext, wo jetzt mehr Platz als vorher ist und der sich insgesamt auf diese Wahsinnsseitenzahl aufbläht?
Hast du deine Präambel geändert (ausser ecltree+)?
Solltest du hinzugefügt haben (aus meinem geposteten eXample):
\usepackage{setspace}
\onehalfspacing,
dann liegt es natürlich daran. Ergo: auskommentieren.
... wenn es nicht daran liegt, muss ich die Fehlermeldung nochmal checken, deren Kontext ich derzeit noch nicht verstehe.
edico

P.S. 1.Nachtrag:
Also - die Länge[3] und die Fehlermeldung[2] sind vermutlich 2 Paar Schuhe ...
Ja, natürlich - was ich dir nicht beantwortet habe, es bezieht sich letztendlich auf den ecltree+ style. Was machst du mit dem command \subj in deinen bundle environments? Zeig mal bitte einen Beispiel-Code.

Christine
20-03-2005, 20:17
ganz großen dank. die bäume sind jetzt ok.
hab selber noch nachgedacht, mit dem abstand: habe \singlespacing
gemacht und die seitenzahl wurde verringert. ist nur noch die fehlermeldung.

habe dein beispiel mit \end{document} probiert, da kommt keine fehlermeldung.
es muss sich bei meinem buch etwas nicht vertragen, oder? mit enter kann ich den fehler übergehen, aber ist nicht so toll. vielleicht fällt dir ja noch ein, was es sein könnte.
danke, grüße ch.

Christine
20-03-2005, 20:26
es liegt nicht an der zeilenabstandseinstellung. habe beides auskommentiert und es kommt trotzdem die fehlermeldung.

ein beispiel nachfolgend, da kommt \subj gar nicht vor, auch in anderen beispielen nicht.

\begin{figure}[htb]
\begin{center}
\drawwith{\drawline}
\setlength{\GapDepth}{5mm}
\setlength{\GapWidth}{5mm}
\begin{bundle}{DETP}
\chunk{DET}
\chunk{NP}
\end{bundle}
\end{center}
\caption{DET-Phrase}
\label{fig:DET}
\end{figure}

ch.

edico
20-03-2005, 22:50
[1] Ja, so wie ich vermutete, sind Länge und Fehlermeldung 2 verschiedene Dinge.
[2a] Definierst du bei jedem bundle die gaps in ein und derselben Art oder unterschiedlich? Wenn alle gleich, dann könntest du mit XY durch globale Deklaration alle bundles vereinfachen. Das nur nebenbei.
[2b] Den epic command «drawwith» benutzt du bewusst? Und er ist wichtig?
[3] Nun - dein Example läuft mit meiner preamble problemlos. Wenn nunmehr deine anderen bundles genauso strukturiert sind, dann muss in deiner Präamble eine Deklaration sein, die nicht konform mit dem ecltree+ style ist.
=> Du könntest jetzt eine Kopie machen, mit der du experimentell herausfindest, was den Fehler produziert. Packe die Kopie in ein neues Directory, und reduziere die Präambel um ein package nach dem anderen schittweise. Nach jedem compiling zeigt dir der Logfile das Ergebnis. Vielleicht hast du auch nur ein macro mit identischem Namen, oder du arbeitest mit bestimmten anderen Graphic packages ... oder ... Vielleicht ist deine Fehlermeldung auch noch länger ... Das ist so aus der Ferne nicht zu beurteilen. Irgendo um den Command «\newcommand{\subj}[1]{\chunk[\usebox{\subjLabel}]{#1}}» herum passiert's; es muss aber nicht dieses Teil sein ... und überhaupt: wie compilierst du - mit tex oder pdftex?
Ansonsten poste deine Prämbel, dann kann ich noch mal weiter mitdenken.
edico

Christine
21-03-2005, 08:22
vielen dank, anbei meine präambel. ja ich mache alle bäume im gleichen, obigen stil. ich compiliere mit text.

\documentclass[smallheadings, cleardoubleempty]{scrbook}
\usepackage[T1]{fontenc}
\usepackage{times}
\usepackage[latin1]{inputenc}

\usepackage[ngerman]{babel}


\setlength{\textwidth}{115mm}
\setlength{\textheight}{185mm}
\setlength{\headsep}{5mm}
\setlength{\oddsidemargin}{17mm}
\setlength{\evensidemargin}{17mm}

\deffootnote{5mm}{0mm}{\textsuperscript{\normalfon t\thefootnotemark}}

\usepackage[dvips]{color}
\definecolor{hellgrau}{gray}{0.85}
\definecolor{dunkelgrau}{gray}{0.55}
\definecolor{grau}{gray}{0.75}
\usepackage{natbib}
\setlength{\bibsep}{0mm}
\let\bibfont=\small

\usepackage[ngerman]{varioref}
\usepackage[final]{epsfig}
\usepackage{graphicx}
\usepackage{latexsym}

\usepackage{german,multind}

\makeindex{subind}
\makeindex{autind}
%\makeindex{wordind}
\usepackage{glossar}
\makeglossary

\usepackage{ifsym}

\usepackage{short-long-ex,%
article-ex,makros.2e,mycommands,
eng-date,eng-mytitle,narr-makros,epic,eepic,csli-glosses,ngerman,
8bit,lastpage,float,soul,epsf,ecltree}

\usepackage{ecltree+}

\setlength{\parindent}{0cm}
\setlength{\parskip}{1ex}
\XY{2}{6} %delegating GapWidth|GapDepth

\usepackage{my-gb4e-article}

\usepackage{pifont}
\setcounter{secnumdepth}{4}

\input{hyp}

\begin{document}

edico
21-03-2005, 11:34
Die Grundstruktur deiner Präambel ist weitgehend o.k. Ich kann sowohl PostScript als auch PDF via DVi generieren.
Allerdings konnte ich nicht alle styles checken, soweit nicht auf meinem System eingebunden sind. Das musst du dann nochmal selbst fabrizieren - so wie ich im letzten posting beschrieben. Dabei handelt es sich um die mit % not on my sytem gekennzeichneten styles. Alle anderen konnte ich prüfen; sie sind nicht die Fehlerverursacher. Aber fang am besten mal damit an, dass du du deine Präambel «grundreinigst»: da sind einige Doppelmoppel und gleichermassen Widersprüche. Schalte das aus und gehe schrittweise vor - dann schaffst du das ...
%
\documentclass[smallheadings,cleardoubleempty]{scrbook}
\usepackage[T1]{fontenc}
\usepackage{times}
\usepackage[latin1]{inputenc}

\usepackage[ngerman]{babel}

\setlength{\textwidth}{115mm}
\setlength{\textheight}{185mm}
\setlength{\headsep}{5mm}
\setlength{\oddsidemargin}{17mm}
\setlength{\evensidemargin}{17mm}

\deffootnote{5mm}{0mm}{\textsuperscript{\normalfon t\thefootnotemark}}

\usepackage[dvips]{color} % ohne Treiber geht's auch
\definecolor{hellgrau}{gray}{0.85}
\definecolor{dunkelgrau}{gray}{0.55}
\definecolor{grau}{gray}{0.75}
\usepackage{natbib}
\setlength{\bibsep}{0mm}
\let\bibfont=\small

\usepackage[ngerman]{varioref}
%\usepackage[final]{epsfig} % has to be avoid; durch graphicx eingebunden
\usepackage{graphicx}
\usepackage{latexsym}

\usepackage{%german, % german, oben schon ngerman !?
multind}

\makeindex{subind}
\makeindex{autind}
%\makeindex{wordind}
%-edico-\usepackage{glossar} % not on my system
%-edico-\makeglossary

%-edico-\usepackage{ifsym} % not on my system: brauchst du die Zeichen?

\usepackage{%-edico-short-long-ex, % not on my system
%-edico-article-ex, % not on my system
%-edico-makros.2e, % not on my system
%-edico-mycommands, % not on my system
%-edico-eng-date, % not on my system
%-edico-eng-mytitle, % not on my system
%-edico-narr-makros, % not on my system
%-edico-epic, % durch ecltree+ eingebunden
%-edico-eepic, % durch ecltree+ eingebunden
%-edico-csli-glosses, % not on my system
%-edico-ngerman, % oben schon definiert
%-edico-8bit, % not on my system ? wofr
lastpage,
float,
soul,
%-edico-epsf, % has to be avoid;
% durch graphicx eingebunden
%-edico-ecltree % durch ecltree+ eingebunden
}

\usepackage{ecltree+}

\setlength{\parindent}{0cm}
\setlength{\parskip}{1ex}
\XY{2}{6} %delegating GapWidth|GapDepth

%-edico-\usepackage{my-gb4e-article} % not on my system
\usepackage{gb4e+} % hinzugefügt:: delegating gb4e,cgloss4e

\usepackage{pifont}
\setcounter{secnumdepth}{4}

%-edico-\input{hyp} % was ist das ? **********************

\begin{document}
\begin{figure}[htb]
\begin{center}
%\drawwith{\drawline} % epic - hier obsolet ?
%\setlength{\GapDepth}{5mm} % global set by XY{}{} ; auszukommentieren
%\setlength{\GapWidth}{5mm} % dto.
\begin{bundle}{DETP}
\chunk{DET}
\chunk{NP}
\end{bundle}
\end{center}
\caption{DET-Phrase}
\label{figET}
\end{figure}
\end{document}
%
compile : tex foo && dvips -Ppdf -G0 foo.dvi && ps2pdf foo.ps
%
edico

Christine
21-03-2005, 11:42
danke, ich habe heute vormittag schonmal versucht, über teile ausschalten, den
fehler zu finden, hat bisher nicht geklappt. werde es nochmal mit deinen tipps versuchen.
ch.

Christine
21-03-2005, 14:36
hi edico,
ich hab alles ausprobiert und das meiste umgesetzt. ich kann neben den makros nicht das paket my-gb4e-articel wegnehmen, weils dann probleme gibt, habe nun noch gb4e+ ergänzt, das geht auch, aber den fehler gibts immer noch. habe in
my-gb4e-articel.sty nachgeguckt, da habe ich kein \subj gefunden.
unten meine präambel, wie sie jetzt ist, siehst du da was?

ich könnte dir auch mal die makros und my-gb4e-articel.sty zusenden, für hier ist es zu lang.
wo soll ich sie da hinschicken?

grüße, ch.

\documentclass[smallheadings, cleardoubleempty]{scrbook}

\usepackage[T1]{fontenc}
\usepackage{times}

\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}

\setlength{\textwidth}{115mm}
\setlength{\textheight}{185mm}
\setlength{\headsep}{5mm}
\setlength{\oddsidemargin}{17mm}
\setlength{\evensidemargin}{17mm}

\deffootnote{5mm}{0mm}{\textsuperscript{\normalfon t\thefootnotemark}}

\usepackage[dvips]{color}
\definecolor{hellgrau}{gray}{0.85}
\definecolor{dunkelgrau}{gray}{0.55}
\definecolor{grau}{gray}{0.75}

\usepackage{natbib}
\setlength{\bibsep}{0mm}
\let\bibfont=\small

\usepackage[ngerman]{varioref}

\usepackage{graphicx}
\usepackage{latexsym}

\usepackage{multind}
\makeindex{subind}
\makeindex{autind}
%\makeindex{wordind}

\usepackage{ifsym}

\usepackage{makros.2e,mycommands,
eng-date,eng-mytitle,narr-makros,
lastpage,float,soul}
\usepackage{ecltree+}

\setlength{\parindent}{0cm}
\setlength{\parskip}{1ex}
\XY{2}{6} %delegating GapWidth|GapDepth
\usepackage{my-gb4e-article}

\usepackage{pifont}

\setcounter{secnumdepth}{4}

\begin{document}

\thispagestyle{empty}~\newpage\setcounter{page}{1} % for printing 2up

edico
21-03-2005, 16:29
... ich verstehe deine Nachricht jetzt nicht.
Mein letztes posting enthielt doch deine Präambel und dein bundle-Beispiel. Ich hatte bei der überlieferten Version keine Fehlermeldungen. (Den gb4e+ hatte ich nur hinzugefügt, weil ich deinen selbst kreierten style nicht vorliegen habe und somit nicht prüfen konnte. Zumindest ist gb4e+ hinsichtlich der Fehlersuche - wie sich gezeigt hat - uninteressant; das war nur prophylaktisch und als Hinweis, dass es eine neue Version gibt).
Was hast du denn nun konkret gemacht mit diesem überlieferten Beispiel-file? Bei welchem(n) package(s) taucht jetzt die Fehlermeldung auf?
Willst du mir sagen: alles läuft einwandfrei, nur dann nicht, wenn dein style «my-gb4e-artcle» eingebunden wird? Und von welchen macros sprichst du, wo werden diese integriert? Im style «my-gb4e-artcle»?
Was heisst, du kannst diese nicht «wegnehmen»? Um ein bestimmtes Ergebnis zu erzielen, oder warum kannst du es nicht? Ich bin doch ohne diesen style und die macros zum Ergebnis gekommen!?
Pack die mir nicht bekannten styles und files (also macros und «my-gb4e-artcle») in einen tarball oder zip das Ganze und füge es deinem nächsten posting bei. Dann ich mir das anschauen. Danke.
edico

Christine
21-03-2005, 16:43
... ich verstehe deine Nachricht jetzt nicht.
Mein letztes posting enthielt doch deine Präambel und dein bundle-Beispiel. Ich hatte bei der überlieferten Version keine Fehlermeldungen. (Den gb4e+ hatte ich nur hinzugefügt, weil ich deinen selbst kreierten style nicht vorliegen habe und somit nicht prüfen konnte. Zumindest ist gb4e+ hinsichtlich der Fehlersuche - wie sich gezeigt hat - uninteressant; das war nur prophylaktisch und als Hinweis, dass es eine neue Version gibt).
Was hast du denn nun konkret gemacht mit diesem überlieferten Beispiel-file? Bei welchem(n) package(s) taucht jetzt die Fehlermeldung auf?
Willst du mir sagen: alles läuft einwandfrei, nur dann nicht, wenn dein style «my-gb4e-artcle» eingebunden wird? Und von welchen macros sprichst du, wo werden diese integriert? Im style «my-gb4e-artcle»?
Was heisst, du kannst diese nicht «wegnehmen»? Um ein bestimmtes Ergebnis zu erzielen, oder warum kannst du es nicht? Ich bin doch ohne diesen style und die macros zum Ergebnis gekommen!?
Pack die mir nicht bekannten styles und files (also macros und «my-gb4e-artcle») in einen tarball oder zip das Ganze und füge es deinem nächsten posting bei. Dann ich mir das anschauen. Danke.
edico

ich versuche es mal anzuhängen, was ein tarball ist, weiss ich leider nicht.

Christine
21-03-2005, 16:47
danke, ich muss erst morgen versuchen einen kollegen zu finden, der weiss, wie man einen tarball macht.

edico
21-03-2005, 17:02
nee, du kannst einen zipfile machen und zwar mit folgenden macros bzw. styles -
denn hier hapert es, alles andere läuft sauber durch:
makros.2e,mycommands, eng-date,eng-mytitle,narr-makros, my-gb4e-article
edico

Christine
21-03-2005, 18:22
ja, die schicke ich dir morgen. mit es geht nicht diese zu entfernen, meinte ich, dass dann noch weitere fehler hinzukommen.
danke für die hilfe.
ch.

edico
22-03-2005, 13:05
The problemchild has been found.
Es ist der style 'makros.2e', der die Fehlermeldung provoziert.
Die Frage ist:
Brauchst du den style? Arbeitest du mit den dort deklarierten shortkeys? Wenn nicht, kannst du überlegen, den style auszukommentieren.
Ansonsten musst du die Störenfriede in dem style auskommentieren oder umdefinieren!
Auszukommentieren im style makros.2e sind folgende 5 Zeilen, die in anderen styles schon oder wiederholt deklariert werden - so z.B. [1] in ecltree+, was der Anlass unseres Dialoges war; wo die anderen nun noch auftauchen, habe ich nicht mehr geprüft, ist aber letztendlich auch nicht bedeutsam:

[1] %\newcommand{\subj}{{\sc subj}\xspace} :: Command \subj already defined. => Z332
[2] %\newcommand{\pref}[1]{(\ref{#1})} :: Command \pref already defined. => Z648
[3] %\newlength{\wdmTmp} :: Command \wdmTmp already defined. => Z674
[4] %\newcommand{\hspaceThis}[1]{\settowidth{\wdmTmp}{#1}\hspace*{\wdmTmp}} :: Command \hspaceThis already defined. => Z677
[5] %\newcommand{\mytrans}[1]{{\trans`#1'}} :: Command \mytrans already defined. => Z685

Nun abschliessend folgende Bemerkung:
Wenn ich den \usepackage{my-gb4e-article} einbinde, erhalte ich die Meldung: «LaTeX Error: File `my-cgloss4e.sty' not found.», weil besagter style mir ebenso fehlt, was vorab nicht erkannbar war, weil er mittelbar deklariert wird.
Dies wird aber wohl keinen weiteren Fehler mehr hervorrufen, sondern dieser style wird sich vermutlich so verhalten wie gb4e bzw. gb4e+, die ihrerseits cgloss4e einbinden. Und bei diesen lief es reibungslos.
Das Problem sollte nun gebannt sein. Viel Erfolg.
edico

P.S. Hinsichtlich deines zipfiles: Ich weiss nicht. Aber versuch mal dein posting mit dem zipfile zu «ändern» und den zipfile zu löschen. Sonst musst du bischi, den hilfsbereiten Moderator, mal vorsichtig auf die Finger klopfen.

Christine
22-03-2005, 13:38
ganz herzlichen dank für deine hilfe! ich hab das posting mit den files einfach gelöscht, weil es für andere nicht relevant ist.
unbekannterweise viele grüße
christine

Christine
22-03-2005, 14:05
Es klappt, es läuft ohne Fehlermeldung durch, hätte ich nie allein gepackt. :)
christine