I expect the output from Writer of Save as Text to be a text file with an end-of-line everywhere a line ended on the screen when I was in the editor. What I get is a single, long, line for each "paragraph" in the original document.
Steps to Reproduce:
1. Open a New Text Document
2. Type a few paragraphs
3. File -> Save as... -> Select "Save as type" of "Text"
This is a demonstration of text I want in a text file.
I expect the text file to have an end-of-line marker at every point where I saw a line end on the screen when I was using LibreOffice Writer.
This is a
text I want in a
I expect the
text file to have
an end-of-line marker
at every point where
I saw a line end on
the screen when I
User Profile Reset: No
"Actual Results", above, should contain only two lines: "This is...text file.", and "I expect...Writer."
I set the left margin to 3 and the right margin to 3.5, and used Courier New, 12 point.
Build ID: 05dceb5d363845f2cf968344d7adab8dcfb2ba71
User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0; Touch)
Created attachment 138007 [details]
Result of Save as Text
could you please try to reproduce it with the latest version of LibreOffice from https://www.libreoffice.org/download/libreoffice-fresh/ ?
I have set the bug's status to 'NEEDINFO'. Please change it back to 'UNCONFIRMED' if the bug is still present in the latest version.
LibreOffice 5.4.3 behaves the same way as already described: one line for each paragraph, rather than one line for each line that appeared on the screen in Writer.
I uninstalled LibreOffice 4.2 and installed LibreOffice 5.4.3. I opened a new Text Document, set the margins to 3 and 3.5 inches, changed the font to Courier New, 12 points, and pasted the sample text into the new document. On screen, it looks as it did, and as I want: lots of short lines. When I Save as Text, I get what I got before: one long line for each paragraph.
There is an option "Save as Text - choose encoding". It includes the options of specifying whether I want lines terminated with CR/LF, CR, or LF. It makes no mention of manifesting soft returns. It produces the same output as "Save as Text".
tested under Win8.1 x64 using LibO 220.127.116.11
I opened a blank new Writer document and I typed 4 lines like:
The cat is
on the table.
The dog is
under the chair.
then I saved as .txt and opened the output which is exactly in 4 lines like the original text shown on screen.
I tried pasting your dummy text in Writer and then save it as .txt and again the output is like it appears on screen... I don't reproduce your issue since my results are different than those in your attached .txt file.
(In reply to tommy27 from comment #4)
If, in your first test, you hit <ENTER> after each short line, then you're getting what I expect. Hitting <ENTER> ends a "paragraph", and the "Save as Text" *does* put an end-of-line at the end of each paragraph.
In your second test:
Is the text you pasted what I posted as the result of Save as Text? So it was two rather long lines?
Did you change the left and right margins to force more dramatic line wrapping?
How are you testing the resulting text file? I open it in Notepad. With very wide margins in LibreOffice, the lines of text are so short they don't come anywhere near the width of the Notepad window. If your Notepad window is as wide as the default LibreOffice margins would make the usable part of a page, and you have word-wrap enabled in Notepad, it might reproduce what was displayed in LibreOffice.
I tried pasting my sample text into LibreOffice without changing margins or font. The first line fits. The second line gets broken into two lines. When I Save as Text, the output text file still contains only two lines -- just like the original.
It doesn't seem likely that they changed it from 4.2 to 5.3, then took it out by 5.4.
Tried to reproduce it:
1. I opened a new document (set margins to 3 and 3,5)
2. I copy and pasted your text (Courier 12; each line a paragraph)
3. File => save as => Text - Choose encoding => confirm file format
4. Properties: Western Europe (Windows-1252/WinLatin 1)
Paragraph break: CR & LF
5. Opened in Windows editor => no problem
Is it pobably a problem of your editor? Do you get the same result with the windwows editor?
Version: 18.104.22.168.beta1 (x64)
Build ID: 97471ab4eb4db4c487195658631696bb3238656c
CPU threads: 4; OS: Windows 10.0; UI render: default;
Locale: de-DE (de_DE); Calc: group threaded
(In reply to Dieter Praas from comment #6)
I'm not sure what you mean by "the Windows editor". I usually use Notepad. I just tried again with Write (AKA, WordPad). I checked the file with a hex editor. The file produced by LibreOffice does *not* have an end-of-line mark at the end of every line that appeared on the screen when I was in LibreOffice Writer. It just has an end-of-line mark at the end of each paragraph, which is also each place I hit <ENTER> when I was originally entering the text.
I see that you're using Version 6 of LibreOffice, and running under Windows 10. At least it makes some sense that you get different results.
Created attachment 138162 [details]
expected output -- never actually produced by LibreOffice
I just put LibreOffice 6 Beta on a Windows 10 machine. I tried Save as Text, and Save as Text -- choose encoding (Windows-1252, CR/LF). I never get end-of-line marks, except for one at the end of each "paragraph".
(In reply to Jay Michael from comment #7)
> I'm not sure what you mean by "the Windows editor". I usually use
> Notepad. I just tried again with Write (AKA, WordPad).
I found out, that Notepad is the same as Windows editor. I also tried WordPad and I had no problem. So I really have no idea, what I can do, to reproduce it. Sorry.
(In reply to Jay Michael from comment #0)
> I expect the output from Writer of Save as Text to be a text file with an
> end-of-line everywhere a line ended on the screen when I was in the editor.
> What I get is a single, long, line for each "paragraph" in the original
Why do you expect this? It does no make any sense to me. You have to format your text in Writer to behave like you want, with line or paragraph breaks.
(In reply to Buovjaga from comment #11)
> (In reply to Jay Michael from comment #0)
> Why do you expect this? It does no make any sense to me. You have to format
> your text in Writer to behave like you want, with line or paragraph breaks.
I expect this mainly because it seems to me to be the obvious behavior: I used a word processor so lines would be reflowed when I edited. (As opposed to painfully reflowing by hand after an insertion or deletion, or just putting up with painfully inconsistent line lengths.) I expect the output of a word processor to attempt to preserve the appearance of my document. To me, this means having an end-of-line mark at the end of every line that was displayed on the screen. I understand that this does not guarantee that the recipient will see what I saw while creating the document, but if I keep my usable space narrow enough, most of my recipients will see what I intend them to see.
As justification for my expectation, I offer the observation that this was the behavior in other word processors. (In particular, the last version of WordPerfect I used.)
I *am* formatting my text to *look* like I want. I am setting the margins to limit the width of the formatted text. I am setting the font to what I expect my recipient will be using. I used paragraph breaks, and expect that they will limit any reformatting that occurs. All I'm asking is that the output include a mark wherever a line ended on the screen.
Maybe the confusion comes from a disagreement over the purpose of Save as Text. The current form is probably the most suitable for use in transferring a document to another word processor. For me, the purpose is to produce a text file suitable for use as the content of an e-mail message, or to produce a text file for transfer to a device that does not have a word processor capable of interpreting an .ODT file.
(In reply to Jay Michael from comment #12)
> Maybe the confusion comes from a disagreement over the purpose of Save
> as Text. The current form is probably the most suitable for use in
> transferring a document to another word processor. For me, the purpose is
> to produce a text file suitable for use as the content of an e-mail message,
> or to produce a text file for transfer to a device that does not have a word
> processor capable of interpreting an .ODT file.
Email clients have options to limit the line length: http://kb.mozillazine.org/Plain_text_e-mail_(Thunderbird)#Advanced
Text editors (even Notepad) support wrapping lines.
Changing the behaviour like you request would result in many complaints as it is unusual. Closing as WONTFIX.
(In reply to Buovjaga from comment #13)
> Changing the behaviour like you request would result in many complaints as
> it is unusual. Closing as WONTFIX.
An option (defaulting to "No") to output an end-of-line for each soft-return would not result in any complaints.
This would make no sense. Our direct formatting and styles are applied to the paragraph as objects held on a page object; indentations, spacing, numbering, etc. are attributes of the paragraph.
What you are asking for is to maintain line spacing that would break paragraph object attributes--we won't do that and this is INVALID.
However, if you insist on manually formatting each line (rather than allowing the paragraph object to demark its text breaks within margins and indents) it is a simple practice to use <Shift>+<Enter> to break your lines with a <LF>.
Then each <LF> inserted will be filter exported to end each line in a Text formated file as HEX 0a, with Paragraph ends rendered as <CR><LF> 0a0d.
You should be able to work with the resulting text file as you prefer.
Setting Resolved => INVALID
(In reply to V Stuart Foote from comment #15)
> What you are asking for is to maintain line spacing that would break
> paragraph object attributes--we won't do that and this is INVALID.
I don't think that's what I'm asking for. What I'm asking for is for the output of "Save as Text" to look like you would make it look if you were printing on a text-only printer.
> However, if you insist on manually formatting each line (rather than
> allowing the paragraph object to demark its text breaks within margins and
> indents) it is a simple practice to use <Shift>+<Enter> to break your lines
> with a <LF>.
> Then each <LF> inserted will be filter exported to end each line in a Text
> formated file as HEX 0a, with Paragraph ends rendered as <CR><LF> 0a0d.
> You should be able to work with the resulting text file as you prefer.
I don't insist on manually formatting each line. I'm trying to get LibreOffice to figure out where to break lines of a paragraph, and then communicate that decision to the text file.
> Setting Resolved => INVALID
Is INVALID further from me getting what I want than WONTFIX was?
(In reply to Jay Michael from comment #16)
> > Setting Resolved => INVALID
> Is INVALID further from me getting what I want than WONTFIX was?
No. For this "enhancement" to be denied WONTFIX would require it to be a valid request. INVLAID is simply stating that the issue reported or requested development is out of scope or inappropriate for the project.
You comment "I expect...", "...text I want", "I expect this mainly because it seems to me to be the obvious behavior..."
And we are telling you what you get with LibreOffice's Save-As handling of .txt, as you confirm for yourself in comment 7.
Our internal layout handling (line width, indentation, kerning, justification) deals with text streams composed onto a document canvas. The line breaks are not stored with the stream--rather are recalculated dynamically as controlled by paragraph endings, or manual Line feeds and as influenced by other objects present on the document canvas.
When filter exported to .txt, the paragraph endings (and any manual line feeds) will be included but no other formatting or layout. Typical text with just paragraph ends will not be wrapped in the .txt export result. That is normal and expected.
Your request would require development of a new, more complicated export filter that would need to interpret the text layout onto document canvas and then correctly insert linefeeds to maintain the same line breaks in the exported text. It is abnormal and not otherwise expected and frankly too specialized to be anything more than a corner case.
These types of specialized tools are appropriately handled as extensions--not in the LibreOffice core.
"FILESAVE: "Save as Text" doesn't put end-of-line after each line shown on screen" => INVALID, because it is the correct behavior, nor should it.
*** Bug 114554 has been marked as a duplicate of this bug. ***
I think this should be reopened. I would like to see this option too. My use-case for this is limiting my output text files to 80 characters, which is a common requirement for various internet submissions (like GameFAQS for example). I used to adjust the document in MS Word so that it would fit only 80 characters per line, then on saving convert the soft line wraps to hard line wraps in the output TXT file. This is very useful and I see no reason why it shouldn't at least be an aspiration to add this functionality in LibreOffice.
MS Word called this "Text Only with Line Breaks" as its "save as" file type.
Nope as in comment 15 it remains invalid and completely inappropriate for how ODF documents are structured.
If one insists on forcing formatting this way--use the newline <Shift>+Enter while entering text--resulting Save-as .txt formatting will as assigned.
I hunted a solution for you guys and found several: https://forum.openoffice.org/en/forum/viewtopic.php?f=7&t=59304
A nice and quick one is changing the selection mode to Block (left-click the cursor icon in the status bar), select everything with mouse and paste to a new file.
In the OO.org topic there is also a macro posted on Thu Feb 23, 2017.
Finally, like the last post in the topic says:
File > Export as PDF. Now copy everything from the PDF and paste it into a new document.
When I originally asked about this on ask.libreoffice.org,
librebel offered me the BASIC
(I couldn't see how to delete a fumbled comment.)
When I originally asked about this on ask.libreoffice.org,
librebel offered me the BASIC source for a macro that would save the current document as a text file, with a hard return at the end of each line as the line appeared on the screen in LibreOffice Write.
I added a "Save as..." dialog.
Created attachment 138672 [details]
macro to save current document as text, with hard line breaks