name mode size
.idea 040000
bored 040000
counter 040000
decorators 040000
sitesize 040000
README.md 100644 3.31kB
print_table.py 100644 1.72kB
project.cson 100644 419B
requirements.in 100644 274B
requirements.txt 100644 360B
testpython.code-workspace 100644 204B
testpython.py 100755 2.93kB
testpython.sublime-project 100644 710B
README.md
# testpython This is just a test project. You can do anything here, test python and IDE projects. This branch is of Python 3 code. There's a python2 branch too. ## Getting the project You can get a copy of this project by clicking on the [ZIP](https://git.dlma.com/testpython.git/zipball/main) or [TAR](https://git.dlma.com/testpython.git/tarball/main) buttons near the top right of the GitList web page. You can clone from the origin with: git clone ssh://USERNAME@dlma.com/~/git/testpython.git ## Supported IDEs This project has example Visual Studio Code, PyCharm, Atom, and Sublime Text 3 projects. ### tmux vim entr The best IDE of all, for those who live on the CLI. Create two panes in tmux, run vim in one, and run entr in the other with a command like: git ls-files | entr -c sh -c 'ctags -R *; ./testpython.py' or find . -type f -name \*.py | entr -c sh -c 'ctags -R *; ./testpython.py' or to run in pdb: git ls-files | entr -c sh -c 'ctags -R *; python3 -m pdb testpython.py' Tip: In vim you can do a multi-file grep and use the QuickFix window with commands like... :grep -rI searchterm . :cw See [this QuickFix tip for sorting results by filename](https://git.dlma.com/dotfiles.git/commit/0cb566c53caf931c8b3f423dcfded4660b220cbb). ### Visual Studio Code Download Microsoft's Visual Studio Code from [code.visualstudio.com](https://code.visualstudio.com/). Code uses the [testpython.code-workspace](/testpython.git/blob/main/testpython.code-workspace) project file. I prefer this to GitHub's Atom. Both are based on GitHub's Electron. ### PyCharm PyCharm uses the [.idea](/testpython.git/tree/main/.idea/) directory. JetBrains suggests [sharing the .idea directory except for workspace.xml and tasks.xml](https://intellij-support.jetbrains.com/hc/en-us/articles/206544839). ### Sublime Text 3 [Sublime](https://www.sublimetext.com/) uses the [testpython.sublime-project](/testpython.git/blob/main/testpython.sublime-project) file. ### GitHub's Atom Download from [atom.io](https://atom.io/). These are useful modules: * [read-only-indicator](https://atom.io/packages/read-only-indicator) by alefragnani. (Feature not available in Sublime Text 3.) * [script](https://atom.io/packages/script) by rgbkrk, for running scripts. * [project-manager](https://atom.io/packages/project-manager) by danielbrodin. If you install project-manager, it looks for [a local "project.cson" file](/testpython.git/blob/main/project.cson), and merges those settings with what is in the .atom `projects.cson` file. ## Requirements requirements.txt specifies the requirements for Python modules and apps. Install the requirements with: python3 -m pip install -r requirements.txt ### Generating requirements.txt Ideally, track why modules are required, create requirements.in with only the the top-level requirements, and let pip-compile (from pip-tools) figure out the next-level dependencies. (venv) $ python3 -m pip install pip-tools (venv) $ pip-compile requirements.in Otherwise, you can make requirements.txt directly with pip freeze: (venv) $ python3 -m pip freeze > requirements.txt ## Current Features * Multiple directories for testing build systems and IDEs ## Is it any good? [Yes](https://news.ycombinator.com/item?id=3067434).