semvec/pypi-packages huggingface dataset:
cws-clisearch 0.3.2
A CLI web search tool.
Requires Python: >=3.7

# Cws

CLI web search is a CLI search tool that shows the first N results from select search engines.

This started out because I wanted a way to play youtube video's in mpv without needing to open a browser first, because then why not watch it in my browser in the first place. I did find some similar projects but they just opened the results in my browser instead which was once again defeating the point.

The main use-cases are:
* Searching and fetching youtube/google/'whatever gets implemented' search results from the command line
* Executing default actions per search provider with the -x flag (see configuration), like opening youtube results in mpv
* Piping results to external commands to open/play results like your web browser or mpv for youtube

it heavily relies on [rapidapi](https://rapidapi.com/) endpoints for now. Which means you need to register and configure personal API tokens for this to work. See the [configuration](#configuration) section below for more info.

Development is done on irregular intervals, while heavily distracted so expect nothing.
This is currently a first usable version, that will probably change a lot. Core functionality should stay about the same though.

Todo (for now):
* -c flag that shows only 1 result and copies that
* Interactive mode that allows selection of result and applying an action like copy or open
* Add more search providers
* Possibly add some webscraping fallback for when no api's are configured or free limits are reached

## Installation

```bash
$ pip install cws_clisearch
```

## Configuration

Configuration is done through .yml files either in `$HOME` or `$XDG_HOME/cws/`.
There's 2 different config files, one mandatory and one optional:
* .cws_tokens.yml (mandatory)
* .cws_config.yml (optional)

### .cws_tokens.yml

This is where your [rapidapi](https://rapidapi.com/) tokens are loaded from.

Example:
```yaml
google: "$token" # Get it from https://rapidapi.com/apigeek/api/google-search3/
youtube: "$token" # Get it from https://rapidapi.com/marindelija/api/youtube-search-results/
```

Use the `--list-providers` option to list all posibilities.

### .cws_config.yml

This is where you override default settings of cws.

Example with defaults shown:
```yaml
default_provider: 'google'
provider:
  youtube:
    default_action: 'mpv'
  google:
    default_action: 'firefox'
```

## Usage

See `cws -h` for general usage information.

For now Google is the default search provider. The -x option implies -u and -n1, then pipes that output to whatever you want.
It's also safe to manually use the -u and -n1 options to pipe results. This does not work with mpv, just like `echo '$youtube_url' | mpv` wouldn't. Use -x as a work-around.
sim-racing-tools 2021.6.2
A collection of tools to make sim-racing more fun
Requires Python: >=3.6
Keywords: Assetto Corsa,Automation,Sim Racing

# sim-racing-tools
A collection of python tools to make sim-racing more fun. All a work in-progress based on things I've 
been playing around with. Feel free to contribute with any ideas or suggestions and let me know if you find any
bugs.

## Installation
### Pre-requisites
- A Windows computer (I plan to support Linux in future)
- The [Git](https://git-scm.com/downloads) version control system needs to be installed
- [python3](https://www.python.org/downloads/) needs to be installed
- Either [Content Manager](https://assettocorsa.club/content-manager.html) _or_ [QuickBMS](http://aluigi.altervista.org/quickbms.htm) needs to be downloaded and you will need to know the folder it is in. We will need to use one of these to unpack data.acd files.
- If using QuickBMS the [.acd extractor plugin](http://aluigi.org/papers/bms/others/assetto_corsa_acd.bms) for QuickBMS needs to be downloaded and placed inside the folder containing `quickbms.exe`
- A willingness to hack around with a bit of python programming

### Optional first step:
I would recommend creating a [python virtual environment](https://docs.python.org/3/library/venv.html) 
to install the tools into. This will allow you to use the tools in an isolated environment without installing
anything system-wide.  

### Creating a virtual environment
To setup a virtual environment first decide where you would like this to live, change into that directory and
[open a command-prompt within it](https://helpdeskgeek.com/how-to/open-command-prompt-folder-windows-explorer/). Inside the command prompt run the command:
```commandline
py -m venv sim-racing-tool-venv
```
That will have created a folder called `sim-racing-tool-venv` inside the directory you are in.

### Entering the virtual environment
This newly created folder contains a self-contained python environment that you can enter at anytime
by opening a command prompt inside the `sim-racing-tool-venv` folder and running:
```
.\Scripts\activate.bat
```
this command prompt window will now be running in the virtual environment and anything you install will only
be installed into it - rather than on the whole system

### Exiting the virtual environment
You can exit a virtual environment at any time by typing `deactivate` into the console

### Downloading and installing sim-racing-tools
To download and install first make sure that you have entered the virtual environment (if you set one up) and 
run the following command inside it:
```
py -m pip install git+https://github.com/zephyrj/sim-racing-tools@main
```
The tools will now be installed and available from a inside your virtual environment.

## Things you can do
- [Clone existing AC car](sim_racing_tools/assetto_corsa/docs/clone_car.md)  
- [Transfer an engine made in Automation into a car in AC](sim_racing_tools/assetto_corsa/docs/swap_automation_engine.md)  
- [Check that an engine created in Automation matches some criteria](sim_racing_tools/automation/docs/check_engine.md)
moulinorme 2.1.0
Epitech norm checks
Requires Python: >=3.6

# Moulinorme
![License](https://img.shields.io/github/license/hoot-w00t/mouli-norme?style=flat-square) ![Python Version](https://img.shields.io/pypi/pyversions/moulinorme?style=flat-square) [![PyPI](https://img.shields.io/pypi/v/moulinorme?style=flat-square)](https://pypi.org/project/moulinorme/)

## What it does
This program checks for Epitech norm violations in your code.

**Note**: This is done on my free-time and given as-is, there is no guarantee of reliability.

## Installation
You need [Python 3.6+](https://docs.python.org/3.6/tutorial/index.html) to run it.

You can install or update it using PyPI
```sh
python3 -m pip install -U moulinorme
```

## Norm checks
The following rules are checked:
| Rule | Description                                                        |
|:----:|--------------------------------------------------------------------|
| G1   | File header                                                        |
| G6   | Include directives should only include header files (.h)           |
| L2   | Indentation (only checks for a valid indentation level, see below) |
| L3   | Spaces                                                             |
| F2   | Naming functions                                                   |
| F3   | Number of columns                                                  |
| F4   | Number of lines                                                    |
| F5   | Arguments                                                          |
| F6   | Comments inside a function                                         |
| O1   | Contents of the delivery folder                                    |
| O3   | File coherence                                                     |
| O4   | Naming files and folders (only checks source files)                |

---

### L2: Indentation

The program will only check for a valid indentation level (`indent_spaces % 4 == 0`).

In the example below both `printf` are an L2 violation, but the program will only catch the first one.
```c
int main(void)
{
    if (condition)
      printf("Hello"); /* Indented with 6 spaces, will be caught */

    if (condition)
            printf("world!\n"); /* Indented with 12 spaces, will not be caught */
}
```