mdbtxt1
mdbtxt2
Proceed to Safety

RHTF Test File    

This file tests the implementation of RHTF (Readable HyperText Format) by the mrob.com web publishing software, and its appearance in whatever browsers I try to support. For a description of the web publishing software itself, see the main RHTF Web-Authoring System page.

You might wish to compare this page to its own ASCII source, which is shown in the second half of this page.

Contents

Commonly-Used Markup

dss Attribute Matrix

Non-Roman Script Tables

RHTF Source for This File


Commonly-Used Markup

Centered Equal Title

Equal-Sign Title

Default Ampersand Format

Percent Format

Boldface Format

italic itaboldlic plain phrase nested phr * bold

Indented stuff with italics close together (maths)
A''(n)/C(n,2) = h C2 / 2hC2
(C,2)-sum = A''(n)/C(n,2) : 1, 1/3, 3/6, 3/10, ...
foo a*b×d

bold bolditalface plain phrase nested phr # italic "hi"

"Nisi? ut? aliquid ex ea commodi!" consequatur? Quis autem vel eum iure reprehenderit!

Qui in ea, voluptate Velit, esse, quam nihil, molestiae consequatur, vel illum, ... qui ... dolorem eum fugiat, quo voluptas nulla pariatur? At vero eos et accusamus et iusto ...

Odio dignissimos ducimus, qui blanditiis praesentium "voluptatum" deleniti atque corrupti, ... Quos dolores et quas molestias excepturi sint, ... obcaecati cupiditate non provident, similique sunt in culpa, qui officia deserunt mo

Aliquam quaerat voluptatem.

Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?

This paragraph starts with a large initial letter. This is a stylistic reference to medieval illuminated manuscripts. If you see two T's, looking like "TThis paragraph...", you are probably seeing a known bug in old versions of Firefox. At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Centered Italic One-Line

Left-justified and right-justified on same line

This block of paragraphs is all smaller than the above group. This is a normal (unindented) paragraph. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

This paragraph starts with an indented first line. It is also the first of multiple paragraphs that are underlined using a single span-style tag. RHTF automatically generates the needed span tags to make this style continue across block elements.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

This is a blockquote-style paragraph. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus.

This is a non-indented paragraph after a blank line. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.
This line starts with a hard newline, using a leading back-quote. Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt.

Another block-quote paragraph, this time in italics. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem.

Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?

Test Include File

This exists just to demonstrate RHTF's include[] directive.

Superscript and Subscript Tests

Multiple levels of superscripts and subscripts can be nested.

27710100 ≈ 10108.45 . 1099

A01B02C03D04E05

A01B02C03D04E05

Three types of substitution

In each example the macro invocation has # on both sides to make its replacement bold.

preprocessor-style macro grp[] allows RHTF and HTML substitution: 2 × 3

regular macro gr[] allows HTML substitution only, but not RHTF: 2 × 3 * 4 * 5

literal macro grl[] shows replacement text with no RHTF or HTML interpretation: 2 × 3


dss Attribute Matrix

The dss[] directive assigns or re-assigns certain ASCII characters to denote fonts, styles, colors, and other types of style variation. Here are the default appearances of all seven general-purpose RHTF attributes, showing all 42 combinations of one style inside another:

star * attr. dlr shp pct at _scr_ pip
dollar $ attr. star shp pct at scr pip
sharp # attr. star dlr pct at scr pip
percnt % attr. star dlr shp at scr pip
at @ attr. star dlr shp pct scr pip
score _ attr. star dlr shp pct at pip
pipe | attr. star dlr shp pct at scr

Redefining

The above seven can be redefined, along with = and &, which by default generate the non-nestable H2 and H3 tags (respectively).

& can be redefined and used in the normal way; = can be redefined but can be used only with <=: and :=>. When these are defined they become nestable (as shown below); both can be un-defined and then return to generating H2 and H3.

Now defining * to bold size 8px magenta;

defining $ to italic black;

defining # to boxed green;

defining & to smaller red;

defining % to superscript blink;

defining @ to overline blue;

defining _ to small-caps;

defining = to strikethrough;

defining — to cursor:help;

and defining | to wider spacing.

Star * attr. Dlr Shp Amp Pct At _Scr_ Pip
Dollar $ attr. Str Shp Amp Pct At Scr Pip
Sharp # attr. Str Dlr Amp Pct At Scr Pip
Amper & attr. Str Dlr Shp Pct At Scr Pip
Percnt % attr. Str Dlr Shp Amp At Scr Pip
At @ attr. Str Dlr Shp Amp Pct Scr Pip
Score _ attr. Str Dlr Shp Amp Pct At Pip
Equal = attr. Str Dlr Shp Amp Pct At Pip
Hyphen - attr. Str Dlr Shp Amp Pct At Pip
Pipe | attr. Str Dlr Shp Amp Pct At Scr

Nesting order sometimes matters: this uses % inside #, but this uses # inside %. In one the box is superscripted along with the enclosed text.

For another example, this uses & inside @ and this uses @ inside &; the colors differ (with the "inner" color taking priority).

Now un-defining all of the above.


Web Fonts

Defining % to ChipsFontMedium 11px.

ChipsFont, special chars: ∑®†¥¡™£¢⁄€‹›

Restoring % to default.


Non-Roman Script Tables

ASCII encodings of a few non-Latin alphabets are available in RHTF. These are selected with the dssc[] operator, assigning the character & or % to delineate when a given block of ASCII chracters are to be converted into a particular script. I added these specific alphabets because I needed them for specific purposes on certain webpages. There is also an arbitrary Unicode syntax (examples below).

However, RHTF source can also include UTF-8-coded character sequences, which typically are handled properly by whatever plain text editor you might want to use. If you create the RHTF source file as a TXT file with its encoding set to UTF-8 (or if your editor is set to treat all text files as being in UTF-8 encoding), then you can get any character you want without using RHTF symbols at all.

Hebrew:

The RHTF Hebrew alphabet is incomplete and has no vowel marks; it is just for use in special situations e.g. when a Hebrew letter is used as a mathematical symbol. RHTF Hebrew is always left-to-right, to get the normal right-to-left ordering use inline UTF-8.

א ' alef ב b bet ג g gimelד d daletה h he ו v vav
ז z zayinח H xet ט t tet י y yod כך kK kaf ל l lamed
מם mM memנן nN nunס s samexע a ayin פף pP pe צץ +# tsadi
ק q qof ר r reyshש S shin ת T tav

Examples:
RHTF: טבאש tb'S (shabbat: t b a sh) (letters arranged left-to-right)
inline UTF-8: שיבט (letters arranged right-to-left)

Greek:

The extra Greek letters in the bottom row are used in numerals: ς = 6, ϙ = 90, Ϡ = 900, "͵" is a numeral marker.

α Α aA alpha β Β bB beta γ Γ gG gamma δ Δ dD delta ε Ε eE epsilon ζ Ζ zZ zeta
η Η hH eta θ Θ jJ theta ι Ι iI iota κ Κ kK kappa λ Λ lL lambda μ Μ mM mu
ν Ν nN nu ξ Ξ xX xi ο Ο oO omicron π Π pP pi ρ Ρ rR rho σ Σ sS sigma
τ Τ tT tau υ Υ uU upsilon φ Φ fF phi χ Χ cC chi ψ Ψ yY psi ω Ω wW omega
ς ς 6+ stigma ϙ Ϙ qQ koppa Ϡ    9 san ͵   numeral ϑ 8 vartheta

Example: ιχθυσ icjus (ichthys)

Katakana:

ア A- カ Ka ガ Ga サ Sa ザ Za タ Ta ダ Da ナ Na ハ Ha バ Ba パ Pa マ Ma ラ Ra ラ La ワ Wa ヷ Va ヤ Ya ャ ya ヮ wa
イ I- キ Ki ギ Gi シ Si ジ Ji チ Ti ヂ Di ニ Ni ヒ Hi ビ Bi ピ Pi ミ Mi リ Ri リ Li ヰ Wi ヸ Vi
ウ U- ク Ku グ Gu ス Su ズ Zu ツ Tu ヅ Du ヌ Nu フ Fu ブ Bu プ Pu ム Mu ル Ru ル Lu ヴ Vu ユ Yu ュ yu ン N-
エ E- ケ Ke ゲ Ge セ Se ゼ Ze テ Te デ De ネ Ne ヘ He ベ Be ペ Pe メ Me レ Re レ Le ヱ We ヹ Ve 。 ..
オ O- コ Ko ゴ Go ソ So ゾ Zo ト To ド Do ノ No ホ Ho ボ Bo ポ Po モ Mo ロ Ro ロ Lo ヲ Wo ヺ Vo ヨ Yo ョ yo ー --

Example: ヨーグルト Yo--GuRuTo (yoh-guruto)

Hiragana:

あ A- か Ka が Ga さ Sa ざ Za た Ta だ Da な Na は Ha ば Ba ぱ Pa ま Ma ら Ra ら La わ Wa ば Va や Ya ゃ ya ゎ wa
い I- き Ki ぎ Gi し Si じ Ji ち Ti ぢ Di に Ni ひ Hi び Bi ぴ Pi み Mi り Ri り Li ゐ Wi び Vi
う U- く Ku ぐ Gu す Su ず Zu つ Tu づ Du ぬ Nu ふ Fu ぶ Bu ぷ Pu む Mu る Ru る Lu ゔ Vu ゆ Yu ゅ yu ん N-
え E- け Ke げ Ge せ Se ぜ Ze て Te で De ね Ne へ He べ Be ぺ Pe め Me れ Re れ Le ゑ We べ Ve 。 ..
お O- こ Ko ご Go そ So ぞ Zo と To ど Do の No ほ Ho ぼ Bo ぽ Po も Mo ろ Ro ろ Lo を Wo ぼ Vo よ Yo ょ yo ー --

Example: にほんご NiHoN-Go (nihongo)

Aribtrary Unicode:

日 &U65E5;    塊 &U584A;    百 &U767E;    千 &U5343;    万 &U4E07;    億 &U5104;

Mixed hiragana and Unicode: ひらがな の 日 にち。
Without spaces: ななーーーなななななーなーなーな塊魂。

defining $ to italic black;


I use Emacs in a shell terminal window (with ANSI terminal emulation) for all my web authoring needs, and therefore I wrote an RHTF major mode in Emacs LISP. I used the following bits of RHTF to debug to my rhtf-font-lock-keywords definitions.

OEIS link: A005646

Footnote1 refs2 and defs:

1 : http://two.com (footnote 1 description)

2 : (footnote 2 description)

Replace op:

Literals: 囥 * # %

color-doc (green) color-string (green) color-keyword (bold cyan) color-builtin (thin blue) color-function (bold blue) color-variable (yellow) color-type (green) color-constant (magenta) color-preprocessor color-negation color-warning (red) color-comment (red) color-com-del

A multiline match works if the target is completely within a 512-byte block.


Literal HTML can be used if desiredneeded.

(Here, I used the tags <q>, <s>, and <tt>, which have no RHTF equivalent.)

In this block we use <no-footer> and <iframe ... > to enclose an old version of the mrob.com footer in an <iframe> element. This is not (yet) how the actual footers on most of my pages are being done. An advantage of this would be that I could change the footer content without the need to re-upload every page on the website. The disadvantages are that older browsers do not support <iframe>, and if you increase the font size a whole lot or make the window really narrow, the iframe gets its own scroll bar (try it!).

Audio

There is no RHTF syntax for audio, but literal HTML can be used. See this page for an example.


RHTF Source for This File

Note in particular that there are no special characters to delineate indented paragraphs, block quotes or other types of whitespace, except centering (I decided to require the (-paren-dash markers-) to distinguish it from an ordinary indented line). The RHTF processor figures out what types of whitespace are present in the ASCII source and generates appropriate HTML markup tags to make it match.

This source file's name is test.rhtf; look at the very bottom of the following ASCII text and you'll see how easy it is for this file to include itself.

-- begin RHTF source --

RHTF Test File kw[rhtf, test] tcc[RHTF Test File] <glname rhtf-test> gr[->|&rarr;] gr[{>}|&gt;] gr[{<}|&lt;] gr[{~=}|&asymp;] include[oeis.hid]    This file tests the implementation of @RHTF@ (Readable HyperText Format) by the |mrob.com| web publishing software, and its appearance in whatever browsers I try to support. For a description of the web publishing software itself, see the main [RHTF``Web-Authoring``System|+rhtf] page.    You might wish to compare this page to [its``own``ASCII``source|#source], which is shown in the second half of this page.    #Contents# [Commonly-Used``Markup|#common] [@dss@ Attribute Matrix|#dss_atts] [Non-Roman Script Tables|#scripts] [RHTF Source for This File|#source]    ----    common:: &Commonly-Used Markup&    (-=Centered Equal Title=-)    =Equal-Sign Title=    &Default Ampersand Format&    %Percent Format%    #Boldface Format#    * bullet item 3->3->3 > 3^{27} * bullet item with *italics* * *bullet* with italic right away    *italic* *ita#bold#lic* <*:plain phrase:> <*:nested phr ** #bold#:>    Indented stuff with italics close together (maths) ` A''(*n*)/*C*(*n*,2) = *h* *C*v{2} / v{2*h*}*C*v{2} ` (*C*,2)-sum = A''(*n*)/*C*(*n*,2) : 1, 1/3, 3/6, 3/10, ... ` foo *a**b*{x}*d*    #bold# #bold*ital*face# <#:plain phrase:> <#:nested phr ## *italic*:> "hi"    "Nisi? *ut?* aliquid ex ea commodi!" <*:consequatur? Quis autem vel eum iure reprehenderit!:>    <*:Qui in ea, voluptate Velit, esse, quam nihil, molestiae consequatur, vel illum, ... qui ... dolorem eum fugiat, quo voluptas nulla pariatur? At vero eos et accusamus et iusto ...:>    Odio dignissimos ducimus, qui blanditiis praesentium "|voluptatum|" deleniti atque corrupti, ... <*:Quos dolores et quas molestias excepturi sint,:> ... obcaecati cupiditate non provident, similique sunt in culpa, qui officia deserunt mo    Aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum *exercitationem* ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?    dss[&|font-size: 20px]    =T=his paragraph starts with a large initial letter. This is a stylistic reference to medieval illuminated manuscripts. If you see two T's, looking like "v{&T&}This paragraph...", you are probably seeing a known bug in old versions of Firefox. At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.    dss[&|]    (- *Centered Italic One-Line* -)    dss[%|float:left] dss[&|float:right]    %Left-justified and% &right-justified on same line&    dss[%|] dss[&|]    <$:This block of paragraphs is all smaller than the above group. This is a normal (unindented) paragraph. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. <_:This paragraph starts with an indented first line. It is also the first of multiple paragraphs that are underlined using a single span-style tag. RHTF automatically generates the needed span tags to make this style continue across block elements. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.    This is a blockquote-style paragraph. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus.    This is a non-indented paragraph after a blank line. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.:> `This line starts with a hard newline, using a leading back-quote. Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt.    <*:Another block-quote paragraph, this time in italics. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem.:>    Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?    include[inc-test.hid] :>    &Superscript and Subscript Tests&    Multiple levels of superscripts and subscripts can be nested.    27^{7^{10^{100}}} {~=} 10^{10^{8.45 ^{.} 10^{99}}}    A01^{B02^{C03^{D04^{E05}}}}    A01v{B02v{C03v{D04v{E05}}}}    &Three types of substitution& grp[{x1}|&UD7;] gr[{x2a}|&times;] gr[{x2b}|*] grl[{x3}|&times;] In each example the macro invocation has ## on both sides to make its replacement bold. preprocessor-style macro |grp[]| allows RHTF *and* HTML substitution: 2 #{x1}# 3 regular macro |gr[]| allows HTML substitution only, but not RHTF: 2 #{x2a}# 3 #{x2b}# 4 #{x2b}# 5 literal macro |grl[]| shows replacement text with no RHTF *or* HTML interpretation: 2 #{x3}# 3       ----    dss_atts:: &|dss| Attribute Matrix&    The |dss[]| directive assigns or re-assigns certain ASCII characters to denote fonts, styles, colors, and other types of style variation. Here are the default appearances of all seven general-purpose RHTF attributes, showing all 42 combinations of one style inside another:    *star ** attr. $dlr$ #shp# %pct% @at@ _scr_ |pip|* ` $dollar $$ attr. *star* #shp# %pct% @at@ _scr_ |pip|$ ` #sharp ## attr. *star* $dlr$ %pct% @at@ _scr_ |pip|# ` %percnt %% attr. *star* $dlr$ #shp# @at@ _scr_ |pip|% ` @at @@ attr. *star* $dlr$ #shp# %pct% _scr_ |pip|@ ` _score __ attr. *star* $dlr$ #shp# %pct% @at@ |pip|_ ` |pipe || attr. *star* $dlr$ #shp# %pct% @at@ _scr_ |    &Redefining&    The above seven can be redefined, along with == and &&, which by default generate the non-nestable H2 and H3 tags (respectively). && can be redefined and used in the normal way; == can be redefined but can be used only with {<}==: and :=={>}. When these are defined they become nestable (as shown below); both can be un-defined and then return to generating H2 and H3.    Now defining ** to bold size 8px magenta; dss[*|font-weight: bold; font-size: 8px; color: #F0F] defining $$ to italic black; dss[$|font-style: italic; color: #000] defining ## to boxed green; dss[#|border: solid; border-width: 1px; border-color: #000; color: #0F0] defining && to smaller red; dss[&|font-size: smaller; color: #F00] defining %% to superscript blink; dss[%|vertical-align: super; text-decoration: blink]blink defining @@ to overline blue; dss[@|text-decoration: overline; color: #00F] defining __ to small-caps; dss[_|font-variant: small-caps] defining == to strikethrough; dss[=|text-decoration: line-through;] defining -- to cursor:help; dss[-|cursor:help] and defining || to wider spacing. dss[||letter-spacing: 0.3em]    *Star ** attr. $Dlr$ #Shp# &Amp& %Pct% @At@ _Scr_ |Pip|* ` $Dollar $$ attr. *Str* #Shp# &Amp& %Pct% @At@ _Scr_ |Pip|$ ` #Sharp ## attr. *Str* $Dlr$ &Amp& %Pct% @At@ _Scr_ |Pip|# ` &Amper && attr. *Str* $Dlr$ #Shp# %Pct% @At@ _Scr_ |Pip|& ` %Percnt %% attr. *Str* $Dlr$ #Shp# &Amp& @At@ _Scr_ |Pip|% ` @At @@ attr. *Str* $Dlr$ #Shp# &Amp& %Pct% _Scr_ |Pip|@ ` _Score __ attr. *Str* $Dlr$ #Shp# &Amp& %Pct% @At@ |Pip|_ `<=:Equal == attr. *Str* $Dlr$ #Shp# &Amp& %Pct% @At@ |Pip|:=> `<-:Hyphen - attr. *Str* $Dlr$ #Shp# &Amp& %Pct% @At@ |Pip|:> ` |Pipe || attr. *Str* $Dlr$ #Shp# &Amp& %Pct% @At@ _Scr_ |    Nesting order sometimes matters: #%this%# uses %% inside ##, but %#this#% uses ## inside %%. In one the box is superscripted along with the enclosed text.    For another example, @&this&@ uses && inside @@ and &@this@& uses @@ inside &&; the colors differ (with the "inner" color taking priority).    Now un-defining all of the above. dss[*|] dss[$|] dss[#|] dss[&|] dss[%|] dss[@|] dss[_|] dss[=|] dss[-|] dss[||]    ----    fonts:: &Web Fonts&    Defining |%%| to ChipsFontMedium 11px. dss[%|font-family: 'ChipsFontMedium'; font-size: 11px]    %ChipsFont, special chars: ∑®†¥¡™£¢⁄€‹›%    Restoring |%%| to default. dss[%|]    ----    scripts:: &Non-Roman Script Tables&    ASCII encodings of a few non-Latin alphabets are available in RHTF. These are selected with the |dssc[]| operator, assigning the character && or %% to delineate when a given block of ASCII chracters are to be converted into a particular script. I added these specific alphabets because I needed them for specific purposes on certain webpages. There is also an arbitrary Unicode syntax (examples below).    However, RHTF source can also include wl[UTF-8]-coded character sequences, which typically are handled properly by whatever plain text editor you might want to use. If you create the RHTF source file as a TXT file with its encoding set to UTF-8 (or if your editor is set to treat all text files as being in UTF-8 encoding), then you can get any character you want without using RHTF symbols at all.    dssc[&|hebrew] Hebrew:    The RHTF Hebrew alphabet is incomplete and has no vowel marks; it is just for use in special situations e.g. when a Hebrew letter is used as a mathematical symbol. RHTF Hebrew is always left-to-right, to get the normal right-to-left ordering use inline UTF-8.    .--------------------------------------------------------------------------. &'& ' alef |&b& b bet |&g& g gimel|&d& d dalet|&h& h he | &v& v vav - &z& z zayin|&H& H xet |&t& t tet |&y& y yod |&kK& kK kaf| &l& l lamed - &mM& mM mem|&nN& nN nun|&s& s samex|&a& a ayin |&pP& pP pe | &+#& +## tsadi - &q& q qof |&r& r reysh|&S& S shin |&T& T tav '--------------------------------------------------------------------------'    Examples: ` RHTF: &tb'S& tb'S (*shabbat*: t b a sh) (letters arranged left-to-right) ` inline UTF-8: שיבט (letters arranged right-to-left)    dssc[&|greek] Greek:    The extra Greek letters in the bottom row are used in numerals: &6& = 6, &q& = 90, &9& = 900, "&,&" is a numeral marker.    .-----------------------------------------------------------. &a A& aA alpha | &b B& bB beta | &g G& gG gamma | &d D& dD delta | &e E& eE epsilon | &z Z& zZ zeta ----------------------------------------------------------- &h H& hH eta | &j J& jJ theta | &i I& iI iota | &k K& kK kappa | &l L& lL lambda | &m M& mM mu ----------------------------------------------------------- &n N& nN nu | &x X& xX xi | &o O& oO omicron | &p P& pP pi | &r R& rR rho | &s S& sS sigma ----------------------------------------------------------- &t T& tT tau | &u U& uU upsilon | &f F& fF phi | &c C& cC chi | &y Y& yY psi | &w W& wW omega ----------------------------------------------------------- &6 +& 6+ stigma | &q Q& qQ koppa | &9& ``` 9 san | &,& ```*numeral* | &8& 8 vartheta '-----------------------------------------------------------'    Example: &icjus& icjus (*ichthys*)    gr[~-|-&#45;] dssc[&|katakana] Katakana:    .------------------------------------------------------------------. &A-& A- | &Ka& Ka | &Ga& Ga | &Sa& Sa | &Za& Za | &Ta& Ta | &Da& Da | &Na& Na | &Ha& Ha | &Ba& Ba | &Pa& Pa | &Ma& Ma | &Ra& Ra | &La& La | &Wa& Wa | &Va& Va | &Ya& Ya | &ya& ya | &wa& wa - &I-& I- | &Ki& Ki | &Gi& Gi | &Si& Si | &Ji& Ji | &Ti& Ti | &Di& Di | &Ni& Ni | &Hi& Hi | &Bi& Bi | &Pi& Pi | &Mi& Mi | &Ri& Ri | &Li& Li | &Wi& Wi | &Vi& Vi | - &U-& U- | &Ku& Ku | &Gu& Gu | &Su& Su | &Zu& Zu | &Tu& Tu | &Du& Du | &Nu& Nu | &Fu& Fu | &Bu& Bu | &Pu& Pu | &Mu& Mu | &Ru& Ru | &Lu& Lu | | &Vu& Vu | &Yu& Yu | &yu& yu | &N-& N- - &E-& E- | &Ke& Ke | &Ge& Ge | &Se& Se | &Ze& Ze | &Te& Te | &De& De | &Ne& Ne | &He& He | &Be& Be | &Pe& Pe | &Me& Me | &Re& Re | &Le& Le | &We& We | &Ve& Ve | | | &..& .. - &O-& O- | &Ko& Ko | &Go& Go | &So& So | &Zo& Zo | &To& To | &Do& Do | &No& No | &Ho& Ho | &Bo& Bo | &Po& Po | &Mo& Mo | &Ro& Ro | &Lo& Lo | &Wo& Wo | &Vo& Vo | &Yo& Yo | &yo& yo | &--& ~- '------------------------------------------------------------------'    Example: &Yo--GuRuTo& Yo--GuRuTo (*yoh-guruto*)    dssc[&|hiragana] Hiragana:    .------------------------------------------------------------------. &A-& A- | &Ka& Ka | &Ga& Ga | &Sa& Sa | &Za& Za | &Ta& Ta | &Da& Da | &Na& Na | &Ha& Ha | &Ba& Ba | &Pa& Pa | &Ma& Ma | &Ra& Ra | &La& La | &Wa& Wa | &Va& Va | &Ya& Ya | &ya& ya | &wa& wa - &I-& I- | &Ki& Ki | &Gi& Gi | &Si& Si | &Ji& Ji | &Ti& Ti | &Di& Di | &Ni& Ni | &Hi& Hi | &Bi& Bi | &Pi& Pi | &Mi& Mi | &Ri& Ri | &Li& Li | &Wi& Wi | &Vi& Vi | - &U-& U- | &Ku& Ku | &Gu& Gu | &Su& Su | &Zu& Zu | &Tu& Tu | &Du& Du | &Nu& Nu | &Fu& Fu | &Bu& Bu | &Pu& Pu | &Mu& Mu | &Ru& Ru | &Lu& Lu | | &Vu& Vu | &Yu& Yu | &yu& yu | &N-& N- - &E-& E- | &Ke& Ke | &Ge& Ge | &Se& Se | &Ze& Ze | &Te& Te | &De& De | &Ne& Ne | &He& He | &Be& Be | &Pe& Pe | &Me& Me | &Re& Re | &Le& Le | &We& We | &Ve& Ve | | | &..& .. - &O-& O- | &Ko& Ko | &Go& Go | &So& So | &Zo& Zo | &To& To | &Do& Do | &No& No | &Ho& Ho | &Bo& Bo | &Po& Po | &Mo& Mo | &Ro& Ro | &Lo& Lo | &Wo& Wo | &Vo& Vo | &Yo& Yo | &yo& yo | &--& ~- '------------------------------------------------------------------'    Example: &NiHoN-Go& NiHoN-Go (*nihongo*)    Aribtrary Unicode:    &U65E5; &&U65E5; ``` &U584A; &&U584A; ``` &U767E; &&U767E; ``` &U5343; &&U5343; ``` &U4E07; &&U4E07; ``` &U5104; &&U5104;    Mixed hiragana and Unicode: &HiRaGaNa No& &U65E5; &NiTi..& `Without spaces: &NaNa------NaNaNaNaNa--Na--Na--Na&U584A;&U9B42;..&    dss[&|]    defining $$ to italic black; dss[$|font-style: italic; color: black]    ----    I use wl[Emacs] in a shell terminal window (with ANSI terminal emulation) for all my web authoring needs, and therefore I wrote an RHTF major mode in Emacs LISP. I used the following bits of RHTF to debug to my |rhtf-font-lock-keywords| definitions.    OEIS link: OEIS[A005646] Footnotefn[1] refsfn[2] and defs: fnd[1|http://two.com] (footnote 1 description) fnd[2] (footnote 2 description) Replace op: gr[foo374|bar374] Literals: &U56E5; ** ## %%    dss[%|font-family: Courier, monospace; white-space: pre] <%: color-doc (green) color-string (green) color-keyword (bold cyan) color-builtin (thin blue) color-function (bold blue) color-variable (yellow) color-type (green) color-constant (magenta) color-preprocessor color-negation color-warning (red) color-comment (red) color-com-del :>    A multiline match works if the target is completely within a 512-byte block.       ----    Literal <q>HTML</q> can be used if <s>desired</s><tt>needed</tt>.    (Here, I used the tags {<}q{>}, {<}s{>}, and {<}tt{>}, which have no RHTF equivalent.)    In this block we use {<}no-footer{>} and {<}iframe ... {>} to enclose an old version of the mrob.com footer in an {<}iframe{>} element. This is not (yet) how the actual footers on most of my pages are being done. An advantage of this would be that I could change the footer content without the need to re-upload every page on the website. The disadvantages are that older browsers do not support {<}iframe{>}, and if you increase the font size a whole lot or make the window really narrow, the iframe gets its own scroll bar (try it!).       <iframe src="/old-footer.html" width="100%" height="50" frameborder="0"> </iframe>    #Audio#    There is no RHTF syntax for audio, but literal HTML can be used. See [this``page|+zeta-play] for an example.       ----    source:: &RHTF Source for This File&    Note in particular that there are no special characters to delineate indented paragraphs, block quotes or other types of whitespace, except centering (I decided to require the (-paren-dash markers-) to distinguish it from an ordinary indented line). The RHTF processor figures out what types of whitespace are present in the wl[ASCII] source and generates appropriate HTML markup tags to make it match.    This source file's name is |test.rhtf|; look at the very bottom of the following ASCII text and you'll see how easy it is for this file to include itself.    dss[$|font-size: 12px] *-- begin RHTF source --*    <$: <pre> include[pre:test.rhtf] </pre> :>    *-- end RHTF source --*    ----    #Image Tests#    mrob27``pb[+fcbk-16.png] `````` #@@mrob__27#``pb[+twtr-16.png]   

-- end RHTF source --


Image Tests

mrob27      @mrob_27