- patchlevel 748
This commit is contained in:
parent
2ddae5093a
commit
9fcb8d7a9b
473
7.3.748
Normal file
473
7.3.748
Normal file
@ -0,0 +1,473 @@
|
||||
To: vim_dev@googlegroups.com
|
||||
Subject: Patch 7.3.748
|
||||
Fcc: outbox
|
||||
From: Bram Moolenaar <Bram@moolenaar.net>
|
||||
Mime-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
------------
|
||||
|
||||
Patch 7.3.748
|
||||
Problem: Cannot properly test conceal mode.
|
||||
Solution: Add the screencol() and screenrow() functions. Use them in
|
||||
test88. (Simon Ruderich)
|
||||
Files: runtime/doc/eval.txt, src/eval.c, src/proto/screen.pro,
|
||||
src/screen.c, src/testdir/Make_amiga.mak,
|
||||
src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
|
||||
src/testdir/Make_os2.mak, src/testdir/Make_vms.mms
|
||||
src/testdir/Makefile, src/testdir/test88.in,
|
||||
src/testdir/test88.ok
|
||||
|
||||
|
||||
*** ../vim-7.3.747/runtime/doc/eval.txt 2012-11-14 18:10:49.000000000 +0100
|
||||
--- runtime/doc/eval.txt 2012-12-05 15:45:34.000000000 +0100
|
||||
***************
|
||||
*** 1892,1897 ****
|
||||
--- 1903,1910 ----
|
||||
resolve( {filename}) String get filename a shortcut points to
|
||||
reverse( {list}) List reverse {list} in-place
|
||||
round( {expr}) Float round off {expr}
|
||||
+ screencol() Number current cursor column
|
||||
+ screenrow() Number current cursor row
|
||||
search( {pattern} [, {flags} [, {stopline} [, {timeout}]]])
|
||||
Number search for {pattern}
|
||||
searchdecl( {name} [, {global} [, {thisblock}]])
|
||||
***************
|
||||
*** 4848,4862 ****
|
||||
echo round(-4.5)
|
||||
< -5.0
|
||||
{only available when compiled with the |+float| feature}
|
||||
!
|
||||
!
|
||||
search({pattern} [, {flags} [, {stopline} [, {timeout}]]]) *search()*
|
||||
Search for regexp pattern {pattern}. The search starts at the
|
||||
cursor position (you can use |cursor()| to set it).
|
||||
|
||||
If there is no match a 0 is returned and the cursor doesn't
|
||||
move. No error message is given.
|
||||
- When a match has been found its line number is returned.
|
||||
|
||||
{flags} is a String, which can contain these character flags:
|
||||
'b' search backward instead of forward
|
||||
--- 4874,4907 ----
|
||||
echo round(-4.5)
|
||||
< -5.0
|
||||
{only available when compiled with the |+float| feature}
|
||||
!
|
||||
! screencol() *screencol()*
|
||||
! The result is a Number, which is the current screen column of
|
||||
! the cursor. The leftmost column has number 1.
|
||||
! This function is mainly used for testing.
|
||||
!
|
||||
! Note: Always returns the current screen column, thus if used
|
||||
! in a command (e.g. ":echo screencol()") it will return the
|
||||
! column inside the command line, which is 1 when the command is
|
||||
! executed. To get the cursor position in the file use one of
|
||||
! the following mappings: >
|
||||
! nnoremap <expr> GG ":echom ".screencol()."\n"
|
||||
! nnoremap <silent> GG :echom screencol()<CR>
|
||||
! <
|
||||
! screenrow() *screenrow()*
|
||||
! The result is a Number, which is the current screen row of the
|
||||
! cursor. The top line has number one.
|
||||
! This function is mainly used for testing.
|
||||
!
|
||||
! Note: Same restrictions as with |screencol()|.
|
||||
!
|
||||
search({pattern} [, {flags} [, {stopline} [, {timeout}]]]) *search()*
|
||||
Search for regexp pattern {pattern}. The search starts at the
|
||||
cursor position (you can use |cursor()| to set it).
|
||||
|
||||
+ When a match has been found its line number is returned.
|
||||
If there is no match a 0 is returned and the cursor doesn't
|
||||
move. No error message is given.
|
||||
|
||||
{flags} is a String, which can contain these character flags:
|
||||
'b' search backward instead of forward
|
||||
*** ../vim-7.3.747/src/eval.c 2012-12-05 15:16:42.000000000 +0100
|
||||
--- src/eval.c 2012-12-05 16:03:23.000000000 +0100
|
||||
***************
|
||||
*** 668,673 ****
|
||||
--- 668,675 ----
|
||||
#ifdef FEAT_FLOAT
|
||||
static void f_round __ARGS((typval_T *argvars, typval_T *rettv));
|
||||
#endif
|
||||
+ static void f_screencol __ARGS((typval_T *argvars, typval_T *rettv));
|
||||
+ static void f_screenrow __ARGS((typval_T *argvars, typval_T *rettv));
|
||||
static void f_search __ARGS((typval_T *argvars, typval_T *rettv));
|
||||
static void f_searchdecl __ARGS((typval_T *argvars, typval_T *rettv));
|
||||
static void f_searchpair __ARGS((typval_T *argvars, typval_T *rettv));
|
||||
***************
|
||||
*** 8033,8038 ****
|
||||
--- 8035,8042 ----
|
||||
#ifdef FEAT_FLOAT
|
||||
{"round", 1, 1, f_round},
|
||||
#endif
|
||||
+ {"screencol", 0, 0, f_screencol},
|
||||
+ {"screenrow", 0, 0, f_screenrow},
|
||||
{"search", 1, 4, f_search},
|
||||
{"searchdecl", 1, 3, f_searchdecl},
|
||||
{"searchpair", 3, 7, f_searchpair},
|
||||
***************
|
||||
*** 15725,15730 ****
|
||||
--- 15729,15758 ----
|
||||
#endif
|
||||
|
||||
/*
|
||||
+ * "screencol()" function
|
||||
+ *
|
||||
+ * First column is 1 to be consistent with virtcol().
|
||||
+ */
|
||||
+ static void
|
||||
+ f_screencol(argvars, rettv)
|
||||
+ typval_T *argvars UNUSED;
|
||||
+ typval_T *rettv;
|
||||
+ {
|
||||
+ rettv->vval.v_number = screen_screencol() + 1;
|
||||
+ }
|
||||
+
|
||||
+ /*
|
||||
+ * "screenrow()" function
|
||||
+ */
|
||||
+ static void
|
||||
+ f_screenrow(argvars, rettv)
|
||||
+ typval_T *argvars UNUSED;
|
||||
+ typval_T *rettv;
|
||||
+ {
|
||||
+ rettv->vval.v_number = screen_screenrow() + 1;
|
||||
+ }
|
||||
+
|
||||
+ /*
|
||||
* "search()" function
|
||||
*/
|
||||
static void
|
||||
*** ../vim-7.3.747/src/proto/screen.pro 2012-11-20 16:56:49.000000000 +0100
|
||||
--- src/proto/screen.pro 2012-12-05 15:57:35.000000000 +0100
|
||||
***************
|
||||
*** 50,53 ****
|
||||
--- 50,55 ----
|
||||
int messaging __ARGS((void));
|
||||
void showruler __ARGS((int always));
|
||||
int number_width __ARGS((win_T *wp));
|
||||
+ int screen_screencol __ARGS((void));
|
||||
+ int screen_screenrow __ARGS((void));
|
||||
/* vim: set ft=c : */
|
||||
*** ../vim-7.3.747/src/screen.c 2012-12-05 15:32:24.000000000 +0100
|
||||
--- src/screen.c 2012-12-05 15:58:02.000000000 +0100
|
||||
***************
|
||||
*** 10264,10266 ****
|
||||
--- 10264,10286 ----
|
||||
return n;
|
||||
}
|
||||
#endif
|
||||
+
|
||||
+ /*
|
||||
+ * Return the current cursor column. This is the actual position on the
|
||||
+ * screen. First column is 0.
|
||||
+ */
|
||||
+ int
|
||||
+ screen_screencol()
|
||||
+ {
|
||||
+ return screen_cur_col;
|
||||
+ }
|
||||
+
|
||||
+ /*
|
||||
+ * Return the current cursor row. This is the actual position on the screen.
|
||||
+ * First row is 0.
|
||||
+ */
|
||||
+ int
|
||||
+ screen_screenrow()
|
||||
+ {
|
||||
+ return screen_cur_row;
|
||||
+ }
|
||||
*** ../vim-7.3.747/src/testdir/Make_amiga.mak 2012-06-29 12:54:32.000000000 +0200
|
||||
--- src/testdir/Make_amiga.mak 2012-12-05 16:00:14.000000000 +0100
|
||||
***************
|
||||
*** 31,37 ****
|
||||
test66.out test67.out test68.out test69.out test70.out \
|
||||
test71.out test72.out test73.out test74.out test75.out \
|
||||
test76.out test77.out test78.out test79.out test80.out \
|
||||
! test81.out test82.out test83.out test84.out
|
||||
|
||||
.SUFFIXES: .in .out
|
||||
|
||||
--- 31,37 ----
|
||||
test66.out test67.out test68.out test69.out test70.out \
|
||||
test71.out test72.out test73.out test74.out test75.out \
|
||||
test76.out test77.out test78.out test79.out test80.out \
|
||||
! test81.out test82.out test83.out test84.out test88.out
|
||||
|
||||
.SUFFIXES: .in .out
|
||||
|
||||
***************
|
||||
*** 135,137 ****
|
||||
--- 135,138 ----
|
||||
test82.out: test82.in
|
||||
test83.out: test83.in
|
||||
test84.out: test84.in
|
||||
+ test88.out: test88.in
|
||||
*** ../vim-7.3.747/src/testdir/Make_dos.mak 2012-10-06 19:10:29.000000000 +0200
|
||||
--- src/testdir/Make_dos.mak 2012-12-05 16:00:29.000000000 +0100
|
||||
***************
|
||||
*** 30,36 ****
|
||||
test68.out test69.out test71.out test72.out test73.out \
|
||||
test74.out test75.out test76.out test77.out test78.out \
|
||||
test79.out test80.out test81.out test82.out test83.out \
|
||||
! test84.out test85.out test86.out test87.out
|
||||
|
||||
SCRIPTS32 = test50.out test70.out
|
||||
|
||||
--- 30,36 ----
|
||||
test68.out test69.out test71.out test72.out test73.out \
|
||||
test74.out test75.out test76.out test77.out test78.out \
|
||||
test79.out test80.out test81.out test82.out test83.out \
|
||||
! test84.out test85.out test86.out test87.out test88.out
|
||||
|
||||
SCRIPTS32 = test50.out test70.out
|
||||
|
||||
*** ../vim-7.3.747/src/testdir/Make_ming.mak 2012-10-06 19:10:29.000000000 +0200
|
||||
--- src/testdir/Make_ming.mak 2012-12-05 16:00:40.000000000 +0100
|
||||
***************
|
||||
*** 50,56 ****
|
||||
test68.out test69.out test71.out test72.out test73.out \
|
||||
test74.out test75.out test76.out test77.out test78.out \
|
||||
test79.out test80.out test81.out test82.out test83.out \
|
||||
! test84.out test85.out test86.out test87.out
|
||||
|
||||
SCRIPTS32 = test50.out test70.out
|
||||
|
||||
--- 50,56 ----
|
||||
test68.out test69.out test71.out test72.out test73.out \
|
||||
test74.out test75.out test76.out test77.out test78.out \
|
||||
test79.out test80.out test81.out test82.out test83.out \
|
||||
! test84.out test85.out test86.out test87.out test88.out
|
||||
|
||||
SCRIPTS32 = test50.out test70.out
|
||||
|
||||
*** ../vim-7.3.747/src/testdir/Make_os2.mak 2012-06-29 12:54:32.000000000 +0200
|
||||
--- src/testdir/Make_os2.mak 2012-12-05 16:00:50.000000000 +0100
|
||||
***************
|
||||
*** 31,37 ****
|
||||
test66.out test67.out test68.out test69.out test70.out \
|
||||
test71.out test72.out test73.out test74.out test75.out \
|
||||
test76.out test77.out test78.out test79.out test80.out \
|
||||
! test81.out test82.out test83.out test84.out
|
||||
|
||||
.SUFFIXES: .in .out
|
||||
|
||||
--- 31,37 ----
|
||||
test66.out test67.out test68.out test69.out test70.out \
|
||||
test71.out test72.out test73.out test74.out test75.out \
|
||||
test76.out test77.out test78.out test79.out test80.out \
|
||||
! test81.out test82.out test83.out test84.out test88.out
|
||||
|
||||
.SUFFIXES: .in .out
|
||||
|
||||
*** ../vim-7.3.747/src/testdir/Make_vms.mms 2012-10-06 19:10:29.000000000 +0200
|
||||
--- src/testdir/Make_vms.mms 2012-12-05 16:01:03.000000000 +0100
|
||||
***************
|
||||
*** 4,10 ****
|
||||
# Authors: Zoltan Arpadffy, <arpadffy@polarhome.com>
|
||||
# Sandor Kopanyi, <sandor.kopanyi@mailbox.hu>
|
||||
#
|
||||
! # Last change: 2012 Oct 06
|
||||
#
|
||||
# This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64.
|
||||
# Edit the lines in the Configuration section below to select.
|
||||
--- 4,10 ----
|
||||
# Authors: Zoltan Arpadffy, <arpadffy@polarhome.com>
|
||||
# Sandor Kopanyi, <sandor.kopanyi@mailbox.hu>
|
||||
#
|
||||
! # Last change: 2012 Dec 05
|
||||
#
|
||||
# This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64.
|
||||
# Edit the lines in the Configuration section below to select.
|
||||
***************
|
||||
*** 76,82 ****
|
||||
test66.out test67.out test68.out test69.out \
|
||||
test71.out test72.out test74.out test75.out test76.out \
|
||||
test77.out test78.out test79.out test80.out test81.out \
|
||||
! test82.out test83.out test84.out
|
||||
|
||||
# Known problems:
|
||||
# Test 30: a problem around mac format - unknown reason
|
||||
--- 76,82 ----
|
||||
test66.out test67.out test68.out test69.out \
|
||||
test71.out test72.out test74.out test75.out test76.out \
|
||||
test77.out test78.out test79.out test80.out test81.out \
|
||||
! test82.out test83.out test84.out test88.out
|
||||
|
||||
# Known problems:
|
||||
# Test 30: a problem around mac format - unknown reason
|
||||
*** ../vim-7.3.747/src/testdir/Makefile 2012-10-06 19:10:29.000000000 +0200
|
||||
--- src/testdir/Makefile 2012-12-05 15:59:02.000000000 +0100
|
||||
***************
|
||||
*** 13,19 ****
|
||||
|
||||
SCRIPTS = test1.out test2.out test3.out test4.out test5.out test6.out \
|
||||
test7.out test8.out test9.out test10.out test11.out \
|
||||
! test12.out test13.out test14.out test15.out test17.out \
|
||||
test18.out test19.out test20.out test21.out test22.out \
|
||||
test23.out test24.out test25.out test26.out test27.out \
|
||||
test28.out test29.out test30.out test31.out test32.out \
|
||||
--- 13,19 ----
|
||||
|
||||
SCRIPTS = test1.out test2.out test3.out test4.out test5.out test6.out \
|
||||
test7.out test8.out test9.out test10.out test11.out \
|
||||
! test12.out test13.out test14.out test15.out test17.out \
|
||||
test18.out test19.out test20.out test21.out test22.out \
|
||||
test23.out test24.out test25.out test26.out test27.out \
|
||||
test28.out test29.out test30.out test31.out test32.out \
|
||||
***************
|
||||
*** 27,33 ****
|
||||
test69.out test70.out test71.out test72.out test73.out \
|
||||
test74.out test75.out test76.out test77.out test78.out \
|
||||
test79.out test80.out test81.out test82.out test83.out \
|
||||
! test84.out test85.out test86.out test87.out
|
||||
|
||||
SCRIPTS_GUI = test16.out
|
||||
|
||||
--- 27,33 ----
|
||||
test69.out test70.out test71.out test72.out test73.out \
|
||||
test74.out test75.out test76.out test77.out test78.out \
|
||||
test79.out test80.out test81.out test82.out test83.out \
|
||||
! test84.out test85.out test86.out test87.out test88.out
|
||||
|
||||
SCRIPTS_GUI = test16.out
|
||||
|
||||
*** ../vim-7.3.747/src/testdir/test88.in 2012-12-05 16:08:56.000000000 +0100
|
||||
--- src/testdir/test88.in 2012-12-05 15:40:05.000000000 +0100
|
||||
***************
|
||||
*** 0 ****
|
||||
--- 1,85 ----
|
||||
+ vim: set ft=vim
|
||||
+
|
||||
+ Tests for correct display (cursor column position) with +conceal and
|
||||
+ tabulators.
|
||||
+
|
||||
+ STARTTEST
|
||||
+ :so small.vim
|
||||
+ :if !has('conceal')
|
||||
+ e! test.ok
|
||||
+ wq! test.out
|
||||
+ :endif
|
||||
+ :" Conceal settings.
|
||||
+ :set conceallevel=2
|
||||
+ :set concealcursor=nc
|
||||
+ :syntax match test /|/ conceal
|
||||
+ :" Save current cursor position. Only works in <expr> mode, can't be used
|
||||
+ :" with :normal because it moves the cursor to the command line. Thanks to ZyX
|
||||
+ :" <zyx.vim@gmail.com> for the idea to use an <expr> mapping.
|
||||
+ :let positions = []
|
||||
+ :nnoremap <expr> GG ":let positions += ['".screenrow().":".screencol()."']\n"
|
||||
+ :" Start test.
|
||||
+ /^start:
|
||||
+ :normal ztj
|
||||
+ GGk
|
||||
+ :" We should end up in the same column when running these commands on the two
|
||||
+ :" lines.
|
||||
+ :normal ft
|
||||
+ GGk
|
||||
+ :normal $
|
||||
+ GGk
|
||||
+ :normal 0j
|
||||
+ GGk
|
||||
+ :normal ft
|
||||
+ GGk
|
||||
+ :normal $
|
||||
+ GGk
|
||||
+ :normal 0j0j
|
||||
+ GGk
|
||||
+ :" Same for next test block.
|
||||
+ :normal ft
|
||||
+ GGk
|
||||
+ :normal $
|
||||
+ GGk
|
||||
+ :normal 0j
|
||||
+ GGk
|
||||
+ :normal ft
|
||||
+ GGk
|
||||
+ :normal $
|
||||
+ GGk
|
||||
+ :normal 0j0j
|
||||
+ GGk
|
||||
+ :" And check W with multiple tabs and conceals in a line.
|
||||
+ :normal W
|
||||
+ GGk
|
||||
+ :normal W
|
||||
+ GGk
|
||||
+ :normal W
|
||||
+ GGk
|
||||
+ :normal $
|
||||
+ GGk
|
||||
+ :normal 0j
|
||||
+ GGk
|
||||
+ :normal W
|
||||
+ GGk
|
||||
+ :normal W
|
||||
+ GGk
|
||||
+ :normal W
|
||||
+ GGk
|
||||
+ :normal $
|
||||
+ GGk
|
||||
+ :" Display result.
|
||||
+ :call append('$', 'end:')
|
||||
+ :call append('$', positions)
|
||||
+ :/^end/,$wq! test.out
|
||||
+ ENDTEST
|
||||
+
|
||||
+ start:
|
||||
+ .concealed. text
|
||||
+ |concealed| text
|
||||
+
|
||||
+ .concealed. text
|
||||
+ |concealed| text
|
||||
+
|
||||
+ .a. .b. .c. .d.
|
||||
+ |a| |b| |c| |d|
|
||||
*** ../vim-7.3.747/src/testdir/test88.ok 2012-12-05 16:08:56.000000000 +0100
|
||||
--- src/testdir/test88.ok 2012-12-05 15:40:05.000000000 +0100
|
||||
***************
|
||||
*** 0 ****
|
||||
--- 1,23 ----
|
||||
+ end:
|
||||
+ 2:1
|
||||
+ 2:17
|
||||
+ 2:20
|
||||
+ 3:1
|
||||
+ 3:17
|
||||
+ 3:20
|
||||
+ 5:8
|
||||
+ 5:25
|
||||
+ 5:28
|
||||
+ 6:8
|
||||
+ 6:25
|
||||
+ 6:28
|
||||
+ 8:1
|
||||
+ 8:9
|
||||
+ 8:17
|
||||
+ 8:25
|
||||
+ 8:27
|
||||
+ 9:1
|
||||
+ 9:9
|
||||
+ 9:17
|
||||
+ 9:25
|
||||
+ 9:26
|
||||
*** ../vim-7.3.747/src/version.c 2012-12-05 15:32:24.000000000 +0100
|
||||
--- src/version.c 2012-12-05 16:07:46.000000000 +0100
|
||||
***************
|
||||
*** 727,728 ****
|
||||
--- 727,730 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 748,
|
||||
/**/
|
||||
|
||||
--
|
||||
hundred-and-one symptoms of being an internet addict:
|
||||
101. U can read htis w/o ny porblm and cant figur eout Y its evn listd.
|
||||
|
||||
/// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
|
||||
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
|
||||
\\\ an exciting new programming language -- http://www.Zimbu.org ///
|
||||
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
|
Loading…
Reference in New Issue
Block a user