1. Init — plain, no --separate-git-dir
cd /path/to/work-vault
git initNo remote yet — if one gets added later (internal GitLab/Bitbucket/etc.), that's just git remote add, no re-init needed.
2. .gitignore
"Be concise" is the least effective instruction you can give a model — it's a vibe, and it gets traded away against every other goal in the prompt. Numbers and prohibitions survive.
Paste this into your AGENTS.md as a prohibition list. It's the rec
| #!/usr/bin/env python | |
| # encoding: utf-8 | |
| """ | |
| utc_to_local.py | |
| Example of converting UTC to local time using python-dateutil. | |
| https://pypi.python.org/pypi/python-dateutil | |
| """ | |
| from datetime import datetime |
| from collections import namedtuple | |
| human_delta = namedtuple('human_delta', | |
| ['days', 'hours', 'minutes', 'seconds']) | |
| human_delta.__str__ = lambda self: \ | |
| '%d days, %d hours, %d minutes, %d seconds' % \ | |
| (self.days, self.hours, self.minutes, self.seconds) | |
| def convert_timedelta(duration): | |
| days, seconds = duration.days, duration.seconds |
| Exploding Die | ||||||
|---|---|---|---|---|---|---|
| Target | d4 | d6 | d8 | d10 | d12 | |
| 1 | 1 | 1 | 1 | 1 | 1 | |
| 2 | 0.75 | 0.833333333 | 0.875 | 0.9 | 0.916666667 | |
| 3 | 0.5 | 0.666666667 | 0.75 | 0.8 | 0.833333333 | |
| 4 | 0.25 | 0.5 | 0.625 | 0.7 | 0.75 | |
| 5 | 0.25 | 0.333333333 | 0.5 | 0.6 | 0.666666667 | |
| 6 | 0.1875 | 0.166666667 | 0.375 | 0.5 | 0.583333333 | |
| 7 | 0.125 | 0.166666667 | 0.25 | 0.4 | 0.5 | |
| 8 | 0.0625 | 0.138888889 | 0.125 | 0.3 | 0.416666667 |
| #!/usr/bin/env python | |
| # encoding: utf-8 | |
| """ | |
| swdiceprob.py | |
| Functions for calculating Savage Worlds dice probabilities. | |
| Copyright (c) 2012-2013 Dale Davis. All rights reserved. | |
| Redistribution and use in source and binary forms, with or without |
| def compress_utf8_file(fullpath, delete_original = True): | |
| """Compress a UTF-8 encoded file using GZIP compression named *.gz. If `delete_original` is `True` [default: True], | |
| the original file specified by `delete_original` is removed after compression.""" | |
| with codecs.open(fullpath, 'r', 'utf-8') as fin: | |
| with gzip.open(fullpath + '.gz', 'wb') as fout: | |
| for line in fin: | |
| fout.write(unicode(line).encode('utf-8')) | |
| if delete_original: | |
| os.remove(fullpath) |
| start | |
| = additive | |
| additive | |
| = left:dice "+" right:additive { return left + right; } | |
| / left:dice "-" right:additive { return left - right; } | |
| / dice | |
| dice | |
| = left:primary "d" right:primary { var s = 0; for(var i = 0; i < left; i++ ) { s += Math.floor(Math.random() * right) + 1; } return s; } |
| $dateInterval->format('%H:%I:%S'); |
| -- From http://www.fakebeing.com/projects/remove-on-update-from-mysql-timestamp-column/ | |
| ALTER TABLE mytable CHANGE columnName columnName TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP |