Плагин Notepad++ SourceCookifier очень медленный на больших заголовках C++

Мне нравится просматривать свои проекты C++ в Notepad++. Я использую плагин SourceCookifier, чтобы легко переключаться между определениями в больших файлах. Однако, если я загружаю большой заголовочный файл C++ (около 30 000 строк) с большим количеством объявлений #define и typedef внутри, кажется, что он зависает и загружается долго.

Кто-нибудь знает, есть ли какой-либо параметр, который можно настроить, чтобы сделать его быстрее, или этот плагин вообще не может загружать так много определений?


person Stefan Anca    schedule 11.05.2012    source источник
comment
В целом синтаксический анализ C++ выполняется относительно медленно. Большинство IDE создают базу данных либо для каждого файла, либо для каждого проекта, с кэшированием проанализированных файлов, чтобы последующие и добавочные изменения выполнялись быстрее. Так что, если вы не можете включить что-то подобное, я сомневаюсь, что вы сможете что-то сделать.   -  person Rup    schedule 11.05.2012


Ответы (1)


Вы можете ускорить все, перекинув папку вашего проекта в панель SourceCookifier, при этом (и это важная, но плохо документированная часть) нажатие клавиши-модификатора (shift, ctrl или alt).

.. для импорта файлов INCLUDE. Но вам нужно дополнительно нажать клавишу CTRL, SHIFT или ALT при перетаскивании файла или папки в древовидное представление.

Или даже умнее... отдельно добавляйте только свои большие источники define/typedef, как описано. Это приведет к повышению производительности, поскольку их символы больше не будут отображаться в дереве, но SourceCookifier по-прежнему будет направлять вас туда, когда вы нажмете «Перейти к определению» на одном из своих символов где-нибудь. остальное в проекте.

Я также иногда использую для добавления заголовочных файлов с несколькими тысячами определений в сеанс SourceCookifier. Без нажатия клавиши ctrl это занимает до 5 минут на файл, но с нажатием клавиши ctrl это занимает всего 1 секунду!

РЕДАКТИРОВАТЬ/

Добавление исходных файлов без нажатия клавиши ctrl:

  • Функция «Перейти к определению»? Да.
  • Символы, отображаемые в виде дерева как подузлы узла исходного файла? Да.
  • ==> Не рекомендуется для исходных файлов laaaarge.

Добавление исходных файлов с нажатием клавиши ctrl:

  • Функция «Перейти к определению»? Да.
  • Символы, отображаемые в виде дерева как подузлы узла исходного файла? НЕТ
  • ==> Рекомендуется для исходных файлов laaaarge.
person ufo    schedule 11.05.2012
comment
Если я использую CTRL или SHIFT, я вижу файл .hpp справа под папкой INCLUDES, но без каких-либо символов. Итак, для того, чтобы увидеть символы под ним, я должен быть важным в обычном, длинном пути, верно? - person Stefan Anca; 11.05.2012
comment
В общем, если я хочу увидеть свои символы, мне нужно добавить исходные файлы в древовидное представление. Они будут проиндексированы и показаны на панели, но символы заголовочного файла будут храниться только в памяти и не будут отображаться на панели. - person Stefan Anca; 11.05.2012