semvec/pypi-packages huggingface dataset:
tkml 0.5
Tkinter gui representation

# TkML

Library to build [Tkinter](https://docs.python.org/3/library/tkinter.html)
structures from [YAML](http://yaml.org/) descriptions.

It requires [PyYAML 3.12](http://pyyaml.org/wiki/PyYAML).

## Use

```python
import tkml

...

with open(filename) as fp:
    toplevel = tkml.load_fp(fp)
```

There is a fixtures factory too:

```python
import tkml

# With no arguments, it assumes fixtures/ subdirectory neighbor to current script
loader = tkml.fixtures()
toplevel = loader('my-app.yaml')
```

### API

`tkml.load_fp()`:

- `fp: io.TextBase`: file pointer to YAML file
- `master: tkinter.Misc`: parent widget
- `use_tix: bool`: use or not `tix` – defaults to false
- `context`: context to `ctx[]`, `argparse.Namespace`,
  `collections.namedtuple`, or `dict`
- returns the toplevel widget

`tkml.fixtures()`:

- `origin: str`: the directory containing the YAML files, defaults to
  subdirectory `fixtures/` neighbor to the script calling the factory
- returns the loader function

Loader function returned by `tkml.fixtures()`:

- `fixture: str`: YAML file name under fixtures directory
- `master: tkinter.Misc`: parent widget
- `use_tix: bool`: use or not `tix` – defaults to false
- `context`: context to `ctx[]`, `argparse.Namespace`,
  `collections.namedtuple`, or `dict`
- returns the toplevel widget

## Resource example

```yaml
tk:
  children:
    - frame:
        children:
          - frame:
              children:
                - label:
                    text: _(word-to-search)
                    pack:
                      anchor: nw
                      side: left
                      expand: false
                - entry:
                    pack:
                      anchor: ne
                      side: right
                      fill: x
                      expand: true
                    bind:
                      <Return>: ctx[search]
                    focus: null
              pack:
                anchor: n
                fill: x
                expand: true
          - button:
              text: _(search)
              command: ctx[search]
              pack:
                anchor: s
                expand: false
          - scrolled-text:
              call/set_text:
                - ctx[set_text]
                - "!self"
              wrap: word
              pack:
                anchor: s
                fill: both
                expand: true
        pack:
          fill: both
          expand: true

  #
  # Calls after tree is built:
  #

  option-add:
    - "*tearOff"
    - false

  # call/* call the CAR (a callable) with CDR as parameters
  call/set_entry:
    - ctx[set_entry]
    - "!frame.!frame.!entry"
```

- `ctx[*]` gets a key from the context.
- `_(*)` is the [`gettext` function](https://docs.python.org/3/library/gettext.html#gettext.gettext).
- `!self` is the current widget.
- `!frame.frame2` is the second frame from inside de first frame at top.

## Copyright

This library is under
[3-Clause BSD License](https://opensource.org/licenses/BSD-3-Clause).

You can read the copying text
[here](https://bitbucket.org/cacilhas/tkml/src/master/LICENSE.txt).
travis-passed 0.0.0
check for travis tests are passed
Keywords: travis tests

### Requirements

[Travis CI Client](https://github.com/travis-ci/travis.rb#installation) required

### Install

```bash
$ [sudo] pip install travis-passed
```

### Features

+   detect github fullname
+   `exit 0` if tests passed, `exit 1` otherwise and output status

### Usage

```bash
usage: travis-passed
```

### Examples

```bash
$ cd path/to/repo
$ travis-passed && echo "tests passed" || "tests failed"
```
npmjs-register 0.0.0
register npmjs.com package
Keywords: npmjs

### Install

```bash
$ [sudo] pip install npmjs-register
```

### Features

+   register npmjs.com package
+   skip if package exists
+   print package url

### Usage

```
usage: npmjs-register name ...
```

### Examples

```bash
$ npmjs-register name1 name2
```
gitconfig 1.0.2
Gitconfig class and gitconfig variable for ~/.gitconfig
Keywords: git config

### Install

```bash
$ [sudo] pip install gitconfig
```

### Usage

```python
from gitconfig import *

gitconfig.sections
>>> [...]

gitconfig.user.password
>>> 'secret'

gitconfig.not_existing
>>> None
```

### Sources

+   [`gitconfig.GitConfig(Conf)`](https://github.com/looking-for-a-job/gitconfig.py/blob/master/gitconfig/__init__.py)
export-file 0.0.1
create environment variables from text files
Keywords: environment

### Install

```bash
$ [sudo] pip install export-file
```

### Features

+   create environment variables from text files - filename as variable name, content as value
+   ignore not existing and empty files

### Usage

```bash
usage: export-file path ...
```

### Examples

```bash
$ export-file description.txt keywords.txt
export DESCRIPTION="@accepts decorator to check arguments types"
export KEYWORDS="type decorator"

$ eval <<< export-file description.txt keywords.txt
$ echo $DESCRIPTION
repo description
```

`find` files:
```
$ IFS=;find="$(find -H . -type f -name "*.txt")"
$ [[ -n "$find ]] && { IFS=$'\n';set $find; eval "$(export-file "$@")"; }
```
badges 0.0.1
badge image class
Keywords: badge

### Install

```bash
$ [sudo] pip install badges
```

### Features

+   **md**, **rst** support
+   autoformat strings with instance and class variables
+   **minimalistic design, easy subclassing**
+   CircleCI, Travis, ... badge classes

### Examples

```python
# format attributes - {attrname}
>>> class CustomBadge(badges.Badge):
    branch = "master"
    link = "https://site.com/{fullname}"
    image = "https://site.com/{fullname}?branch={branch}.svg"

>>> CustomBadge(fullname="owner/repo")
'[![](https://site.com/owner/repo?branch=master.svg)](https://site.com/owner/repo)'

# format @property - {0.propname}
>>> class CustomBadge(badges.Badge):
    branch = "master"
    link = "https://site.com/{0.fullname}"
    image = "https://site.com/{0.fullname}?branch={branch}.svg"

    @property
    def fullname(self):
        return "/".join(os.getcwd().split("/")[-2:])

>>> CustomBadge()
'[![](https://site.com/owner/repo?branch=master.svg)](https://site.com/owner/repo)'

```

### Sources

+   [`badges/badge.Badge`](https://github.com/looking-for-a-job/badges.py/blob/master/badges/badge.py)
+   [`badges/bettercodehub.Bettercodehub(GitBadge)`](https://github.com/looking-for-a-job/badges.py/blob/master/badges/bettercodehub.py)
+   [`badges/circleci.Circleci(GitBadge)`](https://github.com/looking-for-a-job/badges.py/blob/master/badges/circleci.py)
+   [`badges/codeclimate.Codeclimate(GitBadge)`](https://github.com/looking-for-a-job/badges.py/blob/master/badges/codeclimate.py)
+   [`badges/codecov.Codecov(GitBadge)`](https://github.com/looking-for-a-job/badges.py/blob/master/badges/codecov.py)
+   [`badges/codefactor.Codefactor(GitBadge)`](https://github.com/looking-for-a-job/badges.py/blob/master/badges/codefactor.py)
+   [`badges/gitbadge.GitBadge(Badge)`](https://github.com/looking-for-a-job/badges.py/blob/master/badges/gitbadge.py)
+   [`badges/scrutinizer.Scrutinizer(GitBadge)`](https://github.com/looking-for-a-job/badges.py/blob/master/badges/scrutinizer.py)
+   [`badges/semaphoreci.Semaphoreci(GitBadge)`](https://github.com/looking-for-a-job/badges.py/blob/master/badges/semaphoreci.py)
+   [`badges/sonarcloud.Sonarcloud(Badge)`](https://github.com/looking-for-a-job/badges.py/blob/master/badges/sonarcloud.py)
+   [`badges/travis.Travis(GitBadge)`](https://github.com/looking-for-a-job/badges.py/blob/master/badges/travis.py)
satori-serpentarium 0.0.2a4
Satori composer for Python
Requires Python: >=3.6.5

# Satori Python composition framework (alpha release)

## Requirements
Python 3.6+

## Run locally
```
pip install serpentarium
python -m serpentariun $CONFIG_PATH
```
Sample config: `serpentarium/serpentarium/config.yml`

## Writing your own bot
See a real [example](https://bitbucket.addsrv.com/projects/SATSOL/repos/gtfs-rt-prediction-bot/browse)

## Draw a mod hierarchy graph

    0. Install graphviz (brew insatll graphviz)
    1. Run module with -d True
    2. Check __main__.py for more info