From f210bd05357efab5008adef03f33fd5715d2454e Mon Sep 17 00:00:00 2001 From: phixxy Date: Thu, 5 Mar 2026 02:37:53 -0800 Subject: [PATCH] use tempfile.mkstemp instead of homebrew solution --- skratch.py | 24 +++++------------------- 1 file changed, 5 insertions(+), 19 deletions(-) diff --git a/skratch.py b/skratch.py index 302a1c5..dde8a29 100755 --- a/skratch.py +++ b/skratch.py @@ -2,10 +2,9 @@ import sys import os -import random -import string import argparse import time +import tempfile def make_dir(d): if not os.path.exists(d): @@ -44,26 +43,13 @@ def get_editor(use_v): if use_v and v: return v return e - -def mkstemp(fp): - if fp[-6:] != "XXXXXX": - print(f'Error: mkstemp got filepath: {fp}') - return None - for x in range(0,1000): - r = ''.join(random.choices(string.ascii_letters, k=6)) - fp = fp[:-6] + r - if not os.path.exists(fp): - return fp - print("Error: Could not create new file, try running skratch -c and try again") - return None - - + def run(editor, sk_path, filename=None): if not filename: t = time.localtime() - filename = f"skratch-{t.tm_year}-{t.tm_mon}-{t.tm_mday}-XXXXXX" - fp = os.path.join(sk_path, filename) - fp = mkstemp(fp) + filename = f"skratch-{t.tm_year}-{t.tm_mon}-{t.tm_mday}-" + fd, fp = tempfile.mkstemp(prefix=filename, dir=sk_path) + os.close(fd) else: fp = os.path.join(sk_path, filename) if fp != None: