Delphi 10.4.1 — это релиз, ориентированный на качество, и это также касается автозавершения кода! Мы не только помогаем вам имитировать классическое завершение кода, но и исправили и доработали многие элементы.
Когда была выпущена RAD Studio 10.4, мы переработали Code Insight. Хотя старый («классический») код все еще доступен в качестве параметра, по умолчанию Delphi теперь использует асинхронную неблокирующую технологию для завершения кода и связанных функций. Это означает, что среда IDE не должна останавливаться при вводе текста, и вы можете использовать автозавершение кода во время отладки, а также многие другие преимущества (например, результаты поиска). Вы можете узнать больше о технологии здесь.
В 10.4.1 мы сосредоточились на полировке понимания кода. Поскольку 10.4.1 является качественным выпуском, в нем очень мало новых функций — есть некоторые новые настройки! — но большая часть работы заключается в устранении ошибок и настройке поведения. Вот некоторые вещи, о которых вы, возможно, захотите узнать: новые настройки, ключевые исправления и некоторые специальные примечания для очень больших проектов.
Table of Contents
Новые настройки автозавершения кода
Подчеркивание совпадений
Автозавершение нового кода 10.4 показывает больше результатов, чем старое классическое автозавершение, так как также перечисляются элементы, которые не только начинаются с того, что вы набрали (текст «фильтр»), но и содержат то, что вы ввели. (В 10.4.1 есть настройка, включающая эти дополнительные элементы: см. Ниже.)
Это полезно, поскольку позволяет просматривать список завершения и выполнять поиск по нему путем ввода. Иногда бывает трудно понять, почему конкретный результат включен в список, поэтому в 10.4.1 соответствующая часть символа теперь подчеркнута.
На этом снимке экрана вы можете видеть, что ScaleFactor был включен, потому что он содержит act.
Вы можете отключить подчеркивание в диалоговом окне «Параметры» — информацию о новых настройках см. В следующем разделе.
Получение классического поведения завершения кода
По умолчанию завершение нового кода не полностью копирует старое классическое поведение завершения кода. Он показывает больше результатов и использует другой алгоритм для автоматического выбора лучшего элемента в списке.
В 10.4.1 мы добавили четыре настройки, которые в совокупности позволяют вам получить точно такое же поведение, что и классическое завершение. Все четыре находятся на новой вкладке Insight Options на странице UI> Editor> Source в диалоговом окне Options.
«Текст фильтра подчеркнут» управляет новой функцией, подчеркивающей соответствие, как указано выше.
Чтобы имитировать классическое завершение кода, вы можете изменить настройки следующим образом:
- ‘Сначала перечислить все символы, начинающиеся с фильтра’: on
- ‘Выбрать самый короткий совпадающий символ’: выключено (вместо этого выбирается самый близкий по объему)
- «Текст фильтра подчеркнут»: выкл.
- ‘Показывать символы, содержащие фильтр’: выключено (хотя мы рекомендуем оставить его включенным; это добавляет больше полезных результатов)
Ключевые исправления качества
На странице 10.4.1 Что нового перечислено множество исправлений, и я рекомендую вам прочитать этот список. Однако некоторые из них, на которые стоит обратить особое внимание, включают:
Улучшено использование памяти и производительность. Языковой сервер должен использовать меньше памяти, и он должен быть быстрее
Некоторые улучшения предназначены специально для очень крупных проектов (спасибо нашим бета-тестерам)
Пакеты очень сильно улучшены — в документации есть несколько пунктов
Error Insight («красные волнистые линии») иногда обновлялся с задержкой после устранения ошибки, а иногда длина красной волнистой линии была неправильной; оба исправлены
Исправлены проблемы, из-за которых всплывающая подсказка / справка не всегда отображала полную информацию.
Множество других исправлений — я действительно рекомендую вам прочитать «Что нового», это длинный список изменений только в Code Insight.
Очень большие проекты
Выше отмечены некоторые изменения для очень больших проектов. Вот цитата одного из наших клиентов о версии 10.4.1, которой они любезно разрешили мне поделиться:
Поздравляем команду LSP!
Теперь мне удалось открыть и запустить наше флагманское приложение на 10.4.1. И — волшебство! — автозавершение кода наконец-то заработало в нашем основном модуле, поддерживающем IFDEF. Я думаю, что последний раз, когда завершение кода работало, было где-то около D5 раз …
Для работы в первый раз требуется около 15 секунд (вероятно, он передает огромное количество единиц LSP), но после этого использовать это настоящее счастье!
Спасибо!
Это конкретное приложение содержит чуть менее 3 миллионов строк кода. И Code Insight работает в этом месте впервые после Delphi 5.
В каждом выпуске мы продолжаем улучшать Delphi и C ++ Builder. 10.4.1 примечателен тем, что это релиз, ориентированный на качество. Мы будем продолжать улучшать и изменять IDE каждый раз, когда мы выпускаем новую версию, и мы надеемся, что одни только исправления кода, не говоря уже о более чем 800 других исправленных ошибках, сделают 10.4.1 очень полезной версией для установки.