patch 7.4.1027

Problem:    No support for binary numbers.
Solution:   Add "bin" to nrformats. (Jason Schulz)
This commit is contained in:
Bram Moolenaar
2016-01-02 17:56:35 +01:00
parent acf92d27c9
commit 887c1fea4a
19 changed files with 489 additions and 79 deletions
+16 -4
View File
@@ -416,9 +416,14 @@ CTRL-X Subtract [count] from the number or alphabetic
additional [count] (so effectively creating a [count]
decrementing sequence). {not in Vi}
The CTRL-A and CTRL-X commands work for (signed) decimal numbers, unsigned
octal and hexadecimal numbers and alphabetic characters. This depends on the
'nrformats' option.
The CTRL-A and CTRL-X commands can work for:
- signed and unsigned decimal numbers
- unsigned binary, octal and hexadecimal numbers
- alphabetic characters
This depends on the 'nrformats' option:
- When 'nrformats' includes "bin", Vim assumes numbers starting with '0b' or
'0B' are binary.
- When 'nrformats' includes "octal", Vim considers numbers starting with a '0'
to be octal, unless the number includes a '8' or '9'. Other numbers are
decimal and may have a preceding minus sign.
@@ -447,6 +452,10 @@ octal number.
Note that when 'nrformats' includes "octal", decimal numbers with leading
zeros cause mistakes, because they can be confused with octal numbers.
Note similarly, when 'nrformats' includes "bin", binary numbers with a leading
'0x' or '0X' can be interpreted as hexadecimal rather than binary since '0b'
are valid hexadecimal digits.
The CTRL-A command is very useful in a macro. Example: Use the following
steps to make a numbered list.
@@ -1736,7 +1745,7 @@ Vim has a sorting function and a sorting command. The sorting function can be
found here: |sort()|, |uniq()|.
*:sor* *:sort*
:[range]sor[t][!] [i][u][r][n][x][o] [/{pattern}/]
:[range]sor[t][!] [i][u][r][n][x][o][b] [/{pattern}/]
Sort lines in [range]. When no range is given all
lines are sorted.
@@ -1756,6 +1765,9 @@ found here: |sort()|, |uniq()|.
With [o] sorting is done on the first octal number in
the line (after or inside a {pattern} match).
With [b] sorting is done on the first binary number in
the line (after or inside a {pattern} match).
With [u] only keep the first of a sequence of
identical lines (ignoring case when [i] is used).
Without this flag, a sequence of identical lines
+1 -1
View File
@@ -931,7 +931,7 @@ New and extended functions: ~
|spellbadword()| get a badly spelled word
|spellsuggest()| get suggestions for correct spelling
|split()| split a String into a List
|str2nr()| convert a string to a number, base 8, 10 or 16
|str2nr()| convert a string to a number, base 2, 8, 10 or 16
|stridx()| extra argument: start position
|strridx()| extra argument: start position
|string()| string representation of a List or Dictionary