mirror of
https://github.com/Llewellynvdm/conky.git
synced 2025-01-27 00:58:36 +00:00
Internationalization support
This patch adds i18n-support with gettext, all translatable strings in the code should be placed inside _() to make sure users see them in their own language (I only did this for print_version() for now)
This commit is contained in:
parent
be9b62f0aa
commit
b98ebc90ee
@ -48,6 +48,8 @@ mark_as_advanced(RELEASE)
|
||||
|
||||
option(MAINTAINER_MODE "Enable maintainer mode (builds docs)" false)
|
||||
|
||||
set(LOCALE_DIR "${CMAKE_INSTALL_PREFIX}/share/locale" CACHE STRING "Directory containing the locales")
|
||||
|
||||
# Some standard options
|
||||
set(SYSTEM_CONFIG_FILE "/etc/conky/conky.conf" CACHE STRING "Default system-wide Conky configuration file")
|
||||
# use FORCE below to make sure this changes when CMAKE_INSTALL_PREFIX is modified
|
||||
|
@ -15,6 +15,7 @@
|
||||
#define PACKAGE_LIBDIR "@PACKAGE_LIBRARY_DIR@"
|
||||
#define DEFAULTNETDEV "@DEFAULTNETDEV@"
|
||||
#define CONFIG_FILE "@CONFIG_FILE@"
|
||||
#define LOCALE_DIR "@LOCALE_DIR@"
|
||||
#define MAX_USER_TEXT_DEFAULT @MAX_USER_TEXT_DEFAULT@
|
||||
#define DEFAULT_TEXT_BUFFER_SIZE @DEFAULT_TEXT_BUFFER_SIZE@
|
||||
#define MAX_NET_INTERFACES @MAX_NET_INTERFACES@
|
||||
|
81
src/conky.cc
81
src/conky.cc
@ -80,6 +80,8 @@
|
||||
#ifdef BUILD_CURL
|
||||
#include <curl/curl.h>
|
||||
#endif
|
||||
#include <libintl.h>
|
||||
#define _(string) gettext(string)
|
||||
|
||||
/* local headers */
|
||||
#include "core.h"
|
||||
@ -190,110 +192,110 @@ static void reload_config(void);
|
||||
|
||||
static void print_version(void)
|
||||
{
|
||||
std::cout << PACKAGE_NAME" "VERSION" compiled "BUILD_DATE" for "BUILD_ARCH"\n"
|
||||
std::cout << _(PACKAGE_NAME" "VERSION" compiled "BUILD_DATE" for "BUILD_ARCH"\n"
|
||||
"\nCompiled in features:\n\n"
|
||||
"System config file: "SYSTEM_CONFIG_FILE"\n"
|
||||
"Package library path: "PACKAGE_LIBDIR"\n\n"
|
||||
"Package library path: "PACKAGE_LIBDIR"\n\n")
|
||||
#ifdef BUILD_X11
|
||||
" X11:\n"
|
||||
<< " X11:\n"
|
||||
# ifdef BUILD_XDAMAGE
|
||||
" * Xdamage extension\n"
|
||||
<< _(" * Xdamage extension\n")
|
||||
# endif /* BUILD_XDAMAGE */
|
||||
# ifdef BUILD_XDBE
|
||||
" * XDBE (double buffer extension)\n"
|
||||
<< _(" * XDBE (double buffer extension)\n")
|
||||
# endif /* BUILD_XDBE */
|
||||
# ifdef BUILD_XFT
|
||||
" * Xft\n"
|
||||
<< " * Xft\n"
|
||||
# endif /* BUILD_XFT */
|
||||
# ifdef BUILD_ARGB
|
||||
" * ARGB visual\n"
|
||||
<< _(" * ARGB visual\n")
|
||||
# endif /* BUILD_ARGB */
|
||||
#endif /* BUILD_X11 */
|
||||
"\n Music detection:\n"
|
||||
<< _("\n Music detection:\n")
|
||||
#ifdef BUILD_AUDACIOUS
|
||||
" * Audacious\n"
|
||||
<< " * Audacious\n"
|
||||
#endif /* BUILD_AUDACIOUS */
|
||||
#ifdef BUILD_BMPX
|
||||
" * BMPx\n"
|
||||
<< " * BMPx\n"
|
||||
#endif /* BUILD_BMPX */
|
||||
#ifdef BUILD_MPD
|
||||
" * MPD\n"
|
||||
<< " * MPD\n"
|
||||
#endif /* BUILD_MPD */
|
||||
#ifdef BUILD_MOC
|
||||
" * MOC\n"
|
||||
<< " * MOC\n"
|
||||
#endif /* BUILD_MOC */
|
||||
#ifdef BUILD_XMMS2
|
||||
" * XMMS2\n"
|
||||
<< " * XMMS2\n"
|
||||
#endif /* BUILD_XMMS2 */
|
||||
"\n General:\n"
|
||||
<< _("\n General:\n")
|
||||
#ifdef HAVE_OPENMP
|
||||
" * OpenMP\n"
|
||||
<< " * OpenMP\n"
|
||||
#endif /* HAVE_OPENMP */
|
||||
#ifdef BUILD_MATH
|
||||
" * math\n"
|
||||
<< _(" * math\n")
|
||||
#endif /* BUILD_MATH */
|
||||
#ifdef BUILD_HDDTEMP
|
||||
" * hddtemp\n"
|
||||
<< " * hddtemp\n"
|
||||
#endif /* BUILD_HDDTEMP */
|
||||
#ifdef BUILD_PORT_MONITORS
|
||||
" * portmon\n"
|
||||
<< " * portmon\n"
|
||||
#endif /* BUILD_PORT_MONITORS */
|
||||
#ifdef BUILD_HTTP
|
||||
" * HTTP\n"
|
||||
<< " * HTTP\n"
|
||||
#endif
|
||||
#ifdef BUILD_IRC
|
||||
" * IRC\n"
|
||||
<< " * IRC\n"
|
||||
#endif
|
||||
#ifdef BUILD_CURL
|
||||
" * Curl\n"
|
||||
<< " * Curl\n"
|
||||
#endif /* BUILD_CURL */
|
||||
#ifdef BUILD_RSS
|
||||
" * RSS\n"
|
||||
<< " * RSS\n"
|
||||
#endif /* BUILD_RSS */
|
||||
#ifdef BUILD_WEATHER_METAR
|
||||
" * Weather (METAR)\n"
|
||||
<< _(" * Weather (METAR)\n")
|
||||
#ifdef BUILD_WEATHER_XOAP
|
||||
" * Weather (XOAP)\n"
|
||||
<< _(" * Weather (XOAP)\n")
|
||||
#endif /* BUILD_WEATHER_XOAP */
|
||||
#endif /* BUILD_WEATHER_METAR */
|
||||
#ifdef BUILD_WLAN
|
||||
" * wireless\n"
|
||||
<< _(" * wireless\n")
|
||||
#endif /* BUILD_WLAN */
|
||||
#ifdef BUILD_IBM
|
||||
" * support for IBM/Lenovo notebooks\n"
|
||||
<< _(" * support for IBM/Lenovo notebooks\n")
|
||||
#endif /* BUILD_IBM */
|
||||
#ifdef BUILD_NVIDIA
|
||||
" * nvidia\n"
|
||||
<< " * nvidia\n"
|
||||
#endif /* BUILD_NVIDIA */
|
||||
#ifdef BUILD_EVE
|
||||
" * eve-online\n"
|
||||
<< _(" * eve-online\n")
|
||||
#endif /* BUILD_EVE */
|
||||
#ifdef BUILD_BUILTIN_CONFIG
|
||||
" * builtin default configuration\n"
|
||||
<< _(" * builtin default configuration\n")
|
||||
#endif /* BUILD_BUILTIN_CONFIG */
|
||||
#ifdef BUILD_IMLIB2
|
||||
" * Imlib2\n"
|
||||
<< " * Imlib2\n"
|
||||
#endif /* BUILD_IMLIB2 */
|
||||
#ifdef BUILD_MIXER_ALSA
|
||||
" * ALSA mixer support\n"
|
||||
<< _(" * ALSA mixer support\n")
|
||||
#endif /* BUILD_MIXER_ALSA */
|
||||
#ifdef BUILD_APCUPSD
|
||||
" * apcupsd\n"
|
||||
<< " * apcupsd\n"
|
||||
#endif /* BUILD_APCUPSD */
|
||||
#ifdef BUILD_IOSTATS
|
||||
" * iostats\n"
|
||||
<< " * iostats\n"
|
||||
#endif /* BUILD_IOSTATS */
|
||||
#ifdef BUILD_NCURSES
|
||||
" * ncurses\n"
|
||||
<< " * ncurses\n"
|
||||
#endif /* BUILD_NCURSES */
|
||||
#ifdef BUILD_LUA
|
||||
" * Lua\n"
|
||||
"\n Lua bindings:\n"
|
||||
<< " * Lua\n"
|
||||
<< _("\n Lua bindings:\n")
|
||||
#ifdef BUILD_LUA_CAIRO
|
||||
" * Cairo\n"
|
||||
<< " * Cairo\n"
|
||||
#endif /* BUILD_LUA_CAIRO */
|
||||
#ifdef BUILD_LUA_IMLIB2
|
||||
" * Imlib2\n"
|
||||
<< " * Imlib2\n"
|
||||
#endif /* BUILD_LUA_IMLIB2 */
|
||||
#endif /* BUILD_LUA */
|
||||
;
|
||||
@ -4392,6 +4394,9 @@ bool isutf8(const char* envvar) {
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
setlocale(LC_ALL, "");
|
||||
bindtextdomain(PACKAGE_NAME, LOCALE_DIR);
|
||||
textdomain(PACKAGE_NAME);
|
||||
argc_copy = argc;
|
||||
argv_copy = argv;
|
||||
g_signal_pending = 0;
|
||||
|
Loading…
x
Reference in New Issue
Block a user