locales                 package:base                 R Documentation

Query or Set Aspects of the Locale

Description:

     Get details of or set aspects of the locale for the R process.

Usage:

     Sys.getlocale(category = "LC_ALL")
     Sys.setlocale(category = "LC_ALL", locale = "")

Arguments:

category: character string. Must be one of '"LC_ALL"', '"LC_COLLATE"',
          '"LC_CTYPE"', '"LC_MONETARY"', '"LC_NUMERIC"' or '"LC_TIME"'.

  locale: character string. A valid locale name on the system in use.
          Normally '""' (the default) will pick up the default locale
          for the system.

Details:

     The locale describes aspects of the internationalization of a
     program. Initially most aspects of the locale of R are set to
     '"C"' (which is the default for the C language and reflects
     North-American usage). R does set '"LC_CTYPE"' and '"LC_COLLATE"',
     which allow the use of a different character set (typically ISO
     Latin 1) and alphabetic comparisons in that character set
     (including the use of 'sort') and '"LC_TIME"' may affect the
     behaviour of 'as.POSIXlt' and 'strptime' and functions which use
     them (but not 'date').

     R can be built with no support for locales, but it is normally
     available on Unix and is available on Windows.

     Some systems will have other locale categories, but the six
     described here are those specified by POSIX.

Value:

     A character string of length one describing the locale in use
     (after setting for 'Sys.setlocale'), or an empty character string
     if the locale is invalid (with a warning) or 'NULL' if locale
     information is unavailable.

     For 'category = "LC_ALL"' the details of the string are
     system-specific: it might be a single locale or a set of locales
     separated by '"/"' (Solaris) or '";"' (Windows).  For portability,
     it is best to query categories individually.  It is guaranteed
     that the result of 'foo <- Sys.getlocale()' can be used in
     'Sys.setlocale("LC_ALL", locale = foo)' on the same machine.

Warning:

     Setting '"LC_NUMERIC"' can produce output that R cannot then read
     by 'scan' or 'read.table' with their default arguments, which are
     not locale-specific.

See Also:

     'strptime' for uses of 'category = "LC_TIME"'. 'Sys.localeconv'
     for details of numerical representations.

Examples:

     Sys.getlocale()
     Sys.getlocale("LC_TIME")
     ## Not run: 
     Sys.setlocale("LC_TIME", "de")     # Solaris: details are OS-dependent
     Sys.setlocale("LC_TIME", "German") # Windows
     ## End(Not run)

     Sys.setlocale("LC_COLLATE", "C")  # turn off locale-specific sorting

