# User:TJFrazier

## Moving Day

Latest information: Moving Day

HURRAH!!    We've moved! We're here!

See Moving Day for the latest news.
_______________________________________

### Trouble examples (all now working)

Math trouble fixed by imacat (Thanks!)

$\sum_{k=2}^N k^3$ 

magic FULLPAGENAME User:TJFrazier

more magic localurl /w/index.php?title=User:TJFrazier&action=edit

possible fix \$wgServer https://wiki.openoffice.org

I'm writing these messages, doing anything necessary inside the wiki, and working closely with those doing the external work (dumping, loading, re-addressing). The best place for questions is on the Talk page of Moving Day so everybody can see it, but feel free to contact me at the ooo-dev -at- incubator dev -at- openoffice.apache.org ML, or directly (if the wiki is up).

## T. J. Frazier (TJFrazier (Talk | contribs), a.k.a. TJ, at AOO)

• Residence: Melbourne, Florida, USA.
• Background: Retired systems programmer (40 years, Control Data, KRONOS o/s). Professional nit-picker :-)
• Goal: become a developer (when I get broadband, Ubuntu, external hard disk, C++ textbook, . . . )
TJ 05:38, 29 January 2009 (UTC) Broadband scheduled Feb 2! Ubuntu to follow . . .
TJ 20:09, 18 February 2009 (UTC) Broadband is wonderful. Now examining Basic run-time source, for documentation purposes.
TJ 02:09, 31 July 2009 (UTC) Halfway thru big thick C++ book.
• Current OO.o activities: proof-reading and light copy-editing, mostly on Basic Guide and DevGuide Basic-related pages. I also file a lot of minor issues (if it's there, it's supposed to work, right?)
• Promoted to sysop, doing my homework re new accounts and wiki databases. 02:09, 31 July 2009 (UTC)
• Promoted to bureaucrat in preparation for the move to Apache. 11:42, 22 October 2011 (UTC)
• Apache committer and PPMC member (tj -at-), 31 October 2011.
• Resigned from PPMC membership, effective with TLP graduation, Fall, 2012.
• Lists: dev, dev-web, dev-doc, ODFAuthors; dev, issues at openoffice.apache.

## New accounts

At least temporarily, new accounts can only be created by sysops. The instructions for sysops are at MediaWiki.

User instructions are at New accounts.

## Macros for use in Writer

### Basic code for wikification

Basic code (now available as an extension) which may be useful for processing MediaWiki Export Filter output can be found on this subpage: User:TJFrazier/WikiBasic. Please report any problems or suggestions to me, on any of the above lists, or on a Talk page, or directly.

See also Nino Novak's very useful workflow guide for putting a manual on the wiki.

### Reveal Codes

Preliminary design specs for an extension to provide this WordPerfect-like feature are on User:TJFrazier/Reveal Codes. Feedback welcome.

### Toggle Case between Upper and Lower

04:05, 1 January 2012 (UTC) I've long had a macro to do this, but it had a problem when the target character was the first character of a portion (e.g., an italicized word). Now that I've fixed it, the source is available at User:TJFrazier/ToggleCaseUL. The particular virtue of this macro is that you don't have to select the character: just click in front of it. This is the raw version, with debugging notes commented out, but left in. It runs.

Notice that the same problem exists in the Writer GUI interface. Try changing the first character(s) of a portion (formatted word, e.g.) by hand, without losing the formatting. Changing from Insert to Overtype mode works, but most of the other solutions don't. The way I did it through the API also works with the GUI (inserting the new character as the second character of the portion, then deleting the first character).

### Encryption Changing in 3.4

22:43, 19 April 2012 (UTC) The code to provide SHA256 / AES encryption was added to OO.o 3.4 Beta without a GUI. As an alternative to changing the registrymodifications.xcu file by hand, a Basic macro to toggle these settings is now available at User:TJFrazier/Encryption.

### Checking Curly Quotes

20:35, 9 February 2013 (UTC) A macro to check for proper double curly quotes usage is available at User:TJFrazier/Quotes.

## Split and Join

The split and join functions are a specialized and convenient way to deal with delimited strings: strings that contain multiple data items, each delimited by a separator character. Common examples are "comma-separated value" (CSV) strings used with spreadsheets, as well as URLs and path-names, which are delimited by slashes. The two functions are complementary: split breaks apart a string into an array; join builds a string from an array.

### Syntax

Both split and join take the same type of operands.

string array = split (delimited string, delimiter character expression, number)
delimited string = join (string array, delimiter character expression)


The string array is usually defined as a variant without explicit dimensions (see the example below). Split will give the array proper dimensions.

The delimiter character expression is usually one literal character, but may be several characters.

### Example

Option Explicit

Sub SplitAndJoin
Dim aAry() as Variant
Dim aFile() as Variant
Dim last as Integer			'last subscript, aAry
dim lf as Integer                       'last subscript, aFile
Dim sOut as String
Dim sURL as String

sURL = ThisComponent.URL
Msgbox sURL,,"URL"

aAry() = split(sURL, "/")
REM A lazy way to show string array contents, one line per element.
Msgbox join(aAry(), chr(13)),,"aAry"

REM Change file extension to "zip".
last = Ubound(aAry())
aFile = split(aAry(last), ".")
lf = Ubound(aFile())
aFile(lf) = "zip"
Msgbox join(aFile(), chr(13)),,"aFile"
aAry(last) = join(aFile(), ".")
sOut = join(aAry(), "/")	'rebuild string
Msgbox sOut,,"New URL"

End Sub 'SplitAndJoin