summaryrefslogtreecommitdiff
path: root/plugins/textmate
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/textmate')
-rw-r--r--plugins/textmate/README.md16
-rw-r--r--plugins/textmate/textmate.plugin.zsh11
2 files changed, 22 insertions, 5 deletions
diff --git a/plugins/textmate/README.md b/plugins/textmate/README.md
new file mode 100644
index 000000000..9fd342135
--- /dev/null
+++ b/plugins/textmate/README.md
@@ -0,0 +1,16 @@
+# TextMate plugin
+
+The plugin adds a function for the [TextMate](https://macromates.com) editor.
+
+To use it, add `textmate` to the plugins array of your zshrc file:
+```
+plugins=(... textmate)
+```
+
+## Function
+
+The `tm` function provides the following options:
+
+- No arguments: Run `mate` in the current directory.
+- Argument that is a directory: Run `mate` in the given directory and cd to it.
+- Other arguments: Pass all arguments to `mate`. This allows for easy opening of multiple files.
diff --git a/plugins/textmate/textmate.plugin.zsh b/plugins/textmate/textmate.plugin.zsh
index 02813de9e..174511019 100644
--- a/plugins/textmate/textmate.plugin.zsh
+++ b/plugins/textmate/textmate.plugin.zsh
@@ -1,13 +1,14 @@
# If the tm command is called without an argument, open TextMate in the current directory
# If tm is passed a directory, cd to it and open it in TextMate
-# If tm is passed a file, open it in TextMate
+# If tm is passed anything else (i.e., a list of files and/or options), pass them all along
+# This allows easy opening of multiple files.
function tm() {
if [[ -z $1 ]]; then
mate .
- else
+ elif [[ -d $1 ]]; then
mate $1
- if [[ -d $1 ]]; then
- cd $1
- fi
+ cd $1
+ else
+ mate "$@"
fi
}