| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
### Как сейчас
1. zsh подгружает `~/.zfunc/_<command>`, выполняет его как тело функции `_<command>`.
2. Это тело состоит только из определения `_<command>() { ... }` и helper'ов — оно переопределяет `_<command>`, но не вызывает новое определение.
3. Тело завершилось, ни одного `compadd` не было — completion ничего не выдал.
При втором TAB вызывается уже переопределённый "настоящий" `_<command>` — и тогда дополнение работает.
\--
### Что сделал
Добавил вызов `_<command>` в конец скрипта, так что теперь вызов переопределнного `_<command>` происходит на первом `Tab`.
commit_hash:9f60240a3c3d85088101570156c8bde18bf0792a
|
| |
|
|
|
|
|
|
|
| |
### Что случилось?
- Появилась возможность размечать свободные аргументы тегами (хранятся как ui32-значения)
- Теги могут быть статические (`.SetTag(ESomeTags::Tag1)`) и динамические (`.SetTag([] (const TString& a) {return a ? ESomeTags::Tag1 : ESomeTags::Tag2; })`).
- После парсинга можно получить свободные аргументы с определенным тегом (`res.GetFreeArgs(ESomeTags::Tag1)`)
commit_hash:c1a9d821da376538eb7e4251626052a9f03b941c
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
#### Проблема
Из TOptsParseResult сейчас невозможно понять, какую команду вызвали.
Существует метод [GetProgrammName](https://nda.ya.ru/t/SdJXhPQC7NczPm, который частично решает эту задачу, однако:
1. Его поведение зависит от флага [PrintShortCommandInUsage](https://nda.ya.ru/t/3sh6_wPV7NczPt Выставление флага меняет вывод `help`
2. Даже с флагом метод отдает одну строку вместе с запускаемым бинарем. Если хочется отделить только submod'ы, то эту строку приходится сплитить.
#### Решение
Добавил всюду где нужно InvocationParts, которые заполняются по ходу парсинга входных аргументов. В конечном итоге эти parts передаются в TOptsParseResult, откуда могут быть получены вызывающей стороной.
commit_hash:4cf72141552793b19a725b3d394b81215508b85f
|
| |
|
|
|
|
| |
* Support variadic configuration of MutuallyExclusive
* Use it to forbid passing conflicting modes to `arc reset`
commit_hash:cf056645a91fde017d33cbfffe461229c9c3fc39
|
| |
|
|
| |
commit_hash:acb52196481fcf4c768f63b391165775d3b35e4a
|
| |
|
|
| |
commit_hash:f8e992f1779214943ab68c8f592ea2f087f76eb4
|
| |
|
|
| |
commit_hash:9c2ada5b95be3f810d2750406d74d839bd2598ff
|
| |
|
|
| |
56651679ad5f4f41f350a3f125a5604495e64dae
|
| |
|
|
| |
Relates: https://st.yandex-team.ru/, https://st.yandex-team.ru/
|
| |
|
|
|
| |
* Library import 5, delete go dependencies
* Fix yt client
|
| | |
|
| |
|
|
| |
Update tools: yexport, os-yexport
|
| | |
|
| | |
|
| |
|
|
| |
https://clubs.at.yandex-team.ru/arcadia/29404
|
| |
|
|
| |
https://clubs.at.yandex-team.ru/arcadia/29404
|
| |
|
|
|
|
|
|
|
|
| |
определёнными контейнерами?
InsertTo -- столкнулся с проблемой, что я не могу им пользоваться, если мой THashSet имеет кастомный хэш. Решил эту проблемы более общим способом -- сделал так, что InsertTo принимает любой контенер, который может делать insert.
EmplaceTo -- почему-то умел работать только с TVector -- поэтому поддерживает тоже любой контейнер
UPD: поменял методы, чтобы они могли работать с любыми контейнерами, но в некотором коде кто-то зачем-то явно указывал тип T, поэтому мой код это ломал. Так что я просто добавил перегрузку
|
| | |
|
| |
|
|
|
|
| |
форвардится
Change std::move to std::forward
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
| |
Fix arc help output
|
| |
|
| |
Update tools: yexport
|
| | |
|
| |
|
| |
Update tools: yexport
|
| | |
|
| | |
|
| | |
|
| |
|
| |
Update tools: yexport
|
| | |
|
| | |
|
| |
|
| |
Update tools: yexport
|
| |
|
| |
Update tools: yexport
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
| |
add UnnecessaryArgument
|
| |
|
|
| |
ref:1c9de0624395f09c68379be8d3baac9ee51920f3
|
| |
|
|
| |
ref:99dc5c0f6aa3098daa6776ff1762fb99826b2dde
|
| |
|
|
| |
ref:ca7a95e8c9a9d780f96497136a152091d54e61b5
|
| |
|
|
| |
ref:fe5ed49138dce046a93c364cc8879fad3abf3eef
|
| |
|
|
| |
ref:1a0585d83f27cb6fb5b9c4f68a08177e10faf3b3
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|