| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
|
|
|
|
|
|
|
|
|
| |
Rather than complicating the matter by adding 1 to shift the specific
set command (not sure why this works for me in testing, since
`parse_setting_from_line` already drops the command) and then taking the
minimum of the length of the path and 1 because of the "path=" bit
that's always present, even if the path is an empty string, we just
recreate the argument, substituting "=" for "path=", and iterate over
the whitespace seperated parts and shift once for each.
|
| |
|
|
|
|
|
| |
Was overriding the _arg property as a method but it can just be a
property.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The original behavior of `setlocal` allowed to pass in a regular
expression that would be matched to paths. This was confusing for some
users because many paths contain regular expression metacharacters and
these would affect in which directories the settings apply in unexpected
ways. To remedy this we decided to escape all metacharacters by default
but this came at the cost of being unable to specify precisely which
directories would match, as this made use of the `$` metacharacter with
the original behavior.
The behavior has been fixed to never match subdirectories but changing
back to the original behavior and introducing a second backwards
incompatible change was deemed a bad idea. So we decided to make
`setlocal` an alias for the new `setinpath` and implement a `setinregex`
that exhibits the original `setlocal` behavior, allowing for complex
regular expressions.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The `setlocal` name is hard to remember, `setintag` is much easier to
recall, so we will follow the same naming style. `setlocal` remains
available as an alias for `setinpath`.
A new abstract class, `_setlocal`, is introduced as a basis for the
`setinpath` command because we want to reuse it for the original
behavior of `setlocal`. Several bug fixes have been integrated in this
new base class. The shifting of arguments was only incidentally correct
most of the time. The matching of quoted arguments only worked in the
absence of nested quotes.
|
|
|
|
|
|
| |
The man page says that the path argument to the setlocal command is a
regex. This commit fixes the regression in 5b0b73fc, which made it a
normal string.
|
|
|
|
|
| |
In Python 2 they could be unicode objects instead. And if they're not we
need to decode them before writing.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
The @contextmanager decorator wrapped the file object in a
`_GeneratorContextManager` object. This means you cannot access the same
members on such an object and the stdlib expects to be able to do so.
Fixes #2442
|
|
|
|
|
| |
The machinery behind `:source` expects "str"s everywhere so this is the
easiest way to allow switching to `io.open()` without causing problems.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|\ |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Made a mistake when merging #2201. If the "TMUX" key isn't in the
environment dictionary we'll get a KeyError. Providing an empty string
default should fix the problem.
I applied the same logic to the check for screen because TERM isn't
guaranteed to be in the environment either, though this verges os
malicious.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|