Free Republic Posting Form Enhancer

Free Republic Posting Form Enhancer (FRPFE) is a user script that modifies the forum's posting form to help with the entry of common HTML tags and to make better use of available screen real estate. It allows you more room to enter a post, and it displays the post preview at full window width, giving you a more accurate rendition of how your post will look when added to the thread. Free Republic is a political discussion site.

To use FRPFE, you must be running Firefox with the Greasemonkey extension installed. Click here to install FRPFE.

FRPFE makes the following changes to the posting page, immediately after it is loaded:

Note: You can change the height of the reply box. Edit the extension and change the value of the INPUT_FRACTION constant from its current value of 0.5. INPUT_FRACTION is the portion of the browser window height that the reply box occupies.

The HTML Toolbar

The HTML toolbar is a row of buttons which facilitate the entry of HTML tags in the reply box. It is located above the reply box.

When you click a toolbar button, FRPFE inserts the corresponding HTML into the reply box at the current location. All of the buttons also have keyboard shortcuts. Keying a button's shortcut while typing in the reply box has the same effect as clicking the button. If you can't remember a button's shortcut key, you can discover it by hovering the mouse pointer over the button until the tooltip message appears.

What happens when you press a toolbar buttons depends on whether you have selected (highlighted) text within the reply box. If you have not selected any text in the reply box, FRPFE adds the HTML at the current cursor position and leaves the cursor positioned between opening and closing HTML tags, ready for you to key or paste the content. If you have selected some text in the reply box, FRPFE encloses the selected text between the opening and closing HTML tags.

For example, if there is text in the reply box that you would like to make boldface, you would select the text and then either click the B button or type Ctrl-B. FRPFE adds <b> before your selection and </b> after it and expands the selection to include the tags. At this point, if you also want italic, you could click the I button or type Ctrl-I to include <i> before and </i> after, thus making your original selection bold italic.

On the other hand, if there is no selection in the reply box, and you want to add a link, you might choose to click the Link button and respond to the prompt by pasting in a URL. FRPFE would add the link markup and leave the cursor positioned for you to type the clickable link text.

HTML on Free Republic

Free Republic only allows a subset of HTML to be posted. See Free Republic Supported HTML Tags and Attributes for the list of what is and isn't supported. The biggest parts missing are styles and JavaScript. The Free Republic server must prevent HTML in any given comment from screwing up the whole discussion thread. That means it needs to close unclosed tags, etc. The more complex the HTML allowed, the harder that task becomes. In early versions of the site, if a poster used the <b> tag and forgot to close it, the rest of the thread would be in boldface until someone posted a </b> tag.

W3 Schools is a handy online HTML reference. Click here for their HTML tag reference. Many of the pages have links to try-it-yourself demo pages, which allow you to mess with the HTML and then see it rendered.

Button Actions

Button
& Shortcut

Action

Ctrl-q
Facilitates quoting all or part of the post to which you are replying, in the preferred Free Republic style. It italicizes the quoted text and adds a paragraph break, after which you may compose your reply. It encloses the quoted text in a <i></i> tag pair followed by a <p> tag. To use the Quote button, either click it with the window empty and paste in the quoted text or paste the quoted text into the empty window, select it, and hit the Quote button.

Tip: If the text you are quoting contains HTML (such as paragraph breaks, links, or colored text), you can copy the HTML along with the text. Select the text you want to copy. Then right-click, select View Selection Source, copy the selected HTML to the clipboard, and paste it between the <i> tags.


Ctrl-Shift-Q
Indents the enclosed text on both the left and the right. Used to set off extended quotations from third-party sources, such as news articles or blog entries.

Can also be used simply to indent text. Nesting within multiple pairs of <blockquote> tags indents more deeply.


Ctrl-b
Bolds the enclosed text.

Ctrl-i
Italicizes the enclosed text.

Ctrl-u
Underlines the enclosed text.

Ctrl-s
Strikes out the enclosed text.

Ctrl-Alt-q
Surrounds the enclosed text with curved double quotes, in which the opening quote is a different glyph than the closing quote. This vs "this". A <q>-quoted selection nested within an outer <q>-quoted selection is set off by curved single quotes. For curved single quotes by themselves, use the HTML entities &#8216; and &#8217;.

Ctrl-Shift-S
Makes the enclosed text smaller. Nesting within multiple pairs of <small> tags makes the text progressively smaller.

Ctrl-Shift-B
Makes the enclosed text bigger. Nesting within multiple pairs of <big> tags makes the text progressively bigger.

Ctrl-Shift-<
Adds the HTML entity code "&lt;" at the cursor. &lt; renders as < (a less than sign). Using this entity code makes it possible to discuss HTML examples online properly. It also makes it possible to add proper <sarcasm></sarcasm> pseudo-tag pairs, a rare skill on FR.

There is a corresponding &gt; entity for the greater than sign >. But, unlike &lt;, you can generally get away with just keying the > sign directly. Click here for the full list of entity codes.


Ctrl-Shift-F
Encloses the selection in <font> tags. In order for this to be useful, you will need to add color, size, or face attributes to the opening tag.

Ctrl-Shift-P
Renders the enclosed text in a fixed-pitch font with spaces and line breaks preserved. Useful for presenting computer source code and to make the columns line up when displaying simple tabular data (when you are too lazy to put it in a real HTML table). See the <pre> tag.

Ctrl-Shift-U
Turns the enclosed text into an unordered list, in which the entries are bulleted.

To use the UL button, key in your list first, beginning each entry with an asterisk as the first non-whitespace character on the line. Then select your text and click the button. FRPFE will turn each asterisk into an <li> tag automatically.


Ctrl-Shift-O
Turns the enclosed text into an ordered list, in which the list entries are numbered consecutively.

To use the OL button, key in your list first, beginning each entry with an asterisk as the first non-whitespace character on the line. Then select your text and click the button. FRPFE will turn each asterisk into an <li> tag automatically.


Ctrl-h
Inserts an <hr> (horizontal rule) tag on a line by itself.

By default, the rule tag inserted has "width=97%" set, which causes some space to be left at the left and right ends. This avoids visual confusion with the rules that Free Republic uses to separate posts.


Ctrl-Shift-T
Encloses the selection in a single-cell HTML table, including a <tbody> tag pair and initial <tr> and <td> tag pairs. You can later use the TR, TH, and TD buttons to add additional rows and cells to the table. The <tbody> tag contains an align=center attribute, which will cause all the table cell content to be centered (useful for image captions). Remove the attribute if you don't want the effect.

In addition to their normal use, tables can be useful when you want to center a caption under or over an image and when you want to present multiple images horizontally with captions.


Ctrl-Shift-R
Adds a pair of <tr> table row tags at the cursor.

Ctrl-Shift-H
Adds a pair of <th> table header tags at the cursor. The <th> tag defines a table cell with the text boldfaced and centered by default.

Ctrl-Shift-C
Adds a pair of <td> table cell tags at the cursor.

Ctrl-Shift-I
Inserts an image. Adds an HTML image tag at the cursor. It will prompt for the image URL. It's usually best to right-click the image and select Copy Image Location. Then paste the URL into the prompt box (Ctrl-V).

If you encounter problems obtaining an image URL, you may find it useful to select Tools | Page Info on the page where the image is found. Then find the image among those shown on the Page Info page's Media tab.

The inserted <img> tag contains a "border=0" attribute. Its effect is to prevent an ugly border from appearing around the image if it is link-enabled (the mouse pointer still changes to indicate clickability when over the image, however). It's a good idea to include the caption within the link-enabled text to alert the viewer that there is a link associated with the image.

Tip: If you created the image yourself, you must first host it on the web before you can get a URL to put into an <img> tag. If you already have a website, you can simply upload your image to it. If not, there are plenty of free image hosting sites on the web, such as Photobucket. Google for "free image hosting hotlinking allowed" for more.


Ctrl-Shift-L
Link-enables the enclosed text and / or image(es). After prompting for the destination URL, it adds a pair of anchor tags, with the href parameter filled in with the URL. It's best to have the URL already on the clipboard and just paste it into the prompt (Ctrl-V). If you instead key it by hand, remember to preserve the "http://" at the front.

Ctrl-Shift-Enter
Forces a line break at the cursor location. Adds a <br> tag on a line by itself.

Ctrl-Enter
Inserts a paragraph break at the cursor location. Adds a <p> tag on a line by itself.

Other Keyboard Shortcuts

FRPFE makes available several keyboard shortcuts to activate the buttons at the bottom of the reply box without having to scroll down and click them.

ShortcutAction
Ctrl-Alt-s Runs the spelling checker on your comment.
Ctrl-Alt-p Displays your comment in the preview window.
Ctrl-Alt-enter Posts your comment, provided you haven't changed it since you last previewed it.

If you forget any of the shortcuts, just mouse over the button in question to see the tooltip message.

Xinha WYSIWYG HTML Editor

I recently came across the Xinha Firefox Extension. It makes available a visual HTML editor able to create HTML content for any text area or text box on any web site without leaving the browser.

I probably would not have bothered to add the HTML toolbar if I had known about Xinha before I finished. I've since installed Xinha, and it's cool and works well on the Free Republic posting page. However, I find I still use my little toolbar most of the time, because it's right there, it's lightweight, and most FR posting jobs are too simple to need the greater power of Xinha.