Skip to content

Instantly share code, notes, and snippets.

View trevordevore's full-sized avatar

Trevor DeVore trevordevore

View GitHub Profile
@trevordevore
trevordevore / gist:0983b633ef2d1c54ec1d
Created February 23, 2015 17:45
rotatingfont.mlc
-- declaring extension as widget, followed by identifier
widget com.livecode.extensions.devore.rotatingfont
--
-- adding metadata to ensure the extension displays correctly in livecode
metadata title is "Rotating Font"
metadata author is "Trevor DeVore"
metadata version is "1.0.1"
--
@trevordevore
trevordevore / StyledText to XHTML Converter
Last active October 1, 2015 02:37
Convert LiveCode styledText array to/from XHTML
/**
* \brief Converts a styled text array to XHTML.
*
* \param pStyledTextA The array to convert.
*
* \return XHTML
*/
function ConvertStyledTextToXHTML pStyledTextA
local theXHTML, theRun, theString
local theListKey
@trevordevore
trevordevore / LiveCode Markdown Converter
Last active December 14, 2015 12:59
LiveCode Markdown converter
/**
* \brief Converts a styledText array to Markdown.
*
* \param pTextA The styledText array to convert.
*
* Test while typing in a field:
* on textChanged
* put StyledTextToMarkdown(the styledText of me)
* pass textChanged
* end textChanged
@trevordevore
trevordevore / gist:5135156
Created March 11, 2013 15:44
LiveCode code that generates a UUID on OS X, Linux and Windows.
function generateUUID
local theError, theUUID
switch the platform
case "macos"
case "linux"
put shell("uuidgen") into theUUID
put word 1 to -1 of theUUID into theUUID
put the result into theError
break
@trevordevore
trevordevore / gist:5246242
Created March 26, 2013 15:23
Zips/Unzips folders using LiveCode. There are a lot of supporting handlers included.
/**
* \brief Creates a zip file from a directory. The ZIP archive should already have been opened with revZipOpenArchive.
*
* \param pZipArchivePath The path to save the zip archive to. This should already have been opened with revZipOpenArchive.
* \param pRootFolderPath The folder to save in the zip archive.
* \param pIncludeRootFolderInArchiveItemNames Pass in true to include the name of pRootFolderPath in the zip archive.
* \param pFilesToExclude Files that should not be included in the archive.
* \param pExtensionsThatArentCompressed File extensions that should be added without any compression.
* \param pFolderPath Used when calling itself recursively. Pass in empty.
*
@trevordevore
trevordevore / gist:3498531
Created August 28, 2012 14:33
Security Scoped Bookmark URLs
/*
To use:
1) Get path to file/folder using file selection dialog.
2) Pass path to secscopGetBookmarkFromURL in order to get bookmark data for it.
3) Store this bookmark data somehow.
4) Tell the OS you want access to the file using secscopInitializeURLFromBookmarkData(). Store security-scoped url returned for later.
5) When you are done using the file call secscopStopUsingURL.
You will need to do steps 4 and 5 every time you want to open a file across sessions. For example, if you have a recent files menu or a folder that a user selects once and you write data to across sessions.
*/
result = ""
theDomain = "[[Domain]]" 'domain with no trailing /
theQuery = "[[Query]]" 'query such as ou=Users,dc=...
theUser = "[[Username]]"
thePassword = "[[Password]]"
On Error resume next
Const E_ADS_PROPERTY_NOT_FOUND = &h8000500D
LDAPString = "LDAP://"
constant kMultiLineModeNone = 0
constant kMultiLineModeLiteral = 1
constant kMultiLineModeFolded = 2
command YAMLToArray pYaml
local tInDocument = true
local tPath
local tArray
local tPathLists
local tReferences
@trevordevore
trevordevore / signOSXApplication.livecodescript
Last active June 16, 2017 14:33
LiveCode script-only stack that will code sign LIveCode applications on OS X
script "SignApplicationForOSX"
on preOpenCard
set the visible of this stack to true
put the rect of this stack into tRect
put item 1 of tRect + 400 into item 3 of tRect
put item 2 of tRect + 400 into item 4 of tRect
set the rect of this stack to tRect
@trevordevore
trevordevore / htmlTextToMarkdown.livecodescript
Created November 6, 2017 15:17
LiveCode htmlText to Markdown
function htmlTextToMarkdown pText, pEscape
put pEscape is not false into pEscape
replace "<b>" with "<strong>" in pText
replace "</b>" with "</strong>" in pText
## http://daringfireball.net/projects/markdown/syntax
## Doesn't support targets as far as I can tell
_RemoveATagTarget pText