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.