Shorthand for creating files and folders.
Project description
tree (sharpshooter)
Shorthand templates for creating (or destroying) file-systems.
tree could be written for any language.
pip install sharpshooter
syntax
To create a plain empty file just type a word i.e.
file
to create or access a dir use +
+dir
To create a file inside a dir use a 4 spaces (or tab)
+dir
file
putting it all together…
+dir
file
+plugins
+mail
+vendor
index.html
+something
file.py
file.py
usage
from sharpshooter import tree
tree('''
+dir
file
+plugins
+mail
+vendor
index.html
+something
file.py
file.py
''')
tree doesn't wait to be told. Your files are now there.
deleting a file
tree can also remove dirs and files. You guessed it. With the the - minus symbol
tree = ''' \
+dir
+plugins
-mail
'''
But be mindful that would also create the dir and plugins dir if they didn't exist.
tree will not ask twice. Your files are gone.
comments
use # to comment out a line or instruction. (warning. bug. DON'T leave a space before the comment. Lexer may interpret it as directory change)
s = '''
+:dir
file# some ignored text here
+plugins
+mail
'''
To see planned features/goals see TODO.md
CLI
You can use the CLI to read the version i.e.
$ python3 -m tree --version
NOTES
I came up with the idea while mucking around with a lexer.
remember it executes from where your python thinks is the current dir. If you're unsure set it first. i.e.
import os
os.chdir(os.path.dirname(os.path.abspath(__file__)))
DISCLAIMER
This is a work in progress. It creates and destroys files on your hard drive. So be careful.
DON'T leave trailing negative space on lines. I use space to change dirs.
Use 4 spaces not tabs. (I've not tested with tabs as my editor converts them to 4 spaces). will sort later.
if using a comment. Don't leave space before the #
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for sharpshooter-0.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5dc0c7c75b0c16f06b268b4e1f26c137e2f4a43ab60a1159e0ebe3299a2c8a99 |
|
MD5 | ca41169d70c7545e8057d445b74ee1ca |
|
BLAKE2b-256 | f3bac374533f1feb5f1a684f231cc07a0ec78db2cce47669d048d5d5cca454ec |