Ich benutze Splits nur, wenn ich wirklich zwei Dateien nebeneinander haben muss (weil man als Referenz verwendet wird, normalerweise HTML - CSS zum Beispiel). Ansonsten verwende ich nur normale Puffer, die in einem einzigen Fenster geladen sind. Ich benutze auch keinen Nerdtree oder irgendetwas, das zu viel Platz einnehmen würde.
Ich versuche zu vermeiden, zwischen den Dateien zu navigieren: Tags sind ein viel besserer Weg zu gehen.
Mein vim ist eigentlich immer ein großes graues Rechteck.
EDIT
Arbeiten mit mehreren "Dinge" ist ein schwieriges Problem zu behandeln gewesen. Mehr noch, wenn wir versuchen, mit vielen dieser "Dinge" gleichzeitig und im selben Raum umzugehen. Es ist ein schweres Problem, weil wir nicht in der Lage sind, gleichzeitig mit mehreren Dingen umzugehen. Unser Verstand ist dafür nicht optimiert. Deshalb ist das Memory-Spiel nicht so einfach, wie es aussieht, warum wir uns nach einer Powerpoint-Diashow voller Listen und Graphen nicht daran erinnern können, warum Menschen mit einem Telefon in der einen Hand und ihrem Treibrad in der anderen Hand sterben. Da wir nicht gleichzeitig an 4 Puffern arbeiten können, sollten geteilte Fenster für Situationen reserviert werden, in denen die eigentliche Arbeit in einem Fenster ausgeführt wird und das andere Fenster als Referenz verwendet wird (Dokumentation, ein HTML-Dokument, wenn ...) macht CSS ...) oder für Feedback (Linting, Berechnungsergebnisse ...).In solch einem Setup ist der einzige Teil des Körpers, der zum anderen Fenster wechselt, unsere Augen: Wir brauchen keine Tastaturkürzel oder die Maus.
Aber wir lieben es, unser Leben komplizierter als nötig zu machen. Wir lieben es, uns selbst als Multitasking-Götter zu betrachten, also teilen wir Fenster, wir setzen Fenster in Fenster in Fenster und wir müssen zerbrechliche Hacks finden, um dieses Chaos zu managen. Tastaturkürzel sind aus verschiedenen Gründen keine gültige Lösung und wir hassen die Maus, oder?
Wie auch immer, das Grundproblem bei geteilten Fenstern ist das gleiche wie bei normalen Puffern und Tabs: Um mit Puffer # 3 arbeiten zu können, müssen wir zu Puffer # 3 wechseln. Ob der Puffer # 3 ausgeblendet ist, im rechten oberen Fenster oder in einem anderen Tab angezeigt wird, ist irrelevant, wir müssen ein paar Tasten drücken, um dorthin zu gelangen. Wenn der Zielpuffer ausgeblendet ist, wird :b3
angezeigt. Wenn es im oberen rechten Fenster ist, spielen wir mit <C-w>…
Zuordnungen, Standard oder benutzerdefiniert. Wenn es in einer anderen Registerkarte ist, tendieren wir dazu, gt
zu tun, bis wir es finden (oder :sb3
, die viel klüger ist). Egal für welches räumliche Setup wir uns entscheiden, wir müssen immer noch zum Ziel wechseln.
Ein Problem, das nur die Art des Layouts betrifft, das Sie verwenden, ist, dass Sie denken und sich in zwei Dimensionen bewegen müssen. Das Springen vom unteren linken Fenster zum rechten oberen Fenster ist nicht wirklich linear (es sei denn, Sie verwenden <C-w>w
) und erfordert viel mehr Denken und Tippen als einfach nur ein Blick auf dieses Fenster.
Ein weiteres Problem ist die Aufteilung des Arbeitsbereichs und die Auswirkungen auf die Anzahl der Puffer und die Größe der Fenster.
Alles in allem ist meiner Meinung nach der beste Weg, mit mehreren Puffern umzugehen, Fenster und Tabs in Ruhe zu lassen und einen schlankeren Workflow zu finden.
Regelmäßige Puffer können auch knifflig sein: Die Art, wie Sie eine 1,2,5,7
Liste haben können, ist auf ihre Art seltsam. Aber ich glaube, dass das Buffer-Switching (im Gegensatz zur Fensterumschaltung) grundsätzlich intuitiver und solider ist.
Das folgende Mapping macht Switching-Puffer ein Kinderspiel, aber Sie können auch die vielen verfügbaren Puffer-Switching-Plugins ausprobieren.
nnoremap gb :buffers<CR>:b<Space>
Meine bevorzugte Navigationsmethode ist jedoch nicht pufferbasiert. Heutzutage finde ich es viel einfacher, tatsächlich zu vergessen die Dateistruktur des Projekts alle zusammen und Tags verwenden. Wenn ich herum navigiere, bewege ich mich zu einer bestimmten Klasse oder einer bestimmten Methode oder einem bestimmten Array oder was auch immer. Mein Arbeitsbereich ist nur ein Fenster, das einen von 15 oder 20 Puffern anzeigt und ich habe keinen NERDTree, keine Tabs, keinen MiniBufExplorer, keine TagList ... da der Wechsel zu einem anderen Puffer mindestens ein paar Tastendrücke erfordert, sehe ich keinen gültigen Grund zum Schneiden und Würfeln meines Arbeitsbereichs.
Da ich mich nicht in eine Ecke mit ausgefallenen überkomplizierten Gymmos versetze, muss ich nicht meine wertvolle Zeit verschwenden, um Workarounds zu umgehen, und ich kann unbeschwert über die neuesten Batch-Image-Makros lachen. Warte, ich meinte "arbeiten".
'Ctrl' + 'W'' = '(oder'^w = ') wird mehr oder weniger gleichmäßig verteilen machen spaltet. Könnten Sie Ihre Frage präzisieren - wonach genau suchen Sie? – guessimtoolate
Ich suche nach einer Möglichkeit, die Größe meines Splits nicht jedes Mal zu zerlegen, wenn sich ein kleiner Spalt öffnet/schließt oder ein einfacher Weg, sie entsprechend der Puffergröße zu skalieren. Eine andere Sache könnte ein Plugin oder etwas sein, um die Neuordnung von Splits zu erleichtern. – imslavko