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.