Skip to content

Instantly share code, notes, and snippets.

@frkorz
Last active February 16, 2025 19:00
XTomScript.user.js documentation
--- SECTION INDEX:
* INTRO MOA:
* GENERATING REFERENCES: HTML BUTTON AND "Posted by" line:
* TAB KEY, PGUP+PGDN, UPAR+DNAR, END, HOME:
* DELETED POSTS ANNOTATIONS:
* INDEX BUILDING:
* PERMALINK FORMAT:
* NAV BOX: PASTE + ENTKEY+F+L:
* NAV BOX NAVIGATION:
* DISABLED SAME PAGE NAVIGATION:
* WHITE/BLACK/COLOR/CONTENT LISTS:
* COMMANDS http a d c1 c2 cu s p n b e sd lc:
* COMMANDS u v cnt:
* POST REPLY BOX COMMANDS:
* FULL PAGE WIDTH OPTION:
* SCRIPT COLOR OPTIONS:
* POST BOOKMARKS:
* ALL POSTS OPTION:
* NAVIGATION BOX TYPED COMMANDS:
* NAVIGATION BOX PASTE COMMANDS:
* NAV BOX PASTED AND TYPED COMMANDS MENU:
* NAV BOX SPECIAL KEYS:
* NAV BOX CONTROL KEY MENU:
* "Post a comment" SPECIAL KEYS:
* "Post a comment" MENU:
* NAVIGATION BOX DEBUG COMMANDS:
* KNOWN QUIRKS:
* NOTE bluetooth keypad:
* NOTE kiwi browser on android with bluetooth mac keyboard:
* INTRO MOA:
the home page for moon of alabama has all the thread titles converted to
links. click on the thread title to go to the start of the thread post page.
a navigation box has been added to the left of the thread date and the left
of the thread titles. use the Tab key (also the End key) to move forward to
the next navigation box. use the shift-Tab key (also the Home key) to move
backward to the prior navigation box. each navigation box will be displayed
at the top of the browser window. the last navigation box is highlighted
with a red background. a Tab key (or the Home key) on the last navigation
box will click on the next page link to advance to the next page of threads.
press the Enter key while a navigation box for a thread title is selected
will load the first page of posts for that thread in the current tab.
if you prefer to have thread pages opened in a new tab then set the
configuration variable "threadNewTab" to true which is located in the
configuration area of the tampermonkey script.
if you lose focus on a navigation box, just type control-y. it will return
you to the last selected navigation box.
on the main page, control-(azsx) also work as left handed page/scroll keys
(PageUp, PageDown, ArowUp, ArrowDown respectivly). these keys only work if
the navigation box command lc Enter has been used to toggled the option to true.
* GENERATING REFERENCES: HTML BUTTON AND "Posted by" line:
we have a "Posted by:" line at the beginning of the post and
at the end of the post.
the background color of the "Posted by:" line for your posts can be
changed by setting the "matchUsr" and "colorUsr" configuration
options in the tampermonkey script. this can be used in conjunction
with the "cu" command described later. this will also match your user name
in the text of the post. so "Posted by:" lines will indicate your posts
and replys to your posts. this is also true for deleted posts.
at the end of each "Posted by:" line is a text entry navigation box
and a button labeled html and the post timestamp in local time as
month day and 12 hour time. click on the html button to load the paste
buffer with text and html that when pasted will give a "Posted by:"
line with a link to the current post (this does not include any link
that was attached to the user name). this can be pasted into a moon of
alabama post box at the end of the page to generate a linkable reference
to the current post. thus with just a couple of clicks you can provide
readers with single click access to the post you are replying to.
this link can be to any post on any thread at moon of alabama.
the resulting display of the line will show the post number at the time
the link was created. deletes by b can change the post number. however
the html link uses the moa post id to identify the post which does not change.
so you can be directed to a post with a different post number but the user
and timestamp will match.
a link to a deleted post should generate a 404 message because no post exists
with the id in the link (even though there may be a post with the post number).
* TAB KEY, PGUP+PGDN, UPAR+DNAR, END, HOME:
reading forwards and backwards thru posts is assisted by use of keyboard keys
pressed while a navigation box is selected for input. simply click on the
navigation box if it is not already highlighted. when you are on the upper
navigation box press the Tab key to move forward in the page to the lower
navigation box. press shift Tab to move backward in the page to move from
the bottom to the top navigation box. the behavior is altered when you cross
a post boundry. when you use Tab to go from the bottom navigation box to the top
navigation box of the next post, the next post is scrolled to the top of the window
and the lower navigation box of the next post is selected.
(NOTE: the post will not be scrolled to the top of the window if the end of
the page is at the end of the window. this can happen on the last page of the
thread with a short post and comments are closed.)
repeated use of the Tab key will result in moving forward
thru the posts with each post displayed at the top of the screen.
shift Tab will move the selection to the top navigation box and
subsequent presses of shift Tab wiil cross the post boundry and display the
prior post at the top of the screen with the top navigation box selected.
this allows you to go forwards and backwards thru the posts always displaying
each post at the top of the screen. when focus is on the upper navigation box
of the first post on the page and you press shift Tab the view scrolls to the start
of the page but focus remains on the same navigation box. a Tab key will redisplay
the first post. when focus is on the lower navigation box of the last post on the page
and you press Tab there are two possible results.
1) if there is a 'next page' link then it is clicked moving to the upper navigation
box of the first post on the next page.
2) the current page is refreshed getting any new posts but focus remains on the
same navigation box (see BUG below). press Tab again to move to the first new post.
BUG: if you press Tab key twice and the second Tab key is after the browser has disabled
the current page and before javascript gets control on loading after refresh, then the
browser will tab outside of the document to the address bar of the browser. the javascript
code can not get focus back to the navigation box. the browser wont let it. so you will
have to click on the navigation box to restore the input focus. so dont press Tab more
then once on a post where the navigation boxes have a red background. wait till the
refresh has finished.
FIX: since this situation is detectable a popup is displayed informing you of the lost
focus. surprisingly when you dismiss the popup by either clicking on OK or pressing
Enter, the focus then gets restored to the navigation box. Wow the logic of computers.
if you use the End key instead of the Tab key then focus is never lost, however you
may wind up at the end of the page (but still with the nav box selected).
note that the navigation boxes for the last post on a page always have a red
background color. this way you always know when you are on the last post.
if you tab off the last post and the navigation box is still red then you know
no new posts have been added.
the page up and page down keys in addition to the up and down arrow keys will allow you to
scroll thru longer posts. they wont change which navigation box is selected. these four
keys allow your right hand to control navigation. but unfortunately the Tab key is on the other
side of the keyboard. so to fix that annoyance the "End" key when pressed and
a navigation box is selected will function as an alternate Tab key which also
may be used with the shift key. another optimization is the "Home" key functions
as a shift Tab key. this works well with a bluetooth keypad. all the navigation
keys are available for either the left or right hand use. if no navigation box
is selected the End key and Home key revert to their normal behavior of moving
the display to the end or the start of the page.
as support for lefties (like me), the control-z and control-a keys function as
alternate PageDown and PageUp keys respectivly, while control-x and control-s keys
function as ArrowDown and Arrowup keys respectivly. be carefull not to press control-w
as this will close the tab. it should not take long for you to learn this. the azsx control
keys only work if the command "lc Enter" has been used to toggle the option to true.
a side effect of Tab/shift-Tab or End/Home is that as you move all around the page
with the mouse wheel or the page motion keys or the scroll bar,
the current navigation box stays selected.
so if the upper navigation box is selected and you press the Tab or End key then
the post gets displayed at the top of the window restoring your position
with the lower navigation box being selected.
similarly if the lower navigation box is selected and you press shift Tab or Home key,
the post gets displayed at the top of the window restoring your position
with the upper navigation box being selected.
if you press the backspace key while a navigation box is selected the browser
will scroll the page until that "Posted by:" line is in view.
page refresh in the browser will position the page at the last post with
a selected navigation box.
if you lose focus on a navigation box, say by selecting some text in a post.
if you press the tab key you end up at the start of the page and are lost.
you can press control-y or just refresh the page (F5) and it will redisplay at the\
post with the last selected navigation box.
* DELETED POSTS ANNOTATIONS:
when the text of a post is deleted but you enable display of the "Posted by:" lines
one of the following lines is displayed instead of the text of the post.
also when you use the letter d command to only see deleted posts or the letter a
command to see all posts, one of the following lines will show up as the first line
of the content letting you know why deleted posts would have been deleted. there
will be no blank line between the "posted by" line and the delete reason line.
where <len> is the length of the deleted post.
USER DELETE <len>
the text was deleted because the username was in the delete list.
USER UNICODE DELETE <len>
the text was deleted because the username contained the unicode characters for o e a.
UNICODE DELETE <len>
the text was deleted because the text contained the unicode characters for o e a.
CONTENT DELETE <contentValue> <len>
the text was deleted because the <contentValue> was found in the post.
wherer <contentValue> is one of the following:
"case sensistive text you dont want to see"
lc"case insensitive text you dont want to see"
re"regular expression you dont want to see"
INVALID HTML CONTENT
bad user names (like starting with the "<" character) will generate invalid html
and the code cannot handle all the possible invalid constructions so the post is
deleted.
* INDEX BUILDING:
each time you switch to a new page an index of the visible "Posted by:" lines is built
in browser memory and saved in browser global memory. indexes in global
memory are available to all browser moa tabs. you can force rebuilding of the
saved indexes by using the previous page link to keep going back to page 1
and then use the forward page link (or browser back button) to get back to your
current page. this index contains the thread name and the post numbers and time
stamps for all visible "Posted by:" lines. so a separate index is maintained for
each different thread.
* PERMALINK FORMAT:
the normal moa interface has a post number hyperlink on the "Posted by:" line
via the highlighted post number. right click and select "open in new tab" to
duplicate the current page and position the view at the current post in the new tab.
left click on this hyperlink will make a new copy of the current page and position
with the old page in the browser history. this is acessible via the browser
back button.
there are two formats of links. a relative link and a permalink. the relative
link has a 34 character post id as an argument in the url. the server figures
out which display page the post is on and displays that page positioned at
the correct post. a permalink on the other hand has the page number in the url
along with the 34 character id and so it goes directly to the specified page
and finds the post matching the id. the moa interface uses the relative links.
there is a problem. for posts over a few days old the server computes the
incorrect page and so it cannot find the post and leaves you at the beginning
of the page. the tampermonkey script fixes this. as each page is loaded it
rewrites the "Posted by:" links to use the permalink format which appears to
work all the time.
* NAV BOX: PASTE + ENTKEY+F+L:
when the mouse moves into a navigation box that contains text then a tooltip
is displayed with the full text. you may have to leave and reenter for this.
there are two ways to enter data into the navigation box and three possible
actions that will be taken. you can paste text into the navigation box or you
can type in text and press enter. there are default actions defined in the
tampermonkey script which you can change if you want. the first action is
to open a new page in a new tab. you close the tab to come back.
the second action is to open a new page in the current tab. you use the
browser back button to return. the third action applies if the taqrget post
is in the current page. this action is disabled by default in the script
because it can confuse new users too much but it is discribed here anyways.
the screen will be scrolled to make it visible. the upper navigation box
of the source post will be set to the post number of the destination post.
while the bottom navigation box will be set to the post number of the source
post. this allows you to switch between them by clicking on a navigation
box and pressing enter. repeat actions in the same page will result in
a chain of posts that can be navigated forward and backward.
this is an optimization to reduce the number of new pages that get loaded
in following a tree of replies and is much faster.
* NAV BOX NAVIGATION:
a paste of a post number to a navigation box will open the new page in the current tab.
click the browser back button to return.
a timestamp is more accurate to search for than a post number because
posts can be deleted changing post numbers. on the other hand there may
be more than one post with the same timestamp.
if we select any rightmost subset of the time stamp
excluding the utc and the month but containing the : character.
we can paste this into a navigation box, either upper or lower.
if there are multiple posts with the same timestamp, the
the lowest post number in the group will be the one displayed.
the browser back button will take us back to where we came from.
the second use of the navigation box is to type in a post number or
a subset of a timestamp as specified before and press enter.
this will open a new tab positioned at the requested post.
you can type in the letter f or l and press Enter which will scroll to the
first or last post respectively. you are still on the current page.
to return to the post you came from just press enter on either of the two
navigation boxes for the first/last post with an empty navigation box.
* DISABLED SAME PAGE NAVIGATION:
the third use of the navigation box if it is enabled (which by default it is not)
is if the destinatioin post in within the same page.
this use is seperatly enabled to override the first two uses and only activates
when the destination post in within the same page.
this scrolls within the page, forward or backward, to the matching post.
nothing is entered in the browser history. so you should not use the back button.
what you may notice is that both navigation boxes for post 20 have been
proloaded with the number for post 48. where we cam from.
click in one of the navigation boxes and press enter to scroll to post 48.
you will notice that both naviccation boxes contain the number for post 20.
you can keep clicking and press Enter to ping pong between the two posts.
again this use of the navigation box is disabled by default. it is too
easy to get confused and use the back button or close the tab by mistake.
* WHITE/BLACK/COLOR/CONTENT LISTS:
in the tampermonkey script is is possible to specify three lists of user ids.
the script comes with sets of users as my defaults. adjust to suit your taste.
i personaly blacklist trolls, people who annoy me and low or negative information
users. just my opinion.
there is a forth list to specify content that when matched causes the post to be
deleted. there are some entries included by default to match topics or users
that i am not interested in seeing. for usernames this will remove posts by the
user and replys to the user.
the first list is to whitelist or blacklist users. a configuratioin option
chooses between the two. when you are blacklisting users you have the option
of deleting the complete post or just deleting the post content,
relacing the text of the post by the text "USER DELETE".
if you are whitelisting then only those users specified will be displayed
and all other posts deleted.
the other two lists allow you to specify users that you want their text to be
in a specified color for each list. this can be used to highlight users that
you enjoy seeing and highlight others that you probably dont want to see.
in the tampermonkey script there is a comment entry at the end of
each list. you can use this to add new entries. click on the line and type
control-shift-D which will duplicate the line. paste the user name between
the two spaces or paste the content between the ''.
remove any "//" at the start of the line.
* COMMANDS http a d c1 c2 cu s p n b e sd lc:
yes, the navigation boxes are small and it is hard to tell what you have
typed into them. this is why when you hover the mouse over a navigation box
a tooltip attempts to show the text in the box. the tooltip is triggered on
entry to the box. so if you do not see it, then leave and re-enter.
you can type the command #<number>Enter into any navigation box to change
the size of all navigation boxes. the <number> can be between 1 and 80.
you can set the navSize variable in the tampermonkey script options to
override the default size of the navigation boxes.
there are seven commands that when typed into a navigatioin box
selectivly display posts in a new tab. this does not result in any
index rebuild for the new page being saved in the browser global memory.
type the characters a or d or c1 or c2 or cu or s and press Enter.
the seventh command is to paste a URL that starts with "http" into
a navigation box to search for all posts that contain a link to the URL.
also for "http" searches the loadAllPosts option is forced for the new tab.
the Tab forward key on the last displayed post (red nav box background)
on any of these new tabs will not refresh the page.
for the letter a, a new tab is opened that displays a temporary version
of the current web page but it contains all the posts,
including all deleted posts (with the deletion reason line after the top "posted
by" line and no blank line separator..
if you reload this new page in any way it reverts to the normal display behavior
that is configured in.
for the letter d, a new tab is opened that displays a temporary version
of the current web page but it contains only the deleted posts with
all their text content displayed. one of the lines from "* DELETED POSTS
ANNOTATIONS:" will show up as the first line of the content letting you know
why the post was deleted. no blank line between the top "posted by" line and
the deletion reason line.
if you reload this new page in any way it reverts to the normal display behavior
that is configured in.
for the letters c1, a new tab is opened that displays a temporary version
of the current web page but it contains only the color 1 posts.
if you reload this new page in any way it reverts to the normal display behavior
that is configured in.
for the letters c2, a new tab is opened that displays a temporary version
of the current web page but it contains only the color 2 posts.
if you reload this new page in any way it reverts to the normal display behavior
that is configured in.
for the letters cu, a new tab is opened that displays a temporary version
of the current web page but it contains only the posts that match the "matchUsr"
option text. this matches against the user name text in the "Posted by:" line or
matches anywhere in the text of the post. so it matches your posts and replies to
your posts. this does not work if your user name is not unique.
if you reload this new page in any way it reverts to the normal
display behavior that is configured in.
for the letter s, a new tab is opened that displays a temporary version
of the current web page but it contains only the posts that match the string
that is entered after the letter s. you can also just type an s and then paste
a string into the navigation box. the pasted string is placed after the s.
either way if the string after the s starts and ends with a / character
then it is a regular expression search. you can add regular expression flags
(gimsuv) after a & character after the /. so for example to search for the
string "It" at the start of a line ues "s/^It/&gm" (without the "").
if you reload this new page in any way it reverts to the normal
display behavior that is configured in.
you can always use a or d or c1 or c2 or cu or s on the new page to make another
copy of the of the newly created page with the appropriate behavior.
now this copy can involve manuvers that would reload the copy page.
then you close the reload copy page and you will still have your
original a or d or c1 or c2 or cu or s page.
typing p and Enter into a navigation box is exactly the same as a mouse click
on the previous-page link.
typing n and Enter into a navigation box is exactly the same as a mouse click
on the next-page link.
typing b and Enter into a navigation box will position the display to the start
of the document. the current navigation box stays selected.
typing e and Enter into a navigation box will position the display to the end
of the document. the current navigation box stays selected.
typing sd and Enter into a navigation box will toggle the global state of the
option to skip deleted posts on pressing the Tab key.
typing lc and Enter into a navigation box will toggle the global state of the
option to allow left hand use of control-(azsx) for PageUp, PageDown, ArrowUp,
ArrowDown keys respectivly.
* COMMANDS u v cnt:
typing u and enter into a navigation box sets a browser global flag so that
only posts for the current posts user are displayed. this will affect not only
the current page but all future moa post pages that are loaded in any moa tabs.
also index building is suppressed for these newly loaded pages. this does not
affect pages alreadly loaded in other tabs unless thay are refreshed.
to remove this setting just type v and enter into a navigation box.
note that neither the u or v command will refresh the current page but will
change the display of the current page.
sometimes the content of a post contains a user name and you want to see all
all their posts. type the u command with the user name and press enter.
IMPORTANT: a u command should always end with a v command when you are done
or it will keep trying to only display that user and give warning popups if
there are none on the page.
you can work backwards page by page by typing in the p command and enter.
the u and username will be selected in the navigation box by the u command.
the p enter will replace the text in the navigation box and the previous
page will try to only display that users posts.
typing "cnt Enter" will display various counts in a popup depending on the mode.
BadHTML bad characters in the user name can cause incorrect html,
these posts are deleted because they cannot be processed.
Posts the number of displayed posts.
Unicode the number of post containing unicode characters.
Deleted the number of posts that were deleted.
Color1 the number of color 1 posts displayed.
Color2 the number of color 2 posts displayed.
Unmatched the number of posts not matched by the search command.
NoUser the number of posts not matched by the cu command.
* POST REPLY BOX COMMANDS:
when you post a reply to the moa server sometimes things dont work.
i alwayms lose the text i was going to send when this happens.
for example when it tells me my page has expired and i have to refresh it.
i get so annoyed that i just forget about posting. so now whenever the post
text area loses focus, the text area text is saved. if you type control-r in
the post text area it will paste the saved text in the post
text area replacing anything there. no more lost text. losing focus when
the text area has no visible text (space, tab, newline are not visible) does not
overwrite any saved text. if you are constructing a reply and you screw it up
you can use this to go back to the last saved version of your work. just empty
the text area (now losing focus will not overwrite any
saved text). then press control-r in the text area which will replace the text
area with the last saved text.
you might think the reply box is too small. typing control-b in the reply box
will double the number of rows with each press. if you prefer the configuration
variable "replyBoxRows" if not null is the initial size of the reply box.
* FULL PAGE WIDTH OPTION:
by default the page of user posts is displayed using the full width of the
browser window. in order to get this to work the moon of alabama logo had
to be deleted. you can go back to the original behavior by setting the option
"fullPageWidth" at the script start to false.
* SCRIPT COLOR OPTIONS:
if you run the browser in dark mode, any colors you select will probably be
modified by the browser.
you can select a color for the post content background. i selected
the color wheat which turns into a brownish color in dark mode.
you can select the background color for the "Posted by:" line to set it off
from the posts. this color also affects the separator bar between posts.
dark mode can affect the two actual colors used because the browser can choose
to replace them with different colors.
there are two user lists in the script that can each have an optional color for
the text assigned to them.
* POST BOOKMARKS:
bookmarks are stored in browser global storage and persist until deleted.
to enable bookmarks and the associated commands you must have the config
variable enablePostMarks set to true in the tampermonkey script.
there are 9 bookmarks to record posts of interest. they are implemented by
the keys control-1 through control-9. to make a bookmark type descriptive
text for the bookmark in one of the navigation boxes of the post of interest.
then type control-n (where n is the bookmark number). this will record a title
and the URL reference to the post. the saved title will have the post number
prepended to the title text to help you identify where the post is at.
to get a menu of the bookmark titles just type control-0 with the current
selected navigation box empty. this will popup
a list with the bookmark number and title for all 9 bookmarks. to get a menu
of all the bookmark URL's type control-0 with the single letter l in the
current navigation box. this will popup a list with the bookmark number and
URL for all 9 bookmarks. if you type control-0 with a single letter d in the
current navigation box then all bookmarks will be deleted. to delete a single
bookmark type control-n (where n is the bookmark number) with a single letter
d in the current selected navigation box. to goto a bookmark just type control-n
(where n is the bookmark number) with the current selected navigation box
empty. this will either display the bookmark post at the top of the window or
if the post no longer exists you will be at the start of the page where it was
supposed to be. in either case use the browser back button to return to your
last selected post. type control-0 with the single letter c in the current
navigation box to load the paste buffer with all the bookmark titles and links
in a format to reload. to reload the bookmarks paste the data in the correct
format with the single letter p in a nav box. the format is the same as that
generated by the control-0 keypress with the single letter c in the selected
navigation box.
* ALL POSTS OPTION:
The option "loadAllPosts" when set to true enables loading all posts that
are available for a thread on entering/reloading page 1 of a thread.
This can take a little longer than normal when you start loading several
hundred posts. When you paste post numbers or timestamps to a navigation box
it is much faster because everything is in memory and nothing needs to be
fetched from the server. Tabbing off the last post takes a little longer
because it has to refetch all the posts, including any new posts. When
you are on an a commad all posts tab, tabbing off the end is disabled.
No index is saved to browser local memory because the script has the whole
index and it is rebuilt on each load/refresh. the pasted "http" command
force loadAllPosts to true only for the newly created tab.
* NAVIGATION BOX TYPED COMMANDS:
the following commands are only valid if a navigation box is selected.
Enter if no command and at first post, return to post from last 'f' command
Enter if no command and at last post, return to post from last 'l' command
Enter process a command that was entered into the navigation box
Shift-Tab|Home move upward to prior post, display at top of screen
Tab|End move downward to next post, display at top of screen
a open new tab temporarily displaying all posts on page
b goto beginning of page (dont change navigation box selection)
c1 open new tab temporarily displaying all color 1 posts on page
c2 open new tab temporarily displaying all color 2 posts on page
cnt display various post counts depending on mode
cu open new tab temp display all posts content matching "matchUsr"
d open new tab temporarily displaying all deleted posts on page
e goto end of page (dont change navigation box selection)
f goto first post on page (link it to current post, Enter key to return)
l goto last post on page (link it to current post, Enter key to return)
n simulate click on "next page" link if there is one
p simulate click on "previous page" link if there is one
r restore text auto-saved from text area post box at end of page
u global display only posts by current post user, use 'v' to reset
u<value> global display only posts by user <value>, use 'v' to reset
v remove user restriction set by 'u' command
s<arg> open tab and display only posts containg the value <arg>
<arg> can be characters or /regex/gm
#<n> set nav box size to <n> where 1 <= <n> <= 80
* NAVIGATION BOX PASTE COMMANDS:
first item is navigation box contents, second is paste buffer contents.
<EMPTY><number> goto post number, browser back button to return
<EMPTY><numberWith:> goto first post with timestamp, browser back button to return
u<paste> global display only posts by user <paste>, use 'v' to reset
s<paste> open tab and display only posts containg the value <paste>
<paste> can be characters or /regex/gm
p<paste> loads bookmarks from <paste> data
<paste> is from last control-0 with c in nav box
<httpURL> open tab and display only posts containg links to <httpURL>
* NAV BOX PASTED AND TYPED COMMANDS MENU:
a = new tab all posts || d = new tab deleted posts
c1 = new tab color 1 posts || c2 = new tab color 2 posts
cu = your posts/replys || p = prev page || n = next page
b = Home || e = End || f = 1st post || l =last post
s<pasted> || s<typedtext>Enter
new tab search for pasted or typed text
search arg can be scharacters or s/regex/gm
u = global search for cur or spec user || v = clr srch
* NAV BOX SPECIAL KEYS:
the following immediate commands can be typed into any navigation box.
control-[ will load the paste buffer with the text of the current post.
control-] will load the paste buffer with HTML for the current post.
control-\ will load the paste buffer with HTML for the complete current
post including post id anchor, and both posted by lines.
control-y will switch to the post comment box (use control-y to return).
control-z is a PageDown key for the page
control-a is a PageUp key for the page
control-x is an ArrowDown key for the page
control-d is an ArrowUp key for the page
control-/ will popup a control key menu for the nav box.
only scroll wheel will allow seeing menus larger than the box
* NAV BOX CONTROL KEY MENU:
control-y switch to comment post box
control-[ load paste buffer with post text
control-] load paste buffer with post html
control-\ load paste buffer with complete post html
control-a PageUp control-z PageDown
control-s ArrowUp control-x ArrowDown
control-shift-? enter/paste commands menu
control-(1-9) with d in nav box delete bookmark (1-9)
control-(1-9) with text in nav box save bookmark (1-9)
control-0 with empty nav box popup list of 1-9 titles
control-0 with nav box = l popup list of 1-9 URL links
control-0 with nav box = d delete all bookmarks
control-0 with nav box = c copy all bookmarks title and link
control-0 with nav box = p paste bookmarks from copy command
* "Post a comment" SPECIAL KEYS:
when posting a comment there are some keyboard shortcuts.
control-[ will insert the text <BLOCKQUOTE> at the text area current position.
control-] will insert the text </BLOCKQUOTE> at the text area current position.
control-\ will insert <BLOCKQUOTE><NL><NL></BLOCKQUOTE><NL> at curr pos.
each nested BLOCKQUOTE will set the font size to 90% of the outer one.
control-y will switch to the last selected navigation box (use control-y to return).
control-r will replace the text area with the saved text from last lost focus.
control-/ will popup a control key menu for the post comment box.
only scroll wheel will allow seeing menus larger than the box
* "Post a comment" MENU:
control-y switch to last selected navigation box
control-[ insert <BLOCKQUOTE>
control-] insert </BLOCKQUOTE>
control-\ insert <BLOCKQUOTE>\n\n</BLOCKQUOTE>\n
control-b double the rows of the reply text area, can do again, refresh to restore
control-shift-| insert <pre></pre>
control-r restore comment post box saved text
* NAVIGATION BOX DEBUG COMMANDS:
type command and Enter
%dump colsole log all local storage key/value pairs
%hist console log number of history entries and script state
%inx console log post index for each page of the thread
%length popup display number of local storage entries
%reset clear local storage and reload curtrent page (disable console log)
%s display status of global flags user and logging
%size popup display byte size of local storage
%t enable/disable display of console log messages (global browser flag)
* KNOWN QUIRKS:
- the tampermonkey script generates references to other posts using the thread page
number and internal post id in the url. but if posts are deleted the post you want
can be in the prior or next page. so if it cant find it you can always edit the url
and look for /page/nnn/. where nnn is the page number. change it to one less or one
greater and press enter. you should find it matching on one of the two pages. it is
highly unlikely for 100 pages to be inserted or deleted. if not found it is most
likely that the post was deleted.
- sometimes when you paste a post number/timestamp it displays the target post but not
at the top of the window. sometimes it is in the middle. this is a browser quirk.
- a browser refresh will place the last selected post at the top of the browser window
and select the lower navigation box of this post. however, when you enter the first
pqge of a thread by clicking on the thread title or the thread timestamp there is no
last selected post. so a browser refresh will redisplay whererever you currently are
on the page. this is so you can page through the article by b and not lose your place
where you are reading. once you type the tab key you will now forever have a last
selected post on this browser tab and so a browser refresh will always redisplay
to that post. when you enter the first page by clicking on the Comments link then
you enter the page with the first post selected by default.
- if you are on the last post on a page (red background on nav boxes) and you
type Tab (or End) more than once quickly then the browser can lose the selection
of the navigation box. so the nav box will no longer respond to keystrokes.
a temporary fix is to type F5 to refresh the screen and the navigation box
selection will be restored.
* NOTE bluetooth keypad:
the folloiwing has been disabled, the keys repeat.
I have a problem with the bluetooth keypad in that it sometimes repeats keys.
this is annoying when using the Home/End keys causing it to skip posts. so the
code ignores repeating for the Home/End keys. the Tab key still repeats.
* NOTE kiwi browser on android with bluetooth mac keyboard:
arrow up/down do not let you move the page and result in the selected navigation box
moving offscreen. no page up/down keys.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment