Skip to content
This repository has been archived by the owner on Feb 7, 2024. It is now read-only.

dacoder101/hierarchy-creator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This project has been discontinued and I do not have any plans to revive it.

Hierarchy Creator

This project has been put on hold and will be completely redesigned.
I practically jumped up a skill level in the middle of the project, and wasn't satisfied at its current state you could probably tell because i was suppost to complete may 1st
Anyway, I will be starting on pyos3 and returning to this later.
A python program allowing for custom hierarchies all from the CLI.

One of the most time consuming projects I've ever tried. This will also be integrated into my upcoming "pyos3" project.


Known Issues

  • Random text sometimes appears at input and styled text.
    This text is ASCII related to styling text.
    I cannot fix this as I am using a module to make things much easier.
    (Simply restart the program if you see such things, it doesn't usually happen on the released binaries.)
  • Menu's and inputs don't output any response, or are entirely skipped.
    For some reason, the key() function (for awaiting a keypress) is entirely ignored.
    Can't fix because I'm using a module which allows this. Not sure why this would happen either.
    (Simply restart the program. I have only seen this issue on Replit.)
  • When deleting the last hierarchy, the No Hierarchy menu appears.
    Tried fixing, ran into many errors.
    Implementing this will make the already bad formatting even worse.
  • Files and directories cannot have the same name.
    I cannot fix this because of the way commands are written.
    If you attempt to do so, you will be noted of this.
  • Using " " and ' ' in arguments does NOT work as expected.
    Because I use the .split() method to split spaces, using quotation marks will not allow you to have directories with spaces.
    Along with that, using quotation marks as file names and directories is allowed (because I can't figure out how to fix it) but is extremely confusing.
  • The code format is just bad in general.
    I don't plan to revisit this after it is completed.
    If you want to reformat the code (greatly appreciated), create a PR.

SRC Confusion

  • Why are try and except statements around inputs?
    I did this as simply entering CTRL+D or etc. immediately crashes the program.
    I wouldn't recommend doing this though as it is extremely annoying to debug.
  • Why are variables of escape characters declared in func.py?
    Because of limitations of f-strings, you are unable to use escape characters inside of arguments when calling functions in an f-string.
    This is also why string arguments inside of f-strings are using ' ' instead of " ".
  • When creating a Hierarchy object, why are both arguments the same value?
    The name and dir parameters are similar in the fact that they are both using the hierarchies name, while dir is a directory that can be used for other operations.
    But why not just pass the name into the dir automatically?
    [I realized I should have done this now, but] incase I wanted to specifically start the directory within a folder in the hierarchy.

If you don't plan to use the release, run hierarchy.py with func.py in the same directory (preferably isolated in a folder). You will also most likely need to install this package. pip install console

Note! The source code uses operations designed for Unix (also works with macOS)!
Even though EXE releases are designed for Windows, if you plan to use the src you will need to convert the "clear" statement used in the cls() function in both hierarchy and func.py to your native terminals clear statement.
(This would be "cls" for Windows!)

Plan to use PyInstaller yourself? You will likely run into an error. For some reason, you need to install a package pip install future-fstrings which should stop any errors you are facing.
This project was developed on and can be found at Replit.

Want to contribute or have a suggestion? Leave an issue or PR!

The next release is the FINAL release! Pyos3 will begin soon after.