File: __init__.py

package info (click to toggle)
libcaca 0.99.beta20-6
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 5,540 kB
  • sloc: ansic: 25,091; php: 2,763; python: 2,637; cs: 1,213; cpp: 1,127; java: 916; objc: 836; makefile: 545; perl: 505; sh: 472; asm: 297; ruby: 215; xml: 33
file content (46 lines) | stat: -rw-r--r-- 1,283 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# -*- coding: utf-8 -*-
#
# libcaca       Colour ASCII-Art library
#               Python language bindings
# Copyright (c) 2010 Alex Foulon <alxf@lavabit.com>
#               All Rights Reserved
#
# This library is free software. It comes without any warranty, to
# the extent permitted by applicable law. You can redistribute it
# and/or modify it under the terms of the Do What the Fuck You Want
# to Public License, Version 2, as published by Sam Hocevar. See
# http://www.wtfpl.net/ for more details.
#

""" Libcaca Python bindings """

#standard modules
import locale
import sys
import ctypes
from ctypes.util import find_library

if find_library('caca') is not None:
    _lib = ctypes.cdll.LoadLibrary(find_library('caca'))
else:
    raise ImportError(
        "Can't find shared library, you need to install libcaca in your path !")

#functions to handle string/bytes in python3+
if sys.version_info[0:2] >= (3, 0):
    _PYTHON3 = True
else:
    _PYTHON3 = False

def _str_to_bytes(the_string):
    """ Translate string to bytes type for python 3.
    """
    return bytes(the_string, locale.getlocale()[1])

def _bytes_to_str(the_bytes):
    """ Translate bytes to string type for python 3.
    """
    return the_bytes.decode(locale.getlocale()[1])

from .common import *