LINUX.ORG.RU
ФорумTalks

c++ и emacs

 , ,


0

2

так как нечасто использую фичи c++11/c++14, использующие новые элементы синтаксиса, то за 3 месяца использования emacs'a заметил полное отсутствие поддержки синтаксиса c++11, не говоря уж о c++14. это меня довольно сильно удивило: я-то по многочисленным крикам адептов о том, что «в emacs'е уже нечего доделывать» посчитал, что это более-менее готовый продукт, а оно вон как. знатоки эмакса, поясните, что это может быть. проект вроде как далеко не заброшен, идеологических причин не добавлять я не вижу.


Ответ на: комментарий от FRWHate

я говорю про встроенный в emacs cc-mode

f1u77y
() автор топика

так как нечасто использую фичи c++11/c++14, использующие новые элементы синтаксиса

Редко? Сочувствую, реально.

Solace
()
Ответ на: комментарий от Solace

неверно выразился. скорее, те, что ломают подсветку, которая про новый синтаксис не знает(например, лямбды в не очень большом количестве к ним не относятся)

f1u77y
() автор топика

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

Ну так добавь.

feofan
()

отсутствие поддержки синтаксиса c++11

это типа новые кейворды тупо не отображаются чтоле?

x4DA
()
Ответ на: комментарий от feofan

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

f1u77y
() автор топика
Ответ на: комментарий от x4DA

нет, чуть сложнее.

например:

  • std::vector<std::vector<int>> v; 
    подсвечивается неправильно из-за >>
  • std::sort(v.begin(), v.end(), [](int a, int b) {
            return b > a;
        });
    indentation именно такой, что опять же не очень
  • при некоторых ещё невыясненных мною условиях с++11-код просто ломает всю подсветку
  • не понимает синтаксиса числовых констант вроде 1'000'000'000
f1u77y
() автор топика
Ответ на: комментарий от f1u77y

что же могло помешать это сделать.

Стандарт плюсов чрезмерно раздут благодаря наследию не только собственному, но и C. А для того сколько человекочасов нужно, чтобы верно реализовать всю семантику языка хорошо видно на примере gcc и clang.

Количество человекочасов для того, чтобы всё переделать на использование clang можешь оценить по QtCreator и KDevelop.

Очевидно, нет достаточного количества заинтересованных людей.

feofan
()
Ответ на: комментарий от feofan

Очевидно, нет достаточного количества заинтересованных людей

Просто у господина, который занимается cc-mode нет времени. В devel-ветке частично есть патчи для c++11, но далеко не всё. Например проблема с >> в конце исправлена, а c константами 1'000'000'000 нет.

no-such-file 👍👍👍👍👍
()
Ответ на: комментарий от feofan

сам не рад на них писать, но часто нужно

f1u77y
() автор топика

Эм... в емаксе как раз всякого такого, что нужно пилить, просто горы.

А для плюсов, по-моему, лучшая IDE — это Visual Studio.

Miguel
()
Ответ на: комментарий от Miguel

лучшая IDE — это Visual Studio

под венду — да. но не представляю, как на ней работать под линуксами

в емаксе как раз всякого такого, что нужно пилить, просто горы

это я уже осознал

f1u77y
() автор топика
Ответ на: комментарий от f1u77y

под венду — да. но не представляю, как на ней работать под линуксами

Я тоже. Увы.

Miguel
()
Ответ на: комментарий от f1u77y

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

sacred
()
Ответ на: комментарий от sacred

у меня слишком много свободного времени, поэтому я всё же могу позволить себе такую прихоть, как играться в конструктор. ещё, кстати, к новой тулзе, а соответственно и к новому интерфейсу и набору хоткеев тоже нужно привыкнуть.

f1u77y
() автор топика

проблема решена путём сваливания на clion. но если кто вдруг знает решение, то говорите, т.к. мне всё ещё интересно

f1u77y
() автор топика
Ответ на: комментарий от sacred

распечатать кеймап и неделю держать его перед глазами)

на самом деле не нужно, т.к. по сравнению с той же intellij idea хоткеи практически те же. если же юзать ideavim, то жизнь вообще хороша

clion купил ?

https://www.jetbrains.com/student/

т.к. отвечают не сразу, то пока юзаю триалку.

f1u77y
() автор топика
Последнее исправление: f1u77y (всего исправлений: 1)
Ответ на: комментарий от f1u77y

Трындеть о свободном времени ты мастер, а взять да запилить нужный тебе функционал – фуфуфу.

Emacs не пользуется популярностью у плюсовиков, в том числе из-за не особо удобного управления проектами и проблемами автодополнения. Со вторым отчасти помогает clang, но адекватные дополнялки на нем появились уже после отречения плюсистов от емакса.

staseg
()
Ответ на: комментарий от jeuta

в том числе он у меня стоит, а подсветка лямбдами всё ломается

f1u77y
() автор топика
Ответ на: комментарий от staseg

ага. человек, который занимается cc-mode и куча более-менее профессиональных контрибьюторов не запилили за 4 года, но тут приходит шкальник с лора, знающий elisp на уровне «умею отконфигать emacs с помощью гугола», и показывает всем, кто здесь батька

f1u77y
() автор топика
Ответ на: комментарий от f1u77y

Как ни странно, но обычно это так и бывает. И насколько я знаю, человек, который занимается cc-mode, им уже и не занимается особо.

staseg
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.