First Commit
This commit is contained in:
commit
06154e61fd
30
pashacows/autokitteh.cow
Normal file
30
pashacows/autokitteh.cow
Normal file
|
@ -0,0 +1,30 @@
|
|||
# autokitteh
|
||||
$the_cow = <<EOC;
|
||||
$thoughts
|
||||
$thoughts
|
||||
. .-
|
||||
+@@@@@@@@@@@- .
|
||||
. @@@@@@@@@@@@@@@@@@@@@
|
||||
. @@@@@@@@@@@@@@@@@@@@@@@@@@@ .
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ .
|
||||
#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@# .
|
||||
* @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@ .
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@. @@@@@@
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@
|
||||
. @@@@@@@@@@@@@@@@@+@@@@@@@@@@@= @@@# .
|
||||
* @@@@@@@@@@@@@@@@@ @@@@ @
|
||||
. @@@@@@@@@@@@@@@@@@ .
|
||||
@@@@@@@@@@@@@@@@@@ -@@
|
||||
@@@@@@@@@@@@@@@@@% =@@
|
||||
-@@@@@@@@@@@@@@@@+ @@@
|
||||
@@@@@@@@@@@@@@@@. @@ .
|
||||
. @@@@@@@@@@@@@@@ .
|
||||
. @@@@@@@@@@@@@
|
||||
@@@@@@@@@ .
|
||||
. .-
|
||||
EOC
|
31
pashacows/chipotle.cow
Normal file
31
pashacows/chipotle.cow
Normal file
|
@ -0,0 +1,31 @@
|
|||
# chipotle
|
||||
$the_cow = <<EOC;
|
||||
$thoughts
|
||||
$thoughts
|
||||
############
|
||||
#############= #######
|
||||
######## ## ### ### ### ####
|
||||
###### ### #### ### #### ###
|
||||
#### #### ### ############# ########
|
||||
## ### ######## ##### ##### ####
|
||||
#### ###### @@@@@@@@@@@@ #### #######
|
||||
####### ### @@@@@@@@@@@@@@@@@@ ### #######
|
||||
## ### ### @@@@@@@@@@@ @@ @@@ #### ##
|
||||
### ### ## @@@@@@@@ #@ @@@@@@@@@@ ## # ## ##
|
||||
##### ### @@@@@@@ @@@@@@@@@@@ #########
|
||||
########## @@@@@@ @ @ @ @@@@@@@@@@ ##########
|
||||
########## @@@@@@ @@@ @@ @ @@@@@@@@@ ##########
|
||||
########## @@@@@@ @@ @@@ @ @@@@@@@@@@ ##########
|
||||
########## @@@@@@ @ @@@ @ @@@@@@@@@@@ ##########
|
||||
######### @@@@@@@ @ @@@@ @@@@@@@@@@@ #########
|
||||
##### #### @@@@@@@@ @@ @@ @@@@@@@ ### # ###
|
||||
### ###### @@@@@@@ @ @@@@@ ##########
|
||||
#### #### @@@@@@@@@@@@@@@@@@ ##### ###
|
||||
#######:#### @@@@@@@@@@@@ ##### =#####
|
||||
##### ######## ######## ######
|
||||
######## ################# ## ######
|
||||
######## ######## # ##### ######
|
||||
########## ## # ##########
|
||||
######################
|
||||
############
|
||||
EOC
|
23
pashacows/daftpunk.cow
Normal file
23
pashacows/daftpunk.cow
Normal file
|
@ -0,0 +1,23 @@
|
|||
# daftpunk
|
||||
$the_cow = <<EOC;
|
||||
$thoughts
|
||||
$thoughts
|
||||
@@@@
|
||||
@@@ @@@@@@ @@ @@
|
||||
@@ @@@ @ @@@@@@@@
|
||||
@@@@@ @@ @ @@ @@@ @@@ @@@ @
|
||||
@@@ @@@@@ @@@@@@@ @@@@@@@ @@@
|
||||
@@@ @@@@ @@@@@@@@ @@@ @@@
|
||||
@@@@@@@@ @@@ @@@@@@@@@ @@ @@@
|
||||
@@ @@@@@ @ @@ @@ @@@
|
||||
@@@ @@@ @@@
|
||||
@@@@@@ @ @@@@@@@@@
|
||||
@@@@@@ @@@ @@ @@@ @@ @@@ @@@@@@
|
||||
@@@@@@ @@ @@ @@@@ @@ @@@@@ @@@@@@@@@
|
||||
@@@@@ @@ @@@ @@@@@ @@@@@ @@@@@@@@ @@@
|
||||
@@@@@@@ @@@@@ @@ @@@@ @@@ @@ @@@
|
||||
@@ @@@ @@@ @@ @@@
|
||||
@@ @@@
|
||||
@@ @@
|
||||
@@
|
||||
EOC
|
29
pashacows/pikachu1.cow
Normal file
29
pashacows/pikachu1.cow
Normal file
|
@ -0,0 +1,29 @@
|
|||
# pikachu1
|
||||
$the_cow = <<EOC;
|
||||
$thoughts
|
||||
$thoughts
|
||||
. ::
|
||||
.:@@::: ::.@@..
|
||||
.:@@@@@.: :.@@@@@:
|
||||
..@@@@..:: :....@@@.:
|
||||
:.@@......: :......@@@:
|
||||
.::@........: :@.......@:
|
||||
.:.........:: :.........@:.
|
||||
.:.........%: :..........:
|
||||
.:%.........::..:*#=.::::=.......+:.
|
||||
.::%............................:
|
||||
.::%.....................%#.:.
|
||||
:=.......................:.
|
||||
..........................*:
|
||||
:+.........................:
|
||||
:@..:@: =...........+ @@.....
|
||||
:%..@@@@@...........@@@@-...:
|
||||
.:....@@@............:@@-...+:
|
||||
:.####...................####:
|
||||
:#####%....%-%###@=@....#####..
|
||||
:.####@....@#=====#.....#####:
|
||||
.:.###......======%......###:.
|
||||
.:.........#===:.......@::
|
||||
.::.#............@.::.
|
||||
...::::::::::...
|
||||
EOC
|
18
pashacows/pikachu2.cow
Normal file
18
pashacows/pikachu2.cow
Normal file
|
@ -0,0 +1,18 @@
|
|||
# pikachu2
|
||||
$the_cow = <<EOC;
|
||||
$thoughts
|
||||
$thoughts
|
||||
⢀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
|
||||
⢻⣿⡗⢶⣤⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣠⣄
|
||||
⠀⢻⣇⠀⠈⠙⠳⣦⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣤⠶⠛⠋⣹⣿⡿
|
||||
⠀⠀⠹⣆⠀⠀⠀⠀⠙⢷⣄⣀⣀⣀⣤⣤⣤⣄⣀⣴⠞⠋⠉⠀⠀⠀⢀⣿⡟⠁
|
||||
⠀⠀⠀⠙⢷⡀⠀⠀⠀⠀⠉⠉⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⡾⠋⠀⠀
|
||||
⠀⠀⠀⠀⠈⠻⡶⠂⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⣠⡾⠋⠀⠀⠀⠀
|
||||
⠀⠀⠀⠀⠀⣼⠃⠀⢠⠒⣆⠀⠀⠀⠀⠀⠀⢠⢲⣄⠀⠀⠀⢻⣆⠀⠀⠀⠀⠀
|
||||
⠀⠀⠀⠀⢰⡏⠀⠀⠈⠛⠋⠀⢀⣀⡀⠀⠀⠘⠛⠃⠀⠀⠀⠈⣿⡀⠀⠀⠀⠀
|
||||
⠀⠀⠀⠀⣾⡟⠛⢳⠀⠀⠀⠀⠀⣉⣀⠀⠀⠀⠀⣰⢛⠙⣶⠀⢹⣇⠀⠀⠀⠀
|
||||
⠀⠀⠀⠀⢿⡗⠛⠋⠀⠀⠀⠀⣾⠋⠀⢱⠀⠀⠀⠘⠲⠗⠋⠀⠈⣿⠀⠀⠀⠀
|
||||
⠀⠀⠀⠀⠘⢷⡀⠀⠀⠀⠀⠀⠈⠓⠒⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⢻⡇⠀⠀⠀
|
||||
⠀⠀⠀⠀⠀⠈⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣧⠀⠀⠀
|
||||
⠀⠀⠀⠀⠀⠈⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠁⠀⠀⠀
|
||||
EOC
|
27
pashacows/pitbull1.cow
Normal file
27
pashacows/pitbull1.cow
Normal file
|
@ -0,0 +1,27 @@
|
|||
# pitbull1
|
||||
$the_cow = <<EOC;
|
||||
$thoughts
|
||||
$thoughts
|
||||
@ @-
|
||||
@ .-@@
|
||||
% .-@@.
|
||||
@ @ .@@@@@@
|
||||
@@ @. %@@@ @@
|
||||
@@ @@ @ @@@ @@@@ @ @@@
|
||||
@@@@@. @@@ =@ =@@@@@@ @@ :% @@
|
||||
@ @@@@ = @ @@@@@@@@@@ .@ @@
|
||||
@@ @ @ @@@@@@@@@@@@@@@@ @@@
|
||||
. @ @ :@@@@@@@@@@@@@ .
|
||||
@ @ @@@@@@@@@ @@@@ .@ @
|
||||
@ @ - @@@@@@@ @@@@ @@@@ =
|
||||
@@@% :@@@@@ @@@@ @ @
|
||||
@@@@ @%@-@ @@@@ @ @
|
||||
+@ @@-@ @@ @@@
|
||||
@ +@ @ -@ @@ @ @
|
||||
@@@ -@ @@@ @
|
||||
@:@ -@ @ -@
|
||||
@:@ @@ @-@
|
||||
@:@ @@
|
||||
@ @ @ -
|
||||
@ @
|
||||
EOC
|
26
pashacows/pitbull2.cow
Normal file
26
pashacows/pitbull2.cow
Normal file
|
@ -0,0 +1,26 @@
|
|||
# pitbull2
|
||||
$the_cow = <<EOC;
|
||||
$thoughts
|
||||
$thoughts
|
||||
@@@@@ @@@@@
|
||||
@@@ @@@@@@ @@@@@@ @@@@
|
||||
@@ @@ @@ @@
|
||||
@@@ . @@ @ @ @@ @@@
|
||||
@@@ @ @ @ @ @ @ @@@
|
||||
@@ @@ @ @ @@
|
||||
@ @ @ @ @
|
||||
@ @ @ @ % @ @@ @ @
|
||||
@ @ @ @ @ @ @ @
|
||||
% .@@ @@@ @ *
|
||||
* @ . @
|
||||
@ @ @ @%@* @
|
||||
@@ : @ @ = @
|
||||
@ . @ @ .- @ @@
|
||||
@@ @ @ %@@@@@@. @ @ @@
|
||||
@@ @ @ @@ @@ @@ @ @ @@
|
||||
@@@ @ @@@@- @@@
|
||||
@@ @
|
||||
@ @@@@ @%
|
||||
@@ @@ @@ @@
|
||||
@@@@ @@@@@@ @@@@@
|
||||
EOC
|
30
pashacows/temporal.cow
Normal file
30
pashacows/temporal.cow
Normal file
|
@ -0,0 +1,30 @@
|
|||
# temporal
|
||||
$the_cow = <<EOC;
|
||||
$thoughts
|
||||
$thoughts
|
||||
.............
|
||||
........@@@@@@@........
|
||||
.........@@@@+@@@@.........
|
||||
.......... @@@+...+@@@ ..........
|
||||
............@@@%.....%@@@............
|
||||
............#@@@.......@@@#............
|
||||
.............@@@:.......:@@@.............
|
||||
..............@@@.........@@@..............
|
||||
...........+@@@@@@@@@@@@@@@@@@@@@+...........
|
||||
.....#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#.....
|
||||
...@@@@@@@@....@@@..................@@@@@@@@...
|
||||
. @@@@=........@@@ .....................-@@@@ .
|
||||
.@@@@..........@@@ .......................@@@@.
|
||||
..@@@@.........@@@ ......................@@@@..
|
||||
...@@@@@@@# ...@@@ ................ #@@@@@@@...
|
||||
.....@@@@@@@@@@@@=.........=@@@@@@@@@@@@.....
|
||||
..........:%@@@@@@.........@@@@@@%:..........
|
||||
..............@@@.........@@@..............
|
||||
.............@@@:........@@@.............
|
||||
............%@@@.......@@@%............
|
||||
............@@@#.....*@@@............
|
||||
...........@@@-...-@@@...........
|
||||
.........@@@@:@@@@:........
|
||||
........@@@@@@@........
|
||||
.............
|
||||
EOC
|
21
pashacows/washington.cow
Normal file
21
pashacows/washington.cow
Normal file
|
@ -0,0 +1,21 @@
|
|||
# washington
|
||||
$the_cow = <<EOC;
|
||||
$thoughts
|
||||
$thoughts
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@ @@ @
|
||||
EOC
|
21
pashacows/zhu.cow
Normal file
21
pashacows/zhu.cow
Normal file
|
@ -0,0 +1,21 @@
|
|||
# zhu
|
||||
$the_cow = <<EOC;
|
||||
$thoughts
|
||||
$thoughts
|
||||
@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@
|
||||
@@@@@@@@
|
||||
@@@@@@@@
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
|
||||
|
||||
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
EOC
|
||||
|
96
program.py
Executable file
96
program.py
Executable file
|
@ -0,0 +1,96 @@
|
|||
import subprocess
|
||||
import pygame
|
||||
import time
|
||||
from threading import Thread
|
||||
|
||||
# Function to run the Unix command
|
||||
def run_command():
|
||||
result = subprocess.run("cowsay -f $(ls /usr/share/cowsay/cows/ | shuf -n1) $(fortune)", shell=True, capture_output=True, text=True)
|
||||
return result.stdout
|
||||
|
||||
# Function to update the window with the command output
|
||||
def update_output():
|
||||
global scroll_y
|
||||
while True:
|
||||
# Get the command output
|
||||
output = run_command()
|
||||
|
||||
# Update the text content globally
|
||||
global text_content
|
||||
text_content = output
|
||||
scroll_y = 0
|
||||
|
||||
time.sleep(2)
|
||||
|
||||
# Initialize Pygame
|
||||
pygame.init()
|
||||
|
||||
# Set up the window
|
||||
window_width = 600
|
||||
window_height = 1024
|
||||
screen = pygame.display.set_mode((window_width, window_height))
|
||||
pygame.display.set_caption("Unix Command Output")
|
||||
|
||||
# Set up the font and colors
|
||||
font = pygame.font.SysFont("freemono", 20)
|
||||
text_color = (255, 255, 255)
|
||||
bg_color = (0, 0, 0)
|
||||
|
||||
# Initialize global variables
|
||||
text_content = ""
|
||||
scroll_y = 0
|
||||
scroll_speed = 5
|
||||
|
||||
# Function to render text onto the screen
|
||||
def render_text():
|
||||
screen.fill(bg_color)
|
||||
lines = text_content.split("\n")
|
||||
current_y = scroll_y
|
||||
|
||||
for line in lines:
|
||||
# Render each line of text
|
||||
text_surface = font.render(line, True, text_color)
|
||||
if current_y > window_height:
|
||||
break
|
||||
screen.blit(text_surface, (16, current_y))
|
||||
current_y += text_surface.get_height()
|
||||
|
||||
pygame.display.flip()
|
||||
|
||||
# Handle dragging
|
||||
is_dragging = False
|
||||
drag_start_y = 0
|
||||
|
||||
def handle_drag(event):
|
||||
global is_dragging, drag_start_y, scroll_y
|
||||
if event.type == pygame.MOUSEBUTTONDOWN and event.button == 1:
|
||||
is_dragging = True
|
||||
drag_start_y = event.pos[1]
|
||||
elif event.type == pygame.MOUSEBUTTONUP and event.button == 1:
|
||||
is_dragging = False
|
||||
elif event.type == pygame.MOUSEMOTION and is_dragging:
|
||||
drag_distance = event.pos[1] - drag_start_y
|
||||
scroll_y += drag_distance
|
||||
drag_start_y = event.pos[1]
|
||||
scroll_y = max(min(scroll_y, 0), -(len(text_content.split("\n")) * font.get_height()-window_height))
|
||||
if (len(text_content.split("\n")) * font.get_height()) < window_height:
|
||||
scroll_y = 0
|
||||
|
||||
# Create a thread to periodically update the command output
|
||||
update_thread = Thread(target=update_output)
|
||||
update_thread.daemon = True
|
||||
update_thread.start()
|
||||
|
||||
# Main game loop
|
||||
running = True
|
||||
while running:
|
||||
for event in pygame.event.get():
|
||||
if event.type == pygame.QUIT:
|
||||
running = False
|
||||
handle_drag(event)
|
||||
|
||||
render_text()
|
||||
pygame.time.Clock().tick(30)
|
||||
|
||||
pygame.quit()
|
||||
|
Loading…
Reference in a new issue