Meine Lieblings Python Entwicklungsumgebung ist:tmux geteiltes Fenster und aktivieren ein Python virtualenv
- Eine große linke Waagschale für vim
- Zwei kleine Pfannen auf der rechten Seite für interaktive Konsolen
Jede Pfanne sollte ein Python virtualenv (mit virtualenvwrapper) laufen. So, hier ist die Liste der Befehle muss ich mein Setup-Umgebung eingeben:
➜ ~ workon some_env
➜ ~ tmux splitw -h -l90
➜ ~ workon some_env
➜ ~ tmux splitw -v -p50
➜ ~ workon some_env
Setzt man diese Befehle in einem Skript und Beschaffung die Datei leider workon some_env
dreimal auf der gleichen Pfanne, anstatt einmal auf jeder Pfanne laufen würde.
Ziemlich einfach, aber ziemlich langweilig, jedes Mal, wenn ich eine Arbeitsumgebung einrichten möchte.
gebunden ich eine Verknüpfung aus dem Fenster correcty aufzuspalten:
bind a source-file ~/.config/tmux/dev-session
Diese Datei enthält dev-session
:
splitw -h -l90
splitw -v -p50
aber ich bin nicht in der Lage automatisch workon some_env
auf jeder Pfanne laufen. Ich habe das Problem in jeder Hinsicht gelöst, ich kann es einfach nicht funktionieren lassen.
splitw "workon some_env"
# Exits immediately as `workon` function terminates
splitw "echo 'workon some_env' | source /dev/stdin"
# Exits immediately as `source` terminates
splitw "workon_args=some_env zsh -f .some_custom_zshrc"
# Where .some_custom_zshrc contains:
# workon $workon_args
# Does not work since running `workon some_env` from a script
# has no effect on the script caller
splitw "zsh -c 'workon some_env' -i"
# `workon some_env` seems to be executed in a separate environment
# and the virtualenv is no more activated within the interactive shell
Ich versuchte noch exotischere Sachen, aber hier bin ich fest.