summary refs log blame commit diff stats
path: root/bot.py
blob: 3b7556588415d6a22e1cf2fe3002d5c0db4a2390 (plain) (tree)























                                                                                  
                                               
















                                                                                                                   
import discord
from discord import Interaction, Intents, Embed
from discord.ext.commands import Bot, Context, when_mentioned
from dotenv import load_dotenv
from os import getenv
from sys import exit
from typing import Literal
import httpx
import nltk
import asyncio

load_dotenv()

if getenv('TOKEN') is None or getenv('OWNER_ID') is None:
    print('please set a TOKEN and OWNER_ID environment variable')
    exit(1)

class QBBBot(Bot):
    def __init__(self) -> None:
        super().__init__(command_prefix=when_mentioned, intents=Intents.default())

    async def setup_hook(self):
        await self.load_extension('cogs.tossup')
        await self.load_extension('cogs.solo')
        await self.load_extension('cogs.stats')
        await self.load_extension('jishaku')


bot = QBBBot()
bot.qb_categories = Literal['Literature', 'History', 'Science', 'Fine Arts', 'Religion', 'Mythology', 'Philosophy',
                            'Social Science', 'Current Events', 'Geography', 'Other Academic', 'Trash']


@bot.command()
async def sync(ctx: Context):
    if str(ctx.author.id) == getenv('OWNER_ID'):
        await bot.tree.sync()
        await ctx.send('ok')
    else:
        await ctx.send('no')

bot.run(getenv('TOKEN'))
blame/README?id=66683d4ed41dd9a9faab3286a469e06759434dee'>^
36e4e71e ^

4a383291 ^
78a7d762 ^
e952d6cb ^
78a7d762 ^
03ed2a43 ^
4ea0f69a ^

7838675f ^

bc54f757 ^
6ff9bb6f ^
03ed2a43 ^
7838675f ^

2c8cb95f ^
03ed2a43 ^



1366ef67 ^
7838675f ^
03ed2a43 ^
2c8cb95f ^
03ed2a43 ^

ae99c2c9 ^
03ed2a43 ^
107b72e7 ^
03ed2a43 ^


08b08d70 ^
240394a4 ^



240394a4 ^
03ed2a43 ^
240394a4 ^

03ed2a43 ^


240394a4 ^

03ed2a43 ^


2c8cb95f ^
03ed2a43 ^
240394a4 ^

e5fb3d74 ^
240394a4 ^

03ed2a43 ^

7dc8fef8 ^


03ed2a43 ^
d9b5426e ^
78edc1ed ^
d9b5426e ^
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
            
            
 
                                                                                                             
 
                                                                     
                                                                              
                                                                            
                                            
 
                                                                                                       
 
                                                                             






                                                                                   
                                                                           
                                                          
 
                                                                             
               

 

     
                                 
                                                   

                                                            
                                                      
                                                   
 
 

            





                                                              

        
                                                  
                      

                                                       
                                 
                              
                                                                       
                                                         
                                

 

            
                                                      
                                        
                             

         
 



                                                                     
                                                                      
 
                                                       
 

                                                             
                                                           
                                                      
                                          


                                                                       
                                                                          



          
                                                                   
                                                                                 

                           


                 

                           


                                                                  
 
                                                                                 

                        
 

               

                                                                                         


                                                                           
                                                                               
                                                                         
                                                                 
                                               
ranger 1.9.2
============

[![Build Status](https://travis-ci.org/ranger/ranger.svg?branch=master)](https://travis-ci.org/ranger/ranger)

ranger is a console file manager with VI key bindings.  It provides a
minimalistic and nice curses interface with a view on the directory hierarchy.
It ships with `rifle`, a file launcher that is good at automatically finding
out which program to use for what file type.

![screenshot](https://raw.githubusercontent.com/ranger/ranger-assets/master/screenshots/screenshot.png)

This file describes ranger and how to get it to run.  For instructions on the
usage, please read the man page.  See `HACKING.md` for development specific
information.

For configuration, check the files in `ranger/config/` or copy the
default config to `~/.config/ranger` with `ranger --copy-config`.

The `examples/` directory contains several scripts and plugins that demonstrate how
ranger can be extended or combined with other programs.  These files can be
found in the git repository or in `/usr/share/doc/ranger`.

A note to packagers: Versions meant for packaging are listed in the changelog
on the website.


About
-----
* Authors:     see `AUTHORS` file
* License:     GNU General Public License Version 3
* Website:     https://ranger.github.io/
* Download:    https://ranger.github.io/ranger-stable.tar.gz
* Bug reports: https://github.com/ranger/ranger/issues
* git clone    https://github.com/ranger/ranger.git


Design Goals
------------
* An easily maintainable file manager in a high level language
* A quick way to switch directories and browse the file system
* Keep it small but useful, do one thing and do it well
* Console based, with smooth integration into the unix shell


Features
--------
* UTF-8 Support  (if your python copy supports it)
* Multi-column display
* Preview of the selected file/directory
* Common file operations (create/chmod/copy/delete/...)
* Renaming multiple files at once
* VIM-like console and hotkeys
* Automatically determine file types and run them with correct programs
* Change the directory of your shell after exiting ranger
* Tabs, bookmarks, mouse support


Dependencies
------------
* Python (`>=2.6` or `>=3.1`) with the `curses` module
  and (optionally) wide-unicode support.
* A pager (`less` by default)

Optional:

* The `file` program for determining file types
* The python module `chardet`, in case of encoding detection problems
* `sudo` to use the "run as root"-feature
* `w3m` for the `w3mimgdisplay` program to preview images
* `python-bidi` for correct display of RTL file names (Hebrew, Arabic)

Optional, for enhanced file previews (with `scope.sh`):

* `img2txt` (from `caca-utils`) for ASCII-art image previews
* `highlight` or `pygmentize` for syntax highlighting of code
* `atool`, `bsdtar` and/or `unrar` for previews of archives
* `lynx`, `w3m` or `elinks` for previews of html pages
* `pdftotext` or `mutool` for pdf previews
* `transmission-show` for viewing bit-torrent information
* `mediainfo` or `exiftool` for viewing information about media files
* `odt2txt` for OpenDocument text files (`odt`, `ods`, `odp` and `sxw`)
* `chardet` (Python package) for improved encoding detection of text files


Installing
----------
Use the package manager of your operating system to install ranger.
Note that ranger can be started without installing by simply running `ranger.py`.

To install ranger manually:
```
sudo make install
```

This translates roughly to:
```
sudo python setup.py install --optimize=1 --record=install_log.txt
```

This also saves a list of all installed files to `install_log.txt`, which you can
use to uninstall ranger.


Getting Started
---------------
After starting ranger, you can use the Arrow Keys or `h` `j` `k` `l` to navigate, `Enter`
to open a file or type `Q` to quit.  The third column shows a preview of the
current file.  The second is the main column and the first shows the parent
directory.

Ranger can automatically copy default configuration files to `~/.config/ranger`
if you run it with the switch `--copy-config=( rc | scope | ... | all )`.
See `ranger --help` for a description of that switch.  Also check
`ranger/config/` for the default configuration.