Проблема с автодополнением.

Место, где разработчики плагинов могут поделиться своим опытом.
Max Rusov
Posts: 3651
Joined: Wed 23 Nov, 2005 11:11
Location: Москва-Питер
Has thanked: 2 times
Been thanked: 19 times

Проблема с автодополнением.

Post by Max Rusov »

Есть диалог с полем ввода. В какой-то момент времени содержимое поля ввода добавлятся в историю через DM_ADDHISTORY. Если открыть историю по Ctrl-Down, то видно, что значение там есть. Однако, если начать набирать в поле ввода, то это значение не попадает в список автодополнения - требуется переоткрыть диалог, чтобы автодополнение его "увидело". Проблема хорошо видна на калькуляторе.

Это ошибка?
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Re: Проблема с автодополнением.

Post by DrKnS »

Max Rusov wrote:Это ошибка?
Возможно.
Проблема хорошо видна на калькуляторе.
есть анси- или far3api-плагин, демонстрирующий проблему?
Max Rusov
Posts: 3651
Joined: Wed 23 Nov, 2005 11:11
Location: Москва-Питер
Has thanked: 2 times
Been thanked: 19 times

Re: Проблема с автодополнением.

Post by Max Rusov »

Far3 - вряд ли. Ansi есть. Можно старую версию калькулятора на плагринге взять. Или вот, мой FarDebug. Окно Debug Console.
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Re: Проблема с автодополнением.

Post by DrKnS »

После 1940.
Max Rusov
Posts: 3651
Joined: Wed 23 Nov, 2005 11:11
Location: Москва-Питер
Has thanked: 2 times
Been thanked: 19 times

Re: Проблема с автодополнением.

Post by Max Rusov »

Спасибо
Shmuel
Posts: 6820
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 528 times

Re: Проблема с автодополнением.

Post by Shmuel »

1940: стали появляться дубликаты (одинаковые строки) в истории.
User avatar
HaRT
Moderator
Posts: 10823
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Re: Проблема с автодополнением.

Post by HaRT »

Вот тут англоязычный пользователь жалуется на ещё одно большое неудобство с автодополнением после ввода буквы диска.
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Re: Проблема с автодополнением.

Post by DrKnS »

1941.

По поводу буквы диска - какие будут предложения?
Max Rusov
Posts: 3651
Joined: Wed 23 Nov, 2005 11:11
Location: Москва-Питер
Has thanked: 2 times
Been thanked: 19 times

Re: Проблема с автодополнением.

Post by Max Rusov »

Еще один спорный момент с автодополнением. Настройки такие:

[ ] Show list
[x] Append first matched item

Допусти, диалог поиска.

1. Ищу слово "procedure"
2. Ищу слово "proc"
3. Ищу еще что нибудь, например "xxx".
4. Теперь открываю диалог поиска и начинаю набирать: proc. Как только я нажимаю "c" строка дополняется до "procedure". Зачем? Ведь "proc" - ближе. В 1.7 такого поведения не было.

По моему это неудобно, как вы считаете?
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Re: Проблема с автодополнением.

Post by DrKnS »

начинаю набирать: proc. Как только я нажимаю "c" строка дополняется до "procedure". Зачем? Ведь "proc" - ближе. В 1.7 такого поведения не было.
Side effects. Так не задумывалось.
User avatar
HaRT
Moderator
Posts: 10823
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Re: Проблема с автодополнением.

Post by HaRT »

DrKnS wrote:По поводу буквы диска - какие будут предложения?
Так ведь
d3x0r wrote:Maybe wait for a / or \ after '<drive>:' before parsing the drive? There's not a lot of reason to pull autocomplete if you're just referncing the drive - becuase then are you going to read the root of the drive or the current path on that drive? (since a 'copy xxx.txt d:' would put the file in the current directory of D: and not the root)...
Или дополнение пытается выкатить список вариантов из текущей директории того диска?
Альтернативно, можно было бы проверять, подключен ли диск, и если нет, не пытаться на нём дополнять.
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Re: Проблема с автодополнением.

Post by DrKnS »

Или дополнение пытается выкатить список вариантов из текущей директории того диска?
Ага. Как бы фича Windows.
Альтернативно, можно было бы проверять, подключен ли диск, и если нет, не пытаться на нём дополнять.
Искать в строке букву диска и проверять? Можно в принципе, но как-то громоздко это.
Max Rusov
Posts: 3651
Joined: Wed 23 Nov, 2005 11:11
Location: Москва-Питер
Has thanked: 2 times
Been thanked: 19 times

Re: Проблема с автодополнением.

Post by Max Rusov »

DrKnS wrote:Side effects. Так не задумывалось.
Надеюсь, Вы и это поправите. Реально мешает, в некоторых случаях.
User avatar
HaRT
Moderator
Posts: 10823
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Re: Проблема с автодополнением.

Post by HaRT »

DrKnS wrote:Искать в строке букву диска и проверять? Можно в принципе, но как-то громоздко это.
Поскольку исходники я не смотрел, я не знаю, каким механизмом Фар формирует варианты дополнения. Поэтому я наивно предполагал, что контекст Фару известен. Впрочем, если в нынешней реализации известно лишь, что это путь в файловой системе, думаю, несложно будет проверить, подходит ли он под Drive specification (X:, \\?\X:; \\server\share, \\?\UNC\server\share, …), и если да, то отличиться умом и сообразительностью.
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Re: Проблема с автодополнением.

Post by DrKnS »

Max Rusov wrote:Надеюсь, Вы и это поправите. Реально мешает, в некоторых случаях.
1943, вроде бы.
HaRT wrote:проверить, подходит ли он под Drive specification (X:, \\?\X:; \\server\share, \\?\UNC\server\share, …), и если да, то отличиться умом и сообразительностью.
Проверить несложно, гарантированного способа сказать "а вот это отключенный сетевой диск" пока не вижу.
Post Reply

Return to “Разработка плагинов”