mirror of
				https://github.com/amix/vimrc
				synced 2025-10-30 05:23:34 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			167 lines
		
	
	
		
			7.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			167 lines
		
	
	
		
			7.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| This is a mirror of http://www.vim.org/scripts/script.php?script_id=521
 | |
| 
 | |
| Overview
 | |
| 
 | |
| The Most Recently Used (MRU) plugin provides an easy access to a list of
 | |
| recently opened/edited files in Vim. This plugin automatically stores the
 | |
| file names as you open/edit them in Vim.
 | |
| 
 | |
| This plugin will work on all the platforms where Vim is supported. This
 | |
| plugin will work in both console and GUI Vim. This version of the MRU
 | |
| plugin needs Vim 7.0 and above. If you are using an earlier version of
 | |
| Vim, then you should use an older version of the MRU plugin.
 | |
| 
 | |
| The recently used filenames are stored in a file specified by the Vim
 | |
| MRU_File variable.
 | |
| 
 | |
| Usage
 | |
| 
 | |
| To list and edit files from the MRU list, you can use the ":MRU" command.
 | |
| The ":MRU" command displays the MRU file list in a temporary Vim window.  If
 | |
| the MRU window is already opened, then the MRU list displayed in the window
 | |
| is refreshed.
 | |
| 
 | |
| If you are using GUI Vim, then the names of the recently edited files are
 | |
| added to the "File->Recent Files" menu. You can select the name of a file
 | |
| from this sub-menu to edit the file.
 | |
| 
 | |
| You can use the normal Vim commands to move around in the MRU window. You
 | |
| cannot make changes in the MRU window.
 | |
| 
 | |
| You can select a file name to edit by pressing the <Enter> key or by double
 | |
| clicking the left mouse button on a file name.  The selected file will be
 | |
| opened. If the file is already opened in a window, the cursor will be moved
 | |
| to that window. Otherwise, the file is opened in the previous window. If the
 | |
| previous window has a modified buffer or is the preview window or is used by
 | |
| some other plugin, then the file is opened in a new window.
 | |
| 
 | |
| You can press the 'o' key to open the file name under the cursor in the
 | |
| MRU window in a new window.
 | |
| 
 | |
| To open a file from the MRU window in read-only mode (view), press the 'v'
 | |
| key.
 | |
| 
 | |
| To open a file from the MRU window in a new tab, press the 't' key.  If the
 | |
| file is already opened in a window in the current or in another tab, then
 | |
| the cursor is moved to that tab. Otherwise, a new tab is opened.
 | |
| 
 | |
| You can open multiple files from the MRU window by specifying a count before
 | |
| pressing '<Enter>' or 'v' or 'o' or 't'. You can also visually select
 | |
| multiple filenames and invoke the commands to open the files. Each selected
 | |
| file will be opened in a separate window or tab.
 | |
| 
 | |
| You can press the 'u' key in the MRU window to update the file list. This is
 | |
| useful if you keep the MRU window open always.
 | |
| 
 | |
| You can close the MRU window by pressing the 'q' key or using one of the Vim
 | |
| window commands.
 | |
| 
 | |
| To display only files matching a pattern from the MRU list in the MRU
 | |
| window, you can specify a pattern to the ":MRU" command. For example, to
 | |
| display only file names containing "vim" in them, you can use the following
 | |
| command ":MRU vim".  When you specify a partial file name and only one
 | |
| matching filename is found, then the ":MRU" command will edit that file.
 | |
| 
 | |
| The ":MRU" command supports command-line completion of file names from
 | |
| the MRU list. You can enter a partial file name and then press <Tab>
 | |
| or <Ctrl-D> to complete or list all the matching file names. Note that
 | |
| after typing the ":MRU" command, you have to enter a space before completing
 | |
| the file names with <Tab>.
 | |
| 
 | |
| When a file supplied to the ":MRU" command is not present in the MRU list,
 | |
| but it is a readable file, then the file will be opened (even though it is
 | |
| not present in the MRU list). This is useful if you want to open a file
 | |
| present in the same directory as a file in the MRU list. You can use the
 | |
| command-line completion of the ":MRU" command to complete the full path of a
 | |
| file and then modify the path to open another file present in the same path.
 | |
| 
 | |
| Whenever the MRU list changes, the MRU file is updated with the latest MRU
 | |
| list. When you have multiple instances of Vim running at the same time, the
 | |
| latest MRU list will show up in all the instances of Vim.
 | |
| 
 | |
| Configuration
 | |
| 
 | |
| By changing the following variables you can configure the behavior of this
 | |
| plugin. Set the following variables in your .vimrc file using the 'let'
 | |
| command.
 | |
| 
 | |
| The list of recently edited file names is stored in the file specified by the
 | |
| MRU_File variable.  The default setting for this variable is
 | |
| $HOME/.vim_mru_files for Unix-like systems and $USERPROFILE/_vim_mru_files
 | |
| for MS-Windows systems. You can change this variable to point to a file by
 | |
| adding the following line to the .vimrc file:
 | |
| 
 | |
|       let MRU_File = 'd:\myhome\_vim_mru_files'
 | |
| 
 | |
| By default, the plugin will remember the names of the last 100 used files.
 | |
| As you edit more files, old file names will be removed from the MRU list.
 | |
| You can set the 'MRU_Max_Entries' variable to remember more file names. For
 | |
| example, to remember 1000 most recently used file names, you can use
 | |
| 
 | |
|       let MRU_Max_Entries = 1000
 | |
| 
 | |
| By default, all the edited file names will be added to the MRU list. If you
 | |
| want to exclude file names matching a list of patterns, you can set the
 | |
| MRU_Exclude_Files variable to a list of Vim regular expressions. By default,
 | |
| this variable is set to an empty string. For example, to not include files
 | |
| in the temporary (/tmp, /var/tmp and d:\temp) directories, you can set the
 | |
| MRU_Exclude_Files variable to
 | |
| 
 | |
|       let MRU_Exclude_Files = '^/tmp/.*\|^/var/tmp/.*'  " For Unix
 | |
|       let MRU_Exclude_Files = '^c:\\temp\\.*'           " For MS-Windows
 | |
| 
 | |
| The specified pattern should be a Vim regular expression pattern.
 | |
| 
 | |
| If you want to add only file names matching a set of patterns to the MRU
 | |
| list, then you can set the MRU_Include_Files variable. This variable should
 | |
| be set to a Vim regular expression pattern. For example, to add only .c and
 | |
| .h files to the MRU list, you can set this variable as below:
 | |
| 
 | |
|       let MRU_Include_Files = '\.c$\|\.h$'
 | |
| 
 | |
| By default, MRU_Include_Files is set to an empty string and all the edited
 | |
| filenames are added to the MRU list.
 | |
| 
 | |
| The default height of the MRU window is 8. You can set the MRU_Window_Height
 | |
| variable to change the window height.
 | |
| 
 | |
|       let MRU_Window_Height = 15
 | |
| 
 | |
| By default, when the :MRU command is invoked, the MRU list will be displayed
 | |
| in a new window. Instead, if you want the MRU plugin to reuse the current
 | |
| window, then you can set the 'MRU_Use_Current_Window' variable to one.
 | |
| 
 | |
|       let MRU_Use_Current_Window = 1
 | |
| 
 | |
| The MRU plugin will reuse the current window. When a file name is selected,
 | |
| the file is also opened in the current window.
 | |
| 
 | |
| When you select a file from the MRU window, the MRU window will be
 | |
| automatically closed and the selected file will be opened in the previous
 | |
| window. You can set the 'MRU_Auto_Close' variable to zero to keep the MRU
 | |
| window open.
 | |
| 
 | |
|       let MRU_Auto_Close = 0
 | |
| 
 | |
| If you don't use the "File->Recent Files" menu and want to disable it,
 | |
| then you can set the 'MRU_Add_Menu' variable to zero. By default, the
 | |
| menu is enabled.
 | |
| 
 | |
|       let MRU_Add_Menu = 0
 | |
| 
 | |
| If too many file names are present in the MRU list, then updating the MRU
 | |
| menu to list all the file names makes Vim slow. To avoid this, the
 | |
| MRU_Max_Menu_Entries variable controls the number of file names to show in
 | |
| the MRU menu. By default, this is set to 10. You can change this to show
 | |
| more entries in the menu.
 | |
| 
 | |
|       let MRU_Max_Menu_Entries = 20
 | |
| 
 | |
| If many file names are present in the MRU list, then the MRU menu is split
 | |
| into sub-menus. Each sub-menu contains MRU_Max_Submenu_Entries file names.
 | |
| The default setting for this is 10. You can change this to increase the
 | |
| number of file names displayed in a single sub-menu:
 | |
| 
 | |
|       let MRU_Max_Submenu_Entries = 15
 | |
| 
 | 
