Copy Relative Command
Copy's a command relative of your current active file!
Details
Installs
- Total 150
- Win 83
- Mac 46
- Linux 21
| Aug 11 | Aug 10 | Aug 9 | Aug 8 | Aug 7 | Aug 6 | Aug 5 | Aug 4 | Aug 3 | Aug 2 | Aug 1 | Jul 31 | Jul 30 | Jul 29 | Jul 28 | Jul 27 | Jul 26 | Jul 25 | Jul 24 | Jul 23 | Jul 22 | Jul 21 | Jul 20 | Jul 19 | Jul 18 | Jul 17 | Jul 16 | Jul 15 | Jul 14 | Jul 13 | Jul 12 | Jul 11 | Jul 10 | Jul 9 | Jul 8 | Jul 7 | Jul 6 | Jul 5 | Jul 4 | Jul 3 | Jul 2 | Jul 1 | Jun 30 | Jun 29 | Jun 28 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Windows | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| Mac | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| Linux | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Readme
- Source
- raw.githubusercontent.com
Copy Relative Command 📋️
A helpful command to copy a command to the clipboard based on configured settings, per language!
Installation 💻️
Within Sublime Text: - open the command palette (Windows/Linux: Ctrl + Shift + P, MacOS: Cmd + Shift + P) - search for “Package Control: Install Package” and press enter - search for “Copy Relative Command” and press enter on the mactching entry
Alternative installation 💻️
Within terminal:
- clone this repository into your respective operating systems Packages directory
- Linux: cd ~/.config/sublime-text/Packages && git clone git@github.com:patoui/CopyRelativeCommand.git
- MacOS: cd ~/Library/Application Support/Sublime Text 3/Packages && git clone git@github.com:patoui/CopyRelativeCommand.git
Quick start 🚀️
- open command palette and search for “Copy Relative Command Settings”
- add language settings, example:
{
"languages": {
"php": [
{
"glob": "**Test.php",
"command": [
"vendor/bin/phpunit",
"{relative_path}",
"--filter={current_function_or_class}"
]
},
{
"glob": "*",
"command": ["php -l {relative_path}"],
},
],
}
}
- execute
Copy Relative Commandwithin the configured language, such as aphpfile in our above example:- if the open file (active view) is a file named
test/Unit/ExampleTest.phpand the cursor is within a function nametest_it_should_be_true, the command copied to the clipboard would be:vendor/bin/phpunit test/Unit/ExampleTest.php --filter=test_it_should_be_true
- if the open file (active view) is a file named
app/Http/Controllers/UserController.phpthe command copied to the clipboard would be:php -l app/Http/Controllers/UserController.php
- if the open file (active view) is a file named
- That's it! Add your own configurations for language commands 👌️
Add a key binding 🔑️
To add a key binding, open “Preferences / Key Bindings - User” and add:
{ "keys": ["alt+c", "alt+c"], "command": "copy_relative_command" }
With this setting pressing alt + c + c will copy the configured relative command to your system clipboard
Settings 👨💻️
| Key | Parent | Description |
|---|---|---|
languages |
N/A | Contains a dictionary of all configured languages commands (e.g. php, go, python) and has a special value of * to apply to all languages |
glob |
languages.* |
contains a Unix filename pattern to identify which files the current command applies to (see fnmatch and glob) |
command |
languages.* |
a list (array) of strings which represent the command to be run. The command key has a few helper values:
|
Project Settings 📽️
- Open your project settings
- edit existing project settings “Project: Edit Project”
- create new project settings “Project: Save As”
- Add the same settings as you would in your general settings under the
Copy Relative Commandkey
{
"folders":
[
{
"path": "."
}
],
"settings": {
"Copy Relative Command": {
"languages": {
"php": [
{
"glob": "**Test.php",
"command": [
"vendor/bin/phpunit",
"{relative_path}",
"--filter={current_function_or_class}"
]
},
{
"glob": "*",
"command": ["php -l {relative_path}"],
},
]
}
}
}
}