Qt creator не работает подсветка синтаксиса

Qt creator не работает подсветка синтаксиса

Может и для других языков не пашет — я щаз просто работаю тока с С++.
Суть в том, что 99% кода парсится последней версией криэйтора как текст.
Т.е. нет ни подсказки после -> . :: ни подсветки классов, функций, полей, .
тока комментарии видятся и операторы и ключевые слова.

У кого-то было такое? Как-то чинится?

От: D_Tony
Дата: 06.04.18 13:49
Оценка:

Здравствуйте, D_Tony, Вы писали:

D_T>Может и для других языков не пашет — я щаз просто работаю тока с С++.
D_T>Суть в том, что 99% кода парсится последней версией криэйтора как текст.
D_T>Т.е. нет ни подсказки после -> . :: ни подсветки классов, функций, полей, .
D_T>тока комментарии видятся и операторы и ключевые слова.

D_T>У кого-то было такое? Как-то чинится?

из запасов нашел-поставил версию 4.2.2 — сразу всё заработало, зараспознавалось.
и куда копать, чтоб починить в это в последней версии?

От: D_Tony
Дата: 09.04.18 07:47
Оценка:

Здравствуйте, D_Tony, Вы писали:

D_T>Здравствуйте, D_Tony, Вы писали:

D_T>>Может и для других языков не пашет — я щаз просто работаю тока с С++.
D_T>>Суть в том, что 99% кода парсится последней версией криэйтора как текст.
D_T>>Т.е. нет ни подсказки после -> . :: ни подсветки классов, функций, полей, .
D_T>>тока комментарии видятся и операторы и ключевые слова.

D_T>>У кого-то было такое? Как-то чинится?

D_T>из запасов нашел-поставил версию 4.2.2 — сразу всё заработало, зараспознавалось.
D_T>и куда копать, чтоб починить в это в последней версии?

Чтож, виноват Clang — он не строит, не распознает модель кода, не анализирует код, т.е. НЕ работает. Совсем.
так то смело отключаем в плагинах всё с ним связанное и наслаждаемся полноценной работой с IDE )))

Источник

Qt Creator и неадекватная подсветка

Доброго времени суток!Обнаружил в QtCreator 3.3.1(возможно и в более старых версиях) недостатки в виде кривой подсветки синтаксиса и кривого автодополнения. Подробнее:
1) Жуткая розовая подсветка кода при некорректно поставленной закрывающей скобке: Код тут не важен, просто сэмпл). Проявляется на всех цветовых схемах.
2) Не видит, не подсвечивает, не подсказывает о некоторых типах данных, например — uint8_t. Не видит также макросы с ними связанные из stdint.h.

Сталкивался кто-нибудь с подобным? Решаемо?

Вам предлагаю задавать свои вопросы на заборе

1) Зато никогда не забудешь закрыть скобку.

2) Никогда такого не замечал. У тебя точно stdint.h вложен?

Первое вроде не баг, а фича. Таким образом отображается недетерминированная скобочка.

Предлагаю тебе пройти строго на/в блог к говноТатьянычу и больше не писать на ЛОР.

1) отключи подсветку связанных скобок в настройках 2) у меня он подсвечивается как базовый тип, и с чего ты взял, что с С++11 это должен быть макрос или typedef?

1) Отключение подсветки связных помогло, правда теперь код менее читабельный
2) У вас подсвечивает u_int8_t? Он в types.h определён. Тоже подсвечивается. Чем собсно от uint8_t от u_int8_t отличается?

(2), всё подключено, код работает, но подсветки нет для целочисленных максимумов/минимумов, допустим.

Источник

Нет подсветки синтаксиса для файла * .qss в Qt Creator?

Это связано с тем, что Qt Creator не имеет подсветки синтаксиса для своего собственного формата файла стиля, или я пропустил некоторые пакеты?

2 ответы

Инструменты> Параметры> Среда> Типы Mime

Найдите text/css и добавить *.qss к выкройкам.

ответ дан 10 мар ’16, в 11:03

Я дам лучший ответ Арнольду, уменьшив ненужные конфигурации на других машинах, но спасибо за это! Я скачал бинарный пакет qtcreator, он тоже работает. — маргаритка

Это наиболее правильный ответ, imo, потому что QSS! = CSS, поэтому имеет смысл хранить их в файлах с другим окончанием. — Леннарт Роллан

Спасибо, это было более полезно, чем ответ Арнольда. — Итильдин

В основном установите его на *.css;*.qss — Ymoreau

Я не смог найти никаких доказательств в документации Qt, что .qss — это официально обозначенное расширение файла. Я бы сказал, просто измените это на .css .

QSS ≠ CSS. Эти двое только внешне похожи друг на друга; это разные языки, и их следует различать как таковые. Видеть Герстманн’s разумное решение, который сохраняет это важное различие. — Сесил Карри

Не тот ответ, который вы ищете? Просмотрите другие вопросы с метками qt4 syntax-highlighting qt-creator or задайте свой вопрос.

Источник

Нет подсветки синтаксиса для файла*. qss в Qt Creator?

Это связано с тем, что Qt Creator не имел подсветки синтаксиса для своего собственного формата файла стиля, или я пропустил некоторые пакеты ?

2 ответа

Нет подсветки синтаксиса в файлах java в моем eclipse..This произошло все sudden..Not точно почему.. Вот как это выглядит сейчас.. Как уже упоминалось в другом posts..i попытался изменить цвет из окна настроек, и нет ничего, когда я набираю java..something действительно испортил. AAny.

Как включить подсветку синтаксиса C++11 в проекте Qt Creator для CMake? У меня есть этот код в CMakeLists.txt: if(CMAKE_COMPILER_IS_GNUCXX) add_definitions(-std=c++11) endif() Все строится без каких-либо проблем. Я знаю, как заставить Qt Creator использовать подсветку синтаксиса C++ 11 для.

Инструменты > Параметры > Среда > Типы Mime

Найдите text/css и добавьте *.qss к шаблонам.

Читайте так же:  Высота установки светильников в гараже

Я не смог найти в документации Qt никаких доказательств того, что .qss является официально назначенным расширением файла. Я бы сказал, просто измените его на .css .

Похожие вопросы:

qmllint -это средство проверки синтаксиса для файлов QML, написанных KDAB, которое поставляется в виде плагина с Qt 5.4. Его использование основано на командной строке, например: $ qmllint.

Я создал кнопку в Qt и дал ей атрибут QSS background-color: gray; , в то время как моя внешняя таблица стилей установила атрибут QSS той же кнопки в background-color: blue; . Когда я запускаю.

Кто-нибудь знает способ выделения кода CUDA при использовании Qt Creator? Я мог бы сделать это в vim и Кейт, но не в Qt Creator, и я должен использовать его.

Нет подсветки синтаксиса в файлах java в моем eclipse..This произошло все sudden..Not точно почему.. Вот как это выглядит сейчас.. Как уже упоминалось в другом posts..i попытался изменить цвет из.

Как включить подсветку синтаксиса C++11 в проекте Qt Creator для CMake? У меня есть этот код в CMakeLists.txt: if(CMAKE_COMPILER_IS_GNUCXX) add_definitions(-std=c++11) endif() Все строится без.

Есть ли способ использовать автономный Qt Creator только для создания файлов*. ui? Я имею в виду без полной установки Qt, которая составляет 3+Гб на диске. Qt Creator существует на qt-проекте в.

Мой основной вопрос заключается в том, что при использовании Qt Creator в качестве редактора кода для проектов generic (не Qt), как я могу сказать ему использовать подсветку синтаксиса c++11? У меня.

Я смог добавить подсветку синтаксиса в свои файлы .liquid , следуя инструкциям здесь: включение подсветки синтаксиса Liquid templating в webStorm/phpStorm Он отлично работал для моей подсветки.

Я использую Qt Creator 4.6.2 на основе Qt 5.11.1 в программировании от Ubuntu 18.10 до C++ с ключом CONFIG += console c++17 в файле .pro , и у меня возникла проблема со следующим кодом.

У меня есть проект qmake с некоторыми заголовками и некоторыми файлами .c, в некоторых заголовочных файлах я использую C++11 заголовков, я добавил опцию CONFIG += c++11 в файл .pro, но проблема в.

Источник

Qt creator не работает подсветка синтаксиса

Работаю с pure javascript. Среда разработки Qt creator 2.8.1 под ubuntu 12.04.
В надежде увидеть поддержку «геттеров»:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/get и «сеттеров»:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/set загружаю в настройках подсветки последние определения для javascript.
Там такое поведение не определено, но не страшно — добавляю для тестирования новые ключевые слова «get» и «set» в javascript.xml.
Копирую изменённый javascript.xml в «/share/qtcreator/generic-highlighter», но подсветка синтаксиса из него явно не используется. В

/.config/Nokia/qtcreator/generic-highlighter других файлов нет.
С этим файлом или без него, подсветка для файлов *.js всегда одна и та же.
Полагаю, что в Qt creator есть какая-то своя встроенная приоритетная поддержка синтаксиса для javascript, так же как и для С++, и поэтому он не использует другие внешние определения. Там же происходит и анализ кода на наличие синтаксических ошибок. Но где это находится, я в документации не нашёл. Так же как и то, как это изменить.

Больше всего не устраивает, что использование геттеров и сеттеров ломает работу анализатора и подсветку переменных скрипта, выделяется как ошибка, хотя и не подписывается ошибкой. Использование директивы «use strict» игнорируется — результат тот же.

Не уверен, что проблема в определениях, думаю, что может быть и в анализаторе. Поэтому вопросов в итоге получается два:

  1. Такое поведение вызвано ошибкой в анализаторе и нужно править исходники?
  2. Внешние определения подсветки синтаксиса для javascript игнорируются?

P.S.: Для других языков (html, css, php, ruby и т.п.) загруженные и/или исправленные определения работают хорошо.

Обновление.
В новой верси 3+ это исправлено. Теперь по описанной проблеме всё работает как следует.

Источник

QSyntaxHighlighter: Подсветка синтаксиса в Qt

Если приложение использует текстовое поле для ввода данных, то заметно упростить жизнь пользователю может подсветка синтаксиса. Не зря этот прием весьма интенсивно используется во всех IDE и текстовых редакторах для программистов.

В Qt подсветку синтаксиса легко реализовать с помощью QSyntaxHighlighter , принцип работы которого основан на паттерне Посетитель.

Создадим приложение, которое умеет подсвечивать введенный фрагмент текста:

Заголовочный файл mainwidget.h :

Здесь мы определяем главный виджет приложения и нашу реализацию класса подсветки синтаксиса, которая наследует QSyntaxHighlighter . Обратите внимание, что в конструкторе SyntaxHighlighter передается указатель на QTextDocument , к которому и привязывается подсветка синтаксиса.

Непосредственная реализация подсветки сосредоточена в виртуальной функции highlightBlock() . А строка, которую нужно подсветить, мы задаем с помощью нашей функции setHighlightedString() .

Ключевой частью реализации является фрагмент:

Этой функции автоматически передается каждый блок текста (в простейшем случае по одной строке), в котором проводится поиск, и в случае обнаружения соответствия задается формат QTextCharFormat .

Также обратите внимание на следующую функцию:

Вызов rehighlight() обеспечивает принудительный запуск процесса подсветки синтаксиса для вновь заданной строки.

QSyntaxHighlighter позволяет реализовать и более сложные виды подсветки. Например, обрабатывать случаи многострочной подсветки, как в случаях многострочных комментариев /* . */ .

Читайте так же:  Щиток приборов ока подсветка

Источник

QSyntaxHighlighter: Подсветка синтаксиса в Qt

Если приложение использует текстовое поле для ввода данных, то заметно упростить жизнь пользователю может подсветка синтаксиса. Не зря этот прием весьма интенсивно используется во всех IDE и текстовых редакторах для программистов.

В Qt подсветку синтаксиса легко реализовать с помощью QSyntaxHighlighter , принцип работы которого основан на паттерне Посетитель.

Создадим приложение, которое умеет подсвечивать введенный фрагмент текста:

Заголовочный файл mainwidget.h :

Здесь мы определяем главный виджет приложения и нашу реализацию класса подсветки синтаксиса, которая наследует QSyntaxHighlighter . Обратите внимание, что в конструкторе SyntaxHighlighter передается указатель на QTextDocument , к которому и привязывается подсветка синтаксиса.

Непосредственная реализация подсветки сосредоточена в виртуальной функции highlightBlock() . А строка, которую нужно подсветить, мы задаем с помощью нашей функции setHighlightedString() .

Ключевой частью реализации является фрагмент:

Этой функции автоматически передается каждый блок текста (в простейшем случае по одной строке), в котором проводится поиск, и в случае обнаружения соответствия задается формат QTextCharFormat .

Также обратите внимание на следующую функцию:

Вызов rehighlight() обеспечивает принудительный запуск процесса подсветки синтаксиса для вновь заданной строки.

QSyntaxHighlighter позволяет реализовать и более сложные виды подсветки. Например, обрабатывать случаи многострочной подсветки, как в случаях многострочных комментариев /* . */ .

Источник

Qt Creator c++11 подсветка синтаксиса для универсальных проектов

Мой основной вопрос заключается в том, что при использовании Qt Creator в качестве редактора кода для проектов «generic» (не Qt), как я могу сказать ему использовать подсветку синтаксиса c++11?

У меня есть проект c++11, над которым я работаю уже некоторое время, и я решил попробовать Qt Creator. Это простой ванильный проект c++ с закодированным вручную makefile и так далее.

Qt Creator отлично открыл проект («eSLIME») и создал три файла: eSLIME.config, eSLIME.includes и eSLIME.files. Он не создал файл .pro.

Похоже, он не распознает c++11 вызова. Например, он подчеркивает » #include » зеленым цветом и указывает, что такого файла или каталога нет.

Я подозреваю, что должен что-то поместить в файл .config, но не могу понять, что именно, и поиск в google не помогает. Я попробовал добавить -std=c++0x, но это не сработало.

PS: код слишком сломан, чтобы строить его прямо сейчас, вот почему я переключился на IDE.

2 ответа

Это связано с тем, что Qt Creator не имел подсветки синтаксиса для своего собственного формата файла стиля, или я пропустил некоторые пакеты ? VER: Qt Creator 2.1.0

Кто-нибудь знает способ выделения кода CUDA при использовании Qt Creator? Я мог бы сделать это в vim и Кейт, но не в Qt Creator, и я должен использовать его.

Прошло 2 года с этого вопроса и ответов, но в Qt Creator ничего не изменилось (по крайней мере, для linux): даже самая новая версия (теперь это 3.5) не может разобрать заголовки C++11.

Проблема в том, что по умолчанию __cplusplus во внутреннем парсере Qt Creator определяется на некоторое значение меньше 201103L, есть много проверок этого макроса в заголовках STL, что-то вроде этого:

Сначала я попытался добавить в *.config следующую строку:

После некоторых исследований я, наконец, нашел правильное решение: просто напишите в *.config :

Волшебным образом все становится живым!

Qt 5.0.2 поддерживает синтаксис c++11 для любого файла c++, то

просто скачайте QT 5.0.2 ( включая Qt Creator 2.7.0).

Похожие вопросы:

Я не получаю ошибки для этого явно ошибочного образца кода. Вместо этого qt creator помечает var как неиспользуемую переменную. Можно ли исправить это странное поведение? Я хочу, чтобы семантическая.

Как отключить подсветку ошибок (Красная Волна под кодом) для таких операторов на основе диапазона циклов c++11? int myint[] = <1,2,3,4,5>; for (auto x : myint) Подсказка при наведении курсора.

Я хочу использовать Qt Creator с MS VC++ 11, но он говорит, что нет цепочки инструментов для сборки Qt. Я установил Qt с полным установщиком SDK. Что же теперь делать?

Это связано с тем, что Qt Creator не имел подсветки синтаксиса для своего собственного формата файла стиля, или я пропустил некоторые пакеты ? VER: Qt Creator 2.1.0

Кто-нибудь знает способ выделения кода CUDA при использовании Qt Creator? Я мог бы сделать это в vim и Кейт, но не в Qt Creator, и я должен использовать его.

Возможный Дубликат : QT Creator, проверка синтаксиса для c++11 Есть ли какой-нибудь способ заставить автозавершение C++11 работать в Qt creator? Я добавил следующие две строки в свой файл .pro , но.

Как включить подсветку синтаксиса C++11 в проекте Qt Creator для CMake? У меня есть этот код в CMakeLists.txt: if(CMAKE_COMPILER_IS_GNUCXX) add_definitions(-std=c++11) endif() Все строится без.

Название говорит само за себя. Я скачал Qt Creator 2.7.0 и пытаюсь скомпилировать какой-то базовый код C++11: int my_array[5] = <1, 2, 3, 4, 5>; for(int &x : my_array) < x *= 2; >Я получаю.

Я использую Qt Creator на Ubuntu, и я хотел бы использовать новые функции C++11, однако они не включены по умолчанию. Как я могу настроить Qt Creator для поддержки новых функций C++11?

У меня есть проект qmake с некоторыми заголовками и некоторыми файлами .c, в некоторых заголовочных файлах я использую C++11 заголовков, я добавил опцию CONFIG += c++11 в файл .pro, но проблема в.

Источник

Оцените статью
Охраны в доме нет
Adblock
detector