Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

How do you search and replace page breaks in Libre Office Writer? For example, I may want to remove all manually inserted page breaks (^m in MS Word). I can search for line breaks and paragraph breaks using regular expressions, but I don't see a page break character anywhere.

share|improve this question
up vote 1 down vote accepted

Quite a hack, but I'd suggest unzipping the .odt file and working with raw XML. The content.xml seems to be the correct file to edit.

I have prepared a test file with content:

-page break-

And here is the relevant part of the raw XML:

<!---*lots* of declarations--->
    <style:style style:name="P1" style:family="paragraph" style:parent-style-name="Standard">
        <style:paragraph-properties fo:break-before="page"/>
    <office:text text:use-soft-page-breaks="true">
            <text:sequence-decl text:display-outline-level="0" text:name="Illustration"/>
            <text:sequence-decl text:display-outline-level="0" text:name="Table"/>
            <text:sequence-decl text:display-outline-level="0" text:name="Text"/>
            <text:sequence-decl text:display-outline-level="0" text:name="Drawing"/>
        <text:p text:style-name="Standard">QQQQQ</text:p>
        <text:p text:style-name="P1">AAAAA</text:p>
<!---some happy-end--->

(The real file will proably be more complex.) It seems to me that "P1" is a style created to "bear" the property of page-breaking before the paragraph. So two things come into my mind:

  • remove "P1" from <text:p /> tags
  • remove the page-breaking property from "P1" style

By the way, here I'd also recommend avoiding regexes in favor of some real XML parser.

share|improve this answer
While I think removing the P1 style from a paragraph would work, it would be pretty cumbersome to use on an ongoing basis. I am looking more for something like ^m in word, which can be used in search and replace. – xpda Mar 26 '12 at 3:50
It looks like there's not a good answer to this question, but this seems like the best answer. I would like to change to LibreOffice, but the lack of this one feature is preventing it. – xpda Mar 26 '12 at 3:54

This post in a LibreOffice mailing list suggests the AltSearch plugin. It says on the plugin page that it is capable of

  • Searching out manual page and column break and their set up or deactivation
share|improve this answer
This almost works. It can find \m but not replace it. It reports replacing the page breaks, but the page breaks remain. – xpda Mar 21 '12 at 1:33

Try using \n or \r or s/\r\n/\r/g in your regexp. \n is for liNe feeds, \r is for caRriage returns.

I don't know if this will work in Libre office. Alternative is to copy from that, into a text editor (gedit in linux, notepad++ in windows), do the search and replace, and copy it back.

share|improve this answer
Unfortunately (at least here on Debian Wheezy), LibreOffice page breaks are not preserved in copy&paste. – Alois Mahdal Mar 19 '12 at 21:37

I'm, not sure if it supports this, but I'd look at OOoPy.

OOoPy: Modify documents in Python

share|improve this answer

Howto delete a 'manual page break' outoff a 'writer' docment? Well, when you look at the internet, there is hardly anything what handles a batch removal for pagebreaks. Say a 50 odd or more. The solution is very simple. You save the .doc file as an .xml file. Reopen the .xml file with 'writer' and there you are, all pagebreaks are gone. Don't ask me how.

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .