Gedit als mini IDE für avr-gcc

Gedit Anfangs wird AVRLinux den Editor Gedit zum Erstellen und compilieren von AVR Programmen verwendet. Gedit ist ein schlanker, aber durch Plugins einfach erweiterbarer Editor mit vielen Features. Für AVRLinux wurden einige nützliche Plugins zusammengestellt und sinnvoll vorkonfiguriert.

Features

  • Syntax Highlightning
  • Bookmarks
  • Symbol Browser
  • Suchen in geöffneten Dateien
  • Suchen in Dateien auf der Platte
  • Automatischer Einzug
  • Code Schnipsel Vervollständigung
  • make, make program und make clean vorkonfiguriert auf F-Tasten
  • uvm

Download

Wer möchte kann die zusätzlichen Plugins bereits herunterladen und installieren.

Download Plugins

Installation

Wer einen anderen Desktop als Gnome verwendet muss zunächst Gedit nachinstallieren. Gleichzeitig werden die Basis Plugins und das Paket exubertant-ctags installiert. Wer Gedit installiert hat benötigt dennoch die letzten beiden Pakete. Letzteres wird vom Symbol Browser benötigt. Unter Ubuntu geht das einfach mit dem Befehl:

sudo apt-get install gedit gedit-plugins exuberant-ctags

Dann kopiert man das Archiv nach ~/.gnome2/gedit und entpackt es dort

cp gedit-plugins.tar.gz ~/.gnome2/gedit
cd ~/.gnome2/gedit
tar -xzf gedit-plugins.tar.gz

Anschließend müsst ihr Gedit starten und eventuell noch die gewünschten Plugins aktivieren. Das macht man im Menu Bearbeiten→Einstellungen→Plugins

Folgende Plugins sollten aktiviert sein:

  • Autocomplete
  • C-style Indentation
  • Dateiverwaltungsliste
  • Eingebettetes Terminal
  • Externe Werkzeuge
  • In Dateien suchen
  • In geöffneten Datei suchen
  • Intelligente Leertasten
  • Klammern schließen
  • Lesezeichen
  • Quelltextkommentar
  • Schnipsel
  • Sitzungsspeicherung
  • Symbol Browser
  • Zeileneinzug

Compilieren

Gedit ist nicht in der Lage, automatisch ein Makefile zu erstellen. Am besten verwendet man das makefile von Jörg Wunsch. Dieses Makefile kopiert man in das Projektverzeichnis und passt es entsprechend an.

Damit man compilieren kann muss eine *.c Datei aus dem Projektverzeichnis geöffnet und im Editor im Vordergrund sein. Über F-Tasten kann man dann die Befehle ausführen

  • F3 - make program. Dieser Befehl compiliert das Projekt und ruft anschließend avrdude auf
  • F4 - make clean. Dieser Befehl räumt das Projekt auf
  • F5 - make. Dieser Befehl compiliert das Projekt

Schnipsel in Gedit

Um die Schnipsel von Gedit nutzen zu können muss das Schnipsel Plugin aktiviert werden. Anschließend kann man zum Beispiel for eintippen und die Tab Taste drücken. Dann erhält man eine vorgefertigte for Schleife. Einige Schnipsel wie die for Schleife bieten sogenannte Placeholder, zwischen denen man mit der Tab Taste wechseln kann. Man kann zum Beispiel der Standard Variable i einen anderen Namen geben, mit Tab zu der „0“ springen, um den Startwert zu ändern, mit Tab weiter zu count, wenn der Name geändert werden soll und zum Schluss kann man noch die Schrittweite ändern. Mit einem letzten Tab landet man an der richtigen Stelle zwischen den geschweiften Klammern, um mit dem Code zu beginnen.

Es sind leider noch nicht für alle Sprachen Schnipsel vordefiniert. Man kann jedoch eigene definieren oder andere herunterladen

Schnipsel für C

do <Tab>

do
{
    $0
} while ($1);

else <Tab>

else
{
    $0
}

elif <Tab>

else if (${1:condition})
{
    $0
}

Strg+Alt+.

#endif
$0

for <Tab>

for (${1:i} = ${2:0}; ${1:i} < ${3:count}; ${1:i} += ${4:1})
{
    $0
}

if <Tab>

if (${1:condition})
{
    $0
}

inc <Tab>

#include "${1:file}.h"
$0

Inc <Tab>

#include <${1:file}.h>
$0

main <Tab>

int 
main (int argc, char *argv[])
{
    $0
    return 0;
}

struct <Tab>

struct ${1:name}
{
    ${0:/* data */}
};

td <Tab>

typedef ${1:newtype} ${2:type};
$0

while <Tab>

while (${1:condition})
{
    $0
}

Diskussion

Geben Sie Ihren Kommentar ein (Wiki-Syntax ist zugelassen):
MHQHY
mikrocontroller/avr/avrlinux/gedit.txt · Zuletzt geändert: 2011/03/08 15:03 von burli
 
Falls nicht anders bezeichnet, ist der Inhalt dieses Wikis unter der folgenden Lizenz veröffentlicht: CC Attribution-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki