Tabulatorlänge in VIM

hehejo

hehejo

blöder Purist
Hallo Leute,
bestimmt ist es nicht schwer, aber ich bekomm es einfach nicht raus, wie ich die Tabulatorlänge im VI/VIM einstelle.
Der macht da einen riesen Schritt...

Gruß,
 
moin

in die .vimrc

set tabstop=2

rein.

Gruß HL
 
Ähm,
es geht doch nicht.
Obwohl es in meiner ~/.vimrc steht (als Letztes in der Datei) ist der Tabstopp immer wieder zu lang!
An was liegt denn das? Warum weigert sich der VIM das richtig einzulesen?

Starte ich vim ohne Übergabe eines Dateinamens, dann macht er den Tabstopp richtig. Mit Dateinamen nicht!
 
Zuletzt bearbeitet:
hi

eventuell meintest du auch gar nicht tabstop, sondern automatic indent, also automatische einrückung


" Set automatic indent
:set cindent shiftwidth=2


Gruß HL
 
Hm, tja leider funzt das auch nicht...
in der ersten Zeile nach einer Einrückung..

while i < 10:
bla
bla


oder

while i < 10
bloa
bla

Sehr seltsam
 
Zuletzt bearbeitet:
hm, du arbeitest aber schon mit vim und nicht mit gvim, oder? ich glaube die haben verschiedene configs.
 
Ne ne, ist schon der pure vim.
Ich hab oben noch was angefügt...
 
hm, um was für files handelt es sich eigentlich, c oder c++?
 
hast du folgende passage in deiner .vimrc?

if has("autocmd")
" Enabled file type detection
" Use the default filetype settings. If you also want to load indent files
" to automatically do language-dependent indenting add 'indent' as well.
filetype plugin on
endif " has ("autocmd")



Gruß HL
 
Ja, das ist drin.
Die Dateien sind .java .cpp .h .py
Wenn ich eine "normale" Datei ohne Endung aufmache, dann stimmten die Tabulatoren jetzt.
Das hier
Code:
:set cindent shiftwidth=2
wollte auch nicht funtkionieren.
Na ja schon..
Es ist folgendes: Bei einem .cpp funktioniert es jetzt.
Die Einrückung passt, aber hier bei Pythonprogrammen schafft er es nicht.. Wenn ich den : weglasse dann kann er es, aber mit nicht..
Sehr seltsam...
 
hm, so fit bin ich mit vim auch noch nicht. wüsste jetzt auch nicht, woran es liegt.

aber was noch ganz praktisch ist, zumindest bei c files

makeprg=gcc\ -o\ %<\ %

das sorgt dafür, das bei einem :make im befehlsmodus, er das file gleich

ala gcc -o file file.c compiliert.


Gruß HL
 
Oh, das ist praktisch..
Bisher hab ich immer außerhalb kompiliert.
In einer "Kofler_Auflage" hab ich ein schönes Skript gefunden, dass in Abständen den Timestamp deiner Datei mit dem alten Timestamp vergleicht. Ist der Alte anders, dann wird kompiliert, gepackt undsoweiterundsofort.

Weißt du zufällig wie ein Makefile aussehen muss?
 
:set ts=3

Das ist das was du suchst. ;)
Geht natürlich auch in der .vimrc, einfach : weglassen.

Oder, wenn du das nur für ein paar Dateien brauchst, einfach eine Modeline machen ;)
/* vi:set ts=2: */
 
Danke für die Links.

Was ist an ts denn anders als an den anderen?
Denn mit ts funktioniert es prächtig!!!
DANKE!
 
ich denke es liegt daran, das ich es oben aus versehen mit : gepostet habe *g*
 
:-) Ich meinte den Unterschied
von ts zu tabstop und dem cindent shiftwidth
 

Ähnliche Themen

Wird es je einen anderen Standard geben, der EMAIL ersetzen wird?

Verzeichnis mit 1200 Dateien auf Verweise in Textdateien checken

DHCP

Skript soll nicht doppelt laufen... kill pkill pid cron

Hilfe für ein shell script

Zurück
Oben