подсветка и подстановка классов QT

и другие vi-подобные редакторы

Модератор: /dev/random

Ответить
mamant
Сообщения: 20
ОС: Slackware 12.1

подсветка и подстановка классов QT

Сообщение mamant »

Как сделать так, чтобы по нажатию <C-N> после оператора -> , в появляющимся списке, были все возможные функции класса (язык С++, классы Qt4)? И подсветку синтаксиса для классов qt?
Спасибо сказали:
Аватара пользователя
Luinnar
Сообщения: 246
ОС: Solaris, Debian, Ubuntu

Re: подсветка и подстановка классов QT

Сообщение Luinnar »

И подсветку синтаксиса для классов qt?

А чем обычная подсветка синтаксиса от этой отличается?

Код: Выделить всё

syntax enable
syntax on
Спасибо сказали:
mamant
Сообщения: 20
ОС: Slackware 12.1

Re: подсветка и подстановка классов QT

Сообщение mamant »

Luinnar писал(а):
11.07.2008 17:27
И подсветку синтаксиса для классов qt?

А чем обычная подсветка синтаксиса от этой отличается?

Код: Выделить всё

syntax enable
syntax on


Тем что классы из qt ни как не выделяются. Да и определенные мной класс тоже никак не выделяются. Еще хотелось бы чтоб функции и переменные выделялись по разному.
Спасибо сказали:
mamant
Сообщения: 20
ОС: Slackware 12.1

Re: подсветка и подстановка классов QT

Сообщение mamant »

После долгого чтения хелпа я нашел как сделать подсетку для классов qt такую же как и для обычных типов int, float, bool, void и т.д. для этого в вимрц записал строчку:

Код: Выделить всё

autocmd FileType cpp syntax     match   Type    /[QC]\L\i\+/
autocmd FileType cpp syntax     keyword cConstant    slots Q_OBJECT SIGNAL SLOT

Теперь в определении "QString string; CMyString mystring;" QString и CMyString подсвечиваются так же как и int, float, bool, void и т.д.
Спасибо сказали:
Аватара пользователя
ZyX
Сообщения: 355
ОС: Gentoo

Re: подсветка и подстановка классов QT

Сообщение ZyX »

mamant писал(а):
12.07.2008 09:31
После долгого чтения хелпа я нашел как сделать подсетку для классов qt такую же как и для обычных типов int, float, bool, void и т.д. для этого в вимрц записал строчку:

Код: Выделить всё

autocmd FileType cpp syntax match Type /[QC]\i\+/

Теперь в определении "QString string; CMyString mystring;" QString и CMyString подсвечиваются так же как и int, float, bool, void и т.д.
А не легче было всё засунуть в «$HOME/.vim/filetype/cpp/myCppFiletypePlugin.vim»? Если я не ошибаюсь, то у тебя через некоторое время при использовании autocmd дублей этой команды будет как собак нерезанных.

Вообще, полезно каждый файл настроек предварять чем-нибудь вроде «

Код: Выделить всё

"{{{1 Защита от множествееных загрузок
if exists("b:dollarHOMEslashdotvimrcFileLoaded")
    finish
endif
let b:dollarHOMEslashdotvimrcFileLoaded=1
», чтобы он не загружался лишний раз. Но в данном случае autocmd всё равно не следует использовать. Если я правильно помню, то я это откопал в «Vim user manual».


Относительно неработы смены регистра для русского языка я ничего не нашёл, по-прежнему предлагаю попробовать работу Vim в порте bash'а под Windows с юникодной локалью. Судю по выводу «vim --version» всё должно работать.
Спасибо сказали:
ganqqwerty
Сообщения: 18
ОС: Fedora 10, Ubuntu

Re: подсветка и подстановка классов QT

Сообщение ganqqwerty »

mamant писал(а):
12.07.2008 09:31
После долгого чтения хелпа я нашел как сделать подсетку для классов qt такую же как и для обычных типов int, float, bool, void и т.д. для этого в вимрц записал строчку:

Код: Выделить всё

autocmd FileType cpp syntax match Type /[QC]\i\+/

Теперь в определении "QString string; CMyString mystring;" QString и CMyString подсвечиваются так же как и int, float, bool, void и т.д.

http://www.vim.org/scripts/script.php?script_id=612
Ещё есть такая штука, но она совсем тупая. Там syntax keyword'ы для qt-классов
Спасибо за ваш способ!
Спасибо сказали:
Ответить