Sida 1 av 1

[LÖST]Egen färgmarkering i gedit eller geany?

Postat: 22 jul 2009, 11:14
av cthulhu
Sitter och skriver ett skript till ett program, men färgmarkeringsfunktionen finns inte definerad i gedit eller geany och jag hade verkligen velat ha aoutomatisk färgmarkering av syntaxen i skriptet. det måste ju vara lätt att fixa?

Tittade lite i geany, många funktioner men man kan inte skapa nya "språk" eller färgmarkeringslägen. Däremot kan man ändra de som redan är fördefinierade. Tänkte att jag kunde ta och modda en av de redan existerande, men nej. Funkade inte. Den tycks märka om det är en C++ fil eller inte, testade även med LaTeX.

Finns det någon annan editor som har den funktionen jag efterfrågar?

Re: Egen färgmarkering i gedit eller geany?

Postat: 22 jul 2009, 11:20
av dmz
Vim! Nu skrev du inte vilket språk det gällde, men om vim inte skulle stödja det från början (då måste du koda något VÄLDIGT exotiskt) så går det lätt att fixa till i efterhand.

Re: Egen färgmarkering i gedit eller geany?

Postat: 22 jul 2009, 11:41
av cthulhu
Skulle bli chockad om någon hinner före mig att skriva en färgmarkerings-manick för detta skript-språket eftersom det är ett pyttelitet program (som ritar grafik med ASCII-symboler, skapat av EN person) med bara några hundra användare/beta testare, och på deras sida finns inget utlagt om färgmarkerings-manicker, inte ens programmets skapare har något så vitt jag vet.

tack för tippset dock. Står det i hjälpfilen till Vim hur man gör?

Re: Egen färgmarkering i gedit eller geany?

Postat: 22 jul 2009, 11:42
av barzam
Håller med. Vim brukar ge mig fin färgmarkering till alla filer jag editerar. Du kan stänga av och på den här funktionen genom att skriva i Vim

Kod: Markera allt

:syntax on
:syntax off
Kolonet framför syntax är viktigt, annars fungerar inte kommandot.

Re: Egen färgmarkering i gedit eller geany?

Postat: 22 jul 2009, 12:03
av cthulhu
barzam, jag vet inte riktigt om jag är med på vad koden handlar om. Har ju inte laddat ner Vim än, visserligen, men ang. färgmarkeringen så är det är inte av/på-funktion jag efterfrågar utan jag vill kunna göra en "custom" egen färgmarkeringsdefinition.

Men jag kanske förstår när jag börjar använda VIM.

Re: Egen färgmarkering i gedit eller geany?

Postat: 22 jul 2009, 12:50
av barzam
Här kan du läsa hur man gör, det ser ganska krångligt ut. Vim är ganska krångligt, men man kommer in i det :)
http://www.vim.org/htmldoc/usr_44.html

Re: Egen färgmarkering i gedit eller geany?

Postat: 22 jul 2009, 12:57
av cthulhu
Tack!
Precis vad jag letade efter, bortsett från att det är en del att sätta sig in i. Hade ju hoppats på att det bara gick att lista de 10-tal kommandona det nu gäller i en textfil tillsammas med färgen i HEX-kod typ, men det är som man säger:

vill man få fin
källkod får man lida pin.

Re: Egen färgmarkering i gedit eller geany?

Postat: 24 jul 2009, 10:20
av cthulhu
Jag har löst problemet, och fått exakt vad jag ville.
Man kan lägga till en egen fil i:
/usr/share/gtksourceview-2.0/language-specs/egenfil.lang

och genom lite trixning får man till slut ett eget färgmarkerings-språk.
För min del tittade jag på de andra *.lang filerna i katalogen vars syntax jag redan känner.

För själva färgerna kan man sedan skapa sitt eget tema och lägga med de andra i:
/usr/share/gtksourceview-2.0/styles/

Slutresultatet ser ni nedan:
(Och just det, när jag ovan var lite seriös och sade att det var ett "program" så menade jag ett spel... hehehe. (asciisector, kolla in det på: http://www.asciisector.net/ ))

Re: Egen färgmarkering i gedit eller geany?

Postat: 24 jul 2009, 10:38
av barzam
Ser riktigt bra ut! Ska pröva det senare idag :)

Det framgick inte riktigt av ditt svar om du använde vim eller nåt annat till slut? Kan du inte förklara lite utförligare hur du löste problemet?

Re: Egen färgmarkering i gedit eller geany?

Postat: 26 jul 2009, 17:38
av cthulhu
Oj, jag var kanske lite otydlig.
Nej, VIM började skrika något om broken dependencies, och eftersom jag inte har internet på min ubuntu-maskin är sådant svårt att åtgärda.

Körde därför på gedit. Genom att skapa en ny fil i
/usr/share/gtksourceview-2.0/language-specs/egenfil.lang
får man ett nytt "språk". I mitt fall kopierade jag c.lang till egenfil.lang och i denna pillade jag runt tills jag fick det som jag ville. Man kan säga att i denna filen definerar man alla kommandona och hur man gör kommentarer mm. Om man redan är bekant med något av språken så underlättar det mycket att titta på en sådan fil.

I huvudet i egenfil.lang definerar man i vilken undermeny man vill att gedit skall visa den, tex "Marking" "script" mm. kommer inte ihåg nu exakt.

Den färdiga filen ligger ute på:
http://www.asciisector.net/extra/asciisec.langifall du är intresserad.