diff --git a/language/english.php b/language/english.php
index f3507026f..582108e3b 100644
--- a/language/english.php
+++ b/language/english.php
@@ -1360,6 +1360,32 @@
'value' => 'Value',
);
+###############################################################################
+# admin/router.php
+
+$LANG_ROUTER = array(
+ 1 => 'URL routing',
+ 2 => 'Routing Manager',
+ 3 => 'ID',
+ 4 => 'method',
+ 5 => 'rule',
+ 6 => 'route',
+ 7 => 'priority',
+ 8 => 'Increase priority',
+ 9 => 'Decrease priority',
+ 10 => 'Edit routing',
+ 11 => 'To modify or delete a route, click on the route\'s edit icon below. To create a new route, click on "Create New" above. When you use placeholders (@), you must define the same placeholders in a rule and its route.',
+ 12 => 'Bad request method',
+ 13 => 'Rule is a mandatory item.',
+ 14 => 'Route is a mandatory item.',
+ 15 => 'Placeholders (@) in a rule and those in a route must be the same.',
+ 16 => 'Route must not start with "/index.php/".',
+ 17 => 'Database error occurred.',
+ 18 => 'To enable URL routing, you have to enable URL rewrite in the Configuration.',
+ 19 => 'To enable URL routing, you have to enable URL routing in the Configuration.',
+ 20 => '
Placeholders (@) must be the same both in a rule and its route.
A placeholder starts with "@", followed by an alphabet, optionally followed by any length of alphabet or digit.
Placeholders are case-sensitive.
',
+);
+
###############################################################################
# confirmation and error messages
@@ -1476,6 +1502,9 @@
118 => 'Click to select a date',
119 => 'More..',
120 => 'Send this?',
+ 121 => 'Saved a URL routing item.',
+ 122 => 'Could not save a URL routing item.',
+ 123 => 'Deleted a URL routing item.',
130 => 'Your language item has been successfully deleted.',
131 => 'Your language item has been successfully saved.',
140 => 'Deleted comment(s).',
@@ -2178,6 +2207,7 @@
'censorlist' => "Censor List",
'ip_lookup' => "IP Lookup",
'url_rewrite' => "Enable URL Rewrite",
+ 'url_routing' => 'Enable URL routing',
'cdn_hosted' => "Use CDN-hosted copy of jQuery",
'meta_tags' => "Meta Tags",
'meta_description' => "Default Meta Description",
@@ -2400,7 +2430,8 @@
33 => array('Disabled' => 0, 'Enabled' => 1, 'Enabled (No Links)' => 2, 'Enabled (No Outbound Links)' => 3),
34 => array('grid' => 'grid', 'list' => 'list'),
35 => array('default' => 'default', 'Name (asc)' => 'NAME_ASC', 'Name (desc)' => 'NAME_DESC', 'Type (asc)' => 'TYPE_ASC', 'Type (desc)' => 'TYPE_DESC', 'Modified (asc)' => 'MODIFIED_ASC', 'Modified (desc)' => 'MODIFIED_DESC'),
- 36 => array('False' => 'false', 'Frontpage only' => 'frontpage', 'Frontpage and Topics' => 'frontpage_topics')
+ 36 => array('False' => 'false', 'Frontpage only' => 'frontpage', 'Frontpage and Topics' => 'frontpage_topics'),
+ 37 => array('Disabled' => 0, 'Enabled(with "index.php")' => 1, 'Enabled(without "index.php")' => 2),
);
################################################################################
diff --git a/language/english_utf-8.php b/language/english_utf-8.php
index 52c3bc4ac..ad1dbf406 100644
--- a/language/english_utf-8.php
+++ b/language/english_utf-8.php
@@ -1351,6 +1351,31 @@
55 => 'Articles'
);
+###############################################################################
+# admin/router.php
+
+$LANG_ROUTER = array(
+ 1 => 'URL routing',
+ 2 => 'Routing Manager',
+ 3 => 'ID',
+ 4 => 'method',
+ 5 => 'rule',
+ 6 => 'route',
+ 7 => 'priority',
+ 8 => 'Increase priority',
+ 9 => 'Decrease priority',
+ 10 => 'Edit routing',
+ 11 => 'To modify or delete a route, click on the route\'s edit icon below. To create a new route, click on "Create New" above. When you use placeholders (@), you must define the same placeholders in a rule and its route.',
+ 12 => 'Bad request method',
+ 13 => 'Rule is a mandatory item.',
+ 14 => 'Route is a mandatory item.',
+ 15 => 'Placeholders (@) in a rule and those in a route must be the same.',
+ 16 => 'Route must not start with "/index.php/".',
+ 17 => 'Database error occurred.',
+ 18 => 'To enable URL routing, you have to enable URL rewrite.',
+ 19 => '
Placeholders (@) must be the same both in a rule and its route.
A placeholder starts with "@", followed by an alphabet, optionally followed by any length of alphabet or digit.
Previous versions of Geeklog used one huge file called config.php
+
Previous versions of Geeklog used one huge file called config.php
that held all the core configuration options. As of Geeklog 1.5.0, most of
the configuration options have been moved to the database and can now be
-reached from the Configuration admin panel within Geeklog.
+reached from the Configuration admin panel within Geeklog.
For technical reasons, some configuration options still have to be
stored in files. There are two such configuration files now:
Base URL of the admin area of your site (no trailing slash).
You won't have to change this normally, but some hosting services use a
predefined "admin" directory for other purposes. In this case, you can
- rename Geeklog's admin directory and adjust the URL accordingly to
+ rename Geeklog's admin directory and adjust the URL accordingly to
avoid conflicts.
disabled. If the text begins with "http:" then visitors are redirected to
that URL. Note: The option which actually disables the site can be found
- in the siteconfig.php file.
When $_CONF['have_pear'] (see above) is set
to false, this is the path where Geeklog expects to find
the PEAR packages it requires (e.g.
@@ -324,7 +329,7 @@
check (but using option 1 and 2 doesn't make sense and will be
treated as if you requested option 2).
Options are: 0 = don't perform any checks, 1 = check only for your site's main URL ($_CONF['site_url']), 2 = check for the exact URL of the entry (e.g. an article) on your site, 4 = check IP address of the sender of the trackback against the site referred to in the trackback URL.
- Example:$_CONF['check_trackback_link'] = 6; // check for the exact URL (2) and proper IP address (4)
+ Example:$_CONF['check_trackback_link'] = 6; // check for the exact URL (2) and proper IP address (4)
Document Type
Declaration (aka DOCTYPE aka DTD) to use for all the themes on your
- site, assuming they use the {doctype} variable instead of a
- hard-coded DOCTYPE in their header.thtml.
+ site, assuming they use the {doctype} variable instead of a
+ hard-coded DOCTYPE in their header.thtml.
Specifies which entries are displayed in the site's menu bar
(if your theme uses the {menu_elements} variable to display
- the menu bar). Can be any combination of 'home',
- 'contribute', 'search', 'stats',
- 'directory', 'login', 'prefs', 'plugins', and
- 'custom' where 'plugins' is the same as the
+ the menu bar). Can be any combination of 'home',
+ 'contribute', 'search', 'stats',
+ 'directory', 'login', 'prefs', 'plugins', and
+ 'custom' where 'plugins' is the same as the
{plg_menu_elements} variable, i.e. a list of the menu entries
- provided by plugins, and 'custom' displays the entries returned by
+ provided by plugins, and 'custom' displays the entries returned by
a custom function CUSTOM_menuEntries (see
- lib-custom.php for details).
If set to true, all templates will be cached, which
+
If set to true, all templates will be cached, which
should improve performance of the web site. In some cases, caching could
slow performance down. For example, if the disk access is slow on the web
server or if the web server is accessing Windows shared drives, setting this
@@ -618,7 +623,7 @@
If set to true, mobile devices (phones and tablets) will be cached
+
If set to true, mobile devices (phones and tablets) will be cached
separately from computers. This includes the template files, blocks, articles and other plugins which may use
Geeklog's template cache system. You should only set this to false if you do not plan to display different information
depending on if a mobile device is detected being used by the user. Performance will be improved slightly if set to false since
@@ -634,7 +639,7 @@
If you allow users to log in with accounts on remote services
(like LDAP or LiveJournal), this option will at the service's name to
the username to avoid confusion with local users of the same name. Set to
- false to disable.
When set to true, Geeklog will let you use
your own signup form for new user registrations. Please see the file
- lib-custom.php that ships with Geeklog for an example.
+ lib-custom.php that ships with Geeklog for an example.
Allow (when set to true) users who already have
an account with some other service to log into your Geeklog site with the
login for that service. Currently supported: LDAP and LiveJournal.
Please note that to enable login for a specific service, you need an
- authorization class in system/classes/authentication. If you only
+ authorization class in system/classes/authentication. If you only
want to allow LDAP but not LiveJournal users (or vice versa), simply
remove the class file for the unwanted service(s).
See Remote Authentication in Geeklog for more information.
Allow (when set to true) users who already have
an account with Facebook to log into Geeklog with said account using OAuth. You must set the Facebook application ID and secret.
Allow (when set to true) users who already have
an account with LinkedIn to log into Geeklog with said account using OAuth. You must set the LinkedIn API and secret key.
Allow (when set to true) users who already have
an account with Twitter to log into Geeklog with said account using OAuth. You must set the Twitter consumer key and secret.
Allow (when set to true) users who already have
an account with Google to log into Geeklog with said account using OAuth. You must set the Google client id and client secret.
Allow (when set to true) users who already have
an account with Microsoft to log into Geeklog with said account using OAuth. You must set the Microsoft client id and client secret.
Allow (when set to true) users who already have
an account with Yahoo to log into Geeklog with said account using OAuth. You must set the Yahoo consumer key and consumer secret.
Allow (when set to true) users who already have
an account with GitHub to log into Geeklog with said account using OAuth. You must set the GitHub client id and client secret.
comma-separated list of domain names from which user submissions will not
be queued (but approved automatically). Regular expressions are also allowed
and interpreted. Example:
- 'mycompany.com,myothercompany.com'
when the user submission queue has been switched off. Again, regular
expression can be used. Example disallow email addresses
with a certain domain name and from any ".edu" domain:
- 'somebaddomain.com,\.edu$'
When set to 1, this will display an additional block on the
- submissions page (moderation.php) that lists all the stories that
+ submissions page (moderation.php) that lists all the stories that
have the 'draft' flag set.
If you chose 'imagemagick' for
$_CONF['image_lib'] above, then this should hold the
complete path to the mogrify executable (from the
ImageMagick package), e.g.
- '/usr/bin/mogrify' (ImageMagick 5.4.9 or newer recommended).
+ '/usr/bin/mogrify' (ImageMagick 5.4.9 or newer recommended).
If you chose 'netpbm' for $_CONF['image_lib']
above, then this should hold the complete path to the directory
where the binaries from the Netpbm package are kept, e.g.
@@ -1295,11 +1300,11 @@
When unscaled images are kept (see above), this option lets
the user chose between using the scaled or unscaled image in the story, i.e.
- enables the [unscaledX] image tag (in addition to the
- [imageX] tag).
+ enables the [unscaledX] image tag (in addition to the
+ [imageX] tag).
Control the image quality when resizing JPEGs. All the image
libraries supported by Geeklog are based on the IJG JPEG library which uses
an arbitrary range of 0-100 to specify the "quality" (note that this is
@@ -1314,7 +1319,7 @@
When set to true, this option enables debugging
- output to be written into Geeklog's error.log file during the
+ output to be written into Geeklog's error.log file during the
upload of an image. This is useful to track down problems with the image
upload and resizing.
This option, when enabled, will only apply when
displaying a user photo. The <img> tag for the
user photo will be emitted with a max. width, as specified by this option.
@@ -1403,7 +1408,7 @@
When enabled, this option should point to an image (full URL
required!) that should be displayed for users without a user photo. When
this option is not set and a user does not have a user photo (or an Images: Gravatar
If enabled (set to true), a user's avatar image will
+
If enabled (set to true), a user's avatar image will
be requested from gravatar.com if the
user didn't upload a user photo (i.e. an uploaded photo always takes
precedence).
@@ -1428,7 +1433,7 @@
Avatars submitted to gravatar.com are rated with the rating
system used for movies (in the U.S.), i.e. the letters G, PG, R, or X. This
option will let you chose the maximum allowed rating for an avatar.
@@ -1459,7 +1464,7 @@
For multi-lingual content setups only: A list mapping language
shortcuts ('en', 'de', etc.) to the Geeklog language files to use. These shortcuts must each contain the same number of characters and
the language file must exist in the Geeklog languages directory.
@@ -1470,7 +1475,7 @@
For multi-lingual content setups only: A list mapping language
shortcuts ('en', 'de', etc.) to the language's native name ("English",
"Deutsch", etc.). These shortcuts must match the shortcuts set in the "Language Files" configuration option.
@@ -1522,7 +1527,7 @@
If your server is located in a different timezone, use this
option to set your local (i.e. your own) timezone, so that the time and
date on the site match your own.
@@ -1609,7 +1614,7 @@
The domain that the cookie is available. Geeklog will attempt to guess the correct value for this setting (based on the 'site_url' variable). See the PHP manual for details.
Send an email notification to $_CONF['site_email']
+
Send an email notification to $_CONF['site_email']
when a new story, comment, trackback or pingback has been submitted
- or a new user has registered with the site. The array() can hold
- any combination of the strings 'story', 'comment',
- 'trackback', 'pingback', and 'user' (separated
+ or a new user has registered with the site. The array() can hold
+ any combination of the strings 'story', 'comment',
+ 'trackback', 'pingback', and 'user' (separated
by commas), depending on which notification(s) you want. Example:array('story','user'); would
send notifications when a new story has been submitted or a new user has
@@ -1642,7 +1647,7 @@
Geeklog can emulate a cronjob, i.e. trigger a certain action at a given time. The code
to be executed can be provided by a plugin or through the
CUSTOM_runScheduledTask function in your
- lib-custom.php. The value given is in seconds and specifies the
+ lib-custom.php. The value given is in seconds and specifies the
interval in which the code should be executed (e.g. 86400 for daily
activation).
Please note that to trigger this action, you will need to have someone
@@ -1682,7 +1687,7 @@
href="http://en.wikipedia.org/wiki/Clickjacking">Clickjacking: This
option indicates that the site's content should not be displayed in a frame.
This only works, however, when the visitor's browser respects the
- X-FRAME-OPTIONS HTTP header. Options are to disallow all framing
+ X-FRAME-OPTIONS HTTP header. Options are to disallow all framing
(Strict), only allow framing from within the same site (Same Origin), or to
allow all framing (disabled). We strongly suggest not to disable
this option.
for debugging purposes!
Tip: If an error prevents you from logging into your site to enable that
option, you can also enable it in your
- siteconfig.php file.
+ siteconfig.php file.
When emailstories (above) is enabled, send only the title and the
link to the new stories (0), or send the entire introtext (1) or send
- the first n characters from the introtext (where n = any other number)
+ the first n characters from the introtext (where n = any other number)
The IP addresses of comment posters are logged and displayed for admin users. When this variable is set to point to a service that can do IP address lookups, it's possible to lookup the owner of an IP address by clicking on it, making it easier to report abuse to ISPs, etc. $_CONF['ip_lookup'] should hold the complete URL to the lookup service, with a '*' marking the place where the IP address should go. It's also possible to use Tom Willet's NetTools package, in which case the correct setting would be $_CONF['ip_lookup'] = $_CONF['site_url'] . '/nettools/whois.php?domain=*';
Set this to true to restrict webservices usage
- to users with the webservices.atompub permission (e.g. those in
+ to users with the webservices.atompub permission (e.g. those in
the predefined "Webservices Users" group).
As the name implies, the file db-config.php contains the database
+
As the name implies, the file db-config.php contains the database
configuration. This information is put there during the initial install and
you should not normally have to edit this file.
The siteconfig.php file holds configuration data that can not be
+
The siteconfig.php file holds configuration data that can not be
stored in the database. Again, most of this information is put there during
the installation and you should not normally have to edit this file.
Same as the 'rootdebug' option
in the Configuration. However, sometimes an error may occur that prevents
you from logging into your site and enabling the 'rootdebug' option. In
such a case, you can uncomment this line and enable the option here.
In addition to 'true' and 'false', you can also set this option to 'force'
- (only in siteconfig.php). This will enable displaying of sensitive
+ (only in siteconfig.php). This will enable displaying of sensitive
information like passwords and cookies.
In any case, the same strong warning as above
applies here, too: Do not leave this option enabled on a "live"
@@ -2109,9 +2114,9 @@
This feature enhances the above URL Rewriting feature and makes
+ public_html/index.php work like a front controller. So, in order to use URL Routing feature,
+ you have to enable URL Rewriting beforehand. Currently, the following rules are predefined.
Look at the first row in the table. This means if you access "http://yourdomain/index.php/article/@sid/print",
+ then you will be redirected to "http://yourdomain/article.php?story=@sid&mode=print".
+ @sid is a story ID.
+
Then, look at the third row. You will see an at mark (@), followed by alphabetical
+ letters. This is a placeholder. For instance, when you access
+ "http://yourdomain/index.php/archives/all/2016/1", @topic matches "all", @year matches "2016",
+ and @month matches "1" in the rule. Then, all placeholders in the route will be replaced with
+ the matched values. And you will be redirected to "http://yourdomain/directory.php?topic=all&year=2016&month=1".
+
You don't have to include "/index.php" in a rule.
+
You must NOT start a route with "/index.php/", since this will cause an infinite loop. However, you can start
+ with a route with "/index.php?".
+
A placeholder starts with @ and an alphabetical letter or letters follow it.
+ Placeholders are case-sensitive.
+
URL Routing works in the reverse way as well. When you output a URL in your plugin or custom
+ function, you can URL-route it by using COM_buildURL function and adding your own rule and
+ route in the URL Routing screen (admin/router.php).
+
Note: This feature may not work with all web servers. It uses PHP's
+ $_SERVER['PATH_INFO'] variable. Please try it out before you go public with your site.
+
Advanced feature: If you use Apache as a Web server and want to remove "index.php"
+ from URLs you access, you have to do the following things. Be warned!
+ Unless you are familiar with Web server configurations, you might as well not use this feature.
+
+
Enable the rewrite module of your web server. In "httpd.conf", look for
+ # LoadModule rewrite_module modules/mod_rewrite.so
+ and uncomment the line by removing # at the top of the line. Don't forget to
+ reboot your Web server.
+
Create a file named ".htaccess" in the top of the public directory of your
+ Geeklog installation (where lib-common.php is located) and add the following lines.
+
+ <IfModule mod_rewrite.c>
+ RewriteEngine On
+ # RewriteBase /
+ # Directs all Geeklog requests through the site index file
+ RewriteCond %{REQUEST_FILENAME} !-f
+ RewriteCond %{REQUEST_FILENAME} !-d
+ RewriteRule ^(.*)$ /index.php/$1 [L]
+ </IfModule>
+
+ If you have installed Geeklog in a subdirectory of the document root, you will
+ have to change the line
+
will pull the default locale from the operating system. The date formats
are handled by your locale. Isn't that smart? Locale names are OS
dependent. On most UNIX hosts, you can find locale codes in the
-/usr/share/locale/locale.alias file and on some systems the command
-locale -a will display all available locales on a system. If a
-locale doesn't exist you can create it using the localedef command.
+/usr/share/locale/locale.alias file and on some systems the command
+locale -a will display all available locales on a system. If a
+locale doesn't exist you can create it using the localedef command.
%a - abbreviated weekday name according to the current locale
-
%A - full weekday name according to the current locale
-
%b - abbreviated month name according to the current locale
-
%B - full month name according to the current locale
-
%c - preferred date and time representation for the current locale
-
%C - century number (the year divided by 100 and truncated to an integer, range 00 to 99)
-
%d - day of the month as a decimal number (range 00 to 31)
-
%D - same as %m/%d/%y
-
%e - day of the month as a decimal number, a single digit is preceded by a space (range ' 1' to '31')
-
%h - same as %b
-
%H - hour as a decimal number using a 24-hour clock (range 00 to 23)
-
%I - hour as a decimal number using a 12-hour clock (range 01 to 12)
-
%j - day of the year as a decimal number (range 001 to 366)
-
%m - month as a decimal number (range 1 to 12)
-
%M - minute as a decimal number
-
%n - newline character
-
%p - either `am' or `pm' according to the given time value, or the corresponding strings for the current locale
-
%r - time in a.m. and p.m. notation
-
%R - time in 24 hour notation
-
%S - second as a decimal number
-
%t - tab character
-
%T - current time, equal to %H:%M:%S
-
%u - weekday as a decimal number [1,7], with 1 representing Monday
-
%U - week number of the current year as a decimal number, starting with the first Sunday as the first day of the first week
-
%V - The ISO 8601:1988 week number of the current year as a decimal number, range 01 to 53, where week 1 is the first week that has at least 4 days in the current year, and with Monday as the first day of the week.
-
%W - week number of the current year as a decimal number, starting with the first Monday as the first day of the first week
-
%w - day of the week as a decimal, Sunday being 0
-
%x - preferred date representation for the current locale without the time
-
%X - preferred time representation for the current locale without the date
-
%y - year as a decimal number without a century (range 00 to 99)
-
%Y - year as a decimal number including the century
-
%Z - time zone or name or abbreviation
-
%% - a literal `%' character
+
%a - abbreviated weekday name according to the current locale
+
%A - full weekday name according to the current locale
+
%b - abbreviated month name according to the current locale
+
%B - full month name according to the current locale
+
%c - preferred date and time representation for the current locale
+
%C - century number (the year divided by 100 and truncated to an integer, range 00 to 99)
+
%d - day of the month as a decimal number (range 00 to 31)
+
%D - same as %m/%d/%y
+
%e - day of the month as a decimal number, a single digit is preceded by a space (range ' 1' to '31')
+
%h - same as %b
+
%H - hour as a decimal number using a 24-hour clock (range 00 to 23)
+
%I - hour as a decimal number using a 12-hour clock (range 01 to 12)
+
%j - day of the year as a decimal number (range 001 to 366)
+
%m - month as a decimal number (range 1 to 12)
+
%M - minute as a decimal number
+
%n - newline character
+
%p - either `am' or `pm' according to the given time value, or the corresponding strings for the current locale
+
%r - time in a.m. and p.m. notation
+
%R - time in 24 hour notation
+
%S - second as a decimal number
+
%t - tab character
+
%T - current time, equal to %H:%M:%S
+
%u - weekday as a decimal number [1,7], with 1 representing Monday
+
%U - week number of the current year as a decimal number, starting with the first Sunday as the first day of the first week
+
%V - The ISO 8601:1988 week number of the current year as a decimal number, range 01 to 53, where week 1 is the first week that has at least 4 days in the current year, and with Monday as the first day of the week.
+
%W - week number of the current year as a decimal number, starting with the first Monday as the first day of the first week
+
%w - day of the week as a decimal, Sunday being 0
+
%x - preferred date representation for the current locale without the time
+
%X - preferred time representation for the current locale without the date
+
%y - year as a decimal number without a century (range 00 to 99)
+
%Y - year as a decimal number including the century
If set to true, mobile devices (phones and tablets) will be cached
+
If set to true, mobile devices (phones and tablets) will be cached
separately from computers. This includes the template files, blocks, articles and other plugins which may use
Geeklog's template cache system. You should only set this to false if you do not plan to display different information
depending on if a mobile device is detected being used by the user. Performance will be improved slightly if set to false since
@@ -602,7 +607,7 @@
「はい」にすると、外部サービスに既にアカウントを持っているユーザーがそのアカウント使ってGeeklogにログインできるようになります。現在サポートされているのは、LDAPとLiveJournalです。
- 特定のサービスを使ってログインできるようにするには、そのサービス用の認証クラスがsystem/classes/authenticationに必要です。したがって、LDAPを用いたログインは許可するがLiveJournalを用いたログインは禁止したいという場合、単に不要なサービスの認証クラスを削除するだけでよいのです。詳細は、Geeklogにおけるリモート認証(Remote Authentication in Geeklog)を参照してください。
+ 特定のサービスを使ってログインできるようにするには、そのサービス用の認証クラスがsystem/classes/authenticationに必要です。したがって、LDAPを用いたログインは許可するがLiveJournalを用いたログインは禁止したいという場合、単に不要なサービスの認証クラスを削除するだけでよいのです。詳細は、Geeklogにおけるリモート認証(Remote Authentication in Geeklog)を参照してください。
Allow (when set to true) users who already have
an account with GitHub to log into Geeklog with said account using OAuth. You must set the GitHub client id and client secret.
ロケールと日時のフォーマットの設定はコンフィギュレーションで行えます。ロケールを設定するには、適切な文字列を設定するか空白のままにしておきます。後者の場合は、オペレーティングシステムのロケールの既定値が使用されます。日時のフォーマットはロケールによって処理が決まります。ロケール名はオペレーティングシステムに依存します。ほとんどのUNIX系のホストでは、ロケールコードは/usr/share/locale/locale.alias ファイルに記述されており、locale -a コマンドで利用可能なロケールすべてを表示できるシステムもあります。ロケールが存在しない場合は、localedef コマンドで作成できます。
+
ロケールと日時のフォーマットの設定はコンフィギュレーションで行えます。ロケールを設定するには、適切な文字列を設定するか空白のままにしておきます。後者の場合は、オペレーティングシステムのロケールの既定値が使用されます。日時のフォーマットはロケールによって処理が決まります。ロケール名はオペレーティングシステムに依存します。ほとんどのUNIX系のホストでは、ロケールコードは/usr/share/locale/locale.alias ファイルに記述されており、locale -a コマンドで利用可能なロケールすべてを表示できるシステムもあります。ロケールが存在しない場合は、localedef コマンドで作成できます。