semvec/pypi-packages huggingface dataset:
codi 1.0.2
Multiple configuration directories for your program.
Keywords: multiple,configuration

:Date: 2018-10-06
:Version: 1.0.2
:Authors:
    * Mohammad Alghafli <thebsom@gmail.com>

Multiple configuration directories for your program.
This library is useful if you have the following situation: you have a config
directory where you store default configuration and another config directory
where you store user custom configuration. When a user runs your program for the
first time, no files exist in the user config directory and you want to read
everything from the default config directory. When you write a config file, it
must always be written in the user config directory.
This library does this for you. You specify user config directory and any more
directories you want to use for default config files. When you open a file for
reading, the library opens the file from the user config directory if it exists.
Otherwise, it searches for the file in the default config directories. When you
open a file for writing, it is always opened in the user config directory. A
typical usage example is below::
    
    from codi import *

    #assume we have 2 config directories:
    #   * default-cfg/
    #   * user-cfg/
    #
    #in other words, we have the following directory structure:
    #
    #
    #default-cfg/
    #|
    #--path/
    #  |
    #  --to/
    #    |
    #    |-file.txt
    #    |
    #    --file.bin
    #
    #
    #
    #user-cfg/


    #user config dir
    user_dir = 'user-cfg/'
    #default config dir
    default_dir = 'default-cfg/'

    #create a Codi object. you can give more than 2 dirs if you need.
    config_dirs = Codi(user_dir, default_dir)

    #read a file. args are same as builtin open
    #will first try to open `user-cfg/path/to/file.txt`. because the file does
    #not exist, will go to the next config dir and open
    #`default-cfg/path/to/file.txt`.
    f = config_dirs.open('path/to/file.txt')
    print(f.read())
    f.close()

    #write a file.
    #will always write in `user-cfg/path/to/file.txt`. any parent directories
    #that do not exist will be created
    f = config_dirs.open('path/to/file.txt', 'w')
    print('hello world', file=f)
    f.close()

    #convinience method to read data
    #text. default encoding is utf8
    #will open `user-cfg/path/to/file.txt` because it exists from our previous
    #write operation.
    print(config_dirs.read('path/to/file.txt', encoding='ascii'))
    #binary
    #will open `default-cfg/path/to/file.bin`
    print(config_dirs.read('path/to/file.bin', text=False))

    #convinience method to write data
    #text. default encoding is utf8
    #will always write in `user-cfg/path/to/file.txt`.
    config_dirs.write('path/to/file.txt', 'hello world', encoding='ascii')
    #binary
    #again, will always write in `user-cfg/path/to/file.bin`.
    config_dirs.write('path/to/file.bin', b'some binary data')
    
The library also provides `Config` class which acts as a dict for config values.
It adds the ability to set default values.

    --------
    Tutorial
    --------
    Check out codi tutorial at http://codi.readthedocs.io/
connotati 0.1.0.2
Start gtk apps with given theme

# Connotati

[![License: GPL v3+](https://img.shields.io/badge/license-GPL%20v3%2B-blue.svg)](http://www.gnu.org/licenses/gpl-3.0)

![an example run](https://raw.githubusercontent.com/tallero/connotati/master/screenshots/connotati-in-action.gif)

*Connotati* (Italian for *salient characteristics and markings*) is a small stupid `python 3.x` script for GNU/Linux or other POSIX systems supported by GTK+ (and supported by `xdotool` and `xprop` for windows pattern matching feature) to start GTK+ applications with given theme and variant.

## Installation

*Connotati* is available through the [Python Package Index (PyPI)](https://pypi.org/). Pip is already installed if you are using Python 3 >=3.4 downloaded from [python.org](https://python.org); if you're using a GNU/Linux distribution, you can find how to install it on this [page](https://packaging.python.org/guides/installing-using-linux-tools/#installing-pip-setuptools-wheel-with-linux-package-managers).
After setting up pip, you can install *connotati* by simply typing in your terminal

    pip3 install connotati

## Usage

The script source code is heavily documented; you can access the command line help with

    connotati --help

## About

This program is licensed under [GNU General Public License v3 or later](https://www.gnu.org/licenses/gpl-3.0.en.html) by [Pellegrino Prevete](http://prevete.ml). If you find this program useful, consider offering me a [beer](https://patreon.com/tallero), a new [computer](https://patreon.com/tallero) or a part time remote [job](mailto:pellegrinoprevete@gmail.com) to help me pay the bills.
trovotutto 0.0.1.1
small search engine using k-grams

# Trovotutto

[![License: GPL v3+](https://img.shields.io/badge/license-GPL%20v3%2B-blue.svg)](http://www.gnu.org/licenses/gpl-3.0) 
[![Python 3.x Support](https://img.shields.io/pypi/pyversions/Django.svg)](https://python.org)


![trovotutto command line tool](https://raw.githubusercontent.com/tallero/trovotutto/master/screenshots/trovotutto-cmd.gif)

*Trovotutto* (Italian for *"I find everything*) is a small naive `python 3.x` search engine using k-grams. It was conceived as a `find` replacement that would be tolerant to typos and that would take paths into consideration when searching.

At the time of writing it supports recursively searching for files in a directory (according to various criteria) and in PGPgrams databases. Anyway, it is so small that can be easily extended to work on other data structures.

## Installation

*Trovotutto* is available through the [Python Package Index (PyPI)](https://pypi.org/). Pip is already installed if you are using Python 3 >=3.4 downloaded from [python.org](https://python.org); if you're using a GNU/Linux distribution, you can find how to install it on this [page](https://packaging.python.org/guides/installing-using-linux-tools/#installing-pip-setuptools-wheel-with-linux-package-managers).
After setting up pip, you can install *trovotutto* by simply typing in your terminal

    pip3 install trovotutto

## Usage

Trovotutto install a command line utility with the same name that can be used to search and open search results. Application selection is handled through `xdg-open`, so be sure to have it installed if you want to use it this way. The command line is not recommended for performance when searching in large directories because by defaults it rebuilds the database at each run.

More proficient usage is obtained in IPython console for repeated usage, as the index is kept in memory:

![trovotutto from ipython](https://raw.githubusercontent.com/tallero/trovotutto/master/screenshots/trovotutto-ipython.gif)

## About

This program is licensed under [GNU General Public License v3 or later](https://www.gnu.org/licenses/gpl-3.0.en.html) by [Pellegrino Prevete](http://prevete.ml). If you find this program useful, consider offering me a [beer](https://patreon.com/tallero), a new [computer](https://patreon.com/tallero) or a part time remote [job](mailto:pellegrinoprevete@gmail.com) to help me pay the bills.