2017-11-19 12:12:22 +09:00
|
|
|
|
fzf-vim.txt fzf-vim Last change: November 19 2017
|
2015-08-22 23:24:19 +09:00
|
|
|
|
FZF-VIM - TABLE OF CONTENTS *fzf-vim* *fzf-vim-toc*
|
2015-08-22 23:18:39 +09:00
|
|
|
|
==============================================================================
|
|
|
|
|
|
|
|
|
|
fzf :heart: vim
|
2015-08-22 23:24:19 +09:00
|
|
|
|
Rationale
|
2015-09-20 01:26:08 +09:00
|
|
|
|
Why you should use fzf on Vim
|
2015-08-22 23:24:19 +09:00
|
|
|
|
Installation
|
|
|
|
|
Commands
|
|
|
|
|
Customization
|
2017-10-17 02:21:57 +09:00
|
|
|
|
Global options
|
|
|
|
|
Command-local options
|
|
|
|
|
Advanced customization
|
2015-08-22 23:24:19 +09:00
|
|
|
|
Mappings
|
|
|
|
|
Usage
|
|
|
|
|
Completion helper
|
|
|
|
|
Reducer example
|
2017-11-19 12:12:22 +09:00
|
|
|
|
Status line of terminal buffer
|
|
|
|
|
Hide statusline
|
|
|
|
|
Custom statusline
|
2015-08-22 23:24:19 +09:00
|
|
|
|
License
|
2015-08-22 23:18:39 +09:00
|
|
|
|
|
|
|
|
|
FZF :HEART: VIM *fzf-vim-fzf-heart-vim*
|
|
|
|
|
==============================================================================
|
|
|
|
|
|
2015-09-20 01:26:08 +09:00
|
|
|
|
Things you can do with {fzf}{1} and Vim.
|
2015-08-22 23:18:39 +09:00
|
|
|
|
|
|
|
|
|
{1} https://github.com/junegunn/fzf
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
RATIONALE *fzf-vim-rationale*
|
|
|
|
|
==============================================================================
|
|
|
|
|
|
|
|
|
|
{fzf}{1} in itself is not a Vim plugin, and the official repository only
|
|
|
|
|
provides the {basic wrapper function}{2} for Vim and it's up to the users to
|
|
|
|
|
write their own Vim commands with it. However, I've learned that many users of
|
|
|
|
|
fzf are not familiar with Vimscript and are looking for the "default"
|
|
|
|
|
implementation of the features they can find in the alternative Vim plugins.
|
|
|
|
|
|
|
|
|
|
This repository is a bundle of fzf-based commands and mappings extracted from
|
|
|
|
|
my {.vimrc}{3} to address such needs. They are not designed to be flexible or
|
2015-09-20 01:26:08 +09:00
|
|
|
|
configurable, and there's no guarantee of backward-compatibility.
|
2015-08-22 23:18:39 +09:00
|
|
|
|
|
|
|
|
|
{1} https://github.com/junegunn/fzf
|
|
|
|
|
{2} https://github.com/junegunn/fzf#usage-as-vim-plugin
|
|
|
|
|
{3} https://github.com/junegunn/dotfiles/blob/master/vimrc
|
|
|
|
|
|
|
|
|
|
|
2015-09-20 01:26:08 +09:00
|
|
|
|
WHY YOU SHOULD USE FZF ON VIM *fzf-vim-why-you-should-use-fzf-on-vim*
|
|
|
|
|
==============================================================================
|
|
|
|
|
|
|
|
|
|
Because you can and you love fzf.
|
|
|
|
|
|
|
|
|
|
fzf runs asynchronously and can be orders of magnitude faster than similar Vim
|
|
|
|
|
plugins. However, the benefit may not be noticeable if the size of the input
|
|
|
|
|
is small, which is the case for many of the commands provided here.
|
|
|
|
|
Nevertheless I wrote them anyway since it's really easy to implement custom
|
|
|
|
|
selector with fzf.
|
|
|
|
|
|
|
|
|
|
fzf is an independent command-line program and thus requires an external
|
|
|
|
|
terminal emulator when on GVim. You may or may not like the experience. Also
|
2017-10-17 02:21:57 +09:00
|
|
|
|
note that Windows support is experimental at the moment.
|
2015-09-20 01:26:08 +09:00
|
|
|
|
|
|
|
|
|
|
2015-08-22 23:18:39 +09:00
|
|
|
|
INSTALLATION *fzf-vim-installation*
|
|
|
|
|
==============================================================================
|
|
|
|
|
|
2017-10-21 09:25:24 +09:00
|
|
|
|
Use {vim-plug}{4} or any Vim plugin manager of your choice.
|
|
|
|
|
|
|
|
|
|
If you already installed fzf using {Homebrew}{5}, the following should
|
|
|
|
|
suffice:
|
|
|
|
|
>
|
|
|
|
|
Plug '/usr/local/opt/fzf'
|
|
|
|
|
Plug 'junegunn/fzf.vim'
|
|
|
|
|
<
|
|
|
|
|
But if you want to install fzf as well using vim-plug:
|
2015-08-22 23:18:39 +09:00
|
|
|
|
>
|
2017-10-17 02:21:57 +09:00
|
|
|
|
Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }
|
2015-08-22 23:18:39 +09:00
|
|
|
|
Plug 'junegunn/fzf.vim'
|
|
|
|
|
<
|
2017-10-17 02:21:57 +09:00
|
|
|
|
- `dir` and `do` options are not mandatory
|
|
|
|
|
- Use `./install --bin` instead if you don't need fzf outside of Vim
|
|
|
|
|
- Make sure to use Vim 7.4 or above
|
|
|
|
|
|
2015-08-22 23:18:39 +09:00
|
|
|
|
{4} https://github.com/junegunn/vim-plug
|
2017-10-21 09:25:24 +09:00
|
|
|
|
{5} https://brew.sh/
|
2015-08-22 23:18:39 +09:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
COMMANDS *fzf-vim-commands*
|
|
|
|
|
==============================================================================
|
|
|
|
|
|
2015-09-20 01:26:08 +09:00
|
|
|
|
|
2017-10-17 02:21:57 +09:00
|
|
|
|
-----------------+-----------------------------------------------------------------------
|
|
|
|
|
Command | List ~
|
|
|
|
|
-----------------+-----------------------------------------------------------------------
|
2015-08-22 23:18:39 +09:00
|
|
|
|
`Files [PATH]` | Files (similar to `:FZF` )
|
2017-10-17 02:21:57 +09:00
|
|
|
|
`GFiles [OPTS]` | Git files ( `git ls-files` )
|
|
|
|
|
`GFiles?` | Git files ( `git status` )
|
2015-08-22 23:18:39 +09:00
|
|
|
|
`Buffers` | Open buffers
|
|
|
|
|
`Colors` | Color schemes
|
2017-10-21 09:25:24 +09:00
|
|
|
|
`Ag [PATTERN]` | {ag}{6} search result ( `ALT-A` to select all, `ALT-D` to deselect all)
|
2017-10-17 02:21:57 +09:00
|
|
|
|
`Lines [QUERY]` | Lines in loaded buffers
|
|
|
|
|
`BLines [QUERY]` | Lines in the current buffer
|
2016-02-24 00:08:34 +09:00
|
|
|
|
`Tags [QUERY]` | Tags in the project ( `ctags -R` )
|
|
|
|
|
`BTags [QUERY]` | Tags in the current buffer
|
2015-08-28 17:49:50 +09:00
|
|
|
|
`Marks` | Marks
|
|
|
|
|
`Windows` | Windows
|
2015-08-22 23:18:39 +09:00
|
|
|
|
`Locate PATTERN` | `locate` command output
|
|
|
|
|
`History` | `v:oldfiles` and open buffers
|
2015-09-02 19:14:56 +09:00
|
|
|
|
`History:` | Command history
|
|
|
|
|
`History/` | Search history
|
2017-10-21 09:25:24 +09:00
|
|
|
|
`Snippets` | Snippets ({UltiSnips}{7})
|
|
|
|
|
`Commits` | Git commits (requires {fugitive.vim}{8})
|
2015-09-20 14:51:06 +09:00
|
|
|
|
`BCommits` | Git commits for the current buffer
|
2015-09-01 00:59:06 +09:00
|
|
|
|
`Commands` | Commands
|
2015-10-02 01:17:01 +09:00
|
|
|
|
`Maps` | Normal mode mappings
|
2015-09-20 01:26:08 +09:00
|
|
|
|
`Helptags` | Help tags [1]
|
2016-04-03 08:48:22 +02:00
|
|
|
|
`Filetypes` | File types
|
2017-10-17 02:21:57 +09:00
|
|
|
|
-----------------+-----------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
*g:fzf_command_prefix*
|
2015-08-22 23:18:39 +09:00
|
|
|
|
|
|
|
|
|
- Most commands support CTRL-T / CTRL-X / CTRL-V key bindings to open in a new
|
2015-09-30 18:42:48 +09:00
|
|
|
|
tab, a new split, or in a new vertical split
|
2015-08-22 23:18:39 +09:00
|
|
|
|
- Bang-versions of the commands (e.g. `Ag!`) will open fzf in fullscreen
|
2015-09-30 18:42:48 +09:00
|
|
|
|
- You can set `g:fzf_command_prefix` to give the same prefix to the commands
|
2017-10-17 02:21:57 +09:00
|
|
|
|
- e.g. `let g:fzf_command_prefix = 'Fzf'` and you have `FzfFiles`, etc.
|
2015-08-22 23:18:39 +09:00
|
|
|
|
|
2017-10-21 09:25:24 +09:00
|
|
|
|
(1: `Helptags` will shadow the command of the same name from {pathogen}{9}.
|
2015-09-20 01:26:08 +09:00
|
|
|
|
But its functionality is still available via `call pathogen#helptags()`.)
|
|
|
|
|
|
2017-10-21 09:25:24 +09:00
|
|
|
|
{6} https://github.com/ggreer/the_silver_searcher
|
|
|
|
|
{7} https://github.com/SirVer/ultisnips
|
|
|
|
|
{8} https://github.com/tpope/vim-fugitive
|
|
|
|
|
{9} https://github.com/tpope/vim-pathogen
|
2015-08-22 23:18:39 +09:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
< Customization >_____________________________________________________________~
|
|
|
|
|
*fzf-vim-customization*
|
|
|
|
|
|
2016-04-09 21:34:38 +09:00
|
|
|
|
|
|
|
|
|
Global options~
|
2017-10-17 02:21:57 +09:00
|
|
|
|
*fzf-vim-global-options*
|
|
|
|
|
|
2017-10-21 09:25:24 +09:00
|
|
|
|
See {README-VIM.md}{10} of the main fzf repository for details.
|
2015-08-22 23:18:39 +09:00
|
|
|
|
>
|
|
|
|
|
" This is the default extra key bindings
|
|
|
|
|
let g:fzf_action = {
|
|
|
|
|
\ 'ctrl-t': 'tab split',
|
|
|
|
|
\ 'ctrl-x': 'split',
|
|
|
|
|
\ 'ctrl-v': 'vsplit' }
|
|
|
|
|
|
|
|
|
|
" Default fzf layout
|
2016-03-11 01:15:28 +09:00
|
|
|
|
" - down / up / left / right
|
|
|
|
|
let g:fzf_layout = { 'down': '~40%' }
|
2015-09-06 00:58:45 +09:00
|
|
|
|
|
2016-07-02 20:32:24 +09:00
|
|
|
|
" In Neovim, you can set up fzf window using a Vim command
|
|
|
|
|
let g:fzf_layout = { 'window': 'enew' }
|
|
|
|
|
let g:fzf_layout = { 'window': '-tabnew' }
|
2017-10-17 02:21:57 +09:00
|
|
|
|
let g:fzf_layout = { 'window': '10split enew' }
|
2016-07-02 20:32:24 +09:00
|
|
|
|
|
2016-04-09 21:34:38 +09:00
|
|
|
|
" Customize fzf colors to match your color scheme
|
|
|
|
|
let g:fzf_colors =
|
|
|
|
|
\ { 'fg': ['fg', 'Normal'],
|
|
|
|
|
\ 'bg': ['bg', 'Normal'],
|
|
|
|
|
\ 'hl': ['fg', 'Comment'],
|
|
|
|
|
\ 'fg+': ['fg', 'CursorLine', 'CursorColumn', 'Normal'],
|
|
|
|
|
\ 'bg+': ['bg', 'CursorLine', 'CursorColumn'],
|
|
|
|
|
\ 'hl+': ['fg', 'Statement'],
|
|
|
|
|
\ 'info': ['fg', 'PreProc'],
|
2017-10-17 02:21:57 +09:00
|
|
|
|
\ 'border': ['fg', 'Ignore'],
|
2016-04-09 21:34:38 +09:00
|
|
|
|
\ 'prompt': ['fg', 'Conditional'],
|
|
|
|
|
\ 'pointer': ['fg', 'Exception'],
|
|
|
|
|
\ 'marker': ['fg', 'Keyword'],
|
|
|
|
|
\ 'spinner': ['fg', 'Label'],
|
|
|
|
|
\ 'header': ['fg', 'Comment'] }
|
2016-07-21 22:14:18 +09:00
|
|
|
|
|
|
|
|
|
" Enable per-command history.
|
|
|
|
|
" CTRL-N and CTRL-P will be automatically bound to next-history and
|
|
|
|
|
" previous-history instead of down and up. If you don't like the change,
|
|
|
|
|
" explicitly bind the keys to down and up in your $FZF_DEFAULT_OPTS.
|
2016-10-14 03:08:31 +02:00
|
|
|
|
let g:fzf_history_dir = '~/.local/share/fzf-history'
|
2016-04-09 21:34:38 +09:00
|
|
|
|
<
|
2017-10-21 09:25:24 +09:00
|
|
|
|
{10} https://github.com/junegunn/fzf/blob/master/README-VIM.md#configuration
|
2017-10-17 02:21:57 +09:00
|
|
|
|
|
2016-04-09 21:34:38 +09:00
|
|
|
|
|
|
|
|
|
Command-local options~
|
2017-10-17 02:21:57 +09:00
|
|
|
|
*fzf-vim-command-local-options*
|
2016-04-09 21:34:38 +09:00
|
|
|
|
|
2017-10-17 02:21:57 +09:00
|
|
|
|
*g:fzf_buffers_jump* *g:fzf_commits_log_options* *g:fzf_tags_command*
|
|
|
|
|
*g:fzf_commands_expect*
|
2016-04-09 21:34:38 +09:00
|
|
|
|
>
|
2016-03-11 01:15:28 +09:00
|
|
|
|
" [Buffers] Jump to the existing window if possible
|
|
|
|
|
let g:fzf_buffers_jump = 1
|
|
|
|
|
|
2016-05-12 01:42:24 +09:00
|
|
|
|
" [[B]Commits] Customize the options used by 'git log':
|
2017-10-17 02:21:57 +09:00
|
|
|
|
let g:fzf_commits_log_options = '--graph --color=always --format="%C(auto)%h%d %s %C(black)%C(bold)%cr"'
|
2016-05-12 01:42:24 +09:00
|
|
|
|
|
|
|
|
|
" [Tags] Command to generate tags file
|
|
|
|
|
let g:fzf_tags_command = 'ctags -R'
|
2016-06-24 00:36:16 +09:00
|
|
|
|
|
|
|
|
|
" [Commands] --expect expression for directly executing the command
|
2016-06-24 00:45:54 +09:00
|
|
|
|
let g:fzf_commands_expect = 'alt-enter,ctrl-x'
|
2016-04-09 21:34:38 +09:00
|
|
|
|
<
|
|
|
|
|
|
2017-10-17 02:21:57 +09:00
|
|
|
|
Advanced customization~
|
|
|
|
|
*fzf-vim-advanced-customization*
|
2016-01-04 15:59:19 -08:00
|
|
|
|
|
2016-04-09 21:34:38 +09:00
|
|
|
|
You can use autoload functions to define your own commands.
|
|
|
|
|
>
|
2017-10-17 02:21:57 +09:00
|
|
|
|
" Command for git grep
|
|
|
|
|
" - fzf#vim#grep(command, with_column, [options], [fullscreen])
|
2016-09-27 02:01:40 +09:00
|
|
|
|
command! -bang -nargs=* GGrep
|
|
|
|
|
\ call fzf#vim#grep('git grep --line-number '.shellescape(<q-args>), 0, <bang>0)
|
|
|
|
|
|
2017-02-07 11:40:31 +09:00
|
|
|
|
" Override Colors command. You can safely do this in your .vimrc as fzf.vim
|
|
|
|
|
" will not override existing commands.
|
2017-10-17 02:21:57 +09:00
|
|
|
|
command! -bang Colors
|
|
|
|
|
\ call fzf#vim#colors({'left': '15%', 'options': '--reverse --margin 30%,0'}, <bang>0)
|
2017-02-07 11:40:31 +09:00
|
|
|
|
|
|
|
|
|
" Augmenting Ag command using fzf#vim#with_preview function
|
|
|
|
|
" * fzf#vim#with_preview([[options], preview window, [toggle keys...]])
|
2017-03-18 02:14:34 +09:00
|
|
|
|
" * For syntax-highlighting, Ruby and any of the following tools are required:
|
|
|
|
|
" - Highlight: http://www.andre-simon.de/doku/highlight/en/highlight.php
|
|
|
|
|
" - CodeRay: http://coderay.rubychan.de/
|
|
|
|
|
" - Rouge: https://github.com/jneen/rouge
|
2017-02-07 11:40:31 +09:00
|
|
|
|
"
|
|
|
|
|
" :Ag - Start fzf with hidden preview window that can be enabled with "?" key
|
|
|
|
|
" :Ag! - Start fzf in fullscreen and display the preview window above
|
|
|
|
|
command! -bang -nargs=* Ag
|
|
|
|
|
\ call fzf#vim#ag(<q-args>,
|
|
|
|
|
\ <bang>0 ? fzf#vim#with_preview('up:60%')
|
|
|
|
|
\ : fzf#vim#with_preview('right:50%:hidden', '?'),
|
|
|
|
|
\ <bang>0)
|
|
|
|
|
|
|
|
|
|
" Similarly, we can apply it to fzf#vim#grep. To use ripgrep instead of ag:
|
|
|
|
|
command! -bang -nargs=* Rg
|
|
|
|
|
\ call fzf#vim#grep(
|
|
|
|
|
\ 'rg --column --line-number --no-heading --color=always '.shellescape(<q-args>), 1,
|
|
|
|
|
\ <bang>0 ? fzf#vim#with_preview('up:60%')
|
|
|
|
|
\ : fzf#vim#with_preview('right:50%:hidden', '?'),
|
|
|
|
|
\ <bang>0)
|
2017-03-13 19:42:16 +09:00
|
|
|
|
|
|
|
|
|
" Likewise, Files command with preview window
|
|
|
|
|
command! -bang -nargs=? -complete=dir Files
|
|
|
|
|
\ call fzf#vim#files(<q-args>, fzf#vim#with_preview(), <bang>0)
|
2015-08-22 23:18:39 +09:00
|
|
|
|
<
|
|
|
|
|
|
|
|
|
|
MAPPINGS *fzf-vim-mappings*
|
|
|
|
|
==============================================================================
|
|
|
|
|
|
2015-08-23 04:23:16 +09:00
|
|
|
|
---------------------------------+------------------------------------------
|
|
|
|
|
Mapping | Description ~
|
|
|
|
|
---------------------------------+------------------------------------------
|
2015-10-02 01:17:01 +09:00
|
|
|
|
<plug>(fzf-maps-n) | Normal mode mappings
|
|
|
|
|
<plug>(fzf-maps-i) | Insert mode mappings
|
|
|
|
|
<plug>(fzf-maps-x) | Visual mode mappings
|
|
|
|
|
<plug>(fzf-maps-o) | Operator-pending mappings
|
2015-08-23 04:23:16 +09:00
|
|
|
|
<plug>(fzf-complete-word) | `cat /usr/share/dict/words`
|
|
|
|
|
<plug>(fzf-complete-path) | Path completion using `find` (file + dir)
|
|
|
|
|
<plug>(fzf-complete-file) | File completion using `find`
|
|
|
|
|
<plug>(fzf-complete-file-ag) | File completion using `ag`
|
|
|
|
|
<plug>(fzf-complete-line) | Line completion (all open buffers)
|
|
|
|
|
<plug>(fzf-complete-buffer-line) | Line completion (current buffer only)
|
|
|
|
|
---------------------------------+------------------------------------------
|
2015-08-22 23:18:39 +09:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
< Usage >_____________________________________________________________________~
|
|
|
|
|
*fzf-vim-usage*
|
|
|
|
|
>
|
2015-10-02 01:17:01 +09:00
|
|
|
|
" Mapping selecting mappings
|
|
|
|
|
nmap <leader><tab> <plug>(fzf-maps-n)
|
|
|
|
|
xmap <leader><tab> <plug>(fzf-maps-x)
|
|
|
|
|
omap <leader><tab> <plug>(fzf-maps-o)
|
|
|
|
|
|
|
|
|
|
" Insert mode completion
|
2015-08-22 23:18:39 +09:00
|
|
|
|
imap <c-x><c-k> <plug>(fzf-complete-word)
|
|
|
|
|
imap <c-x><c-f> <plug>(fzf-complete-path)
|
|
|
|
|
imap <c-x><c-j> <plug>(fzf-complete-file-ag)
|
2015-08-23 04:23:16 +09:00
|
|
|
|
imap <c-x><c-l> <plug>(fzf-complete-line)
|
2015-09-06 00:58:45 +09:00
|
|
|
|
|
|
|
|
|
" Advanced customization using autoload functions
|
|
|
|
|
inoremap <expr> <c-x><c-k> fzf#vim#complete#word({'left': '15%'})
|
2015-08-22 23:18:39 +09:00
|
|
|
|
<
|
|
|
|
|
|
|
|
|
|
< Completion helper >_________________________________________________________~
|
|
|
|
|
*fzf-vim-completion-helper*
|
|
|
|
|
|
|
|
|
|
`fzf#complete` is a helper function for creating custom fuzzy completion using
|
|
|
|
|
fzf. If the first parameter is a command string or a Vim list, it will be used
|
|
|
|
|
as the source.
|
|
|
|
|
>
|
|
|
|
|
" Replace the default dictionary completion with fzf-based fuzzy completion
|
|
|
|
|
inoremap <expr> <c-x><c-k> fzf#complete('cat /usr/share/dict/words')
|
|
|
|
|
<
|
|
|
|
|
For advanced uses, you can pass an options dictionary to the function. The set
|
|
|
|
|
of options is pretty much identical to that for `fzf#run` only with the
|
|
|
|
|
following exceptions:
|
|
|
|
|
|
|
|
|
|
- `reducer` (funcref)
|
|
|
|
|
- Reducer transforms the output lines of fzf into a single string value
|
2015-09-20 01:26:08 +09:00
|
|
|
|
- `prefix` (string or funcref; default: `\k*$`)
|
2015-08-22 23:18:39 +09:00
|
|
|
|
- Regular expression pattern to extract the completion prefix
|
2015-09-20 01:26:08 +09:00
|
|
|
|
- Or a function to extract completion prefix
|
2015-08-22 23:18:39 +09:00
|
|
|
|
- Both `source` and `options` can be given as funcrefs that take the completion
|
|
|
|
|
prefix as the argument and return the final value
|
2017-06-28 21:19:11 +09:00
|
|
|
|
- `sink` or `sink*` are ignored
|
2015-08-22 23:18:39 +09:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Reducer example~
|
|
|
|
|
*fzf-vim-reducer-example*
|
|
|
|
|
>
|
|
|
|
|
function! s:make_sentence(lines)
|
|
|
|
|
return substitute(join(a:lines), '^.', '\=toupper(submatch(0))', '').'.'
|
|
|
|
|
endfunction
|
|
|
|
|
|
|
|
|
|
inoremap <expr> <c-x><c-s> fzf#complete({
|
|
|
|
|
\ 'source': 'cat /usr/share/dict/words',
|
|
|
|
|
\ 'reducer': function('<sid>make_sentence'),
|
|
|
|
|
\ 'options': '--multi --reverse --margin 15%,0',
|
|
|
|
|
\ 'left': 20})
|
|
|
|
|
<
|
|
|
|
|
|
2017-11-19 12:12:22 +09:00
|
|
|
|
STATUS LINE OF TERMINAL BUFFER *fzf-vim-status-line-of-terminal-buffer*
|
2017-10-17 02:21:57 +09:00
|
|
|
|
==============================================================================
|
2017-11-19 12:12:22 +09:00
|
|
|
|
|
|
|
|
|
When fzf starts in a terminal buffer (see {fzf/README-VIM.md}{11}), you may
|
|
|
|
|
want to customize the statusline of the containing buffer.
|
|
|
|
|
|
|
|
|
|
{11} https://github.com/junegunn/fzf/blob/master/README-VIM.md#fzf-inside-terminal-buffer
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
< Hide statusline >___________________________________________________________~
|
|
|
|
|
*fzf-vim-hide-statusline*
|
|
|
|
|
>
|
2017-11-19 12:14:40 +09:00
|
|
|
|
autocmd! FileType fzf
|
|
|
|
|
autocmd FileType fzf set laststatus=0 noshowmode noruler
|
|
|
|
|
\| autocmd BufLeave <buffer> set laststatus=2 showmode ruler
|
2017-11-19 12:12:22 +09:00
|
|
|
|
<
|
|
|
|
|
|
|
|
|
|
< Custom statusline >_________________________________________________________~
|
|
|
|
|
*fzf-vim-custom-statusline*
|
2017-10-17 02:21:57 +09:00
|
|
|
|
>
|
|
|
|
|
function! s:fzf_statusline()
|
|
|
|
|
" Override statusline as you like
|
|
|
|
|
highlight fzf1 ctermfg=161 ctermbg=251
|
|
|
|
|
highlight fzf2 ctermfg=23 ctermbg=251
|
|
|
|
|
highlight fzf3 ctermfg=237 ctermbg=251
|
|
|
|
|
setlocal statusline=%#fzf1#\ >\ %#fzf2#fz%#fzf3#f
|
|
|
|
|
endfunction
|
|
|
|
|
|
|
|
|
|
autocmd! User FzfStatusLine call <SID>fzf_statusline()
|
|
|
|
|
<
|
|
|
|
|
|
2015-08-22 23:18:39 +09:00
|
|
|
|
LICENSE *fzf-vim-license*
|
|
|
|
|
==============================================================================
|
|
|
|
|
|
|
|
|
|
MIT
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
==============================================================================
|
|
|
|
|
vim:tw=78:sw=2:ts=2:ft=help:norl:nowrap:
|