Νέα κλάση σε Xetex

...office, φωτογραφία, CAD, spss, latex, κλπ

Συντονιστής: adem1

Νέα κλάση σε Xetex

Δημοσίευσηαπό anagno » 25 Δεκ 2011, 06:16

Προσπαθώ να φτιάξω την δικιά μου κλάση (βασισμένη πάνω στην κλάσση dithesis του Γιάννη Ματζουράτου) για να γράφω κείμενα στο Xetex, αλλά αντιμετωπίζω το εξής πρόβλημα.
Όταν ορίζω την νέα εντολή :
Κώδικας: Επιλογή όλων
\makeatletter
\newcommand{\thesisauthor}[3]{%
\ifthenelse{\isundefined{\theauthors}}{%
\def\theauthors{#1}
}%
{%
\g@addto@macro\theauthors{\\#1}
}
\ifthenelse{\isundefined{\theauthorssum}}{%
\def\theauthorssum{{Προπτυχιακός φοιτητής} \\
{#3o} {Εξάμηνο} \\
\idlabel: #2}
}%
{%
\g@addto@macro\theauthorsatacceptancepage{%
\\\textbf{#1}\\\textbf{\idlabel:} #2}
}
\ifthenelse{\isundefined{\theauthorsatfooters}}{%
\def\theauthorsatfooters{#1}
}%
{%
\g@addto@macro\theauthorsatfooters{, #1}
}
}
\makeatother
την δέχεται κανονίκα χωρίς κανένα πρόβλημα όταν όμως πάω να αντικαταστήσω την /author με την εντολή /renewcommand μου βγάζει το εξής σφάλμα:
Κώδικας: Επιλογή όλων

This is XeTeX, Version 3.1415926-2.2-0.9995.2 (TeX Live 2009/Debian)
entering extended mode
(/home/anagno/Desktop/template2/.sample.tex.swp
LaTeX2e <2009/09/24>
Babel <v3.8l> and hyphenation patterns for english, usenglishmax, dumylang, noh
yphenation, ibycus, monogreek, greek, ancientgreek, loaded.
(./exerc.cls
Document Class: exerc 2011/09/01 v0.1 DIT.UoA Undergraduate Thesis LaTeX docume
nt class
(/usr/share/texmf-texlive/tex/latex/base/article.cls
Document Class: article 2007/10/19 v1.4h Standard LaTeX document class
(/usr/share/texmf-texlive/tex/latex/base/size12.clo))
(/usr/share/texmf-texlive/tex/latex/titling/titling.sty)
(/usr/share/texmf-texlive/tex/latex/xifthen/xifthen.sty
(/usr/share/texmf-texlive/tex/latex/etex-pkg/etex.sty)
(/usr/share/texmf-texlive/tex/latex/tools/calc.sty)
(/usr/share/texmf-texlive/tex/latex/base/ifthen.sty)
(/usr/share/texmf-texlive/tex/latex/ifmtarg/ifmtarg.sty))
(/usr/share/texmf-texlive/tex/latex/hyperref/hyperref.sty
(/usr/share/texmf-texlive/tex/latex/graphics/keyval.sty)
(/usr/share/texmf-texlive/tex/generic/oberdiek/ifpdf.sty)
(/usr/share/texmf-texlive/tex/generic/oberdiek/ifvtex.sty)
(/usr/share/texmf-texlive/tex/generic/ifxetex/ifxetex.sty)
(/usr/share/texmf-texlive/tex/latex/oberdiek/hycolor.sty
(/usr/share/texmf-texlive/tex/latex/oberdiek/xcolor-patch.sty))
(/usr/share/texmf-texlive/tex/latex/hyperref/pd1enc.def)
(/usr/share/texmf-texlive/tex/generic/oberdiek/etexcmds.sty
(/usr/share/texmf-texlive/tex/generic/oberdiek/infwarerr.sty))
(/usr/share/texmf-texlive/tex/xelatex/xetexconfig/hyperref.cfg)
(/usr/share/texmf-texlive/tex/latex/oberdiek/kvoptions.sty
(/usr/share/texmf-texlive/tex/generic/oberdiek/kvsetkeys.sty))
Implicit mode ON; LaTeX internals redefined
(/usr/share/texmf-texlive/tex/latex/ltxmisc/url.sty)
(/usr/share/texmf-texlive/tex/generic/oberdiek/bitset.sty
(/usr/share/texmf-texlive/tex/generic/oberdiek/intcalc.sty)
(/usr/share/texmf-texlive/tex/generic/oberdiek/bigintcalc.sty
(/usr/share/texmf-texlive/tex/generic/oberdiek/pdftexcmds.sty
(/usr/share/texmf-texlive/tex/generic/oberdiek/ifluatex.sty)
(/usr/share/texmf-texlive/tex/generic/oberdiek/ltxcmds.sty))))
(/usr/share/texmf-texlive/tex/generic/oberdiek/atbegshi.sty))
*hyperref using default driver hdvipdfm*
(/usr/share/texmf-texlive/tex/latex/hyperref/hdvipdfm.def)
(/usr/share/texmf-texlive/tex/latex/tools/tabularx.sty
(/usr/share/texmf-texlive/tex/latex/tools/array.sty))
(/usr/share/texmf-texlive/tex/latex/graphics/graphicx.sty
(/usr/share/texmf-texlive/tex/latex/graphics/graphics.sty
(/usr/share/texmf-texlive/tex/latex/graphics/trig.sty)
(/etc/texmf/tex/latex/config/graphics.cfg)
(/usr/share/texmf-texlive/tex/xelatex/xetex-def/xetex.def)))
(/usr/share/texmf-texlive/tex/latex/float/float.sty)
(/usr/share/texmf-texlive/tex/latex/subfig/subfig.sty
(/usr/share/texmf-texlive/tex/latex/caption/caption3.sty))
(/usr/share/texmf-texlive/tex/latex/caption/caption.sty)
(/usr/share/texmf-texlive/tex/latex/geometry/geometry.sty
(/usr/share/texmf-texlive/tex/xelatex/xetexconfig/geometry.cfg))
(/usr/share/texmf-texlive/tex/latex/ltxmisc/parskip.sty)
(/usr/share/texmf-texlive/tex/latex/setspace/setspace.sty
Package: `setspace' 6.7 <2000/12/01>
) (/usr/share/texmf-texlive/tex/latex/fancyhdr/fancyhdr.sty)
(/usr/share/texmf-texlive/tex/latex/titlesec/titlesec.sty)
(/usr/share/texmf-texlive/tex/latex/titlesec/block.tss)
(/usr/share/texmf-texlive/tex/latex/titlesec/titletoc.sty)
(/usr/share/texmf-texlive/tex/latex/tocloft/tocloft.sty

Package tocloft Note: The document has section divisions.

)) (/usr/share/texmf-texlive/tex/xelatex/fontspec/fontspec.sty
(/usr/share/texmf-texlive/tex/latex/xkeyval/xkeyval.sty
(/usr/share/texmf-texlive/tex/generic/xkeyval/xkeyval.tex))
fontspec.cfg loaded.
(/usr/share/texmf-texlive/tex/xelatex/fontspec/fontspec.cfg))
(/usr/share/texmf-texlive/tex/xelatex/xunicode/xunicode.sty)
(/usr/share/texmf-texlive/tex/xelatex/xltxtra/xltxtra.sty
(/usr/share/texmf-texlive/tex/latex/metalogo/metalogo.sty)
(/usr/share/texmf-texlive/tex/latex/base/fixltx2e.sty))
(/usr/share/texmf-texlive/tex/xelatex/xgreek/xgreek.sty
Package `xgreek' version 2.0 by Apostolos Syropoulos) (/tmp/.sample.tex.aux)
(/usr/share/texmf-texlive/tex/latex/hyperref/nameref.sty
(/usr/share/texmf-texlive/tex/latex/oberdiek/refcount.sty))
(/tmp/.sample.tex.out) (/tmp/.sample.tex.out)

Package hyperref Warning: Rerun to get /PageLabels entry.

*geometry detected driver: pdftex*
/home/anagno/Desktop/template2/.sample.tex.swp:16: Argument of \thanks has an e
xtra }.
<inserted text>
\par
l.16 ...ωάννης Π. Μαντζουράτος}
{1115200600000}{3}
No pages of output.
Transcript written on /tmp/.sample.tex.log.



Έχει κανείς ιδέα γιατί το κάνει αυτό ???
Ευχαριστώ πολύ
1 Linux: Αρχάριος ┃ Προγραμματισμός: Αρχάριος ┃ Αγγλικά: Προχωρημένος
2 Ubuntu 14.10 64bit , Windows 8
3 Intel® Core™ i5-3570K CPU @ 3.40GHz × 4 ‖ RAM 16GiB ‖ SABERTOOTH Z77
4 ASUS GTX 560 Ti
anagno
punkTUX
punkTUX
 
Δημοσιεύσεις: 268
Εγγραφή: 08 Οκτ 2011, 14:40
Εκτύπωση

Re: Νέα κλάση σε Xetex

Δημοσίευσηαπό pmav99 » 25 Δεκ 2011, 19:47

1. ανέβασε πλήρες παράδειγμα. Λογικά έχεις κάπου συντακτικο λάθος (παραπάνω "}" ή κάτι τέτοιο)
2. είσαι σίγουρος ότι αξίζει τον κόπο να γράψεις πλήρη κλάση?
3. Τσέκαρε και αυτό. Τo pgfopts είναι πολύ πιο εύκολο για να περάσεις arguments και δε θα χρειαστεί να αλλάξεις έτσι τα defaults του latex
https://bitbucket.org/pmav99/ntua-thesis/src
pmav99
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 574
Εγγραφή: 05 Ιούλ 2008, 14:29
Εκτύπωση

Re: Νέα κλάση σε Xetex

Δημοσίευσηαπό anagno » 25 Δεκ 2011, 22:26

pmav99 έγραψε:1. ανέβασε πλήρες παράδειγμα. Λογικά έχεις κάπου συντακτικο λάθος (παραπάνω "}" ή κάτι τέτοιο)

Πως μπορώ να επισυνάψω αρχεία για να μην ανεβάζω ολόκληρες σελίδες με κώδικα ????
pmav99 έγραψε:
2. είσαι σίγουρος ότι αξίζει τον κόπο να γράψεις πλήρη κλάση?

Σίγουρα όχι, αλλά θα ήθελα να το δοκιμάσω για να μάθω και καλύτερα το Xetex και να δω τις δυνατότητες του
pmav99 έγραψε:
3. Τσέκαρε και αυτό. Τo pgfopts είναι πολύ πιο εύκολο για να περάσεις arguments και δε θα χρειαστεί να αλλάξεις έτσι τα defaults του latex
https://bitbucket.org/pmav99/ntua-thesis/src

Ενδιαφέρον φαίνετε, αλλά εγώ μάλλον θα θελήσω να αλλάξω τα defaults (κυρίως στις λεζάντες...) για να προσωποποιήσω ελαφρώς την παρουσίαση. Μπορεί να το υποστηρίξει ???
1 Linux: Αρχάριος ┃ Προγραμματισμός: Αρχάριος ┃ Αγγλικά: Προχωρημένος
2 Ubuntu 14.10 64bit , Windows 8
3 Intel® Core™ i5-3570K CPU @ 3.40GHz × 4 ‖ RAM 16GiB ‖ SABERTOOTH Z77
4 ASUS GTX 560 Ti
anagno
punkTUX
punkTUX
 
Δημοσιεύσεις: 268
Εγγραφή: 08 Οκτ 2011, 14:40
Εκτύπωση

Re: Νέα κλάση σε Xetex

Δημοσίευσηαπό pmav99 » 25 Δεκ 2011, 22:50

1. http://pastebin.com/ ή http://pasteit.com/ ή οποιδήποτε αντίστoιχο site

3. ανέλυσε λίγο τι θες να κάνεις. το pgfopts σου επιτρέπει εύκολα να περάσεις keyword arguments. αν απλώς έλεις να αλλάξεις το όνομα του abstract ή του caption κτλ, απλά ξαναορίζεις τα αντίστοιχα ονόματα
pmav99
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 574
Εγγραφή: 05 Ιούλ 2008, 14:29
Εκτύπωση

Re: Νέα κλάση σε Xetex

Δημοσίευσηαπό anagno » 26 Δεκ 2011, 13:55

To ανεβάζω τελικά στο pithos: https://pithos.grnet.gr/pithos/rest/rs07083@ntua.gr/files/Latex/
Ο φάκελος "ασκηση 3η" είναι η κανονική με την εντολή \exercauthor και η "ασκηση 3η (copy)" είναι εκεί που προσπαθώ να αντικαταστήσω την εντολή \author
Μάλλον το πρόβλημα δεν είναι στην σύνταξη αυτών που γράφω αλλά μάλλον δεν μπορώ να αντικαταστήσω την εντολή \author διότι υπάρχει έπειτα πρόβλημα με το πακέτο titling

Δεν θέλω να κάνω κάτι συγκεκριμένο... Απλώς πειραματίζομαι, και μου έκανε εντύπωση που την μία φορά λειτουργούσε και την άλλη όχι χωρίς να έχω κάνει κάποια ουσιώδη αλλαγή ...

Ευχαριστώ για την βοήθεια
1 Linux: Αρχάριος ┃ Προγραμματισμός: Αρχάριος ┃ Αγγλικά: Προχωρημένος
2 Ubuntu 14.10 64bit , Windows 8
3 Intel® Core™ i5-3570K CPU @ 3.40GHz × 4 ‖ RAM 16GiB ‖ SABERTOOTH Z77
4 ASUS GTX 560 Ti
anagno
punkTUX
punkTUX
 
Δημοσιεύσεις: 268
Εγγραφή: 08 Οκτ 2011, 14:40
Εκτύπωση

Re: Νέα κλάση σε Xetex

Δημοσίευσηαπό pmav99 » 26 Δεκ 2011, 16:22

Αφού το κάνεις για να μάθεις οκ, διαφορετικά νομίζω ότι ταλαιπωρείσαι λίγο άδικα (imho). Για το author δυστυχώς δεν ξέρω να σου απαντήσω.
pmav99
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 574
Εγγραφή: 05 Ιούλ 2008, 14:29
Εκτύπωση

Re: Νέα κλάση σε Xetex

Δημοσίευσηαπό anagno » 26 Δεκ 2011, 23:54

pmav99 έγραψε:Αφού το κάνεις για να μάθεις οκ, διαφορετικά νομίζω ότι ταλαιπωρείσαι λίγο άδικα (imho).


Δεν έχεις άδικο :P
1 Linux: Αρχάριος ┃ Προγραμματισμός: Αρχάριος ┃ Αγγλικά: Προχωρημένος
2 Ubuntu 14.10 64bit , Windows 8
3 Intel® Core™ i5-3570K CPU @ 3.40GHz × 4 ‖ RAM 16GiB ‖ SABERTOOTH Z77
4 ASUS GTX 560 Ti
anagno
punkTUX
punkTUX
 
Δημοσιεύσεις: 268
Εγγραφή: 08 Οκτ 2011, 14:40
Εκτύπωση


Επιστροφή στο Εφαρμογές για Γραφείο / Γραφιστική / Επιστήμες

cron