NoTouchEdit

NoTouchEdit edits a file without updating its timestamp.

  > NoTouchEdit   FILE [/COPY] [/EDITOR:PROGRAM] [/MIN|/MAX|/HIDE]

    FILE is the file to modify

    /COPY makes a copy of the file before editing, then copies the timestamp
from the copy to the modified file. Without this switch, the timestamp is
kept in a variable in memory instead, which requires less disk space and
doesn't add wear to the drive, but if the computer crashes in the moment
between the file being saved and its timestamp being restored, it'll be lost

    /EDITOR specfies the program with which to open the file
      The editor doesn't have to be an interactive program

    /MIN  run the editor minimized
    /MAX  run the editor maximized
    /HIDE run the editor hidden
      Window control might not work with every editor

  e.g.: > NoTouchEdit r:\test.png /hide /editor:crop

        Crops the image "r:\test.png" using a hidden window

  e.g.: > NoTouchEdit x:\foobar.blah /copy /editor:c:\tools\baz.exe

        Makes an empty dummy file "x:\foobar.blah.ntebak" and sets its
        timestamp, opens "x:\foobar.blah" in/with "c:\tools\baz.exe" and
        waits until it exits, restores the timestamp for "x:\foobar.blah"
        and deletes the backup "x:\foobar.blah.ntebak"

Changelog:
Show ▼

DriveSpaceMonitor

DriveSpaceMonitor is a program to monitor and warn when disk space falls below a specified threshold.

If the space on a drive runs out, it can cause all kinds of problems from a program crash to catastrophic data loss. Not all programs handle low disk space gracefully, so it’s important to know when a drive runs low as soon as possible. DriveSpaceMonitor sits in the notification area (the system tray), and does nothing as long as there is nothing to worry about, but if the free space on any specified drive falls below a specified threshold, it can start flashing or beeping to get your attention. Sure, you could certainly just check the free space, but this program is a way to get and hold your attention to force you to deal with the low space. It’s a simple program, but necessary; losing data because a program couldn’t save doesn’t have to happen.

Feature List:

  • Specficy a low-space threshold for each of the drives, including ones that are not currently attached
  • Specify which ones are included in the total free-space to quickly see how much total space you have across all (included) drives
  • Choose if the tray-icon should flash and how fast
  • Choose what, if any audio to play, and how often

Changelog:
Show ▼

“Plenty of Fish” title fixer userscript

Plenty of Fish title fixer user-script

Problem

The match-making site Plenty of Fish has unfortunately updated to a horrible new design which is not only ugly, but worse, completely broken and almost completely dysfunctional. One of the biggest new problems with the site is that all of the profile pages now have the page title POF – Profile and don’t include the person’s name, location, or interests like they used to. This means that when you look through your browser history, you won’t be able to find someone because they all have the same page title.

Solution

This user-script adds the user-name of a person’s profile to the page title so that you can differentiate them in the browser history to make easier (or at all possible) to find a specific profile in the history.

(You’ll need a browser-extension like TamperMonkey, ViolentMonkey, or GreaseMonkey in order to use it.)

Download

POF Title Fixer

FAQ

Q: Is this userscript actually necessary, can’t you just report this issue to POF and have them fix it?
A: In my experience, POF has terrible support. I’ve reported numerous bugs to them and they either ignore it, can’t understand the problem no matter how hard I try to explain it to them, or just don’t care. Therefore, I wouldn’t hold your breath on getting this fixed, so unfortunately, this userscript is indeed necessary. (Though considering how badly they’ve ruined the site and how almost completely useless it’s become, the best solution may be to just stop using the site altogether and use something else. Unfortunately, almost every other site requires a paid subscription in order to make contact, and are thus completely worthless. The only other site that lets you make contact for free is OKCupid.)

Screenshots

Browser history of POF pages with profile names, locations, and interests
POF used to include the name, location, and interests of profiles in the page title, thus making it easy to search for profiles in the browser history
Browser history of POF pages with all the same title
POF’s page titles no longer include any information, are useless, and make it difficult to search for specific profiles in the browser history
Browser history with POF profiles with usernames
This user-script adds usernames to POF page titles so that you can actually find them in the browser history

FindNearFiles

FindNearFiles

Search for files that were created within a short amount of time of each other

Usage

Usage: > FindNearFiles.py  [/?] | [/r] [/tSEC] [path]

  /?    - help - this screen
  /r    - recursive search               (default: non-recursive)
  /tSEC - time between file timestamps   (default: 5 seconds)
  path  - path to search                 (default: current directory)
          use ** to include subdirectories

e.g.: > FindNearFiles.py /r /t60 ..\Pictures\**\*.png
  -> search in "..\Pictures" and all of its subdirectories for
     PNG files that were created within a minute of each other

Download

FindNearFiles.7z

Description

This program makes it easy to find files that were created shortly after one another. This makes it easier to sort through a pile of screenshots or downloaded files to weed out extraneous files.

KillByArgs

KillByArgs kills a process that contains specific command-line arguments.

> KillByArgs PROCESSNAME ARG(s) [/ALL]

	PROCESSNAME	- name (or part of a name) of target process
	ARG(s)		- string to look for in the process' arguments
	/ALL		- kill all matches, or else just first match found

	RETURNS number of processes matched
	(processes may not be killed depending on permissions)

	eg: Kills only notepad that has foobar.txt open:
	    > KillByArgs   notepad foobar.txt

	eg: Kills all instances of explorer that were run as embedded:
	    > KillByArgs   explorer -embedding /all

NOTE: Be as specific as possible to avoid killing unintended processes!

Changelog:
Show ▼

AutoHotkey Pong

PongAHK

This is the classic game of Pong, implemented in AutoHotkey.

Usage

Controls:

Player 1: W , S
Player 2:  , 
Quit    : Escape

Download

PongAHK.7z

Background

In 2014, I got stuck playing League of Angels for much, much longer than I was planning. I figured I’d try it for a few minutes and ended up playing for about 1.5 years. 🤦 In March, they had a St. Patrick’s Day event in which they gave away the Iron Wings for free. However, I missed it because I was out of bandwidth for that month and I wasn’t about to give my horrible ISP absurd overage fees, so I had to cut my Internet for two days until the new billing cycle. Because in a game like that, missing even a single day will make you fall behind the other players, I had to try to find an Internet connection. Therefore, I took my laptop to the library. Unfortunately, when I got there, I couldn’t figure out how to connect, I couldn’t find the password and because of my intense social-anxiety-disorder, I couldn’t ask. I didn’t feel like walking back, so I figured I’d stay and use my laptop there amongst people. I didn’t have a plan for what to do while I was there, so I thought I’d do a little programming. I’m not sure how I came to it—probably just a random thought—but I ended up deciding to implement the classic game of Pong in AutoHotkey for some reason. About an hour, and a lot of tweaking later, I was finished, I had made pong in a hotkey-making automation scripting language (hey, cut me some slack; it’s difficult to use the laptop’s built-in keyboard). Five years later, I made an icon and compiled it, and now it’s being released.

UnMobileSearch – Stop search-engines from linking to mobile versions of sites

UnMobileSearch user-script

Purpose


As more and more people use mobile devices (i.e. phones, but also tablets) to browse the Internet
mobile versions of websites get used more and more, and since people will usually end up viewing
the mobile version of sites after doing a web-search, the mobile versions of sites have bubbled
up in search-engine results to surpass the non-mobile versions of those same sites. So now, if
you do a web-search you may get links to mobile versions of sites instead of non-mobile URLS.
There isn't really a way to stop this in your system or even in the search-engine as there's
no standardized method of a site to indicate its mobile version (many use a m. sub-domain),
but that is not necessarily universal. This user-script will detect results pages from any
search-engines it currently supports and try to switch any links to non-mobile versions.☺

Notes:

  • Mobile versions of sites aren’t standardized, so will have to accommodate site-by-site
  • Currently supported search-engines:
    • DuckDuckGo
    • NOT Google, and probably won’t for the foreseeable future because Google is evil 😒
  • Currently supports mobile URLs of the form X.* and *.X.* (where X is m or mobile)
  • Catches m./mobile. anywhere in the domain: foo.bar.m.baz.example.comfoo.bar.baz.example.com
  • Only one instance of m./mobile. is removed: a.m.b.m.c.coma.b.m.c.com
  • You’ll need a browser-extension like TamperMonkey, ViolentMonkey, or GreaseMonkey in order to use it
  • Sometimes the search results will actually return the mobile and non-mobile versions of a page, in this case, you’ll end up with two links to the non-mobile version

Download

UnMobileSearch 3

Screenshots

DuckDuckGo search results linking to mobile versions of sites
DuckDuckGo search results linking to mobile versions of sites
DuckDuckGo search results linking to non-mobile versions of sites
DuckDuckGo search results linking to non-mobile versions of sites

Firefox Popup-Window Titlebar Fixer

Firefox Popup-Window Titlebar Fixer

Problem

Firefox has a "feature" whereby popup-windows that have the location-bar or tab-bar removed (minimal chrome), will prepend the page’s domain-name to the titlebar. This clutters the titlebar and pushes the actual page title off which is extremely inconveneint.

Unfortunately there is no way to turn off this function and worse, the Mozilla developers refuse to provide any options for users to control this; they’ve taken on a very Google attitude and deny users the choice, they decide for us. 😒 This isn’t good because web-applciations are the standard now and being able to have them run in a popup window outside of the main browser with minimal browser-chrome is essential these days, and actually being able to see the title is necessary (imagine if every window in the OS prepended a long string and pushed the program’s title out of sight).

We’ve taken the liberty to write a program to patch Firefox to disable this "feature". It would have been much better if the developers had provided users with the ability to whitelist sites like you can with cookies and other permissions, or at the very least, provide a global toggle in the about:config page (there are plenty of advanced options in there that could expose users to security threats, so their excuse that this is for security is specious ¬_¬).

Solution

The program looks for Firefox installations then patches browser\omni.ja to remove (comment out) the JavaScript code that prepends the domain to the titlebar if the window doesn’t have the location bar shown. It’s not ideal, and the checksum in the archive no longer matches, but it works just fine and has no other side-effects. You’ll need to re-patch the file every time Firefox is updated, but it’s worth it.

(Currently it only runs on Windows, but may be ported to Mac and *nix in the future.)

Downloads

Download fixFirefox

Usage

Just run the program and it will find and patch all Firefox installations, or you can specify one or more paths where Firefox installations are located to patch those instead (specifying a path will disable automatically searching for Firefox in standard locations; you can run it twice to do both).

Make sure Firefox is not running before running the patch.

fixFirefox [[/? | /h] | /u] [path1] [path2] ...

    -?|-h   Display this usage information
    -u      Undo the patch and restore the 'browser\omni.ja' file
            if backup file is not found, manually revert the patch
    path... The location of a Firefox installation(s) to patch
            specifying paths prevents searching default locations

Screenshots

Firefox popup window with domain-name prepended to titlebar
Firefox popup window with domain-name prepended to titlebar
Firefox popup window without domain-name prepended to titlebar
Firefox popup window without domain-name prepended to titlebar

eBay browser-extension/userscript

We’re releasing a userscript to enhance eBay (or make it even usable at all ¬_¬).

The current version provides the following features:

  • For auction listings, adds the remaining time (under one hour, updated each second) to the page title, and thus the title-bar of the window and taskbar button of the browser
  • On the Watch List, removes the “ITEM PRICE:” text from Buy-It-Now listings and highlights in green the number of bids on auction listings
  • Adds “ – eBay” to the end of the title of all pages (to facilitate organization of screenshots)

Features to look forward to in future versions include:

  • Playing an audible alarm when auction listings get down to 30, 20, and 10 seconds remaining

You’ll need a browser-extension like TamperMonkey, ViolentMonkey, or GreaseMonkey in order to use it.

*Currently only supports US and Canada eBay sites.