Skip to content

Latest commit

 

History

History
112 lines (87 loc) · 3.79 KB

TODO

File metadata and controls

112 lines (87 loc) · 3.79 KB

TODO

0.1

Done

  • shell_command_before for teamocil.
  • teamocil and tmuxinator import support for blank panes
  • Add help docs to CLI commands and options.
  • tmuxp -L and -S autocomplete to correct server socket-name and socket-path.
  • Get sphinx-argparse in good enough shape for docs.
  • Rename functions - util.version() to util.has_required_tmux_version(). (done) - config.check_consistency() to config.validate_schema(). (done)
  • Python 2.6 support
  • Remove doc for run_tests.py visual test runner. Just have instruction for running test builder package.
  • tmuxp freeze:
    • offer to save session_name as default file if filename doesn't already exist in config dir.
    • Remove -zsh command, python, etc if just in shell.
  • Assure $ tmuxp freeze works with start_directory and does not return commands with dir and no CD's. (esp with zsh).

0.2 milestone

  • tmuxp freeze add autogenerated command to yaml configs (won't work w/ json)
  • pep8, pep257 for tests. (ongoing)
  • if no window_name in config, option automatic_rename: on by default and test.
  • example of doctest/usage example of creating a new tmux session from object
  • example of accessing a current tmux session from object
  • example of loading a tmux session from a :py:obj:dict. example of the schema.
  • code examples in docs
  • remove duplicated code in :mod:`tmuxp.cli`.
  • Determine the workflow for $ tmuxp load filename for sure. Document it.
  • Handle case where switching client via $ tmuxp load or $ tmuxp attach-session into another socket may cause an error.
  • Fix issue where tmuxp freeze with exotic PS1's cause strange outputs.
  • If session name for $ tmuxp freeze has spaces, replace whitespace with dashes.
  • Test and ensure correct pane. tmux-python#15.
  • :ref:`about tmux` page.

0.3 milestone

  • Automatically grab [-L socket-name] and [-S socket-path] from where tmuxp was ran. os.environ.get('$TMUX').

  • Automatically grab current sesession, window, session from where script is ran. $ tmuxp kill-window should kill current window.

    Or, As an alternative, create a mapping that pipes commands right into tmux like a layer cake.

  • $ tmuxp shortened CLI completion: - <session-name> - <config-file (minus extension)> yaml, json

    • current dir
    • config dir

    Will be able to attach sessions, load configs without an additional command. If ~/.tmuxp/hello.yaml exists,

    tmuxp <tab> will tab-complete and allow $ tmuxp hello to load the yaml config.

    If ~/.tmuxp/hello.json exists also, 'hello.json' and 'hello.yaml' will be available.

    If .tmuxp.yaml exists in current directory, . will be an option. If .tmuxp.json exists also, .tmuxp.json and .tmuxp.yaml will have to be entered.

    If hello.json exists in config directory and hello is a session name, autocomplete will offer both, hello attaches that session, hello.json will attempt to load the file (which may have a different session_name. If the filename and session name are the same, it will still offer to attach.

    $ tmuxp .<tab> will start autocompletion searching for YAML and JSON configs in cwd, as will $ tmuxp ..<tab> and $ tmuxp /.

.. todo:: vim: set filetype=rst: