28 Nov 2014

RE: @flushright command

VERSION: makeinfo 5.2 (built from source on Fedora 20 x86_64)

BUG:

The @flushright command is incompletely implemented for the HTML output.

'flushright' implies pre-formatted text because the whole paragraph is being shoved to the right margin; however, for text in blocks that would normally have wrapped, this is inconsistent.

Outside an environment and within an @example, @display and @format blocks, flushright looks great in the info output. /Carefully constructed/ text in @quotation and @indentedblock environments also looks fine in the info output. However, the HTML for all of these has issues because it is directly styled (<p align=”right”> ... </p>) rather than calling out a class name.

 *

   Outside an environment, the HTML is not pre-formatted, so the
   following return address example is all on the same line. Explicit
   end-of-lines ( @* ) will correct the HTML, but cause double-spacing
   in the info output.

 *

   For HTML output, @flushright within @quotation and @indentedblock
   environments suffer from the same problem as above.

 *

   For HTML output, the styling for the @example, @display and @format
   blocks overrides the @flushright, so it appears to be ignored.


Outside an environment (with and without explicit line breaks):@*

@w{Generated HTML: <p align="right"> ... </p>}

@flushright

Jungle, George of the@*

Ape Mountain, South@*

Bukubu Territory@*

Deepest Africa@*

@sp 1

Jungle, George of the

Ape Mountain, South

Bukubu Territory

Deepest Africa

@end flushright


@html

<div style="white-space:pre; text-align:right; color:red;">

<span style="text-decoration:underline">Direct HTML Output for pre-formatted, right-aligned text:</span>

Jungle, George of the

Ape Mountain, South

Bukubu Territory

Deepest Africa

</div>

@end html


In an @@example environment:@*

@example

@flushright

Jungle, George of the

Ape Mountain, South

Bukubu Territory

Deepest Africa

@end flushright

@end example


My recommendation would be that instead of direct styling:
<p align=”right”> ... </p>

The @flushright should call out a class name so we can address it with CSS:
<div class=”right-align”> ... </div>
or something similar which would allow for definition of preformatted and right-aligned HTML output in any environment.


Cheers,

Mahlon





--

Software Sam - software and tools for GNU/Linux

Mahlon Smith,
/The Software Samurai/
On the Web: /http://www.SoftwareSam.us/ <http://www.SoftwareSam.us/home.html>/

Reply via email to