LyX, editace stylu

Ofcak

LyX, editace stylu
« kdy: 25. 04. 2014, 00:02:40 »
Ahoj, podle mě by to měla být banální a uživatelsky přívětivá věc, ale vypadá to že vývojáři LyXu si myslí něco jiného.

Chtěl bych vytvořit svůj styl textu. Konkrétně mi úplně bude stačit vzít existující styl Citát a zrušit mu odsazení. Jenže jak?

V žádném menu jsem nenašel jak si to jednoduše naklikat. Hledal jsem dál a nejdál jsem se dostal sem:
http://tex.stackexchange.com/questions/6851/create-new-paragraph-style-in-lyx
Udělal jsem to co tam popisuje (v souboru stdlayouts.inc, jsem skopíroval citát a dal mu jiné jména). Můj nový styl se ukázal na výběr v roletce stylů, ale když ho někde použiji a nechám vygenerovat pdf soubor, nevygeneruje se a ukáže se mi chyba:
LaTeX error: Environment mynewstyle undefined.
" \begin{mynewstyle}
                       
Your command was ignored.
Type  I <command> <return>  to replace it with another command,
or  <return>  to continue without it."
LaTeX error: \begin{document} ended by \end{mynewstyle}.
" ...n commonly used languages.\end{mynewstyle}
                                                 
Your command was ignored.
Type  I <command> <return>  to replace it with another command,
or  <return>  to continue without it."

Toto jsem přidal do souboru stdlayouts.inc:
Kód: [Vybrat]
Style MyNewStyle
Category              MainText
Margin                Static
LatexType             Environment
LatexName             mynewstyle
NextNoIndent          1
LeftMargin            MMM
RightMargin           MMM
TopSep                0.5
ParSep                0.5
BottomSep             0.5
Align                 Block
AlignPossible         Block, Left, Right, Center
LabelType             No_Label
HTMLTag               blockquote
HTMLItem              div
End
Je to prostě přejmenovaná kopie stylu Quote.

A další otázka, kdyby náhodou začlo fungovat generování pdf. Je někde dostupná nějaká tabulka jaké se dají použít vlastnosti a jaké můžou nabývat hodnoty?
Když jsem hledal například co má znamenat hodnota "MMM" u vlastnosti LeftMargin tak jsem žádné vysvětlení nenašel. Dále třeba že Margin může být Static nebo Dynamic je sice pěkný, ale co ty hodnoty znamenají? :(




michal.h21

Re:LyX, editace stylu
« Odpověď #1 kdy: 25. 04. 2014, 09:35:35 »
Ten tvůj styl používá při kompilaci v LaTeXu prostředí `mynewstyle`, ale to normálně neexistuje, musíš ho nadefinovat. Třeba v odkazu v tvém dotazu je to ukázaný:

Kód: [Vybrat]
Preamble
    \usepackage{mdframed}
    \usepackage{xcolor}
    \newenvironment{myquotation}
      {\begin{mdframed}[linecolor=red]\quotation}
      {\endquotation\end{mdframed}}
    EndPreamble

hodnoty které se nastavují v LyXovém stylu nemají na to, jak se převede PDF vliv, ty jenom ovlivňují vzhled stylů v LyXu.  je třeba použít LaTeXový kód, který nastaví margin pro quotation, třeba něco podobného: http://tex.stackexchange.com/a/29642/2891

nemám teď přístup k LyXu ani LaTeXu, ale myslím, že něco takového by mohlo fungovat.

Kód: [Vybrat]
Style MyNewStyle
Category              MainText
Margin                Static
LatexType             Environment
LatexName             quoting
NextNoIndent          1
LeftMargin            MMM
RightMargin           MMM
TopSep                0.5
ParSep                0.5
BottomSep             0.5
Align                 Block
AlignPossible         Block, Left, Right, Center
LabelType             No_Label
HTMLTag               blockquote
HTMLItem              div
        Preamble
           \usepackage[leftmargin=0pt]{quoting}
        EndPreamble
End


Ofcak

Re:LyX, editace stylu
« Odpověď #2 kdy: 25. 04. 2014, 11:19:43 »
aha, super, díky za odpověď i za kód, už mi to davá smysl a navíc to funguje  :)