Programs
This commit is contained in:
commit
37b5af8560
74
ansicols.py
Normal file
74
ansicols.py
Normal file
|
@ -0,0 +1,74 @@
|
||||||
|
import os, random, math
|
||||||
|
|
||||||
|
# From http://stackoverflow.com/a/566752/1753929
|
||||||
|
def getTerminalSize():
|
||||||
|
import os
|
||||||
|
env = os.environ
|
||||||
|
def ioctl_GWINSZ(fd):
|
||||||
|
try:
|
||||||
|
import fcntl, termios, struct, os
|
||||||
|
cr = struct.unpack('hh', fcntl.ioctl(fd, termios.TIOCGWINSZ,
|
||||||
|
'1234'))
|
||||||
|
except:
|
||||||
|
return
|
||||||
|
return cr
|
||||||
|
cr = ioctl_GWINSZ(0) or ioctl_GWINSZ(1) or ioctl_GWINSZ(2)
|
||||||
|
if not cr:
|
||||||
|
try:
|
||||||
|
fd = os.open(os.ctermid(), os.O_RDONLY)
|
||||||
|
cr = ioctl_GWINSZ(fd)
|
||||||
|
os.close(fd)
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
if not cr:
|
||||||
|
cr = (env.get('LINES', 25), env.get('COLUMNS', 80))
|
||||||
|
|
||||||
|
### Use get(key[, default]) instead of a try/catch
|
||||||
|
#try:
|
||||||
|
# cr = (env['LINES'], env['COLUMNS'])
|
||||||
|
#except:
|
||||||
|
# cr = (25, 80)
|
||||||
|
return int(cr[1]), int(cr[0])
|
||||||
|
|
||||||
|
|
||||||
|
os.system("clear")
|
||||||
|
|
||||||
|
styles = {
|
||||||
|
"Bold & Bright": "1",
|
||||||
|
"Dim": "2",
|
||||||
|
"Underlined": "4",
|
||||||
|
"Blink": "5",
|
||||||
|
"Inverted": "7",
|
||||||
|
# "Hidden": "8", wont be visible :(
|
||||||
|
"Reset": "0"
|
||||||
|
}
|
||||||
|
|
||||||
|
print("\033[1mStyles:\033[0m")
|
||||||
|
|
||||||
|
styleSpace = max(list(map(len, styles)))
|
||||||
|
|
||||||
|
print("|", end=' ')
|
||||||
|
|
||||||
|
for style in sorted(styles):
|
||||||
|
text = "\033[" + styles[style] + "m" + style + "\033[0m" + " \\033[" + styles[style] + "m"
|
||||||
|
print(" " * int(math.floor((styleSpace - len(text)) / 2.0)) + text + " " * int(math.ceil((styleSpace - len(text)) / 2)) + " |", end=' ')
|
||||||
|
print()
|
||||||
|
|
||||||
|
|
||||||
|
print("\n")
|
||||||
|
|
||||||
|
print("".join(["\033[38;5;" + str(random.randrange(0, 255)) + "m" + letter for letter in "Colors:"]))
|
||||||
|
|
||||||
|
numsPerLine = getTerminalSize()[0] / 18
|
||||||
|
|
||||||
|
for colorType in [38, 48]:
|
||||||
|
currentNumsPerLine = 0
|
||||||
|
for color in range(256):
|
||||||
|
esc = "[" + str(colorType) + ";5;" + str(color) + "m"
|
||||||
|
print("\033" + esc + "\\033" + esc + "\033[0m\t", end=' ')
|
||||||
|
currentNumsPerLine += 1
|
||||||
|
if currentNumsPerLine > numsPerLine:
|
||||||
|
print()
|
||||||
|
currentNumsPerLine = 0
|
||||||
|
|
||||||
|
print("\033[0m\n")
|
25
ansimove.py
Normal file
25
ansimove.py
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
# Please don't try to understand this mess, it's not worth it.
|
||||||
|
# Colors:
|
||||||
|
# Headlines - 178 & Bold
|
||||||
|
# \033 - 122
|
||||||
|
# <line> - 125 & Bold
|
||||||
|
# <col> - 166
|
||||||
|
# <N> - 161 & Bold
|
||||||
|
# Other words - 201
|
||||||
|
print("\033[1m\033[38;5;178mPosition the cursor:\033[0m")
|
||||||
|
print("\t\t\033[38;5;122m\\033[\033[38;5;125m\033[1m<line>\033[0m\033[38;5;122m;\033[38;5;166m\033[1m<col>\033[0m\033[38;5;122mH\033[0m")
|
||||||
|
print("\t\t\t\033[38;5;201mOr")
|
||||||
|
print("\t\t\033[38;5;122m\\033[\033[38;5;125m\033[1m<line>\033[0m\033[38;5;122m;\033[38;5;166m\033[1m<col>\033[0m\033[38;5;122mf\033[0m")
|
||||||
|
|
||||||
|
print("\033[1m\033[38;5;178mMoving the cursor:\033[0m")
|
||||||
|
print(" \033[38;5;201mUp:\t\t\033[38;5;122m\\033[\033[38;5;161m\033[1m<N>\033[0m\033[38;5;122mA")
|
||||||
|
print(" \033[38;5;201mDown:\t\033[38;5;122m\\033[\033[38;5;161m\033[1m<N>\033[0m\033[38;5;122mB")
|
||||||
|
print(" \033[38;5;201mRight:\t\033[38;5;122m\\033[\033[38;5;161m\033[1m<N>\033[0m\033[38;5;122mC")
|
||||||
|
print(" \033[38;5;201mLeft:\t\033[38;5;122m\\033[\033[38;5;161m\033[1m<N>\033[0m\033[38;5;122mD")
|
||||||
|
|
||||||
|
print("\033[1m\033[38;5;178mClear the screen, move cursor to (0,0):")
|
||||||
|
print("\t\t\033[38;5;122m\\033[2J")
|
||||||
|
|
||||||
|
print("\033[1m\033[38;5;178mErase to end of line")
|
||||||
|
print("\t\t\033[38;5;122m\\033[K")
|
||||||
|
|
Loading…
Reference in New Issue
Block a user