In Visual mode with 'showcmd' display the number of bytes and characters.
This commit is contained in:
		| @ -176,11 +176,11 @@ g:gnat.Make() | |||||||
|  |  | ||||||
| 							     *g:gnat.Pretty()* | 							     *g:gnat.Pretty()* | ||||||
| g:gnat.Pretty() | g:gnat.Pretty() | ||||||
| 		Calls|g:gnat.Pretty_Command| | 		Calls|g:gnat.Pretty_Program| | ||||||
|  |  | ||||||
| 							       *g:gnat.Find()* | 							       *g:gnat.Find()* | ||||||
| g:gnat.Find() | g:gnat.Find() | ||||||
| 		Calls|g:gnat.Find_Command| | 		Calls|g:gnat.Find_Program| | ||||||
|  |  | ||||||
| 							       *g:gnat.Tags()* | 							       *g:gnat.Tags()* | ||||||
| g:gnat.Tags() | g:gnat.Tags() | ||||||
| @ -237,8 +237,8 @@ DEC ADA OBJECT ~ | |||||||
|  |  | ||||||
| 							     *g:decada.Make()* | 							     *g:decada.Make()* | ||||||
| g:decada.Make()		function | g:decada.Make()		function | ||||||
| 		Calls|g:decada.Make_Command|and displays the result inside a | 		Calls |g:decada.Make_Command| and displays the result inside a | ||||||
|                |quickfix| window. | 		|quickfix| window. | ||||||
|  |  | ||||||
| 							*g:decada.Unit_Name()* | 							*g:decada.Unit_Name()* | ||||||
| g:decada.Unit_Name()	function | g:decada.Unit_Name()	function | ||||||
| @ -246,7 +246,7 @@ g:decada.Unit_Name()	function | |||||||
|  |  | ||||||
| 						       *g:decada.Make_Command* | 						       *g:decada.Make_Command* | ||||||
| g:decada.Make_Command	string | g:decada.Make_Command	string | ||||||
| 		External command used for|g:decadat.Make()| (|'makeprg'|). | 		External command used for |g:decada.Make()| (|'makeprg'|). | ||||||
|  |  | ||||||
| 						       *g:decada.Error_Format* | 						       *g:decada.Error_Format* | ||||||
| g:decada.Error_Format|	string | g:decada.Error_Format|	string | ||||||
| @ -406,15 +406,15 @@ makes no difference. | |||||||
| g:gnat			    object | g:gnat			    object | ||||||
| 		Control object which manages GNAT compiles.  The object | 		Control object which manages GNAT compiles.  The object | ||||||
| 		is created when the first Ada source code is loaded provided | 		is created when the first Ada source code is loaded provided | ||||||
| 		that |g:ada_default_compiler|is set to 'gnat'. See|gnat_members| | 		that |g:ada_default_compiler|is set to 'gnat'. See | ||||||
| 		for details. | 		|gnat_members| for details. | ||||||
|  |  | ||||||
| 								    *g:decada* | 								    *g:decada* | ||||||
| g:decada		      object | g:decada		      object | ||||||
| 		Control object which manages Dec Ada compiles.	The object | 		Control object which manages Dec Ada compiles.	The object | ||||||
| 		is created when the first Ada source code is loaded provided | 		is created when the first Ada source code is loaded provided | ||||||
| 		that |g:ada_default_compiler|is set to 'decada'. See | 		that |g:ada_default_compiler|is set to 'decada'. See | ||||||
| 	       |decada_members|for details. | 	        |decada_members| for details. | ||||||
|  |  | ||||||
| ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ||||||
| 5.4 Constants ~ | 5.4 Constants ~ | ||||||
|  | |||||||
| @ -1,4 +1,4 @@ | |||||||
| *sql.txt*	For Vim version 7.3a.  Last change: 2009 Nov 03 | *ft_sql.txt*	For Vim version 7.3a.  Last change: 2009 Nov 03 | ||||||
|  |  | ||||||
| by David Fishburn | by David Fishburn | ||||||
|  |  | ||||||
| @ -632,7 +632,7 @@ your |vimrc|: > | |||||||
| 		   MYTABLENAME --> M | 		   MYTABLENAME --> M | ||||||
|  |  | ||||||
|     omni_sql_ignorecase |     omni_sql_ignorecase | ||||||
| <	- Default: Current setting for|ignorecase| | <	- Default: Current setting for 'ignorecase' | ||||||
| 	- Valid settings are 0 or 1. | 	- Valid settings are 0 or 1. | ||||||
| 	- When entering a few letters before initiating completion, the list | 	- When entering a few letters before initiating completion, the list | ||||||
| 	  will be filtered to display only the entries which begin with the | 	  will be filtered to display only the entries which begin with the | ||||||
|  | |||||||
| @ -594,7 +594,7 @@ otherwise you would not be able to use those commands anymore.  Here are a few | |||||||
| suggestions: | suggestions: | ||||||
| - Function keys <F2>, <F3>, etc..  Also the shifted function keys <S-F1>, | - Function keys <F2>, <F3>, etc..  Also the shifted function keys <S-F1>, | ||||||
|   <S-F2>, etc.  Note that <F1> is already used for the help command. |   <S-F2>, etc.  Note that <F1> is already used for the help command. | ||||||
| - Meta-keys (with the ALT key pressed).  Depending on your keybord accented | - Meta-keys (with the ALT key pressed).  Depending on your keyboard accented | ||||||
|   characters may be used as well. |:map-alt-keys| |   characters may be used as well. |:map-alt-keys| | ||||||
| - Use the '_' or ',' character and then any other character.  The "_" and "," | - Use the '_' or ',' character and then any other character.  The "_" and "," | ||||||
|   commands do exist in Vim (see |_| and |,|), but you probably never use them. |   commands do exist in Vim (see |_| and |,|), but you probably never use them. | ||||||
| @ -767,7 +767,7 @@ g@{motion}		Call the function set by the 'operatorfunc' option. | |||||||
| 			The function is called with one String argument: | 			The function is called with one String argument: | ||||||
| 			    "line"	{motion} was |linewise| | 			    "line"	{motion} was |linewise| | ||||||
| 			    "char"	{motion} was |characterwise| | 			    "char"	{motion} was |characterwise| | ||||||
| 			    "block"	{motion} was |blockwise-visual|| | 			    "block"	{motion} was |blockwise-visual| | ||||||
| 			Although "block" would rarely appear, since it can | 			Although "block" would rarely appear, since it can | ||||||
| 			only result from Visual mode where "g@" is not useful. | 			only result from Visual mode where "g@" is not useful. | ||||||
| 			{not available when compiled without the +eval | 			{not available when compiled without the +eval | ||||||
|  | |||||||
| @ -6065,6 +6065,8 @@ A jump table for the options with a short description can be found at |Q_op|. | |||||||
| 	option off if your terminal is slow. | 	option off if your terminal is slow. | ||||||
| 	In Visual mode the size of the selected area is shown: | 	In Visual mode the size of the selected area is shown: | ||||||
| 	- When selecting characters within a line, the number of characters. | 	- When selecting characters within a line, the number of characters. | ||||||
|  | 	  If the number of bytes is different it is also displayed: "2-6" | ||||||
|  | 	  means two characters and six bytes. | ||||||
| 	- When selecting more than one line, the number of lines. | 	- When selecting more than one line, the number of lines. | ||||||
| 	- When selecting a block, the size in screen characters: | 	- When selecting a block, the size in screen characters: | ||||||
| 	  {lines}x{columns}. | 	  {lines}x{columns}. | ||||||
|  | |||||||
| @ -639,7 +639,7 @@ You can now compare files in 4 ways: > | |||||||
|  |  | ||||||
| DEC C uses many identifiers with '$' in them.  This is not allowed in ANSI C, | DEC C uses many identifiers with '$' in them.  This is not allowed in ANSI C, | ||||||
| and Vim recognises the '$' as the end of the identifier.  You can change this | and Vim recognises the '$' as the end of the identifier.  You can change this | ||||||
| with the |iskeyword|command. | with the 'iskeyword' option. | ||||||
| Add this command to your .vimrc file: > | Add this command to your .vimrc file: > | ||||||
|  |  | ||||||
|     autocmd FileType c,cpp,cs  set iskeyword+=$ |     autocmd FileType c,cpp,cs  set iskeyword+=$ | ||||||
|  | |||||||
| @ -5638,6 +5638,7 @@ ft-xml-omni	insert.txt	/*ft-xml-omni* | |||||||
| ft-xml-syntax	syntax.txt	/*ft-xml-syntax* | ft-xml-syntax	syntax.txt	/*ft-xml-syntax* | ||||||
| ft-xpm-syntax	syntax.txt	/*ft-xpm-syntax* | ft-xpm-syntax	syntax.txt	/*ft-xpm-syntax* | ||||||
| ft_ada.txt	ft_ada.txt	/*ft_ada.txt* | ft_ada.txt	ft_ada.txt	/*ft_ada.txt* | ||||||
|  | ft_sql.txt	ft_sql.txt	/*ft_sql.txt* | ||||||
| ftdetect	filetype.txt	/*ftdetect* | ftdetect	filetype.txt	/*ftdetect* | ||||||
| ftp	pi_netrw.txt	/*ftp* | ftp	pi_netrw.txt	/*ftp* | ||||||
| ftplugin	usr_41.txt	/*ftplugin* | ftplugin	usr_41.txt	/*ftplugin* | ||||||
| @ -7504,7 +7505,6 @@ sql-object-motions	ft_sql.txt	/*sql-object-motions* | |||||||
| sql-predefined-objects	ft_sql.txt	/*sql-predefined-objects* | sql-predefined-objects	ft_sql.txt	/*sql-predefined-objects* | ||||||
| sql-type-default	ft_sql.txt	/*sql-type-default* | sql-type-default	ft_sql.txt	/*sql-type-default* | ||||||
| sql-types	ft_sql.txt	/*sql-types* | sql-types	ft_sql.txt	/*sql-types* | ||||||
| sql.txt	ft_sql.txt	/*sql.txt* |  | ||||||
| sql.vim	syntax.txt	/*sql.vim* | sql.vim	syntax.txt	/*sql.vim* | ||||||
| sqlanywhere	ft_sql.txt	/*sqlanywhere* | sqlanywhere	ft_sql.txt	/*sqlanywhere* | ||||||
| sqlanywhere.vim	syntax.txt	/*sqlanywhere.vim* | sqlanywhere.vim	syntax.txt	/*sqlanywhere.vim* | ||||||
|  | |||||||
| @ -1155,7 +1155,7 @@ More patches: | |||||||
| -   Patch for adding "space" item in 'listchars'. (Jérémie Roquet, 2009 Oct 29, | -   Patch for adding "space" item in 'listchars'. (Jérémie Roquet, 2009 Oct 29, | ||||||
|     Docs patch Oct 30) |     Docs patch Oct 30) | ||||||
| -   Patch for supporting #rrggbb in color terminals.  (Matt Wozniski) | -   Patch for supporting #rrggbb in color terminals.  (Matt Wozniski) | ||||||
|     Where is a recent version of this patch? |     Where is a recent version of this patch?  Or use CSApprox plugin? | ||||||
| -   Replace ccomplete.vim by cppcomplete.vim from www.vim.org?  script 1520 by | -   Replace ccomplete.vim by cppcomplete.vim from www.vim.org?  script 1520 by | ||||||
|     Vissale Neang.  (Martin Stubenschrott) Asked Vissale to make the scripts |     Vissale Neang.  (Martin Stubenschrott) Asked Vissale to make the scripts | ||||||
|     more friendly for the Vim distribution. |     more friendly for the Vim distribution. | ||||||
| @ -3013,7 +3013,7 @@ Tags: | |||||||
| 8   For 'tags' wildcard in the file name is not supported, only in the path. | 8   For 'tags' wildcard in the file name is not supported, only in the path. | ||||||
|     This is due to it using |file-searching|. Suboptimal solution would be to |     This is due to it using |file-searching|. Suboptimal solution would be to | ||||||
|     make the filename or the whole option use |wildcards| globing, better |     make the filename or the whole option use |wildcards| globing, better | ||||||
|     would be to merge the 2 kinds of globing. originall (Erik Falor, 2008 |     would be to merge the 2 kinds of globing. originally (Erik Falor, 2008 | ||||||
|     April 18), updated (Ian Kelling, 2008 July 4) |     April 18), updated (Ian Kelling, 2008 July 4) | ||||||
| 8   Use a mechanism similar to omni completion to figure out the kind of tab | 8   Use a mechanism similar to omni completion to figure out the kind of tab | ||||||
|     for CTRL-] and jump to the appropriate matching tag (if there are |     for CTRL-] and jump to the appropriate matching tag (if there are | ||||||
|  | |||||||
| @ -294,7 +294,7 @@ N  *+cmdline_compl*	command line completion |cmdline-completion| | |||||||
| N  *+cmdline_hist*	command line history |cmdline-history| | N  *+cmdline_hist*	command line history |cmdline-history| | ||||||
| N  *+cmdline_info*	|'showcmd'| and |'ruler'| | N  *+cmdline_info*	|'showcmd'| and |'ruler'| | ||||||
| N  *+comments*		|'comments'| support | N  *+comments*		|'comments'| support | ||||||
| m  *+conceal*		"conceal" support, see ||conceal|| |:syn-conceal| etc. | m  *+conceal*		"conceal" support, see |conceal| |:syn-conceal| etc. | ||||||
| N  *+cryptv*		encryption support |encryption| | N  *+cryptv*		encryption support |encryption| | ||||||
| B  *+cscope*		|cscope| support | B  *+cscope*		|cscope| support | ||||||
| m  *+cursorbind*	|'cursorbind'| support | m  *+cursorbind*	|'cursorbind'| support | ||||||
|  | |||||||
							
								
								
									
										37
									
								
								src/normal.c
									
									
									
									
									
								
							
							
						
						
									
										37
									
								
								src/normal.c
									
									
									
									
									
								
							| @ -3756,9 +3756,40 @@ clear_showcmd() | |||||||
| 	else if (VIsual_mode == 'V' || VIsual.lnum != curwin->w_cursor.lnum) | 	else if (VIsual_mode == 'V' || VIsual.lnum != curwin->w_cursor.lnum) | ||||||
| 	    sprintf((char *)showcmd_buf, "%ld", lines); | 	    sprintf((char *)showcmd_buf, "%ld", lines); | ||||||
| 	else | 	else | ||||||
| 	    sprintf((char *)showcmd_buf, "%ld", (long)(cursor_bot | 	{ | ||||||
| 		    ? curwin->w_cursor.col - VIsual.col | 	    char_u  *s, *e; | ||||||
| 		    : VIsual.col - curwin->w_cursor.col) + (*p_sel != 'e')); | 	    int	    l; | ||||||
|  | 	    int	    bytes = 0; | ||||||
|  | 	    int	    chars = 0; | ||||||
|  |  | ||||||
|  | 	    if (cursor_bot) | ||||||
|  | 	    { | ||||||
|  | 		s = ml_get_pos(&VIsual); | ||||||
|  | 		e = ml_get_cursor(); | ||||||
|  | 	    } | ||||||
|  | 	    else | ||||||
|  | 	    { | ||||||
|  | 		s = ml_get_cursor(); | ||||||
|  | 		e = ml_get_pos(&VIsual); | ||||||
|  | 	    } | ||||||
|  | 	    while ((*p_sel != 'e') ? s <= e : s < e) | ||||||
|  | 	    { | ||||||
|  | 		l = (*mb_ptr2len)(s); | ||||||
|  | 		if (l == 0) | ||||||
|  | 		{ | ||||||
|  | 		    ++bytes; | ||||||
|  | 		    ++chars; | ||||||
|  | 		    break;  /* end of line */ | ||||||
|  | 		} | ||||||
|  | 		bytes += l; | ||||||
|  | 		++chars; | ||||||
|  | 		s += l; | ||||||
|  | 	    } | ||||||
|  | 	    if (bytes == chars) | ||||||
|  | 		sprintf((char *)showcmd_buf, "%d", chars); | ||||||
|  | 	    else | ||||||
|  | 		sprintf((char *)showcmd_buf, "%d-%d", chars, bytes); | ||||||
|  | 	} | ||||||
| 	showcmd_buf[SHOWCMD_COLS] = NUL;	/* truncate */ | 	showcmd_buf[SHOWCMD_COLS] = NUL;	/* truncate */ | ||||||
| 	showcmd_visual = TRUE; | 	showcmd_visual = TRUE; | ||||||
|     } |     } | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user