gnomevfs-0.11.0: Binding to the GNOME Virtual File System library.

Portabilityportable (depends on GHC)
Stabilityalpha
Maintainergtk2hs-devel@lists.sourceforge.net

System.Gnome.VFS.Util

Contents

Description

 

Synopsis

String Formatting Functions

formatFileSizeForDisplaySource

Arguments

:: FileSize

size - the file size to be formatted

-> String

the formatted size ready for display

Formats size so that it is easy for the user to read. Gives the size in bytes, kilobytes, megabytes or gigabytes, choosing whatever is appropriate.

formatURIForDisplaySource

Arguments

:: TextURI

textURI - the URI to format

-> Maybe String

the formatted URI ready for display

Filter, modify, unescape, and change textURI to make it appropriate for display to users.

Rules: A file: URI without fragments should appear as a local path. A file: URI with fragments should appear as file:uri. All other URIs appear as expected.

External Applications

urlShowSource

Arguments

:: String

url - the URL to launch an application for

-> IO () 

Launches the default application or component associated with the given URL.

urlShowWithEnvSource

Arguments

:: String

url - the URL to launch an application for

-> [String]

env - a list of strings ["VARIABLE1=value1", "VARIABLE2=value2", ...]

-> IO () 

Like urlShow, but using the specified environment variables.

isExecutableCommandStringSource

Arguments

:: String

commandString -

-> IO Bool 

Checks if commandString starts with the full path of an executable file or an executable in the system path.

String Escaping Functions

escapeStringSource

Arguments

:: String

string - the string to be escaped

-> String 

Escapes string, replacing any and all special characters with equivalent escape sequences.

escapePathStringSource

Arguments

:: FilePath

path - the path string to be escaped

-> String

the escaped string

Escapes path, replacing only special characters that would not be found in paths (so '/', '&', and '=' will not be escaped by this function).

escapeHostAndPathStringSource

Arguments

:: FilePath

path - the path to be escaped

-> String

the escaped string

Escapes path, replacing only special characters that would not be found in a path or host name (so '/', '&', '=', ':' and '@' will not be escaped by this function).

escapeSlashesSource

Arguments

:: String

string - the string to be escaped

-> String

the escaped string

Escapes only '/' and '%' characters in string, replacing them with their escape sequence equivalents.

escapeSetSource

Arguments

:: String

string - the string to be escaped

-> String

matchSet - the characters to escape

-> String

the escaped string

Escapes the characters listed in matchSet in string.

unescapeStringSource

Arguments

:: String 
-> String 
-> String

the unescaped string

Decodes escaped characters (i.e., %xx sequences) in escapedString. Characters are decoded in %xx form, where xx is the hex code for an ASCII character.

unescapeStringForDisplay :: String -> StringSource

Similar to unescapeString, but returns something semi-intelligible to the user, even upon receiving traumatic input such as 00 or URIs in bad form.

WARNING: You should never use this function on a whole URI! It unescapes reserved characters, and can result in a mangled URI that can not be re-entered. For example, it unescapes '#', '&' and '?', which have special meanings in URI strings.

TextURI and Path Functions

makeURICanonicalSource

Arguments

:: TextURI

textURI - an absolute or relative URI; it may have a scheme

-> Maybe TextURI

the canonical representation of the URI

Standardizes the format of uri, so that it can be used later in other functions that expect a canonical URI.

makeURICanonicalStripFragmentSource

Arguments

:: TextURI

textURI - the URI to canonicalize

-> Maybe TextURI

the canonical representation of the URI

Returns a canonicalized URI. If uri contains a fragment (anything after a '#'), it is stripped off, and the resulting URI is made canonical.

makePathNameCanonicalSource

Arguments

:: FilePath

pathName - the path name to canonicalize

-> Maybe TextURI

the canonicalized path name

Returns a canonicalized path name.

makeURIFromInputSource

Arguments

:: String

location - the input to try to parse

-> Maybe TextURI

the resulting URI, or Nothing if location is invalid

Takes a user input path/URI and makes a valid URI out of it.

This function is the reverse of formatURIForDisplay.

makeURIFromInputWithDirsSource

Arguments

:: FilePath

location - the relative or absolute input path to resolve

-> [MakeURIDirs]

dirs - the directories to search

-> IO TextURI

the resulting URI

Determine a fully qualified URI from a relative or absolute input path. The directories specified by dirs are searched when the path is relative.

makeURIFromShellArg :: String -> StringSource

Similar to makeURIFromInput, except:

  1. guesses relative paths instead of HTTP domains
  2. doesn't bother stripping leading/trailing white space
  3. doesn't bother with tilde expansion -- that's done by the shell

expandInitialTilde :: String -> IO StringSource

If path begins with a tilde, representing the user's home directory, expand it to the actual directory.

getLocalPathFromURISource

Arguments

:: TextURI

the URI to convert

-> Maybe FilePath

the resulting path

Create a local path for a uri.

If uri is not a file:/// URI, or it contains a fragment identifier or is chained, this function returns Nothing.

getURIFromLocalPathSource

Arguments

:: FilePath

localFullPath -

-> TextURI

the resulting URI

Returns a file:/// URI for the local path localFullPath, such as a path provided by Graphics.UI.Gtk.Selectors.FileChooser.fileChooserGetFilename. The resulting URI may be provided, for instance, to System.Gnome.VFS.URI.uriFromString.

On Windows localFullPath should be in the UTF-8 encoding, and can start with a drive letter, but doesn't have to.

iconPathFromFilenameSource

Arguments

:: String

filename - a relative or absolute pathname

-> IO String

the absolute path to the icon file

Returns the icon path for filename. Example:

iconPathFromFilename "nautilus/nautilus-desktop.png" will return a string forming the full path of the file nautilus-desktop.png, i.e. ${prefix}/share/pixmaps/nautilus/nautilus-desktop.png.

getVolumeFreeSpaceSource

Arguments

:: URI

uri - a URI to a file on a volume

-> IO FileSize

the free space in bytes on the volume

Stores the amount of free space in bytes on uri's volume in | size.

urisMatchSource

Arguments

:: TextURI

uri1 -

-> TextURI

uri2 -

-> Bool

True if the URIs are the same, False otherwise.

Compare two URIs.

getURISchemeSource

Arguments

:: TextURI

uri -

-> Maybe String

the scheme used in uri, or Nothing if uri does not use a scheme

Retrieves the scheme used in uri.

Miscellaneous Functions

isPrimaryThreadSource

Arguments

:: IO Bool

True if the current thread is the thread with the main glib event loop, otherwise False

Check if the current thread is the thread with the main glib event loop.

openFDSource

Arguments

:: Fd

filedes - the file descriptor to use

-> IO Handle

the returned handle

Convert an open 1 file descriptor into a Handle object.