goyo.txt goyo Last change: April 2 2017 GOYO - TABLE OF CONTENTS *goyo* *goyo-toc* ============================================================================== goyo.vim (고요) Installation Usage Dimension expression Configuration Callbacks Inspiration Pros. License GOYO.VIM (고요) *goyo-vim* ============================================================================== Distraction-free writing in Vim. https://raw.github.com/junegunn/i/master/goyo.png (Color scheme: {seoul256}{1}) Best served with {limelight.vim}{2}. {1} https://github.com/junegunn/seoul256.vim {2} https://github.com/junegunn/limelight.vim INSTALLATION *goyo-installation* ============================================================================== Use your favorite plugin manager. *:PlugInstall* - {vim-plug}{3} 1. Add `Plug 'junegunn/goyo.vim'` to .vimrc 2. Run `:PlugInstall` {3} https://github.com/junegunn/vim-plug USAGE *goyo-usage* ============================================================================== *:Goyo* - `:Goyo` - Toggle Goyo - `:Goyo [dimension]` - Turn on or resize Goyo - `:Goyo!` - Turn Goyo off The window can be resized with the usual count]`, `<`, `+`, `-` keys. < Dimension expression >______________________________________________________~ *goyo-dimension-expression* The expected format of a dimension expression is `[WIDTH][XOFFSET][x[HEIGHT][YOFFSET]]`. `XOFFSET` and `YOFFSET` should be prefixed by `+` or `-`. Each component can be given in percentage. > " Width Goyo 120 " Height Goyo x30 " Both Goyo 120x30 " In percentage Goyo 120x50% " With offsets Goyo 50%+25%x50%-25% < CONFIGURATION *goyo-configuration* ============================================================================== *g:goyo_width* *g:goyo_height* *g:goyo_linenr* - `g:goyo_width` (default: 80) - `g:goyo_height` (default: 85%) - `g:goyo_linenr` (default: 0) < Callbacks >_________________________________________________________________~ *goyo-callbacks* By default, {vim-airline}{4}, {vim-powerline}{5}, {powerline}{6}, {lightline.vim}{7}, {vim-signify}{8}, and {vim-gitgutter}{9} are temporarily disabled while in Goyo mode. If you have other plugins that you want to disable/enable, or if you want to change the default settings of Goyo window, you can set up custom routines to be triggered on `GoyoEnter` and `GoyoLeave` events. > function! s:goyo_enter() silent !tmux set status off silent !tmux list-panes -F '\#F' | grep -q Z || tmux resize-pane -Z set noshowmode set noshowcmd set scrolloff=999 Limelight " ... endfunction function! s:goyo_leave() silent !tmux set status on silent !tmux list-panes -F '\#F' | grep -q Z && tmux resize-pane -Z set showmode set showcmd set scrolloff=5 Limelight! " ... endfunction autocmd! User GoyoEnter nested call goyo_enter() autocmd! User GoyoLeave nested call goyo_leave() < More examples can be found here: {Customization}{10} {4} https://github.com/bling/vim-airline {5} https://github.com/Lokaltog/vim-powerline {6} https://github.com/Lokaltog/powerline {7} https://github.com/itchyny/lightline.vim {8} https://github.com/mhinz/vim-signify {9} https://github.com/airblade/vim-gitgutter {10} https://github.com/junegunn/goyo.vim/wiki/Customization INSPIRATION *goyo-inspiration* ============================================================================== - {LiteDFM}{11} - {VimRoom}{12} {11} https://github.com/bilalq/lite-dfm {12} http://projects.mikewest.org/vimroom/ PROS. *goyo-pros* ============================================================================== 1. Works well with splits. Doesn't mess up with the current window arrangement 2. Works well with popular statusline plugins 3. Prevents accessing the empty windows around the central buffer 4. Can be closed with any of `:q[uit]`, `:clo[se]`, `:tabc[lose]`, or `:Goyo` 5. Can dynamically change the width of the window 6. Adjusts its colors when color scheme is changed 7. Realigns the window when the terminal (or window) is resized or when the size of the font is changed 8. Correctly hides colorcolumns and Emojis in statusline 9. Highly customizable with callbacks LICENSE *goyo-license* ============================================================================== MIT ============================================================================== vim:tw=78:sw=2:ts=2:ft=help:norl:nowrap: