201
36
I would like to show the current column in the statusbar, as is common in many other text editors. E.g. it's good to know if you are around column 80 or above.
How to show the current column in the statusbar?
201
36
I would like to show the current column in the statusbar, as is common in many other text editors. E.g. it's good to know if you are around column 80 or above.
How to show the current column in the statusbar?
234
Try if setting 'ruler' option is what you are looking for. On my computer at the bottom right shows the line and column where I have the cursor.
:set ruler
EDIT TO COMMENTS:
From the help of vim (command :help ruler
):
If the number of characters displayed is different from the number of bytes in the text (e.g., for a TAB or a multi-byte character), both the text column (byte number) and the screen column are shown, separated with a dash.
You can try changing it with rulerformat
option, like :set rulerformat=%l,%v
ruler
doesn't work with split windows in Vim. – Mihai – 2015-11-17T16:03:45.603
@Jonas Not only tabs, as RedGrittyBrick said, but also characters versus bytes. This is very apparent in UTF-8 files where a single-character glyph has a multi-byte code point. For example, the Latin eñe (n with tilde over it, pronounced EN-yea) is a single character glyph but takes two bytes to represent the code point (\xC3B1), and one third (1/3) is a single character glyph with a three byte code point (\xE28593). – Luv2code – 2018-08-10T13:17:11.867
Yes, kind of. But that is showing a strange value e.g. 23,62-68
were 23 seem to be the line. How should I interpret 62-68
for the column? – Jonas – 2011-12-06T20:49:54.347
762 is counting tabs as one character, 68 is counting expanded tabs – RedGrittyBrick – 2011-12-06T20:58:34.913
1From command ':help ruler': "If the number of characters displayed is different from the number of bytes in the text (e.g., for a TAB or a multi-byte character), both the text column (byte number) and the screen column are shown, separated with a dash." You can try changing it with 'rulerformat' option, like ':set rulerformat=%l,%v' – Birei – 2011-12-06T21:00:45.310
28
See :help statusline
for the many options available.
I have this in my ~/.vimrc
in between a bunch of other directives:
set statusline+=col:\ %c,
which outputs
col: 64
in my statusline.
I don't have set ruler
.
I used the following to provide space before this and the previous stuff on the statusline: set statusline+=\ col:\ %c, – David Baucum – 2015-02-26T17:36:58.920
1This doesn't work for me. I probably need some more settings. – Jonas – 2011-12-06T23:34:28.593
3Jonas, You may have to use the set laststatus=2
in your .vimrc
to always display the status line. (0 -> never display the status line, 1 -> only if there are at least two windows, 2 -> always display the status line). – pabuisson – 2014-01-17T14:01:15.687
21
Another way to do this is to do 'g Ctrl-G', which prints the current position of the cursor in five ways: Column, Line, Word, Character and Byte. (from http://vimdoc.sourceforge.net/htmldoc/editing.html#g_CTRL-G)
This solution has something neat, that differentiates Column and VisibleColumn. Non printable characters are displayed 2 columns, but should be counted as one. If non printable characters the output looks like this:
RealColumn-VisibleColumn, Line, Word, Character and Byte
. – mxlian – 2016-03-02T11:44:21.077
18
Or, leave 'ruler' unset, a performance gain, and press CTRL-G when you want to see the current column.
5Hitting Ctrl-Anything doesn't sound like a performance gain. We're typing characters. No human has fingers and eyes that fly fast enough to see this kind of performance difference. – macetw – 2017-04-19T20:30:26.593
13
I would depreciate using set ruler because I believe it is not compatible with the statusline options, e.g. if you set the statusline to display the full filepath in combination with set ruler
set statusline+=%F
set ruler
Then it does NOT display the column number but just the full filepath in the statusbar. However if you put the following in your .vimrc
set statusline+=%F\ %l\:%c
It will display everything correctly, namely the
[Filepath/filename] [linenumber]:[column number]
3
For the other people that are looking for this answer and are not used to working with VIm, personally the simplest answer I've found is to add this line to the end of your .vimrc file in your home directory:
set ruler
If you want to show the current column of cursor, then type :echo col('.'). – SibiCoder – 2016-05-26T07:21:39.867
See also: Why does “set ruler” get reset to noruler?
– user – 2019-11-01T18:23:36.683