Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
XrmGetFileDatabase(3)		XLIB FUNCTIONS		 XrmGetFileDatabase(3)

NAME
       XrmGetFileDatabase,  XrmPutFileDatabase,	XrmGetStringDatabase, XrmLoca-
       leOfDatabase, XrmGetDatabase, XrmSetDatabase, XrmDestroyDatabase	-  re-
       trieve and store	resource databases

SYNTAX

       #include	<X11/Xresource.h>

       XrmDatabase XrmGetFileDatabase(char *filename);

       void XrmPutFileDatabase(XrmDatabase database, _Xconst char *stored_db);

       XrmDatabase XrmGetStringDatabase(_Xconst	char *data);

       const char *XrmLocaleOfDatabase(XrmDatabase database);

       XrmDatabase XrmGetDatabase(Display *display);

       void XrmSetDatabase(Display *display, XrmDatabase database);

       void XrmDestroyDatabase(XrmDatabase database);

ARGUMENTS
       filename	 Specifies the resource	database file name.

       database	 Specifies the database	that is	to be used.

       stored_db Specifies the file name for the stored	database.

       data	 Specifies the database	contents using a string.

       database	 Specifies the resource	database.

       display	 Specifies the connection to the X server.

DESCRIPTION
       The XrmGetFileDatabase function opens the specified file, creates a new
       resource	 database,  and	 loads it with the specifications read in from
       the specified file.  The	specified file should contain  a  sequence  of
       entries	in  valid ResourceLine format (see section 15.1); the database
       that results from reading a file	with incorrect syntax  is  implementa-
       tion-dependent.	 The  file  is	parsed	in the current locale, and the
       database	is created in the current locale.  If it cannot	open the spec-
       ified file, XrmGetFileDatabase returns NULL.

       The XrmPutFileDatabase function stores a	copy of	the specified database
       in the specified	file.  Text is written to the file as  a  sequence  of
       entries	in  valid ResourceLine format (see section 15.1).  The file is
       written in the locale of	the  database.	 Entries  containing  resource
       names  that are not in the Host Portable	Character Encoding or contain-
       ing values that are not in the encoding of  the	database  locale,  are
       written	in an implementation-dependent manner.	The order in which en-
       tries are written is implementation-dependent.  Entries with  represen-
       tation types other than "String"	are ignored.

       The XrmGetStringDatabase	function creates a new database	and stores the
       resources  specified  in	the specified null-terminated string.  XrmGet-
       StringDatabase is similar to XrmGetFileDatabase except  that  it	 reads
       the  information	 out of	a string instead of out	of a file.  The	string
       should contain a	sequence of entries in valid ResourceLine format  (see
       section 15.1) terminated	by a null character; the database that results
       from  using a string with incorrect syntax is implementation-dependent.
       The string is parsed in the current locale, and the database is created
       in the current locale.

       If database is NULL, XrmDestroyDatabase returns immediately.

       The XrmLocaleOfDatabase function	returns	the name of the	 locale	 bound
       to  the	specified database, as a null-terminated string.  The returned
       locale name string is owned by Xlib and should not be modified or freed
       by the client.  Xlib is not permitted to	 free  the  string  until  the
       database	is destroyed.  Until the string	is freed, it will not be modi-
       fied by Xlib.

       The  XrmGetDatabase  function  returns the database associated with the
       specified display.  It returns NULL if a	database has not yet been set.

       The XrmSetDatabase function associates the specified resource  database
       (or  NULL) with the specified display.  The database previously associ-
       ated with the display (if any) is not destroyed.	 A client  or  toolkit
       may  find  this function	convenient for retaining a database once it is
       constructed.

FILE SYNTAX
       The syntax of a resource	file is	a sequence of  resource	 lines	termi-
       nated  by  newline characters or	the end	of the file.  The syntax of an
       individual resource line	is:

       ResourceLine   =	   Comment | IncludeFile | ResourceSpec	| <empty line>
       Comment	 =    "!" {<any	character except null or newline>}
       IncludeFile    =	   "#" WhiteSpace "include" WhiteSpace FileName	WhiteSpace
       FileName	 =    <valid filename for operating system>
       ResourceSpec   =	   WhiteSpace ResourceName WhiteSpace ":" WhiteSpace Value
       ResourceName   =	   [Binding] {Component	Binding} ComponentName
       Binding	 =    "." | "*"
       WhiteSpace     =	   {<space> | <horizontal tab>}
       Component =    "?" | ComponentName
       ComponentName  =	   NameChar {NameChar}
       NameChar	 =    "a"-"z" |	"A"-"Z"	| "0"-"9" | "_"	| "-"
       Value	 =    {<any character except null or unescaped newline>}

       Elements	separated by vertical bar (|) are alternatives.	 Curly	braces
       ({...})	indicate  zero	or  more repetitions of	the enclosed elements.
       Square brackets ([...]) indicate	that the enclosed element is optional.
       Quotes ("...") are used around literal characters.

       IncludeFile lines are interpreted by replacing the line with  the  con-
       tents  of the specified file.  The word "include" must be in lowercase.
       The file	name is	interpreted relative to	the directory of the  file  in
       which the line occurs (for example, if the file name contains no	direc-
       tory or contains	a relative directory specification).

       If a ResourceName contains a contiguous sequence	of two or more Binding
       characters,  the	sequence will be replaced with single "." character if
       the sequence contains only "." characters; otherwise, the sequence will
       be replaced with	a single "*" character.

       A resource database never contains more than one	entry for a given  Re-
       sourceName.   If	 a resource file contains multiple lines with the same
       ResourceName, the last line in the file is used.

       Any white space characters before or after the name or colon in	a  Re-
       sourceSpec  are	ignored.   To allow a Value to begin with white	space,
       the two-character sequence "\space" (backslash followed	by  space)  is
       recognized and replaced by a space character, and the two-character se-
       quence  "\tab" (backslash followed by horizontal	tab) is	recognized and
       replaced	by a horizontal	tab character.	To allow a  Value  to  contain
       embedded	 newline characters, the two-character sequence	"\n" is	recog-
       nized and replaced by a newline character.  To allow a Value to be bro-
       ken across multiple lines in a text file,  the  two-character  sequence
       "\newline"  (backslash  followed	 by newline) is	recognized and removed
       from the	value.	To allow a Value to contain arbitrary character	codes,
       the four-character sequence "\nnn", where each n	is a  digit  character
       in  the range of	"0"-"7", is recognized and replaced with a single byte
       that contains the octal value specified by the sequence.	 Finally,  the
       two-character  sequence	"\\"  is recognized and	replaced with a	single
       backslash.

SEE ALSO
       XrmGetResource(3), XrmInitialize(3), XrmPutResource(3)
       Xlib - C	Language X Interface

X Version 11			 libX11	1.8.12		 XrmGetFileDatabase(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=XrmPutFileDatabase&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help