LINUX.ORG.RU

управление проектами в emacs и дополнение


0

0

Подскажите, как в emacs'е, как и в гламурных IDE, создать проект, т.е. объединить группу файлов по смыслу и визуально, и чтоб можно было иметь быстрый доступт к проектам (файлам), и сразу после запуска emacs' (типа зпоминания сессии), и потом, причем, как с клавы так и мышОй как в project navigatore. А также, как сделать автодополнения для переменных, к полям структур , языковых конструкций ?

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

Вроде да. Поставил, но что-то не догоню как проект создать и что за принцип ?

anonymous
()

При создании файла ~/.emacs, стартуя, emacs пишет:

Loading semantic-el... Source file `/usr/share/emacs/site-lisp/cedet/semantic/bovine/semantic-bovine.el' newer than byte-compiled file Source file `/usr/share/emacs/site-lisp/cedet/semantic/bovine/bovine-debug.el' newer than byte-compiled file Source file `/usr/share/emacs/site-lisp/cedet/semantic/semantic-debug.el' newer than byte-compiled file Loading semantic-el...done

Чтос этим делать ?

anonymous
()

Забей на гламурность. От Emacs-а я протащился именно потому, что есть возможность растянуть код на всё окно, без этих "деревьев классов" и прочей шелухи. Maybe, кто-то скажет, что мой проект недостаточно велИк, не отрицаю, не виндоуз пишу.

Насчёт запоминания -- M-x desktop-save && M-x dired M-x desktop-read

Автодополнение в плюсах -- чрезвычайно сложная штука, мало кому удалось более-менее нормально её реализовать. И опять-же (по моему) -- проще в другом буфере открыть заголовочный файл, и подсмотреть. А простейшее дополнение работает через M-/

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

> Maybe, кто-то скажет, что мой проект недостаточно велИк, не отрицаю, не виндоуз пишу.

Если кто-то это скажет, пусть идет лесом... я работаю уже в третьем достаточно большом проекте, так вот, тут этими рюшечками не пользуются. Это явабыдлокодеры, и виндовз "программисты" любят кучу говна на экране :) а нормальные люди пишут код, а не по менюшкам и кнопочкам кликают :)

Cy6erBr4in ★★★
()

смотреть на последний cedet (из cvs) там есть ede. cedet ставится командой:

find . -name Makefile|xargs touch; make clean ; make autoloads ; make -k all

для визуализации проекта пользоваться пакетом ecb, который интегрируется с cedet

по поводу дополнения имен - вот рабочий конфиг: http://xtalk.msk.su/~ott/common/emacs/rc/emacs-rc-cedet.el.html

P.S. таки надо писать статью про Cedet ;-)

P.P.S. и вообще, недавно эта тема уже обсуждалась тут же на форуме - http://www.linux.org.ru/view-message.jsp?msgid=3229152

ott ★★★★★
()
Ответ на: комментарий от one_more_hokum

>А простейшее дополнение работает через M-/

расскажите, как Вы такую комбинацию нажимаете?

я заметел, что в емаксе куча кейбиндингов с регистровыми символами, типа - C-M-@; M->; C-x u, C-_; и т.д.

подразумивается, что тут ещё надо "shift" зажимать, или ещё какое есть решение?

vyv ★★★
()

Прописал (setq ecb-auto-activate t), но при старте ECB не активизируется. Почему ?

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

> расскажите, как Вы такую комбинацию нажимаете?

Нажимаю Alt (он же Meta, M), потом нажимаю / столько раз, сколько нужно для поиска дополнения.

one_more_hokum ★★★
()
Ответ на: комментарий от vyv

И да, Shift приходится нажимать в некоторых комбинациях, например M-! (выполнить команду оболочки) представляет собой Alt-Shift-1 на самом деле. С непривычки это кажется неудобным, зато потом такая гибкость приятная в пальцах образуется!!!

one_more_hokum ★★★
()
Ответ на: комментарий от anonymous

Что верно, то верно. Можно сразу в двух ноздрях полезные ископаемые разыскивать!

one_more_hokum ★★★
()

Создал проект в EDE, target, добвил файл. Компилю, а он такие ошибки:

lala.o: In function `main':
lala.c:(.text+0x3e): undefined reference to `fopen'
lala.c:(.text+0x5e): undefined reference to `open'
lala.c:(.text+0x7b): undefined reference to `read'
lala.c:(.text+0x8e): undefined reference to `malloc'

Есть переменная (INCLUDES), но инициализации ее нигде нет. Понятно,
что можно самому все забить, но хочется-то автоматом. Потому что,
уж если системных вызавов не находит....

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

Ну вот кусок Makefile:

blabla_SOURCES=lala.c lala1.c
blabla_OBJ= lala.o lala1.o
CC=gcc
C_COMPILE=$(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)
C_DEPENDENCIES=-Wp,-MD,.deps/$(*F).P
LD=ld
LD_LINK=$(LD) $(LDFLAGS) -L. -o $@
VERSION=1.0
DISTDIR=$(top)lala-$(VERSION)/TEST1
top_builddir = ..

DEP_FILES=.deps/lala.P .deps/lala1.P

all: blabla

DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :)
-include $(DEP_FILES)

%.o: %.c
	@echo '$(C_COMPILE) -c $<'; \
	$(C_COMPILE) $(C_DEPENDENCIES) -o $@ -c $<

blabla: $(blabla_OBJ)
	$(LD_LINK) $^
.............

Ничего криминального не вижу...

И еще, а как либы прописывать (например, -lm, -lgsl...), руками ?


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

вот кстати - что в system-include должно быть, чтобы семантик дополнял явовские таги 1) из дерева проекта 2) из платформенных либ? с c/c++ указание простых директорий работает, с жабой нет

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

Я нуб из предыдущей темы про cedet. Хотел поделиться радостью - странным образом оно завелось после "cedet-utest".

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