♓️ Fish shell plugin that helps you to work with paired symbols in the command line
pisces ☯ 双鱼
pisces ['paɪsiz]
is a plugin for fish that helps you to work with paired symbols like ()
and ''
in the command line. Similar to your favorite text editor!
Here |
denotes the current cursor position. No manual cursor motion involved :sparkles:
... |
+ ( ⇒
... (|)
...|)
+ ) ⇒
... )|
...([|])
+ backspace ⇒
...(|)
+ backspace ⇒
...|
The minimum recommended version of fish is v2.6, because
- it has a feature called bracketed (a.k.a safe) paste which solves the problem with pasting strings containing paired symbols (they get autoclosed), see #6 for details.
The minimum required version of fish is v2.3, because
- there was a bug #2210 in v2.2 which would brake quotes handling
- it uses
string
builtin which was introduced in v2.3
Using Fisher:
fisher install laughedelic/pisces
Using oh-my-fish:
omf install pisces
Notice that you will need to restart fish to get this new installation working. This is specific to the way oh-my-fish handles installation.
To disable completing pairs unless the cursor is at the end of the line, set the $pisces_only_insert_at_eol
variable:
set -U pisces_only_insert_at_eol 1
You can set the $pisces_pairs
universal variable and launch a new fish session to reload key bindings:
set -U pisces_pairs $pisces_pairs '<,>' '`,`' '«,»'
Note that at the moment pisces works correctly only with single-symbol delimiters.
The default set of pairs:
(,)
parenthesis[,]
brackets{,}
braces","
double quotes','
single quotes