From 3d3d79a57fb6d0a5728e0070475f05d1699f0818 Mon Sep 17 00:00:00 2001 From: Timmy Keller Date: Wed, 16 Mar 2022 23:37:09 -0500 Subject: move a lot of scripts around and make a bunch of minor changes. once again i am too lazy to document the changes properly since im never going to read these commit messages anyways --- misc/lipsum | 90 ------------------------------------------------------------- 1 file changed, 90 deletions(-) delete mode 100755 misc/lipsum (limited to 'misc/lipsum') diff --git a/misc/lipsum b/misc/lipsum deleted file mode 100755 index efa71b5..0000000 --- a/misc/lipsum +++ /dev/null @@ -1,90 +0,0 @@ -#!/usr/bin/awk -f - -function printusage() { - print "Usage: lipsum [# of] [w/words|s/sentences|p/paragraphs] [1/t/true|0/f/false output 'lorem ipsum' in first entry] [min words] [max words]\n" - exit 1 -} - -function capitalize(word) { - sub(/./, toupper(substr(word, 0, 1)), word) - print word -} - -function isint(arg) { - return arg ~ /^[0-9]+$/ -} - -function randrange(min, max) { - return int((rand() * (max - min)) + min) -} - -function genword() { - wc++ # There's gotta be a more efficient way of doing this - return (wc > 5 || !litextout) ? word[randrange(0, dictlen)] : litext[wc - 1] -} - -function genwords(words) { - if (words > 0) { - capitalize(genword()) - for (i = 1; i < words; i++) - print " " genword() - print "\n" - } -} - -function gensentences(sentences, delim, min, max) { - for (; sentences > 0; sentences--) { - capitalize(genword()) - words = randrange(min, max) # Isn't possible to initialize or increment multiple variables in awk for loops - for (i = 1; i < words; i++) - print (rand() < 0.10 ? ", " : " ") genword() - print delim - } -} - -function genparagraphs(paragraphs, min, max) { - for (; paragraphs > 0; paragraphs--) { - print "\t" - gensentences(randrange(6, 10), ". ", min, max) - print "\n" - } -} - -BEGIN { - dictionary = "/home/timmy/.local/share/lorem-ipsum-dictionary" # List of lorem ipsum words separated by newlines - litext[0] = "lorem"; litext[1] = "ipsum"; litext[2] = "dolor"; litext[3] = "sit"; litext[4] = "amet" - - ORS = "" - srand() - - for (dictlen = 0; getline < dictionary; dictlen++) - word[dictlen] = $0 - - # Parse Arguments - !isint(ARGV[1]) && ARGV[1] && printusage() - numof = ARGC > 1 ? ARGV[1] : 5 - mode = ARGC > 2 ? ARGV[2] : "p" - litextout = 1 - if (ARGV[3]) - switch (ARGV[3]) { - case /^1$|^t$|^true$/: litextout = 1; break - case /^0$|^f$|^false$/: litextout = 0; break - default: printusage() - } - min = isint(ARGV[4]) ? ARGV[4] : 5 - max = isint(ARGV[5]) ? ARGV[5] : 12 - - switch (mode) { - case /^w$|^words$/: - genwords(numof) - break - case /^s$|^sentences$/: - gensentences(numof, ".\n", min, max) - break - case /^p$|^paragraphs$/: - genparagraphs(numof, min, max) - break - default: - printusage() - } -} -- cgit v1.2.3