[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [OT] Emacs



Dessutom verkar den inte klara av väldigt stora projekt. Har en mapp som är på 1.1GB och där får jag bara ett felmeddelande tillbaka: "gtags: primary key size == 0"

Den 2007-04-17 skrev Gunnar Björkdahl <g.bjorkdahl@gmail.com>:
Tack!

Efter mycket experimenterande med gtags har jag kommit fram till att den inte gillar mellanslag i filnamn. Det skapas helt enkelt inte de filer som verkar krävas för att det skall fungera. Ställer jag mig i någon katalog utan filer med mellanslag (i filnamnet) skapas det 4 st filer mha gtags, och det verkar fungera.

Någon som vet ett "Work-around"?
I nuläget har jag bara tagit bort dem, men de är versionshanterade mha subversion, så vid nästa updatering kommer filerna tillbaka. Har inte riktigt lärt mig hur man gör med "svn ignore" heller. Men jag får väl googla.


Den 2007-04-16 skrev Henrik Edberg < henrik.edberg@bahnhof.se>:
Kolla på paketet "global"[1] och gtags, jag tror det är det du letar
efter.

Först ställer du dig i din source katalog, och kör "gtags" för att
skapa det index som Emacs ska använda sig av. Starta sedan Emacs i
source katalogen, eller någon av dess underkataloger och sedan ställer
du dig bara på en funktion/variabel och trycker M-. för komma till
deklarationen av den funktionen/variabeln. Det finns också möjlighet
att söka på referenser/deklarationer med grep i gtags index från Emacs
vilket kan vara väldigt smidigt. Tyvärr skiljer gtags på stora och små
bokstäver, något som kan förvirra en i början men vet man bara om det
går det att leva med (om någon vet hur man kommer runt det får ni
gärna berätta hur man gör!). När du väl hittat det du letat efter
(eller gått ner vidare i tre, fyra led) är det bara att höger klicka
för att pop:a stacken och gå tillbaka ett steg i kedjan tills du är
tillbaka där du började om du så önskar.

Det finns en äldre variant av detta program som heter etags[2] som
redan är integrerat i Emacs. Väldigt stabilt, men inte så snabbt som
gtags.

Ännu sak som kan vara bra att installera är xgtags-mode som gör gtags
ännu enklare att använda. Då måste du först lägga xgtags.el[3]
någonstans där emacs kommer åt det. Finns säkert någon nyare, bättre
version än den jag hittat här, men den funkar i alla fall.

(setq load-path (cons "~/.elisp" load-path))
(autoload 'xgtags-mode "xgtags" "" t)
(add-hook 'c-mode-common-hook
          (lambda ()
            (xgtags-mode 1)))


Lycka till!

Henrik Edberg

[1] http://www.gnu.org/software/global/
[2] http://www.gnu.org/software/emacs/manual/html_node/Tags.html/
[3] http://www.mail-archive.com/help-global@gnu.org/msg00022.html/




Gunnar Björkdahl wrote:
> Hej på er!
> Ursäkta för en fråga som ligger lite utanför listans ämne.
>
> Jag sitter och programmerar i emacs (emacs-snapshot-gtk) och skulle
> behöva en funktion som jag sett i andra utvecklingsmijöer. Det är
> att man kan se eller komma till en fil, om man "är på" t.ex. ett
> klassnamn eller en metod i en annan fil. Förstår någon vad jag menar :)
>
> Eclipse har en sådan funktionalitet. Om man har en instansiering av
> en klass, och inte vet i vilken fil klassen finns, kan man hålla
> musen över klassnamnet och göra något, så öppnas rätt fil (den med
> klassen).
>
> Jag har försökt lite med ecb (emacs code browser) men får problem
> med att emacs drar 100% cpu efter ett tag. Det verkar komma ifrån
> något beroendepaket som ecb-behöver. Tråkigt.





Reply to: