Difference between revisions of "D-Bus examples"
Jump to navigation
Jump to search
| Line 1: | Line 1: | ||
Here are some code snippets for various programming languages showing how you can interface with Apertium by means of D-Bus. You'll need to install the [[D-Bus service for Apertium]]. |
Here are some code snippets for various programming languages (complete with completely unnecessary comments) showing how you can interface with Apertium by means of D-Bus. You'll need to install the [[D-Bus service for Apertium]]. |
||
==Python== |
==Python== |
||
| Line 13: | Line 13: | ||
sys.stdout = codecs.getwriter('utf-8')(sys.stdout); |
sys.stdout = codecs.getwriter('utf-8')(sys.stdout); |
||
mode_name = 'en-af'; # The name of the installed mode |
|||
dbus_mode_name = '/' + '_'.join(pair_name.split('-')); # Some mandatory mangling |
|||
bus = dbus.SessionBus(); |
bus = dbus.SessionBus(); # Create a new session bus |
||
translator = dbus.Interface(bus.get_object('org.apertium.mode', |
translator = dbus.Interface(bus.get_object('org.apertium.mode', dbus_mode_name), 'org.apertium.Mode'); # Get the translator |
||
input = sys.stdin.read(); |
input = sys.stdin.read(); # Read the data |
||
print translator.translate({}, input); |
print translator.translate({}, input); # Print the translation |
||
</pre> |
</pre> |
||
Revision as of 19:34, 18 December 2007
Here are some code snippets for various programming languages (complete with completely unnecessary comments) showing how you can interface with Apertium by means of D-Bus. You'll need to install the D-Bus service for Apertium.
Python
#!/usr/bin/python
# coding=utf-8
# -*- encoding: utf-8 -*-
import dbus, sys, codecs;
sys.stdin = codecs.getwriter('utf-8')(sys.stdin);
sys.stdout = codecs.getwriter('utf-8')(sys.stdout);
mode_name = 'en-af'; # The name of the installed mode
dbus_mode_name = '/' + '_'.join(pair_name.split('-')); # Some mandatory mangling
bus = dbus.SessionBus(); # Create a new session bus
translator = dbus.Interface(bus.get_object('org.apertium.mode', dbus_mode_name), 'org.apertium.Mode'); # Get the translator
input = sys.stdin.read(); # Read the data
print translator.translate({}, input); # Print the translation