Sehr große Registerkarten in Eclipse-Fenstern unter Ubuntu

69

Meine Frage ist der Stack Overflow-Frage Gigantic Tabs in Eclipse unter Ubuntu sehr ähnlich .

Ich habe die vorgestellten Lösungen ausprobiert, aber sie scheinen alt zu sein. Ich habe eine Lösung gefunden , die die Symbolleiste und die Menüs gut handhabt, aber keine Lösung, die die Größe und den Abstand der unverhältnismäßig großen Registerkarten (und Beschriftungen) in den Fenstern verringert (siehe die Registerkarte "Paket-Explorer" im Bildschirm unten).

Ich bin zufrieden mit der Art und Weise, wie mein OS-weites GTK-Thema angepasst wird, und möchte das nicht ändern. Gibt es eine schnelle Lösung, um die Registerkartengröße der Fenster in Eclipse zu verringern?

Ich verwende Eclipse für mobile Entwickler (Juno) unter Ubuntu 12.04. Ich werde auch erwähnen, dass mir die Art und Weise, wie Eclipse in Windows 7 standardmäßig angezeigt wird, sehr gut gefällt. Daher wäre etwas Ähnliches ideal.

Hier sind die Eclipse-spezifischen GTK-Stile, die ich verwende:

style "eclin" {
    GtkButton::default_border={1,1,1,1}
    GtkButton::default_outside_border={1,1,1,1}
    GtkButtonBox::child_min_width=0
    GtkButtonBox::child_min_heigth=0
    GtkButtonBox::child_internal_pad_x=0
    GtkButtonBox::child_internal_pad_y=0
    GtkMenu::vertical-padding=1
    GtkMenuBar::internal_padding=1
    GtkMenuItem::horizontal_padding=4
    GtkToolbar::internal-padding=1
    GtkToolbar::space-size=1
    GtkOptionMenu::indicator_size=0
    GtkOptionMenu::indicator_spacing=0
    GtkPaned::handle_size=4
    GtkRange::trough_border=0
    GtkRange::stepper_spacing=0
    GtkScale::value_spacing=0
    GtkScrolledWindow::scrollbar_spacing=0
    GtkExpander::expander_size=10
    GtkExpander::expander_spacing=0
    GtkTreeView::vertical-separator=0
    GtkTreeView::horizontal-separator=0
    GtkTreeView::expander-size=12
    GtkTreeView::fixed-height-mode=TRUE
    GtkWidget::focus_padding=0
    font_name="Liberation Sans,Sans Regular 8"
}

class "GtkWidget" style "eclin"
    style "eclin2" {
    xthickness=1
    ythickness=1
}

class "GtkButton" style "eclin2"
class "GtkToolbar" style "eclin2"
class "GtkPaned" style "eclin2"

Hier ist ein Screenshot davon, wie meine IDE mit den riesigen Registerkarten aussieht:

Eclipse Juno IDE mit zu großen Registerkarten

Andy
quelle
@eicto, Sie sollten dies zu einer vollständigen Antwort machen und erwähnen, dass Sie GTK als Fenstermanager auswählen müssen.
Ajax
2
Zumindest seit Eclipse Mars gibt es hierfür eine spezielle Schriftarteinstellung: Gehen Sie zu Einstellungen -> Allgemein -> Darstellung -> Farben und Schriftarten -> Ordner zum
Anzeigen

Antworten:

96

Sie können das CSS von Eclipse bearbeiten, anstatt sich mit dem GTK-Thema zu beschäftigen.

Suchen Sie in Ihrem Eclipse-Verzeichnis nach der Datei plugins/org.eclipse.platform_4.2.*/css/e4_default_gtk.css(dort befindet sich eine *, da sich die Version möglicherweise in Zukunft ändern wird oder bereits anders sein kann). In dieser Datei gibt es eine CSS-Klasse:

.MPartStack {
    font-size: 11;
    swt-simple: false;
    swt-mru-visible: false;
}

Und Sie haben zwei mögliche Lösungen:

  1. font-sizezu etwas kleinerem wechseln
  2. einfach auskommentieren oder font-sizeaus dieser Klasse entfernen (funktioniert gut für mich)

Und das sollte den Trick machen.

konradstrack
quelle
1
Vielen Dank! +1 für Prägnanz auch :). Nachdem ich wusste, wonach ich suchen sollte, konnte ich die folgende Dokumentation für alle anderen Personen mit einem ähnlichen Problem finden: wiki.eclipse.org/Eclipse4/CSS
Andy
1
In 4.2 gibt es eine GUI-Option unter Allgemein -> Darstellung, um das GTK-Thema anstelle des Klassikers zu verwenden.
Ajax
1
@ Ajax: Sie haben Recht, und ich musste dies tun, um das von mir gepostete benutzerdefinierte GTK-Thema zu verwenden. Die Frage (und Lösung) befasst sich jedoch nur mit den Registerkarten, die vom Thema nicht behandelt werden.
Andy
3
Ich änderte das font-sizean 9und ich kann die Schriftgröße kleiner wurde nach einem Neustart sehen, aber die Registerkarte Höhe gleich geblieben. Ich habe das swt-tab-heightund paddingzu allen geändert 0pxund doch gab es keinen Unterschied. Gibt es eine andere Einstellung zu ändern?
Haridsv
1
@haridsv - Haben Sie eine Lösung für das Tab-Problem gefunden? Ich sehe auch keine kleineren Registerkarten, nur kleinere Schriftarten in einer großen Registerkarte.
Technokrat
61

Der Stil von Registerkarten kann in Eclipse 4.2 durch Bearbeiten von CSS geändert werden. Sie können Stile direkt im Fenster "Eclipse-Einstellungen" ändern, nachdem Sie das E4 CSS-Editor-Plug-In installiert haben.

Gehen Sie zum Menü Hilfe> Neue Software installieren und installieren Sie das E4 CSS editor (Incubation)Plug-In über die Eclipse 4-Update-Site (fügen Sie diesen Link hinzu: http://download.eclipse.org/e4/updates/0.12 ).

Gehen Sie nach dem Neustart zu Fenster> Einstellungen, Allgemein> Darstellung. Jetzt können Sie hier Stile für jedes ausgewählte Thema bearbeiten.

Ich verwende diesen Stil für Registerkarten:

.MPartStack {
  font-size: 9;
  font-family: Liberation Sans;
  swt-tab-renderer: null;
  swt-tab-height: 22px;
  swt-selected-tabs-background: #FFFFFF #ECE9D8 100%;
  swt-simple: false;
  swt-mru-visible: false;
}

Mit der swt-tab-heightOption können Sie die Höhe der Registerkarten festlegen . Der Wert legt die Tabulatorhöhe fest und ignoriert die Schriftgröße.

Stanislav Mamontov
quelle
2
Die Einstellung swt-tab-heightist nützlicher als das Ändern der font-sizeeinzigen, danke, @ MrSmith42, jedes verschwendete Pixel zählt, es sei denn, es ist eine 4K-Anzeige :)
Mustafa
1
Eclipse Kepler mag es nicht, Kommentare in der CSS zu analysieren. Habe auch die letzte Empfehlung hier verwendet: techtavern.wordpress.com/2008/09/24/… (Überschreiben des Themas), um die Schriftgröße meines Paket-Explorers zu verkleinern. Ich habe auch hier verwiesen : gist.github.com/andrioli/3825078 für kleinere Symbolleisten. Alle drei boten einen großartigen minimalistischen Ansatz für die Sonnenfinsternis.
Technokrat
Beachten Sie, dass Sie die Höhe der SWT-Tabs minimieren können, sodass zusätzliche Tab-Befehle / -Funktionen nicht angezeigt werden.
Augustas
Wo ist dieser CSS-Editor jetzt (Sommer 2014)? Kann es in keinem Repo oder auf dem Markt finden.
Redsandro
@Redsandro, du solltest nur die gleiche Datei bearbeiten wie in der akzeptierten Antwort. Für mich war es /usr/share/eclipse/plugins/org.eclipse.ui.themes_1.0.0.v20140604-1608/css/e4_default_gtk.css. Ich habe es gerade auf der neuen Eclipse Luna getestet, funktioniert immer noch gut;)
Stanislav Mamontov
13

Ich wollte auch besonders den horizontalen Raum reduzieren, um mehr Registerkarten anzupassen, da Eclipse keine mehrzeiligen Registerkarten enthält.

Diese Anweisungen gelten für jede Plattform (nicht nur für Ubuntu / GTK).

Was ich getan habe war:

  • Die Schriftgröße wurde reduziert
  • Die Schriftart wurde in etwas horizontal-kompaktes geändert
  • Die X-Schaltfläche (Registerkarte schließen) wurde entfernt

... ergibt auf meinem System (Win 7) folgendes Ergebnis:

Screenshot mit geänderten Registerkarten

... und so wird's gemacht:

  1. Überprüfen Sie, welches CSS-Layout Sie verwenden: Einstellungen-> Allgemein-> Darstellung-> Überprüfen Sie den Wert des Listenfelds 'Thema:'

  2. Öffnen Sie die entsprechende Datei in <eclipse folder>\plugins\org.eclipse.platform_<your version>\cssze4_default_win7.css

  3. Ändern Sie .MPartStackEinträge, um Schriftgröße und Schriftart festzulegen, z.

    .MPartStack {
        font-size: 8;
        font-family: 'Arial Narrow';
        swt-simple: true;
        swt-mru-visible: false;
    }
    
  4. Fügen Sie den folgenden Eintrag hinzu, um das X zu entfernen (Symbol zum Schließen):

    CTabItem {
        swt-show-close: false !important;   
    }
    

Das ist es!

Carl
quelle
Schön beim Schließen von X, um Platz zu sparen! +1
virtualeyes
8

Eclipse ist jetzt (4.5 Mars) standardmäßig GTK3 unter Linux. Für 4.6 scheint ein Fix bereits zusammengeführt zu sein.

Das Ändern der SWT_GTK3Umgebungsvariablen funktioniert für Eclipse Mars:

$ export SWT_GTK3=0

oder setzen Sie diese Variable inline mit der Ausführung von Eclipse

$ SWT_GTK3=0 /path/to/eclipse/eclipse

Um es tot zu töten, legen Sie es einfach als eclipse.sh in der Wurzel ab:

#!/bin/bash
SWT_GTK3=0 exec env "${0%.sh}"
Marioosh
quelle
4
Um Eclipse Mars zu zwingen , GTK 2 zu verwenden, anstatt zu exportieren SWT_GTK3=0, können Sie Eclipse auch mit starten {install_path}/eclipse --launcher.GTK_version 2. Um die Version anzuzeigen, gehen Sie in Eclipse zu Hilfe> Über Eclipse> Installationsdetails> Registerkarte Konfiguration und suchen Sie nach org.eclipse.swt.internal.gtk.version.
13.
Diese Lösung löst auch das Problem, bei dem die Schaltflächen (zusammen mit den
Symbolleisten
@ fr13d, DANKE, das Einstellen dieses Schalters hat bei mir funktioniert. Und es ist viel einfacher als separate Konfigurationsdateien und andere Kopfschmerzen zu erstellen ...
Slava
0

Eine alternative Möglichkeit ist die Auswahl von:

System settings > Universal access > Text size as small.
Ayhanakbulut
quelle
1
Systemeinstellungen - wo?
Zitrax
1
Ah, ich benutze kde, ich habe in der Eclipse-Benutzeroberfläche gesucht.
Zitrax
0

Sie können alle kleinen Details zur Tab-Größe hier bearbeiten:

Bild

Wai Ha Lee
quelle