This is a collection of scripts by Jiseng So to help with various things. Mostly, they make the computer perform repetitive tasks so that a person does not have to. They tend to be much more accurate and up to thousands of times faster.
File | Description | Dependencies | Usage |
---|---|---|---|
Debug.py | Displays debug messages. Provides a single point to toggle debug messaging. | Import in Python. | |
audio | Scripts for mostly audio stuff. | ||
audio/unVgz.py | Takes a directory, finds all files ending with .vgz, converts them to .vgm. If no directory is provided, assumes current directory. | Depends on gunzip | unVgz.py {vgzDirectory} |
dfhack | Scripts for dfhack to interact with Dwarf Fortress. | ||
dfhack/impregnate.lua | Impregnates viviparous creatures. Not useful with oviparous or sterile creatures. Based on catsplosion. | Dwarf Fortress and dfhack |
impregnate If the cursor points at a creature, impregnate it. impregnate -query Displays would-be-affected creatures without action. impregnate -all Affects all creatures in local site. impregnate -species Affects all individuals of the same species as the selected creature. |
dos | Utilities which interact with DOS-era files. | ||
dos/adplayDump.py | Given a list of files, dump all music to disk, including subsongs. | Linux, adplay, sox | adplayDump.py -d {outDir} {*inputFiles} |
dos/extractPak.py | Extracts Westwood .PAK files. | None | extractPak.py {PAKfile} |
ElseHeartBreak | Things for the video game Else: Heart.Break() | ||
ElseHeartBreak/GetElseHeartBreakCode.py | Extracts code segments which contain the string "ExportMark" from saved games. | None | GetElseHeartBreakCode.py {EHBSavedGame} |
images | Manipulates images somehow. | ||
images/capImage.py | Saves screenshots of the main display approximately once per second into a directory. Might not work with all applications, especially in fullscreen mode. | Windows, Pillow | capImage.py {basename} |
images/CompressImages.py | Parallelizes recompression using pngout, running up to 7 instances in parallel. Adjust the self.compressProcessesMax to change number of instances. | pngout | CompressImages.py {DirectoryWithPngs} |
images/dng2png.sh | Converts .dng files to .png in the current directory. Resulting pngs do not become much smaller with pngout. | basename, dcraw, pnmtopng, exiftool | dng2png.sh (no arguments) |
images/LinScreenshotter.py | Takes screenshots and saves as pngs at approximately one per second. Uses the argument to match a window name substring. May exhibit inconsistent behavior if multiple windows contain the substring. | Linux, xwininfo, imagemagick | LinScreenshotter.py {WindowNameSubstring} |
images/lossyReencoding.py | Reencodes an image until it reaches a number of encodings or reaches a loop, as determined by file hashes. Demonstrates generational loss through repeated transcoding. | imagemagick | lossyReencoding.py {imageFile} |
network | Utilities which help perform computer networking operations. | ||
network/ipSwitcher.py | Randomly changes the IP address of the computer. | ifconfig, route | ipSwitcher.py (No arguments) |
network/vpnRandomizer.py | Randomizes VPN configuration file selection. | None | vpnRandomizer.py (No arguments) |
videos | Scripts which help with making and processing videos. | ||
videos/audioDedup.py | Works with ffmpeg to create synchronized audio to deduplicated video frames. Video should be lossless so that duplicate frames are easily discernable. Run only one instance at a time. | Linux, ffmpeg, mkvmerge, mpv. | audioDedup.py {videoFile} |
videos/audioExtract.py | Extracts audio component of video files in the directory where it is invoked. | mkvmerge | audioExtract.py . |
videos/bmpHandler.py | Library to handle 24-bit, uncompressed BMP image files. Saves and loads. | None | Import in Python |
videos/cheeseImgDater.py | Incomplete image timestamper. | ||
videos/cheeseSummary.py | Summarizes data from my cheese-related statistics. | ||
videos/composite.sh | Meant to paste backgrounds and images together for soundtrack videos. Requires much manual adjustment. Run in a location containing subdirectory "origImages". | imagemagick | composite.sh |
videos/CompressVideos.py | Compresses directory of videos losslessly with VP9 and FLAC. Meant to be used on already-lossless video encoded with OBS or a camera, which prioritize encoding speed over space efficiency. | ffmpeg, mkvinfo | CompressVideos.py {directoryOfVideos} |
videos/Joiner.py | Concatenates all .wav files in current directory in alphabetical order. Fails if formats are different. Run in a directory with .wav files. sox is better at this in modern times. | None | Joiner.py (No arguments) |
videos/mp3Extract.py | Extracts mp3s from archives without compression or encryption. | None | mp3Extract.py (Add information to script) |
videos/pdfToPng.py | Converts a PDF to a series of paired images. Intended to convert books to video. | Imagemagick, pdfinfo | pdfToPng.py {PDF_to_convert} |
videos/randImgMapper.py | Creates a bash script to create symlinks to images in a directory randomly. | None | randImageMapper.py (Add information to script) |
videos/SilenceInserter.py | Creates a bash script to create symlinks to segments of silence. Examines current directory to determine how many. Relies on specific naming scheme. | None | SilenceInserter.py (Add information to script) |
videos/stringMaker.py | Uses a BMP file representing a bitmapped font and an index to convert phrases into images with that font. | None | stringMaker.py (Add information to script) |
videos/stringWordsToImages.py | Uses Imagemagick to convert a sequence of words into images. | Imagemagick | stringWordsToImages.py (Add information to script) |
videos/TargetsAdvanced.py | Creates a bash script to create symlinks for each frame, now with different types of sequences. Intended to be used with MEncoder. | None | TargetsAdvanced.py (Add information to script) |
videos/Targets.py | Creates a bash script to create symlinks for each frame named in a specific manner. Intended to be used with MEncoder. | None | Targets.py (Add information to script) |
videos/timeIndexToList.py | Converts a time index into a Python list of frame numbers per item. | None | timeIndexToList.py (Add time index to script) |
videos/WavIndexer.py | Produces an index of all WAV files in current directory, assuming that they have been concatinated in alphabetical order. | None | WavIndexer.py (No arguments) |
wiki | Utilities related to Mediawiki content | ||
wiki/WikiCalendar.py | Creates a wikitext calendar. | holidays Python package | WikiCalendar.py {year} {numericalMonth} |