
Project Management with Startify
Plug in Startify
Plug 'mhinz/vim-startify'Create a config file
touch ~/.config/nvim/plug-config/start-screen.vimSessions
This plugin will let us manage our sessions very easily
:SLoad load a session
:SSave[!] save a session
:SDelete[!] delete a session
:SClose close a sessionAdd ! to skip the prompt
We should specify where we want Startify to keep our sessions
let g:startify_session_dir = '~/.config/nvim/session'Startify Lists
We can specify what shows up in our menu like this:
let g:startify_lists = [
\ { 'type': 'files', 'header': [' Files'] },
\ { 'type': 'dir', 'header': [' Current Directory '. getcwd()] },
\ { 'type': 'sessions', 'header': [' Sessions'] },
\ { 'type': 'bookmarks', 'header': [' Bookmarks'] },
\ ]Bookmarks
let g:startify_bookmarks = [
\ { 'c': '~/.config/i3/config' },
\ { 'i': '~/.config/nvim/init.vim' },
\ { 'z': '~/.zshrc' },
\ '~/Blog',
\ '~/Code',
\ '~/Pics',
\ ]Configuration options
You can automatically restart a session like this
let g:startify_session_autoload = 1From the docs:
"If this option is enabled and you start Vim in a directory that contains a
Session.vim, that session will be loaded automatically. Otherwise it will be
shown as the top entry in the Startify buffer."
Let Startify take care of buffers
let g:startify_session_delete_buffers = 1Similar to Vim-rooter
let g:startify_change_to_vcs_root = 1If you want Unicode
let g:startify_fortune_use_unicode = 1Automatically Update Sessions
let g:startify_session_persistence = 1Get rid of empy buffer and quit
let g:startify_enable_special = 0Add a custom header
let g:startify_custom_header = [
\ ' _ __ _ __ ___ __ ___ ',
\ ' / |/ / __(_)_ _ / |/ /__ _____/ / |_ |',
\ ' / / |/ / / ` \ / /|_/ / _ `/ __/ _ \ / __/ ',
\ '/_/|_/|___/_/_/_/_/ /_/ /_/\_,_/\__/_//_/ /____/ ',
\]