summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortagoh <tagoh>2006-09-07 06:06:50 +0000
committertagoh <tagoh>2006-09-07 06:06:50 +0000
commit9de827fc17030f1183f3db8690e5706ab398bb94 (patch)
tree1240b09601e502aa1ce870a1db77eac2cd5d03c0
parentecc81abc023597d18d2ddd82163954b11e40d85d (diff)
downloadpaps-9de827fc17030f1183f3db8690e5706ab398bb94.tar.gz
paps-9de827fc17030f1183f3db8690e5706ab398bb94.tar.xz
paps-9de827fc17030f1183f3db8690e5706ab398bb94.zip
* src/paps.c (get_language): new function.
(main): give a proper language to PangoContext. (#1512384)
-rw-r--r--ChangeLog2
-rw-r--r--src/paps.c23
2 files changed, 24 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 1a110fe..bee969b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,8 @@
* src/paps.c: added the missing header file.
(main): added --font option instead of --font-scale and --family, which
works like specifying PangoFontDescription. (#1512382)
+ (get_language): new function.
+ (main): give a proper language to PangoContext. (#1512384)
* src/paps.1: removed --font-scale and --family description and added
--font instead.
diff --git a/src/paps.c b/src/paps.c
index 582bf96..a263b9a 100644
--- a/src/paps.c
+++ b/src/paps.c
@@ -28,6 +28,7 @@
#include <stdio.h>
#include <string.h>
#include <time.h>
+#include <locale.h>
#define BUFSIZE 1024
#define DEFAULT_FONT_FAMILY "Monospace"
@@ -188,6 +189,26 @@ _paps_arg_paper_cb(const char *option_name,
return retval;
}
+static PangoLanguage *
+get_language(void)
+{
+ PangoLanguage *retval;
+ gchar *lang = g_strdup (setlocale (LC_CTYPE, NULL));
+ gchar *p;
+
+ p = strchr (lang, '.');
+ if (p)
+ *p = 0;
+ p = strchr (lang, '@');
+ if (p)
+ *p = 0;
+
+ retval = pango_language_from_string (lang);
+ g_free (lang);
+
+ return retval;
+}
+
int main(int argc, char *argv[])
{
gboolean do_landscape = FALSE, do_rtl = FALSE, do_justify = FALSE, do_draw_header = FALSE;
@@ -269,7 +290,7 @@ int main(int argc, char *argv[])
pango_context = paps_get_pango_context (paps);
/* Setup pango */
- pango_context_set_language (pango_context, pango_language_from_string ("en_US"));
+ pango_context_set_language (pango_context, get_language ());
pango_context_set_base_dir (pango_context, pango_dir);
/* create the font description */