A SILAS user has asked:
> I would like to locate all section headings
> that are longer than one line
> so I can decide one by one .(like FindNext)
> where I want to insert a ^l break.
> I don't want of course to put two \s lines in Paratext
> because of the line spacing.
>
> Or would you suggest to use right away in PT
> fields like \s3 (first line) and \s4 (second line) for those headings,
> so that I can easily adapt the styles in Word?
>
What I have done in the past is to attach SILAS to the document and
format for printing, then search for all the section headings, and for
those that are long enough for the line to break, I put in a manual
line break (Shift-Enter). Of course, this has to be done each time I
export a file from Paratext for printing.
USFM supports a discretionary line break code (//), as described in
the USFM manual version 2.2 that you can download from the SILAS web
page;
http://code.google.com/p/silas/downloads/list
You could put those in long section headings in the Paratext files,
and when they come through into the RTF file and you format the file
with SILAS, search for the "// " sequence and replace each one with
the manual line break code, ^l.
Word doesn't support any discretionary line break, so there's no way
for SILAS to convert // into what you want.
The user didn't want to put a \s code in the middle of a long section
heading, because that causes the spacing that usually occurs above and
below a section heading to occur between the two lines. But in my copy
of SILAS, I have just changed the style "_Heading_Base" and turned on
the property:
"Don't add space between paragraphs of the same style"
The change to the base style flows through to all styles based on it,
and the style coming from \s is one of those. So I can put \s in the
middle of a long section heading and there is no space between the two
lines once SILAS is attached.
We could add that to the style in SILAS, but it doesn't exist in
versions of Word before 2002 (ie. Word XP), so I don't want to do
that.
I've just found out (with a little help from google) a way for a Word
macro to find out how many lines a paragraph occupies,
(Selection.Information()), so I am planning to make SILAS convert //
into ^l if the paragraph occupies more than one line in the current
formatting.
Your thoughts?
Jim