semvec/pypi-packages huggingface dataset:
tomber 1.0.5
a python Tomb (the Crypto Undertaker) wrapper
License: BSD
Keywords: tomb wrapper

Tomber
=========


Description
-----------

Tomber is a python wrapper for [Tomb](https://github.com/dyne/Tomb).
It relies on Python's subprocess module for Tomb command
execution. This project was inspired by pytomb which was included in
Tomb ./extras in the past but is no longer maintained.

The included test.jpg image file is used to test the `tbury()` and
`texhume()` functions.

To speedup forge, an entropy generator such as
[haveged](http://www.issihosts.com/haveged/) can be installed.


Compatibity
----------

Current version requieres at least Tomb v2.2 to run.
If for any reason you need to use older Tomb version with tomber, please
install tomber v1.0.2


Installation
----------

First, Tomb must be installed. Please refer to the
[Tomb documentation](https://github.com/dyne/Tomb/blob/master/INSTALL.md)
to get Tomb installed on your system.

Second, tomber must be installed. Tomber can be installed from
[PyPi](https://pypi.python.org/pypi) using
[pip](https://pypi.python.org/pypi/pip). Enter the following command
into terminal:

	pip install tomber

Alternatively you can clone this public repository by entering the following
command into terminal.

	git clone https://github.com/reiven/tomber


Example usage
-------------
```python
from tomber import *

# dig a tomb of 20mb
tdig('test.tomb',20)

# forge a key
tforge('test.key', 'this is the passphrase for the key')

# lock the tomb
tlock('test.tomb', 'test.key', 'this is the passphrase for the key')

# open the tomb
topen('test.tomb', 'test.key', 'this is the passphrase for the key', '/tmp/tomb')

# close the tomb
tclose('test')
```

Running tests
-------------

Keep in mind that the included *test.py* file execute the
`Tomb.slam()` command which will likely close any tombs, encrypted
volumes, you may have open.


License
-------

This package is distributed under BSD License.
See [LICENSE](https://github.com/reiven/pynientos/blob/master/LICENSE)
codepoints 1.0
Converts code point sequences to and from Unicode strings
License: BSD
Keywords: unicode utf16 surrogate pair bmp smp astral codepoint codeunit emoji maxunicode

Unicode Code Points for Python
==============================

Until Python 3.3, the Python runtime could be compiled in one of two Unicode modes:

1. ``sys.maxunicode == 0x10FFFF``

   In this mode, Python's Unicode strings support the full range of Unicode code points from U+0000 to U+10FFFF. One code point is represented by one string element::

      >>> import sys
      >>> hex(sys.maxunicode)
      '0x10ffff'
      >>> len(u'\U0001F40D')
      1
      >>> [c for c in u'\U0001F40D']
      [u'\U0001f40d']

   This is the default for Python 2.7 on Linux, as well as universally on Python 3.3 and later across all operating systems.

2. ``sys.maxunicode == 0xFFFF``

   In this mode, Python's Unicode strings only support the range of Unicode code points from U+0000 to U+FFFF. Any code points from U+10000 through U+10FFFF are represented using a pair of string elements in the UTF-16 encoding::

      >>> import sys
      >>> hex(sys.maxunicode)
      '0xffff'
      >>> len(u'\U0001F40D')
      2
      >>> [c for c in u'\U0001F40D']
      [u'\ud83d', u'\udc0d']

   This is the default for Python 2.7 on macOS and Windows.

This runtime difference makes writing Python modules to manipulate Unicode strings as series of codepoints quite inconvenient.

The codepoints module
=====================

This module solves the problem by exposing APIs to convert Unicode strings to and from lists of code points, regardless of the underlying setting for ``sys.maxunicode``::

    >>> hex(sys.maxunicode)
    '0xffff'
    >>> snake = tuple(codepoints.from_unicode(u'\U0001F40D'))
    >>> len(snake)
    1
    >>> snake[0]
    128013
    >> hex(snake[0])
    '0x1f40d'
    >>> codepoints.to_unicode(snake)
    u'\U0001f40d'