vifmrc

" vim: filetype=vifm :
" Sample configuration file for vifm (last updated: 27 Jun, 2013)
" You can edit this file by hand.
" The " character at the beginning of a line comments out the line.
" Blank lines are ignored.
" The basic format for each item is shown with an example.

" This is the actual command used to start vi.  The default is vim.
" If you would like to use another vi clone such Elvis or Vile
" you will need to change this setting.

set vicmd=vim\ -u\ ~/zy/.vim-zy/.vimrc
" set vicmd=elvis\ -G\ termcap
" set vicmd=vile

" Trash Directory
" The default is to move files that are deleted with dd or :d to
" the trash directory.  If you change this you will not be able to move
" files by deleting them and then using p to put the file in the new location.
" I recommend not changing this until you are familiar with vifm.
" This probably shouldn't be an option.

set trash

" This is how many directories to store in the directory history.

set history=100

" Follow links on l or Enter.

set followlinks

" With this option turned on you can run partially entered commands with
" unambiguous beginning using :! (e.g. :!Te instead of :!Terminal or :!Te).

set fastrun

" Natural sort of (version) numbers within text.

set sortnumbers

" Maximum number of changes that can be undone.

set undolevels=100

" If you installed the vim.txt help file set vimhelp.
" If would rather use a plain text help file set novimhelp.

set novimhelp

" If you would like to run an executable file when you
" press return on the file name set this.

set norunexec

" Use KiB, MiB, ... instead of KB, MB, ...

set noiec

" Selected color scheme

colorscheme Default

" The FUSE_HOME directory will be used as a root dir for all FUSE mounts.
" Unless it exists with write/exec permissions set, vifm will attempt to
" create it.

set fusehome=/tmp/vifm_FUSE

" Format for displaying time in file list. For example:
" TIME_STAMP_FORMAT=%m/%d-%H:%M
" See man date or man strftime for details.

set timefmt=%m/%d\ %H:%M

" Show list of matches on tab complition in command-line mode

set wildmenu

" Ignore case in search patterns unless it contains at least one uppercase
" letter

set ignorecase
set smartcase

" Don't highlight search results automatically

set nohlsearch

" Use increment searching (search while typing)
set incsearch

" Try to leave some space from cursor to upper/lower border in lists

set scrolloff=4

" Don't do to much requests to slow file systems

set slowfs=curlftpfs

" Set custom status line look

set statusline="  %t%= %A %10u:%-7g %15s %20d  "

" :mark mark /full/directory/path [filename]

mark b ~/bin/
mark h ~/

" :com[mand] command_name action
" The following macros can be used in a command
" %a is replaced with the user arguments.
" %c the current file under the cursor.
" %C the current file under the cursor in the other directory.
" %f the current selected file, or files.
" %F the current selected file, or files in the other directory.
" %b same as %f %F.
" %d the current directory name.
" %D the other window directory name.
" %m run the command in a menu window

command df df -h %m 2> /dev/null
command diff vim -d %f %F
command zip zip -r %f.zip %f
command run !! ./%f
command make !!make
command vgrep vim "+grep %a"

" The file type is for the default programs to be used with
" a file extension.
" :filetype pattern1,pattern2 defaultprogram,program2
" :fileviewer pattern1,pattern2 consoleviewer
" The other programs for the file type can be accessed with the :file command
" The command macros %f, %F, %d, %F may be used in the commands.
" The %a macro is ignored.  To use a % you must put %%.

" For automated FUSE mounts, you must register an extension with :file[x]type
" in one of following formats:
"
" :filetype extensions FUSE_MOUNT|some_mount_command using %SOURCE_FILE and %DESTINATION_DIR variables
" %SOURCE_FILE and %DESTINATION_DIR are filled in by vifm at runtime.
" A sample line might look like this:
" :filetype *.zip,*.jar,*.war,*.ear FUSE_MOUNT|fuse-zip %SOURCE_FILE %DESTINATION_DIR
"
" :filetype extensions FUSE_MOUNT2|some_mount_command using %PARAM and %DESTINATION_DIR variables
" %PARAM and %DESTINATION_DIR are filled in by vifm at runtime.
" A sample line might look like this:
" :filetype *.ssh FUSE_MOUNT2|sshfs %PARAM %DESTINATION_DIR
" %PARAM value is filled from the first line of file (whole line).
" Example first line for SshMount filetype: [email protected]:/
"
" You can also add %CLEAR if you want to clear screen before running FUSE
" program.

" NCL script
filextype *.ncl vim %f
fileviewer *.ncl vim %f
" Netcdf
filextype *.nc ncview %f
fileviewer *.nc ncview %f

" Pdf
filetype *.pdf zathura %f,apvlv %f,xpdf %f
fileview *.pdf pdftotext -nopgbrk %c -

" PostScript
filextype *.ps,*.ps.gz gv %c %i &

" Djvu
filextype *.djvu apvlv %f

" Audio
filetype *.wav,*.mp3,*.flac,*.ogg,*.m4a
       \ {Play using ffplay}
       \ ffplay %c,
       \ {Play using MPlayer}
       \ mplayer %f,
fileviewer *.mp3 mp3info

" Video
filextype *.avi,*.mp4,*.wmv,*.dat,*.3gp,*.ogv,*.mkv,*.mpg,*.vob,*.flv
        \ {View using ffplay}
        \ ffplay -fs %c,
        \ {View using Dragon}
        \ dragon %f,
        \ {View using mplayer}
        \ mplayer %f,
fileviewer *.avi,*.mp4,*.wmv,*.dat,*.3gp,*.ogv,*.mkv,*.mpg,*.vob
         \ ffprobe -pretty %c 2>&1

" Web
filetype *.html,*.htm links,mozilla,uzbl-browser %f %i &

" Object
filetype *.o nm %f | less

" Image
filextype *.bmp,*.jpg,*.jpeg,*.png,*.gif,*.xpm,*.eps
        \ {View in display}
        \ display,
        \ {View in sxiv}
        \ sxiv,
        \ {View in gpicview}
        \ gpicview %c,
fileviewer *.bmp,*.jpg,*.jpeg,*.png,*.gif,*.xpm convert -identify %f -verbose /dev/null

" MD5
filetype *.md5
       \ {Check MD5 hash sum}
       \ md5sum -c %f,

" FuseZipMount
filetype *.zip,*.jar,*.war,*.ear
       \ {Mount with fuse-zip}
       \ FUSE_MOUNT|fuse-zip %SOURCE_FILE %DESTINATION_DIR,
       \ {View contents}
       \ zip -sf %c | less,
       \ tar -xf %c,
fileviewer *.zip,*.jar,*.war,*.ear zip -sf %c

" ArchiveMount
filetype *.tar.bz2,*.tbz2,*.tgz,*.tar.gz
       \ {Mount with archivemount}
       \ FUSE_MOUNT|archivemount %SOURCE_FILE %DESTINATION_DIR,
fileviewer *.tgz,*.tar.gz tar -tzf %c
fileviewer *.tar.bz2,*.tbz2 tar -tjf %c

" Rar2FsMount
filetype *.rar
       \ {Mount with rar2fs}
       \ FUSE_MOUNT|rar2fs %SOURCE_FILE %DESTINATION_DIR,

" IsoMount
filetype *.iso
       \ {Mount with fuseiso}
       \ FUSE_MOUNT|fuseiso %SOURCE_FILE %DESTINATION_DIR,

" SshMount
filetype *.ssh
       \ {Mount with sshfs}
       \ FUSE_MOUNT2|sshfs %PARAM %DESTINATION_DIR,

" FtpMount
filetype *.ftp
       \ {Mount with curlftpfs}
       \ FUSE_MOUNT2|curlftpfs -o ftp_port=-,,disable_eprt %PARAM %DESTINATION_DIR,

" Fuse7z
filetype *.7z
       \ {Mount with fuse-7z}
       \ FUSE_MOUNT|fuse-7z %SOURCE_FILE %DESTINATION_DIR,

" Office files
filextype *.doc,*.docx,*.xls,*.xlsx libreoffice %f &
fileview *.docx, docx2txt.pl %f -

" Qt projects
filextype *.pro qtcreator %f &

" Directories
filextype */
        \ {View in thunar}
        \ Thunar %f &,
fileview .*/,*/ tree %f

" Open all other files with default system programs (you can also remove all
" :file[x]type commands above to ensure they don't interfere with system-wide
" settings).  By default all unknown files are opened with 'vi[x]cmd'
" uncommenting one of lines below will result in ignoring 'vi[x]cmd' option
" for unknown file types.
" For *nix:
" filetype * xdg-open
" For OS X:
" filetype * open
" For Windows:
" filetype * start, explorer

" What should be saved automatically between vifm runs
" Like in previous versions of vifm
" set vifminfo=options,filetypes,commands,bookmarks,dhistory,state,cs
" Like in vi
set vifminfo=dhistory,savedirs,chistory,state,tui,shistory,
    \phistory,fhistory,dirstack,registers,bookmarks

" Sample mappings

nmap = :sync
nmap s :shell
nmap f 20j
nmap b 20k
nmap S :sort
" nmap w :view
nmap e :!emacs %f
nmap O :!gvim --remote-tab-silent %f

" Open file in the background using its default program
nmap gb :file &l

" Yank current directory path into the clipboard
nmap yp :!echo %d | xclip %i

" Yank current file path into the clipboard
nmap yf :!echo %c:p | xclip %i

" Mappings for faster renaming
""nmap I cw
nmap cc cw
nmap A cw

" Opening console in current directory
nmap ,t :!xterm &

" Opening vim to edit .vifmrc
nmap ,c :execute ':!vim $MYVIFMRC' | restart
" Opening gvim to edit .vifmrc
"nmap ,C :!gvim --remote-tab-silent $MYVIFMRC &

" Toggle wrap setting on ,w key
nmap ,w :set wrap!

" Example of standard two-panel file managers mappings
nmap  :!less %f
nmap  :edit
nmap  :copy
nmap  :move
nmap  :mkdir
nmap  :delete

你可能感兴趣的:(vifmrc)