thinca | cf8695d | 2024-01-28 18:57:23 +0100 | [diff] [blame] | 1 | " String |
| 2 | |
| 3 | echo 'It''s a string' |
| 4 | echo 'tab: \t, new line: \n, backslash: \\' |
| 5 | echo "tab: \t, new line: \n, backslash: \\" |
| 6 | |
dkearns | e3e3934 | 2024-02-02 07:44:26 +1100 | [diff] [blame] | 7 | " String escape sequences |
| 8 | |
| 9 | echo "\316 - \31 - \3 - \x1f - \xf - \X1F - \XF - \u02a4 - \U000002a4 - \b - \e - \f - \n - \r - \t - \\ - \" - \<C-W>" |
| 10 | echo '\316 \31 \3 \x1f \xf \X1F \XF \u02a4 \U000002a4 \b \e \f \n \r \t \\ \" \<C-W>' |
| 11 | echo "\3160 - \x1f0 - \X1F0 - \u02a40 - \U000002a40" |
| 12 | |
| 13 | echo $"\316 - \31 - \3 - \x1f - \xf - \X1F - \XF - \u02a4 - \U000002a4 - \b - \e - \f - \n - \r - \t - \\ - \" - \<C-W>" |
| 14 | echo $'\316 \31 \3 \x1f \xf \X1F \XF \u02a4 \U000002a4 \b \e \f \n \r \t \\ \" \<C-W>' |
| 15 | echo $"\3160 - \x1f0 - \X1F0 - \u02a40 - \U000002a40" |
| 16 | |
| 17 | echo "\<C-a>" |
| 18 | echo "\<*C-a>" |
| 19 | echo "\<C->>" |
| 20 | echo "\<*C->>" |
| 21 | echo "\<C->>>" |
| 22 | echo "\<*C->>>" |
| 23 | |
Doug Kearns | 695522d | 2025-01-10 20:02:17 +0100 | [diff] [blame^] | 24 | echo '''' |
| 25 | echo '''foo' |
| 26 | echo 'foo''' |
| 27 | echo 'foo''bar' |
| 28 | |
| 29 | " Unreported issue (incorrectly matches as vimString vimMark vimOper NONE) |
| 30 | " https://github.com/tpope/vim-unimpaired/blob/6d44a6dc2ec34607c41ec78acf81657248580bf1/plugin/unimpaired.vim#L232 |
| 31 | let cmd = 'put!=repeat(nr2char(10), v:count1)|silent '']+' |
| 32 | |
thinca | cf8695d | 2024-01-28 18:57:23 +0100 | [diff] [blame] | 33 | " String interpolation |
| 34 | |
| 35 | echo 'Don''t highlight interpolation: {{ {1 + 2} }}' |
| 36 | echo "Don't highlight interpolation: {{ {1 + 2} }}" |
| 37 | echo $'Highlight interpolation:\t{{ { string({'foo': 'bar'}) } }}' |
| 38 | echo $'Highlight interpolation:\t{{ { $'nested: {{ {1 + 2} }}' } }}' |
| 39 | echo $"Highlight interpolation:\t{{ { string({"foo": "bar"}) } }}" |
| 40 | echo $"Highlight interpolation:\t{{ { $"nested: {{ {1 + 2} }}" } }}" |
dkearns | 5cd86c6 | 2024-03-12 07:40:58 +1100 | [diff] [blame] | 41 | |
Doug Kearns | 695522d | 2025-01-10 20:02:17 +0100 | [diff] [blame^] | 42 | echo $'''' |
| 43 | echo $'''foo' |
| 44 | echo $'foo''' |
| 45 | echo $'foo''bar' |
| 46 | |
dkearns | 5cd86c6 | 2024-03-12 07:40:58 +1100 | [diff] [blame] | 47 | " Number |
| 48 | |
| 49 | " Hexadecimal |
| 50 | echo 0xFF |
| 51 | echo 0XFF |
| 52 | echo -0xFF |
| 53 | echo -0XFF |
| 54 | |
| 55 | " Decimal |
| 56 | echo 255 |
| 57 | echo -255 |
| 58 | |
| 59 | " Octal |
| 60 | echo 0377 |
| 61 | echo 0o377 |
| 62 | echo 0O377 |
| 63 | echo -0377 |
| 64 | echo -0o377 |
| 65 | echo -0O377 |
| 66 | |
| 67 | " Binary |
| 68 | echo 0b11111111 |
| 69 | echo 0B11111111 |
| 70 | echo -0b11111111 |
| 71 | echo -0B11111111 |
| 72 | |
| 73 | " Float |
dkearns | 982e191 | 2024-03-28 20:06:03 +1100 | [diff] [blame] | 74 | echo 123.456 |
| 75 | echo +0.0001 |
| 76 | echo 55.0 |
| 77 | echo -0.123 |
| 78 | echo 1.234e03 |
| 79 | echo 1.0E-6 |
| 80 | echo -3.1416e+88 |
dkearns | 5cd86c6 | 2024-03-12 07:40:58 +1100 | [diff] [blame] | 81 | |
| 82 | " Blob |
dkearns | 982e191 | 2024-03-28 20:06:03 +1100 | [diff] [blame] | 83 | echo 0z |
dkearns | 5cd86c6 | 2024-03-12 07:40:58 +1100 | [diff] [blame] | 84 | echo 0zFF00ED015DAF |
| 85 | echo 0zFF00.ED01.5DAF |
| 86 | echo 0zFF.00.ED.01.5D.AF |
Doug Kearns | 1718e7d | 2025-01-08 18:20:47 +0100 | [diff] [blame] | 87 | |
| 88 | |
| 89 | " Issue #16221 (vimString becomes vimVar when preceded by !) |
| 90 | let bar = !'g:bar'->exists() |
| 91 | |