Loading...
Searching...
No Matches
utils.h File Reference
`#include <stdbool.h>`
`#include "macros.h"`
`#include "types.h"`
Include dependency graph for utils.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Enumerations

enum | girara_xdg_path_t { XDG_CONFIG , XDG_DATA , XDG_CONFIG_DIRS , XDG_DATA_DIRS , XDG_CACHE }

## Functions

char * | girara_get_home_directory (const char *user) GIRARA_VISIBLE
char * | girara_get_xdg_path (girara_xdg_path_t path) GIRARA_VISIBLE
bool | girara_xdg_open (const char *uri) GIRARA_VISIBLE
bool | girara_xdg_open_with_working_directory (const char *uri, const char *working_directory) GIRARA_VISIBLE
char * | girara_fix_path (const char *path) GIRARA_VISIBLE
char * | girara_escape_string (const char *value) GIRARA_VISIBLE
char * | girara_replace_substring (const char *string, const char *old, const char *new) GIRARA_VISIBLE
const char * | girara_version (void) GIRARA_VISIBLE

## Enumeration Type Documentation

## girara_xdg_path_t

enum girara_xdg_path_t

Enum for directories specified in the XDG specification.

Enumerator
XDG_CONFIG | XDG_CONFIG_HOME
XDG_DATA | XDG_DATA_HOME
XDG_CONFIG_DIRS | XDG_CONFIG_DIRS
XDG_DATA_DIRS | XDG_DATA_DIRS
XDG_CACHE | XDG_CACHE_HOME

Definition at line 14 of file utils.h.

## Function Documentation

## girara_escape_string()

char * girara_escape_string | ( | const char * | value | ) |

Escape \, \t, ", ' and spaces in strings.

Parameters

  value | The string to be escaped.

Returns
  The escaped string. Needs to be freed with g_free.

## girara_fix_path()

char * girara_fix_path | ( | const char * | path | ) |

Returns a "fixed" version of path. Which means, it will be an absolute path and fully expanded. ~ and ~user will be replaced by the current user's home directory (user's home directory respectively).

Parameters

  path | the path to "fix".

Returns
  the "fixed" path (needs to be freed with g_free).

## girara_get_home_directory()

char * girara_get_home_directory | ( | const char * | user | ) |

Returns the home directory for the given user. $HOME is preferred over the value from g_get_home_dir.

Parameters

  user | a username or NULL to get home directory of the current user.

Returns
  a string containing the path to the user's home directory (needs to be freed with g_free) or NULL if the user doesn't exist.

## girara_get_xdg_path()

char * girara_get_xdg_path | ( | girara_xdg_path_t | path | ) |

Returns a specific path specified in the XDG specification. ~ in paths will not be expanded.

Parameters

  path | which path to get

Returns
  a string containing the requested patch (needs to be freed with g_free) or NULL for invalid values.

## girara_replace_substring()

char * girara_replace_substring | ( | const char * | string,
|  | const char * | old,
|  | const char * | new )

Replaces all occurrences of old in string with new and returns a new allocated string

Parameters

  string | The original string
  old | String to replace
  new | Replacement string

Returns
  new allocated string, needs to be freed with g_free

## girara_version()

const char * girara_version | ( | void |  | ) |

Return version of girara.

Returns
  version string

## girara_xdg_open()

bool girara_xdg_open | ( | const char * | uri | ) |

Opens a URI with xdg-open. If xdg-open is not available, it falls back to the equivalent of gio open.

Parameters

  uri | the URI to be opened.

Returns
  true on success, false otherwise

## girara_xdg_open_with_working_directory()

bool girara_xdg_open_with_working_directory | ( | const char * | uri,
|  | const char * | working_directory )

Opens a URI with xdg-open in a different working directory. If xdg-open is not available, it falls back to the equivalent of gio open.

Parameters

  uri | the URI to be opened.
  working_directory | working directory

Returns
  true on success, false otherwise