NAME

devmode - Wrapper for GNU screen to manage multiple screenrc files

VERSION

This documentation refers to devmode version 0.0.8.

SYNOPSIS

  devmode <task>

OPTIONS:
 <task>       The name of a screen config found in the ~/.devmode/ directory
 -k --kill    Kill the task
 -l --list    List all running devmode tasks
 -a --all     Makes --list show even non-running sessions
 -e --exists  Only run screen if a devmode file exists by that name
 -x --multiconnect
              Connect to session with out disconnecting existing session
 -c --create  Creates a missing devmode task
 -d --chdir   Parse the config and change directory to the last chdir command
              found in there.
 -f --force-title
              Try harder to set the terminal title
 -t --template=name
              Uses this template name for creating the missing task. The
              default template is rc other templates can be stored in the
              $HOME/.devmode/templates/ directory
 -p --protect Run a surrounding screen session to protect the intended
              session from ssh-agent being lost when logging out of the
              of box. (experimental 256 colours doesn't work is sub screen)
 -s --server=str
              Use a remote server to connect to and run devmode. The server
              may include username@ to login with a particular user.
 -S --short   Don't show "Devmode" in the title bar

 -A --auto=str
              Allows a BASH command line completion mode helper mode to run
 -T --test    Don't run any external commands
    --VERSION Prints the version information
    --help    Prints this help information
    --man     Prints the full documentation for devmode

DESCRIPTION

devmode makes managing screen sessions simpler by managing session names and configuration files.

devmode configuration files are stored in the $HOME/.devmode/ directory. Templates for creating new configuration files can be placed in the directory $HOME/.devmode/template/, the default template creates a session that always opens to the directory that devmode was run from, it is aimed at working with perl packages.

BASH auto-completion

_devmode() {
    local cur prev opts
    COMPREPLY=()
    cur="${COMP_WORDS[COMP_CWORD]}"
    prev="${COMP_WORDS[COMP_CWORD-1]}"
    opts="--task -t --kill -k --list --ls -l --all -a --exists -e --multiconnect -x --create -c --chdir -d --reconnect -r --force_title -force-title -f --title_bar -title-bar -b --protect -p --short -S --server -s --auto -A --current -C --pre_cmd -pre-cmd --pre --post_cmd -post-cmd --post --test -T --verbose -v --man --help --VERSION"
    if [[ ${cur} == -* && ${COMP_CWORD} -eq 1 ]]; then
        COMPREPLY=($(compgen -W "${opts}" -- ${cur}))
    elif [[ ${prev} == -s* ]]; then
        local hosts=$(devmode --auto ssh)
        COMPREPLY=($(compgen -W "${hosts}" -- ${cur}))
    else
        local sonames=$(devmode --auto full --current ${COMP_CWORD} ${COMP_WORDS[@]})
        COMPREPLY=($(compgen -W "${sonames}" -- ${cur}))
    fi
}
complete -F _devmode devmode

SUBROUTINES/METHODS

DIAGNOSTICS

CONFIGURATION AND ENVIRONMENT

The <Cdevmode> program uses 3 different types of configuration files:

Screen

Stored in ~/.devmode/[name] are standard GNU Screen files.

mode

Each mode file can have a C,~/.devmode[mode].rc> to change default configuration. It is stored in YAML format.

global

Stored in`/.devmode.rc sets global defaults. It is stored in YAML format.

DEPENDENCIES

INCOMPATIBILITIES

BUGS AND LIMITATIONS

There are no known bugs in this module.

Please report problems to Ivan Wills (ivan.wills@gmail.com)

Patches are welcome.

AUTHOR

Shannon Wynter - (http://fremnet.net/contact) (original) Ivan Wills - (ivan.wills@gmail.com)

LICENSE AND COPYRIGHT

Copyright (c) 2007 Shannon Wynter, 2007-2013 Ivan Wills. All rights reserved.