-*motion.txt* For Vim version 7.0aa. Last change: 2005 Apr 04
+*motion.txt* For Vim version 7.0aa. Last change: 2005 Jul 19
VIM REFERENCE MANUAL by Bram Moolenaar
'>', excluding the '<' and '>'.
When used in Visual mode it is made characterwise.
+ *v_at* *at*
+at "a tag block", select [count] tag blocks, from the
+ [count]'th unmatched "<aaa>" backwards to the matching
+ "</aaa>", including the "<aaa>" and "</aaa>".
+ See |tag-blocks| about the details.
+ When used in Visual mode it is made characterwise.
+
+ *v_it* *it*
+it "inner tag block", select [count] tag blocks, from the
+ [count]'th unmatched "<aaa>" backwards to the matching
+ "</aaa>", excluding the "<aaa>" and "</aaa>".
+ See |tag-blocks| about the details.
+ When used in Visual mode it is made characterwise.
+
a} *v_a}* *a}* *a{*
a{ *v_aB* *v_a{* *aB*
aB "a Block", select [count] Blocks, from "[count] [{" to
deletes from the cursor position to the start of the next word, "daw" deletes
the word under the cursor and the space after or before it.
+
+Tag blocks *tag-blocks*
+
+For the "it" and "at" text objects an attempt is done to select blocks between
+matching tags for HTML and XML. But since these are not completely compatible
+there are a few restrictions.
+
+The normal method is to select a <tag> until the matching </tag>. For "at"
+the tags are included, for "it" they are excluded. But when "it" is repeated
+the tags will be included (otherwise nothing would change).
+
+"<aaa/>" items are skipped. Case is ignored, also for XML where case does
+matter.
+
+In HTML it is possible to have a tag like <br> or <meta ...> without a
+matching end tag. These are ignored.
+
+The text objects are tolerant about mistakes. Stray end tags are ignored.
+
==============================================================================
7. Marks *mark-motions* *E20* *E78*
asmh8300.vim syntax.txt /*asmh8300.vim*
aspperl-syntax syntax.txt /*aspperl-syntax*
aspvbs-syntax syntax.txt /*aspvbs-syntax*
+at motion.txt /*at*
athena-intellimouse gui.txt /*athena-intellimouse*
attr-list syntax.txt /*attr-list*
author intro.txt /*author*
is motion.txt /*is*
isdirectory() eval.txt /*isdirectory()*
islocked() eval.txt /*islocked()*
+it motion.txt /*it*
italic syntax.txt /*italic*
items() eval.txt /*items()*
iw motion.txt /*iw*
tag-! tagsrch.txt /*tag-!*
tag-any-white tagsrch.txt /*tag-any-white*
tag-binary-search tagsrch.txt /*tag-binary-search*
+tag-blocks motion.txt /*tag-blocks*
tag-commands tagsrch.txt /*tag-commands*
tag-details tagsrch.txt /*tag-details*
tag-highlight syntax.txt /*tag-highlight*
v_ap motion.txt /*v_ap*
v_aquote motion.txt /*v_aquote*
v_as motion.txt /*v_as*
+v_at motion.txt /*v_at*
v_aw motion.txt /*v_aw*
v_a{ motion.txt /*v_a{*
v_a} motion.txt /*v_a}*
v_ip motion.txt /*v_ip*
v_iquote motion.txt /*v_iquote*
v_is motion.txt /*v_is*
+v_it motion.txt /*v_it*
v_iw motion.txt /*v_iw*
v_i{ motion.txt /*v_i{*
v_i} motion.txt /*v_i}*
long get_dict_number __ARGS((dict_T *d, char_u *key));
char_u *get_function_name __ARGS((expand_T *xp, int idx));
char_u *get_expr_name __ARGS((expand_T *xp, int idx));
+long do_searchpair __ARGS((char_u *spat, char_u *mpat, char_u *epat, int dir, char_u *skip, int flags));
void set_vim_var_nr __ARGS((int idx, long val));
long get_vim_var_nr __ARGS((int idx));
char_u *get_vim_var_str __ARGS((int idx));
from = to;
}
- if (VIsual.lnum != wp->w_old_visual_lnum)
+ if (VIsual.lnum != wp->w_old_visual_lnum
+ || VIsual.col != wp->w_old_visual_col)
{
if (wp->w_old_visual_lnum < from
&& wp->w_old_visual_lnum != 0)
wp->w_old_visual_mode = VIsual_mode;
wp->w_old_cursor_lnum = curwin->w_cursor.lnum;
wp->w_old_visual_lnum = VIsual.lnum;
+ wp->w_old_visual_col = VIsual.col;
wp->w_old_curswant = curwin->w_curswant;
}
else
wp->w_old_visual_mode = 0;
wp->w_old_cursor_lnum = 0;
wp->w_old_visual_lnum = 0;
+ wp->w_old_visual_col = 0;
}
#endif /* FEAT_VISUAL */
colnr_T w_old_cursor_fcol; /* first column for block visual part */
colnr_T w_old_cursor_lcol; /* last column for block visual part */
linenr_T w_old_visual_lnum; /* last known start of visual part */
+ colnr_T w_old_visual_col; /* last known start of visual part */
colnr_T w_old_curswant; /* last known value of Curswant */
#endif
#define VIM_VERSION_NODOT "vim70aa"
#define VIM_VERSION_SHORT "7.0aa"
#define VIM_VERSION_MEDIUM "7.0aa ALPHA"
-#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2005 Jul 18)"
-#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2005 Jul 18, compiled "
+#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2005 Jul 19)"
+#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2005 Jul 19, compiled "