Тонкая настройка NppAutoIndent, или есть хорошая настраиваемая альтернатива? - PullRequest
0 голосов
/ 28 апреля 2011

Я недавно начал использовать плагин NppAutoIndent для Notepad ++ и был довольно доволен режимом Smart Indent, но я нахожу, что отсутствие настраиваемых предпочтений раздражает, поскольку в режиме Smart Indent есть несколько вариантов поведения, которые мне бы хотелось настроить / изменить. Я думал об изменении исходного кода плагина и перекомпиляции его, чтобы попытаться получить желаемое поведение, но у меня Visual Studio 2010 и проект для плагина , похоже, проект VS 2003, и, как я Я полный новичок в использовании Visual Studio для проектов C / C ++. Я даже не знаю, с чего начать работать с некоторыми предупреждениями, которые были даны при преобразовании проекта в VS 2010.

Вкратце: есть ли более настраиваемая альтернатива плагину NppAutoIndent или есть лучший способ обновить исходный проект для VS 2010?

UPDATE:

Вот большинство предупреждений. Многие из них кажутся неважными, но я не уверен, на что может быть необходимо обратить внимание.

  • Из-за изменения переключателей обработки исключений для компилятора C / C ++ в этом проекте / EHsc был автоматически преобразован в / EHa.
  • Завершено преобразование в новый файл проекта 'C: [...] \ NppAutoIndent \ project \ NppAutoIndent.vcxproj'.
  • В связи с требованием, чтобы проекты Visual C ++ создавали встроенный (по умолчанию) манифест Windows SxS, файлы манифеста в проекте теперь автоматически создаются с помощью инструмента манифеста. Возможно, вам придется изменить свою сборку, чтобы она работала правильно. Например, рекомендуется, чтобы информация о зависимостях, содержащаяся в любых файлах манифеста, была преобразована в "#pragma comment (linker," ")" в заголовочном файле, который включен из вашего исходного кода. Если ваш проект уже встраивает манифест в раздел ресурсов RT_MANIFEST через файл ресурсов (.rc), возможно, необходимо закомментировать строку, прежде чем проект будет построен правильно.
  • Из-за изменения соответствия в компиляторе C ++, изменение кода может потребоваться до того, как ваш проект будет собран без ошибок. Предыдущие версии компилятора C ++ позволяли указывать указатели на функции-члены по имени функции-члена (например, MemberFunctionName). Стандарт C ++ требует полностью определенного имени с использованием оператора address-of (например, & ClassName :: MemberFunctionName). Если ваш проект содержит формы или элементы управления, используемые в конструкторе Windows Forms, вам, возможно, придется изменить код в InitializeComponent, поскольку созданный дизайнером код использовал несоответствующий синтаксис при построении делегата (используется в обработчиках событий).
  • Это приложение было обновлено и теперь содержит настройки, относящиеся к функции контроля учетных записей (UAC) в Windows Vista. По умолчанию при запуске в Windows Vista с включенным контролем учетных записей это приложение помечается для запуска с теми же привилегиями, что и процесс, который его запустил. Эта маркировка также запрещает запуск приложения с виртуализацией. Вы можете изменить настройки, связанные с UAC, на страницах свойств проекта.
  • Атрибут 'Detect64BitPortabilityProblems' для 'VCCLCompilerTool' не поддерживается в этой версии и был удален во время преобразования.
  • VCWebServiceProxyGeneratorTool больше не поддерживается. Инструмент был удален из настроек вашего проекта.
  • Параметр / Og компилятора C / C ++ устарел и был удален из настроек вашего проекта. Вместо этого рекомендуется использовать / O1 или / O2.
  • VCConvertEngine не удалось преобразовать атрибут GlobalOptimizations = TRUE в инструменте VCCLCompilerTool.
  • Атрибут 'Detect64BitPortabilityProblems' для 'VCCLCompilerTool' не поддерживается в этой версии и был удален во время преобразования.
  • Атрибут 'OptimizeForWindows98' для 'VCLinkerTool' не поддерживается в этой версии и был удален во время преобразования.
  • VCConvertEngine не удалось преобразовать атрибут GlobalOptimizations = TRUE в инструменте VCCLCompilerTool.
  • Атрибут 'Detect64BitPortabilityProblems' для 'VCCLCompilerTool' не поддерживается в этой версии и был удален во время преобразования.
  • Атрибут 'OptimizeForWindows98' для 'VCLinkerTool' не поддерживается в этой версии и был удален во время преобразования.
  • Атрибут 'Detect64BitPortabilityProblems' для 'VCCLCompilerTool' не поддерживается в этой версии и был удален во время преобразования.
  • MSB8012: $ (TargetName) ('NppAutoIndent') не соответствует значению свойства OutputFile компоновщика '.. \ build \ NppAutoIndentA_D.dll' ('NppAutoIndentA_D') в конфигурации проекта 'Debug | Win32'.Это может привести к неправильной сборке вашего проекта.Чтобы исправить это, убедитесь, что значение свойства $ (TargetName) соответствует значению, указанному в% (Link.OutputFile).
  • MSB8012: $ (TargetPath) ('C: [...] \ NppAutoIndent \ project .. \ build \ Debug \ NppAutoIndent.dll') не совпадает со значением свойства OutputFile компоновщика '.. \ build\ NppAutoIndentA_D.dll '(' C: [...] \ NppAutoIndent \ build \ NppAutoIndentA_D.dll ') в конфигурации проекта «Отладка | Win32».Это может привести к неправильной сборке вашего проекта.Чтобы исправить это, убедитесь, что значение свойства $ (TargetPath) соответствует значению, указанному в% (Link.OutputFile).
  • MSB8012: $ (TargetName) ('NppAutoIndent') не соответствует значению свойства OutputFile компоновщика '.. \ build \ NppAutoIndentA.dll' ('NppAutoIndentA') в конфигурации проекта 'Release | Win32'.Это может привести к неправильной сборке вашего проекта.Чтобы исправить это, убедитесь, что значение свойства $ (TargetName) соответствует значению, указанному в% (Link.OutputFile).
  • MSB8012: $ (TargetPath) ('C: [...] \ NppAutoIndent \ project .. \ build \ Release \ NppAutoIndent.dll') не совпадает со значением свойства OutputFile компоновщика '.. \ build\ NppAutoIndentA.dll '(' C: [...] \ NppAutoIndent \ build \ NppAutoIndentA.dll ') в конфигурации проекта «Выпуск | Win32».Это может привести к неправильной сборке вашего проекта.Чтобы исправить это, убедитесь, что значение свойства $ (TargetPath) соответствует значению, указанному в% (Link.OutputFile).
  • MSB8012: $ (TargetPath) ('C: [...] \ NppAutoIndent \ project .. \ build \ Release Unicode \ NppAutoIndent.dll') не совпадает со значением свойства OutputFile компоновщика '.. \build \ NppAutoIndent.dll '(' C: [...] \ NppAutoIndent \ build \ NppAutoIndent.dll ') в конфигурации проекта «Выпуск Unicode | Win32».Это может привести к неправильной сборке вашего проекта.Чтобы исправить это, убедитесь, что значение свойства $ (TargetPath) соответствует значению, указанному в% (Link.OutputFile).
  • MSB8012: $ (TargetName) ('NppAutoIndent') не соответствует значению свойства OutputFile компоновщика '.. \ build \ NppAutoIndent_D.dll' ('NppAutoIndent_D') в конфигурации проекта 'Отладка Unicode | Win32'.Это может привести к неправильной сборке вашего проекта.Чтобы исправить это, убедитесь, что значение свойства $ (TargetName) соответствует значению, указанному в% (Link.OutputFile).
  • MSB8012: $ (TargetPath) ('C: [...] \ NppAutoIndent \ project .. \ build \ Debug Unicode \ NppAutoIndent.dll') не совпадает со значением свойства OutputFile компоновщика '.. \build \ NppAutoIndent_D.dll '(' C: [...] \ NppAutoIndent \ build \ NppAutoIndent_D.dll ') в конфигурации проекта «Отладка Unicode | Win32».Это может привести к неправильной сборке вашего проекта.Чтобы исправить это, убедитесь, что значение свойства $ (TargetPath) соответствует значению, указанному в% (Link.OutputFile).

1 Ответ

0 голосов
/ 04 мая 2011

Открыть проект VS 2003 в VS2010;диалог проведет вас через обращение.Вам просто нужно прочитать инструкцию и нажать соответствующую кнопку.

Что касается отступов, перейдите в Инструменты ---> Параметры, выберите Язык (C ++) и перейдите к форматированию.Там вы можете увидеть множество вариантов, изменить их в соответствии с вашими потребностями.

Для этого вам вообще не нужен Notepad ++.Кстати, я заядлый пользователь Notepad ++ и его моего любимого редактора.

Надеюсь, это поможет.

...