mirror of
https://github.com/jimeh/tmuxifier.git
synced 2026-02-19 09:56:39 +00:00
Add readme and license files
This commit is contained in:
20
LICENSE.md
Normal file
20
LICENSE.md
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
Copyright (c) 2012 Jim Myhrberg.
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
a copy of this software and associated documentation files (the
|
||||||
|
"Software"), to deal in the Software without restriction, including
|
||||||
|
without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be
|
||||||
|
included in all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||||
|
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||||
|
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||||
|
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||||
|
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
62
README.md
Normal file
62
README.md
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
# tmuxifier
|
||||||
|
|
||||||
|
Tmuxify your Tmux. Create, edit and load complex Tmux session, window and pane
|
||||||
|
configurations with ease.
|
||||||
|
|
||||||
|
Tmuxifier is inspired the excellent [tmuxinator][] Project. While tmuxinator
|
||||||
|
is childishly easy to configure with it's YAML project files, it's also
|
||||||
|
restricting me from the kind of powerful control I want over Tmux.
|
||||||
|
|
||||||
|
[tmuxinator]: https://github.com/aziz/tmuxinator
|
||||||
|
|
||||||
|
To solve this problem, I opted for shell scripts with pretty helper functions
|
||||||
|
instead of the cleaner but more limiting YAML config files. This allows you to
|
||||||
|
create pre-defined session and window layouts with panes spit exactly as you
|
||||||
|
like. You will need to be very familiar with a few of Tmux's commands however.
|
||||||
|
|
||||||
|
## Example
|
||||||
|
|
||||||
|
Given with have a window layout file called `example.window.sh` which looks
|
||||||
|
like:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
window_name "Example Window"
|
||||||
|
window_root "~/Desktop"
|
||||||
|
tmux new-window -t "$session" -n "$window"
|
||||||
|
tmux split-window -t "$session:$window.0" -v -p 20 "watch -t date"
|
||||||
|
tmux split-window -t "$session:$window.1" -h -p 60
|
||||||
|
tmux select-pane -t "$session:$window.0"
|
||||||
|
```
|
||||||
|
|
||||||
|
You can then load that window layout into a new window in the
|
||||||
|
current tmux session using:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
tmuxifier window example
|
||||||
|
```
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/jimeh/tmuxifier.git ~/.tmuxifier
|
||||||
|
```
|
||||||
|
|
||||||
|
And add the following to your `~/.profile` or equivalent:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
[[ -s "$HOME/.tmuxifier/init.sh" ]] && source "$HOME/.tmuxifier/init.sh"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Custom Installaton Path
|
||||||
|
|
||||||
|
To install Tmuxifier to a custom path, clone the repository to your desired
|
||||||
|
path, and set `$TMUXIFIER` to that path. For example:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
export TMUXIFIER="$HOME/.dotfiles/tmuxifier"
|
||||||
|
[[ -s "$TMUXIFIER/init.sh" ]] && source "$TMUXIFIER/init.sh"
|
||||||
|
```
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
Released under the MIT license. Copyright (c) 2012 Jim Myhrberg.
|
||||||
Reference in New Issue
Block a user