Welcome to the Gen Package API Documentation - v1.18.0

You may use the nav bar to the left to select pages.

Below is a listing of all commands and a brief description for each.

AddEpilogue

Add code to the end of a proc.

AddPrologue

Add code to the beginning of a proc.

AddTo

Take variable. Add amount to it.

AppendString2File

Open a file and write a string at the end, then close file.

ArrangeDict

Rearrange dict according to list that gives key order.

BackupIfExists

Make a backup if the file exists.

ChangeCasing

Change the casing from one kind to another.

ChopLeft

Remove characters from the left end of the string.

ChopRight

Remove characters from the right end of the string.

Coe

Concatenate the args but return empty if any is empty.

CommaSeparatedStringToList

Take string, split on commas, trim spaces, return Tcl list.

CopyEverythingInDirectory

Copy all the files in the source directory to destination.

CurrentDayOfTheWeek

Get the current day of the week (e.g. Sunday, Monday, etc.)

CurrentTimeOfDay

Get the current time-of-day.

CurrentTimeOfDayIsAbout

Check if current time is within an interval around target.

CurrentTimeOfDayIsAfter

Check whether the current time-of-day is after the target.

CurrentTimeOfDayIsAtOrAfter

Check whether the current time is at or after the target.

CurrentTimeOfDayIsAtOrBefore

Check whether current time-of-day is at or before target.

CurrentTimeOfDayIsBefore

Check whether current time-of-day is before target.

CurrentTimeOfDayIsBetween

Check if current time-of-day is between the two targets.

DateIsAfter

Check if first date comes after the second date.

DateIsBefore

Check whether the first date comes before the second.

DateIsBetween

Check whether the first date comes between second and third.

DateIsOn

Check if first date and second date are equal.

DateIsOnOrAfter

Check if first date comes on or after the second date.

DateIsOnOrBefore

Check if first date comes on or before the second date.

DateMinus

Find the date that comes some time before the given one.

DateMinusDays

Get the date some number of days before the given one.

DatePlus

Find the date that comes some time after the given one.

DatePlusDays

Add some number of days to a date.

DatetimeIsAfter

Check whether the first datetime is after the second one.

DatetimeIsAt

Check whether the first datetime happens at the second.

DatetimeIsAtOrAfter

Check whether first datetime happens at or after second.

DatetimeIsAtOrBefore

Check whether first datetime happens at or before second.

DatetimeIsBefore

Check whether the first datetime is before the second.

DatetimeIsBetween

Check whether the given datetime is between others.

DatetimeMinus

Find the datetime that comes some time before the given one.

DatetimePlus

Find the datetime that comes some time after the given one.

DatetimeQuantity2Seconds

Convert a datetime quantity into a total number of seconds.

DbaseRegsub

Do find/replace on a column of a SQL table.

Decr

Make variable be one less.

DecrDbGlobal

Find entry in the globals table and decrement it.

DeleteEverythingInDirectory

Deletes contents of directory, all files and subdirectories.

Dict2RegistryTree

Write to registry from dict.

DiffHhmmss

Do subtraction of time quantities in hh:mm:ss form.

DivideBy

Make variable become quotient after division.

DoubleChop

Return a string after taking out first and last characters.

EndsWith

Check whether the target string ends with the value.

EvalList

Take list and run eval on each element.

File2List

Read file line-by-line into a list.

File2String

Read file into a string and return it.

FindAndRemove

Find elements matching target and remove them from the list.

FindNearestPrecedingRecurrence

Find the nearest recurrence that comes before target.

FindNearestSucceedingRecurrence

Find the nearest recurrence datetime after given one.

FirstOf

Get first element of the list.

Flip

Change value to zero if it is one and vice versa.

ForeachRecord

Run a SELECT, map results to variables, and execute body.

FtpCleanRemoteDirectory

Clean remote directory of contents, but leave directory.

FtpDownloadDirectory

Download from remote directory into local directory.

FtpDownloadFiles

Open connection, download files, close connection.

FtpDownloadSite

Make connection, download files, close connection.

FtpMirrorLocalToRemote

Make remote site match what local site has.

FtpMirrorRemoteToLocal

Make local site match what remote has.

FtpUploadDirectory

Upload local directory to remote directory.

FtpUploadFiles

Open connection, upload files, close connection.

FtpUploadSite

Make connection, upload all files, close connection.

FtpWhichIsLarger

Tell whether the local or remote file is larger or if same.

FtpWhichIsNewer

Tell whether the local or remote file is newer or if same.

GetDbGlobal

Find and return value of entry in globals table.

GetEmailUsingImap4

Log onto server with IMAP4, get messages, close connection.

GetEmailUsingPop3

Log onto server with POP3, get messages, close connection.

Hhmmss2Seconds

Take an input of the form hh:mm:ss and convert to seconds.

HtmlListTreeFromDict

Return HTML list tree representing the dict.

HtmlParagraphsFromDoubleNewlinesString

Convert a string into a series of HTML paragraphs.

IncludeExcludeListFilter

Return list with all to be included, none to be excluded.

IncrDbGlobal

Increase the value of an entry in the global table by one.

IsDate

Check whether given string is in format of a date.

IsDatetime

Check whether given string matches the set datetime format.

IsDatetimeQuantity

Check whether or not the value can be added to a datetime.

IsDict

Check whether contents of string form a dict.

IsEmpty

Check if string value is empty.

IsHhmmss

Check whether the string passed in is of the form hh:mm:ss.

IsMatrix

Check whether list value is a matrix.

IsNegative

Tell whether value is negative or not.

IsNonNegative

Tell whether value is non-negative or not.

IsNonNumeric

Tell whether the input is not a numeric value.

IsNonPositive

Tell whether value is non-positive or not.

IsNonZero

Check whether value is non-zero.

IsNumeric

Tell whether the input is a numeric value.

IsPositive

Tell whether value is positive or not.

IsTimeOfDay

Check whether given string is of the form hh:mm:ss.

IsValidListIndex

Check whether the given value works as an index.

IsZero

Check whether value is zero or not.

LappendIfNotAlready

Check to see if value(s) are already in list, append if not.

LastId

Find last id in the table and return it.

LastMonth

Get the last month.

LastOf

Return the last element of the list.

LastYear

Get the year before this one.

LimitLineLengthInFile

Take file and run textutil::adjust::adjust on each line.

LinkTclVariableToRegistryValue

Make link to propagate changes from Tcl var to registry.

LinkVarToDbGlobal

Put trace on variable so the database global gets writ also.

List2File

Write list elements as lines to file.

ListEndIndex

Return index of last element in list.

ListRemoveAt

From a list, remove element(s) starting at a given index.

Mash

Take string, make into all lowercase and no spaces.

Matrix2HtmlTable

Takes a list of lists, returns string encoding HTML table.

MultiSet

Take list and copy values to variables, like lassign.

MultiplyBy

Make variable become a multiple of itself.

MultiplyHhmmss

Multiply a time quantity in hh:mm:ss form by some factor.

NewlinesStringToOneHtmlParagraph

Convert newlines into HTML line breaks, put into paragraph.

NextMonth

Get the next month.

NextYear

Get the year after this one.

NotEmpty

Check if string value is empty.

Now

Get the current datetime as formatted string.

Prepend

Modify string to add value to the front of it.

PrintDict

Print the contents of dict on the screen.

PrintMatrix

Print out a table/matrix (e.g. query results).

PrintVar

Print out both the variable name and its value.

PrintVars

Print out the value of each of the variables passed in.

Q1

Execute a query and return the first field of first record.

QQ

Run the query with configured database and return result.

QuasiTableFromKeyValueList

Create a "table" with divs derived from a key-value list.

Raise

Take a list and group its elements into sub-lists.

RegistryExists

Check whether a registry key or value exists.

RegistryPrint

Print the contents of a registry key.

RegistryTree2Dict

Make Tcl dict from Windows registry tree.

ReloadPackage

Because calling package require alone does not work.

RestoreIfExists

Replace file with backup, if one can be found.

RestoreWorkingDirectory

Change back to directory saved with SaveWorkingDirectory.

RetZeroIfEmpty

Return zero if passed empty string.

Run

Run script within shell as if from command line.

RunSqlCreateTable

Create SQL table using table name and column names/types.

RunSqlEnter

Do an update if an entry exists or an insert if not.

RunSqlInsertIfDoesNotExist

Do an insert unless an entry already exists.

SaveWorkingDirectory

Save the current working directory, so can later restore.

Seconds2DatetimeQuantity

Convert some number of seconds into a datetime quantity.

Seconds2Hhmmss

Convert a number of seconds to a string with form hh:mm:ss.

SendEmail

Send an email to given address, with given subject and body.

SetDateFormat

Set the format dates will be in (e.g. YYYY-MM-DD).

SetDatetimeFormat

Set format that datetimes will be in.

SetDbGlobal

Finds an entry in the global table and sets it to a value.

SetTimeOfDayFormat

Set format that the time-of-day will be presented in.

SetZeroIfEmpty

Take variable and make it zero if it is empty.

ShowTable

Print the contents of a table.

SliceLeft

Divide string by matching and separating to the left.

SliceRight

Divide string by matching and separating to the right.

SplitAndTrim

Both splits a string and also does a trim on each element.

SplitNTimes

Like split, except stops after a certain number of splits.

SplitStringByCharacterCount

Return a list of strings, each string limited in char count.

SqlCountStatement

Create a SELECT count(1) statement, use dict for WHERE.

SqlInsertStatement

Create an INSERT INTO statement.

SqlRecordExists

Tell if record exists in given table, matching criteria.

SqlSelectStatement

Make and return a SQL SELECT statement.

SqlSetClause

Derive a set clause for an update query, using a dict.

SqlUpdateStatement

Create an UPDATE statement.

SqlWhereClause

Create a WHERE clause using the values in dict.

SqliteColumnNameAndTypeList

Return the names and types of the columns of some table.

SqliteColumnNameList

Return a Tcl list with the names of the columns of a table.

SqliteColumnType

Get the data type for the column in the table.

SqliteCopyTable

Copy a table in a SQLite database.

SqliteRenameColumn

Change name of a column in an SQLite table.

SqliteTableExists

Determine if a table exists in the current database.

StartsAndEndsWith

Check whether the string starts and ends with the value.

StartsWith

Check whether the target string starts with the values.

String2File

Create a file, write string to it, and close the file.

StringContains

Check whether the target string contains the search value.

StringInsert

Insert value into target string, starting from a location.

StringMatchesAny

Like string match except you can use multiple patterns.

StringMid

Get substring of certain length, starting at given position.

StripHtmlTags

Strip HTML/XML tags from a string.

SubtractFrom

Take variable and subtract amount from it.

SumHhmmss

Sum up a list of times.

SurroundEach

Make a new list by surrounding each element with a string.

Swap

Swap the values of two variables.

Ter

Return either first or second value.

ThisMonth

Get the current month.

ThisYear

Get the current year.

TimeBetweenDates

Return the absolute number of days between dates given.

TimeBetweenDatetimes

Return the absolute value of time between datetimes given.

TimeBetweenTimesOfDay

Return how much time there is between the two given times.

TimeLeftUntilTargetDate

Return time left from current date until target.

TimeLeftUntilTargetDatetime

Return time left from current datetime to target.

TimeLeftUntilTargetTimeOfDay

Get how much time remains between now and the target time.

TimeOfDayIsAbout

Check if target time of day is within an interval.

TimeOfDayIsAfter

Check whether the given time-of-day is after the second.

TimeOfDayIsAt

Check whether the given time-of-day is at the second.

TimeOfDayIsAtOrAfter

Check whether given time-of-day is at or after the second.

TimeOfDayIsAtOrBefore

Check whether given time-of-day is at or before the second.

TimeOfDayIsBefore

Check whether the first time-of-day is before the second.

TimeOfDayIsBetween

Check whether given time-of-day is between the others.

ToBackslashes

Take string value and return version with only backslashes.

ToDoubleBackslashes

Take string, switch single slashes to double backslashes.

ToForwardSlashes

Take string, switch single/double backslashes to forward.

Today

Get the current date.

Tomorrow

Get tomorrow's date.

UnlinkTclVariableFromRegistryValue

Stop propagating changes set up by previous link.

UnlinkVarFromDbGlobal

Stop making writes to the variable also write the database.

UnsetDbGlobal

Unset / delete a variable in the globals table.

UpvarExistingOrDie

Do upvar if variable exists, else generate error.

UpvarX

Do upvar. If made new variable, then set to default.

VarExistsInCaller

Check if variable exists some levels up.

Yesterday

Get yesterday's date.