Anzeige:
Ergebnis 1 bis 4 von 4

Thema: Lyx, automatische Nummerierung von Absätzen als Randnummern?

  1. #1
    Registrierter Benutzer
    Registriert seit
    31.03.2013
    Beiträge
    3

    Question Lyx, automatische Nummerierung von Absätzen als Randnummern?

    Liebe Benutzer,

    ich schreibe derzeit unter lyx an einem Buch und möchte eine automatische Nummerierung der Absätze (ähnlich der fortlaufenden Randnummernformatierung bei juristischen Kommentaren) auf der rechten bzw. linken (Marginalien[?]-)Seite erzeugen - je nachdem, ob man auf einer linken oder rechten Seite ist.

    Mein Grundwissen umfasst, dass es den LATEX-Vorspann gibt bzw. dass man im eigentlichen Lyx-Text auch TEX-Code einfügen kann.

    Bekannt sind mir der Befehl \marginpar{1}, welchen ich als TEX-Code in Lyx einfügen kann und der mir auch genau den Output generiert, den ich möchte.

    Ich könnte also durchaus in jedem Absatz manuell \marginpar{1} ... \marginpar{2} eingeben, aber das muss doch einfacher bzw. automatisch gehen?

    Diese Frage wurde hier schon einmal gestellt, für mich aber völlig unverständlich beantwortet.

    So sollte es aussehen (die Randnummern rechts):


    Ich würde mich sehr freuen, wenn mir jemand helfen könnte - gibt es z.B. einen automatischen Vorspannbefehl, der das kann?

    Falls das Ganze nicht automatisch funktioniert, würde mir auch helfen, wenn ich nicht manuell /marginpar{1} eingeben müsste, sondern vielleicht etwas semiautomatisches wie /marginpar{XXX} (das dann automatisch raufzählt?}

    Danke und ich hoffe, ich entspreche der Forenetikette, das ist mein überhaupt erster Post im Internet.

    P.S.: ich verwende book (KOMA-script) und das ist mein Vorspann für Lyx:
    Code:
    \@ifundefined{definecolor}
     {\usepackage{color}}{}
    \usepackage{makeidx}\makeindex
    \usepackage{titlesec}
    %%User specified LaTeX commands.
    \usepackage{babel}
    \selectlanguage{ngerman}
    \addto\captionsngerman{\renewcommand{\indexname}{Stichwortverzeichnis}}
    \usepackage{remreset}
    \makeatletter
    \@removefromreset{footnote}{chapter}
    \makeatother
    \usepackage{breakcites}
    \usepackage[T1]{fontenc}
    \usepackage{chngcntr}
    \counterwithout{figure}{chapter}
    \counterwithout{table}{chapter}
    Gruß,

    Unglücklich.

  2. #2
    Registrierter Benutzer
    Registriert seit
    31.03.2013
    Beiträge
    3
    Liebe Entwickler, hat hier niemand eine Idee? Ich würde mich sehr darüber freuen!

  3. #3
    Registrierter Benutzer
    Registriert seit
    06.03.2010
    Ort
    St. Petersburg, Russland
    Beiträge
    2.468
    Hallo und herzlich willkommen,

    die erste Antwort bedeutet: Du definierst dir einen neuen Befehl \p, mit dem du jeweils eine Absatznummer setzt. Die Definition und die dazu nötigen Paketaufrufe
    Code:
    \usepackage{mparhack}   % get marginpars to always show up on the correct side (need to compile twice)
    
    % change this to get the formatting you want
    \newcommand{\parnum}{\bfseries\arabic{parcount}}
    
    \newcounter{parcount}
    \newcommand\p{%
        \stepcounter{parcount}%
        \leavevmode\marginpar[\hfill\parnum]{\parnum}%
    }
    kommen in den LaTeX-Vorspann. (\usepackage{lipsum} gehört nicht dazu, es war bloß im Beispiel dazu da, Fülltext zu erzeugen). Da, wo \bfseries\arabic (fett, arabische Zahlen) steht, kannst du auch andere Formatierungen einstellen. Dass du das Dokument zweimal kompilieren musst, damit die Nummern an die richtige Seite kommen, ist für Lyx egal, da Lyx sowieso immer drei Durchläufe macht.

    Im Dokumentkörper musst du dann jedesmal als TeX-Code
    Code:
    \p
    einfügen, wenn du eine Nummer setzen willst.

    Die zweite Antwort bedeutet: Du kannst dir auch eine neue Umgebung definieren, innerhalb derer JEDER Absatz nummeriert wird. In den Vorspann kommt dann

    Code:
    \usepackage{mparhack}  
    
    \newcommand{\parnum}{\bfseries\arabic{parcount}}
    
    \newcounter{parcount}
    \newenvironment{parnumbers}{%
       \par%
       \everypar{\stepcounter{parcount}\leavevmode\marginpar[\hfill\parnum]{\parnum}}%
    }{}
    und im Text schreibst du vor einem solchen Normaltextblock
    Code:
    \begin{parnumbers}
    als TeX-Code und danach
    Code:
    \end{parnumbers}
    Ohne so eine Definition geht es laut dieser Antwort nicht, da es viel zu aufwändig wäre, alles automatisch auszuschließen, was KEINE Nummer bekommen soll.

  4. #4
    Registrierter Benutzer
    Registriert seit
    31.03.2013
    Beiträge
    3
    Lieber rstuby,

    hier wird wirklich nicht zu viel versprochen - schon mal ungetestet: Tausend Dank und viele Grüße!

    Werde den Benutzernamen nach dem Test vermutlich von "Unglücklich" in "Glücklich" ändern!

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •