Mercurial > vim
view runtime/autoload/netrwSettings.vim @ 12808:2ff38c2addd4 v8.0.1281
patch 8.0.1281: loading file type detection slows down startup
commit https://github.com/vim/vim/commit/851ee6c3da5fd726d92e1e3300d7e5e2e8b907c5
Author: Bram Moolenaar <Bram@vim.org>
Date: Thu Nov 9 20:46:17 2017 +0100
patch 8.0.1281: loading file type detection slows down startup
Problem: Loading file type detection slows down startup.
Solution: Move functions to an autoload script.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Thu, 09 Nov 2017 21:00:05 +0100 |
parents | 65d7fd8381a3 |
children | 92a0a33f8296 |
line wrap: on
line source
" netrwSettings.vim: makes netrw settings simpler " Date: Nov 09, 2016 " Maintainer: Charles E Campbell <drchipNOSPAM at campbellfamily dot biz> " Version: 16 " Copyright: Copyright (C) 1999-2007 Charles E. Campbell {{{1 " Permission is hereby granted to use and distribute this code, " with or without modifications, provided that this copyright " notice is copied with it. Like anything else that's free, " netrwSettings.vim is provided *as is* and comes with no " warranty of any kind, either expressed or implied. By using " this plugin, you agree that in no event will the copyright " holder be liable for any damages resulting from the use " of this software. " " Mat 4:23 (WEB) Jesus went about in all Galilee, teaching in their {{{1 " synagogues, preaching the gospel of the kingdom, and healing " every disease and every sickness among the people. " Load Once: {{{1 if exists("g:loaded_netrwSettings") || &cp finish endif let g:loaded_netrwSettings = "v16" if v:version < 700 echohl WarningMsg echo "***warning*** this version of netrwSettings needs vim 7.0" echohl Normal finish endif " --------------------------------------------------------------------- " NetrwSettings: {{{1 fun! netrwSettings#NetrwSettings() " this call is here largely just to insure that netrw has been loaded call netrw#SavePosn() if !exists("g:loaded_netrw") echohl WarningMsg | echomsg "***sorry*** netrw needs to be loaded prior to using NetrwSettings" | echohl None return endif above wincmd s enew setlocal noswapfile bh=wipe set ft=vim file Netrw\ Settings " these variables have the following default effects when they don't " exist (ie. have not been set by the user in his/her .vimrc) if !exists("g:netrw_liststyle") let g:netrw_liststyle= 0 let g:netrw_list_cmd= "ssh HOSTNAME ls -FLa" endif if !exists("g:netrw_silent") let g:netrw_silent= 0 endif if !exists("g:netrw_use_nt_rcp") let g:netrw_use_nt_rcp= 0 endif if !exists("g:netrw_ftp") let g:netrw_ftp= 0 endif if !exists("g:netrw_ignorenetrc") let g:netrw_ignorenetrc= 0 endif put ='+ ---------------------------------------------' put ='+ NetrwSettings: by Charles E. Campbell' put ='+ Press <F1> with cursor atop any line for help' put ='+ ---------------------------------------------' let s:netrw_settings_stop= line(".") put ='' put ='+ Netrw Protocol Commands' put = 'let g:netrw_dav_cmd = '.g:netrw_dav_cmd put = 'let g:netrw_fetch_cmd = '.g:netrw_fetch_cmd put = 'let g:netrw_ftp_cmd = '.g:netrw_ftp_cmd put = 'let g:netrw_http_cmd = '.g:netrw_http_cmd put = 'let g:netrw_rcp_cmd = '.g:netrw_rcp_cmd put = 'let g:netrw_rsync_cmd = '.g:netrw_rsync_cmd put = 'let g:netrw_scp_cmd = '.g:netrw_scp_cmd put = 'let g:netrw_sftp_cmd = '.g:netrw_sftp_cmd put = 'let g:netrw_ssh_cmd = '.g:netrw_ssh_cmd let s:netrw_protocol_stop= line(".") put = '' put ='+Netrw Transfer Control' put = 'let g:netrw_cygwin = '.g:netrw_cygwin put = 'let g:netrw_ftp = '.g:netrw_ftp put = 'let g:netrw_ftpmode = '.g:netrw_ftpmode put = 'let g:netrw_ignorenetrc = '.g:netrw_ignorenetrc put = 'let g:netrw_sshport = '.g:netrw_sshport put = 'let g:netrw_silent = '.g:netrw_silent put = 'let g:netrw_use_nt_rcp = '.g:netrw_use_nt_rcp put = 'let g:netrw_win95ftp = '.g:netrw_win95ftp let s:netrw_xfer_stop= line(".") put ='' put ='+ Netrw Messages' put ='let g:netrw_use_errorwindow = '.g:netrw_use_errorwindow put = '' put ='+ Netrw Browser Control' if exists("g:netrw_altfile") put = 'let g:netrw_altfile = '.g:netrw_altfile else put = 'let g:netrw_altfile = 0' endif put = 'let g:netrw_alto = '.g:netrw_alto put = 'let g:netrw_altv = '.g:netrw_altv put = 'let g:netrw_banner = '.g:netrw_banner if exists("g:netrw_bannerbackslash") put = 'let g:netrw_bannerbackslash = '.g:netrw_bannerbackslash else put = '\" let g:netrw_bannerbackslash = (not defined)' endif put = 'let g:netrw_browse_split = '.g:netrw_browse_split if exists("g:netrw_browsex_viewer") put = 'let g:netrw_browsex_viewer = '.g:netrw_browsex_viewer else put = '\" let g:netrw_browsex_viewer = (not defined)' endif put = 'let g:netrw_compress = '.g:netrw_compress if exists("g:Netrw_corehandler") put = 'let g:Netrw_corehandler = '.g:Netrw_corehandler else put = '\" let g:Netrw_corehandler = (not defined)' endif put = 'let g:netrw_ctags = '.g:netrw_ctags put = 'let g:netrw_cursor = '.g:netrw_cursor let decompressline= line("$") put = 'let g:netrw_decompress = '.string(g:netrw_decompress) if exists("g:netrw_dynamic_maxfilenamelen") put = 'let g:netrw_dynamic_maxfilenamelen='.g:netrw_dynamic_maxfilenamelen else put = '\" let g:netrw_dynamic_maxfilenamelen= (not defined)' endif put = 'let g:netrw_dirhistmax = '.g:netrw_dirhistmax put = 'let g:netrw_errorlvl = '.g:netrw_errorlvl put = 'let g:netrw_fastbrowse = '.g:netrw_fastbrowse let fnameescline= line("$") put = 'let g:netrw_fname_escape = '.string(g:netrw_fname_escape) put = 'let g:netrw_ftp_browse_reject = '.g:netrw_ftp_browse_reject put = 'let g:netrw_ftp_list_cmd = '.g:netrw_ftp_list_cmd put = 'let g:netrw_ftp_sizelist_cmd = '.g:netrw_ftp_sizelist_cmd put = 'let g:netrw_ftp_timelist_cmd = '.g:netrw_ftp_timelist_cmd let globescline= line("$") put = 'let g:netrw_glob_escape = '.string(g:netrw_glob_escape) put = 'let g:netrw_hide = '.g:netrw_hide if exists("g:netrw_home") put = 'let g:netrw_home = '.g:netrw_home else put = '\" let g:netrw_home = (not defined)' endif put = 'let g:netrw_keepdir = '.g:netrw_keepdir put = 'let g:netrw_list_cmd = '.g:netrw_list_cmd put = 'let g:netrw_list_hide = '.g:netrw_list_hide put = 'let g:netrw_liststyle = '.g:netrw_liststyle put = 'let g:netrw_localcopycmd = '.g:netrw_localcopycmd put = 'let g:netrw_localcopycmdopt = '.g:netrw_localcopycmdopt put = 'let g:netrw_localmkdir = '.g:netrw_localmkdir put = 'let g:netrw_localmkdiropt = '.g:netrw_localmkdiropt put = 'let g:netrw_localmovecmd = '.g:netrw_localmovecmd put = 'let g:netrw_localmovecmdopt = '.g:netrw_localmovecmdopt put = 'let g:netrw_localrmdir = '.g:netrw_localrmdir put = 'let g:netrw_localrmdiropt = '.g:netrw_localrmdiropt put = 'let g:netrw_maxfilenamelen = '.g:netrw_maxfilenamelen put = 'let g:netrw_menu = '.g:netrw_menu put = 'let g:netrw_mousemaps = '.g:netrw_mousemaps put = 'let g:netrw_mkdir_cmd = '.g:netrw_mkdir_cmd if exists("g:netrw_nobeval") put = 'let g:netrw_nobeval = '.g:netrw_nobeval else put = '\" let g:netrw_nobeval = (not defined)' endif put = 'let g:netrw_remote_mkdir = '.g:netrw_remote_mkdir put = 'let g:netrw_preview = '.g:netrw_preview put = 'let g:netrw_rename_cmd = '.g:netrw_rename_cmd put = 'let g:netrw_retmap = '.g:netrw_retmap put = 'let g:netrw_rm_cmd = '.g:netrw_rm_cmd put = 'let g:netrw_rmdir_cmd = '.g:netrw_rmdir_cmd put = 'let g:netrw_rmf_cmd = '.g:netrw_rmf_cmd put = 'let g:netrw_sort_by = '.g:netrw_sort_by put = 'let g:netrw_sort_direction = '.g:netrw_sort_direction put = 'let g:netrw_sort_options = '.g:netrw_sort_options put = 'let g:netrw_sort_sequence = '.g:netrw_sort_sequence put = 'let g:netrw_servername = '.g:netrw_servername put = 'let g:netrw_special_syntax = '.g:netrw_special_syntax put = 'let g:netrw_ssh_browse_reject = '.g:netrw_ssh_browse_reject put = 'let g:netrw_ssh_cmd = '.g:netrw_ssh_cmd put = 'let g:netrw_scpport = '.g:netrw_scpport put = 'let g:netrw_sepchr = '.g:netrw_sepchr put = 'let g:netrw_sshport = '.g:netrw_sshport put = 'let g:netrw_timefmt = '.g:netrw_timefmt let tmpfileescline= line("$") put ='let g:netrw_tmpfile_escape...' put = 'let g:netrw_use_noswf = '.g:netrw_use_noswf put = 'let g:netrw_xstrlen = '.g:netrw_xstrlen put = 'let g:netrw_winsize = '.g:netrw_winsize put ='' put ='+ For help, place cursor on line and press <F1>' 1d silent %s/^+/"/e res 99 silent %s/= \([^0-9].*\)$/= '\1'/e silent %s/= $/= ''/e 1 call setline(decompressline,"let g:netrw_decompress = ".substitute(string(g:netrw_decompress),"^'\\(.*\\)'$",'\1','')) call setline(fnameescline, "let g:netrw_fname_escape = '".escape(g:netrw_fname_escape,"'")."'") call setline(globescline, "let g:netrw_glob_escape = '".escape(g:netrw_glob_escape,"'")."'") call setline(tmpfileescline,"let g:netrw_tmpfile_escape = '".escape(g:netrw_tmpfile_escape,"'")."'") set nomod nmap <buffer> <silent> <F1> :call NetrwSettingHelp()<cr> nnoremap <buffer> <silent> <leftmouse> <leftmouse>:call NetrwSettingHelp()<cr> let tmpfile= tempname() exe 'au BufWriteCmd Netrw\ Settings silent w! '.tmpfile.'|so '.tmpfile.'|call delete("'.tmpfile.'")|set nomod' endfun " --------------------------------------------------------------------- " NetrwSettingHelp: {{{2 fun! NetrwSettingHelp() " call Dfunc("NetrwSettingHelp()") let curline = getline(".") if curline =~ '=' let varhelp = substitute(curline,'^\s*let ','','e') let varhelp = substitute(varhelp,'\s*=.*$','','e') " call Decho("trying help ".varhelp) try exe "he ".varhelp catch /^Vim\%((\a\+)\)\=:E149/ echo "***sorry*** no help available for <".varhelp.">" endtry elseif line(".") < s:netrw_settings_stop he netrw-settings elseif line(".") < s:netrw_protocol_stop he netrw-externapp elseif line(".") < s:netrw_xfer_stop he netrw-variables else he netrw-browse-var endif " call Dret("NetrwSettingHelp") endfun " --------------------------------------------------------------------- " Modelines: {{{1 " vim:ts=8 fdm=marker