vim-better-whitespace
nerdtree
vim-better-whitespace | nerdtree | |
---|---|---|
5 | 77 | |
1,341 | 19,275 | |
- | 0.3% | |
3.4 | 7.2 | |
10 days ago | about 2 months ago | |
Vim Script | Vim Script | |
The Unlicense | Do What The F*ck You Want To Public License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
vim-better-whitespace
-
Disabling vim-better-whitespace in floating buffer?
How do I stop vim-better-whitespace from being activated in my ToggleTerm+Lazygit buffer?
-
How to get this arrow and not equal symbol?
For showing whitespace characters, here is a good vimscript based plugin - https://github.com/ntpeters/vim-better-whitespace
-
lsp-error with clangd when opening a cpp file in Ubuntu
-- Neovim configuration by Daniele Lupo (Jepessen) --- Require --- local utils = require('utils') --- Options --- -- Add number to rows utils.opt('o', 'number', true) -- Set indentation of files local indent = 2 utils.opt('b', 'expandtab', true) utils.opt('b', 'shiftwidth', indent) utils.opt('b', 'smartindent', true) utils.opt('b', 'tabstop', indent) utils.opt('b', 'autoindent', true) utils.opt('o', 'smarttab', true) utils.opt('b', 'softtabstop', indent) -- Enable the mouse utils.opt('o', 'mouse', 'a') -- Set nocompatible mode for more powerful commands utils.opt('o', 'compatible', false) -- Set some search options utils.opt('o', 'showmatch', true) utils.opt('o', 'ignorecase', true) utils.opt('o', 'hlsearch', true) utils.opt('o', 'incsearch', true) -- Set options for color scheme utils.opt('o', 'termguicolors', true) --- Keymappings --- -- Remap jj to escape in insert mode utils.map('i', 'jj', '') utils.map('n', 'JJJJ', '') -- Swap ; and : utils.map('n', ':', ';') utils.map('n', ';', ':') -- Start plugin section. Use this section in order to install new plugins to -- neovim. -- -- In order to install a new plugin, you need to put in this section the -- repository where it can be found, and then refresh the plugin list by -- installing them with the command: -- -- :PlugInstall -- Auto install vim-plug that's a plugin manager local vimplugrepository = '' local installpath = vim.fn.stdpath('config')..'/autoload' local vimpluginstallpath = installpath..'/plug.vim' local vimplugrepository = 'https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim' if vim.fn.empty(vim.fn.glob(vimpluginstallpath)) > 0 then vim.api.nvim_command('!curl -flo '..vimpluginstallpath..' --create-dirs '..vimplugrepository) vim.cmd 'autocmd VimEnter * PlugInstall' end local Plug = vim.fn['plug#'] -- Put plugins in this section. Define a Plug with the repository of the plugin that you want vim.call('plug#begin', installpath) -- Vim airline. This plugin creates a nice status bar with more features than -- standard one. Plug 'https://github.com/vim-airline/vim-airline' -- NerdTree is a plugin for showing a tree folder structure of the filesystem. Plug 'https://github.com/preservim/nerdtree' -- Vim color schemes Plug 'https://github.com/rafi/awesome-vim-colorschemes' -- Developer icons Plug 'https://github.com/ryanoasis/vim-devicons' -- Surrounding with parenthesis and xml tags with cs command and more Plug 'https://github.com/tpope/vim-surround' -- Show trailing whitespaces and use the command :StripWhitespace for removing -- them Plug 'https://github.com/ntpeters/vim-better-whitespace.git' -- Install the LSP server for configuring it with clangd for code completition -- in C++ Plug 'https://github.com/neovim/nvim-lspconfig' -- An interesting theme Plug 'https://github.com/Pocco81/Catppuccino.nvim' vim.call('plug#end') --- PLUGINS CONFIGURATION --- -- Nerdtree -- Configure keys so with ctrlf go to the tree, with ctrl+n open the tree, and -- ctrl+t toggle the tree utils.map('n', '', ':NERDTreeFocus') utils.map('n', '', ':NERDTree') utils.map('n', '', ':NERDTreeToggle') --- LSP CONFIG --- -- Main configuration local lspremapopts = { noremap = true, silent = true } vim.keymap.set('n', 'e', vim.diagnostic.open_float, lspremapopts) vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, lspremapopts) vim.keymap.set('n', ']d', vim.diagnostic.goto_next, lspremapopts) vim.keymap.set('n', 'q', vim.diagnostic.setloclist, lspremapopts) -- Use an on_attach function to only map the following keys -- after the language server attaches to the current buffer local on_attach = function(client, bufnr) -- Enable completition triggered by vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc') -- Mappings -- See ':help vim.lsp.* local bufopts = { noremap = true, silent = true, bufnr = bufnr } vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, bufopts) vim.keymap.set('n', 'gd', vim.lsp.buf.definition, bufopts) vim.keymap.set('n', 'K', vim.lsp.buf.hover, bufopts) vim.keymap.set('n', 'gi', vim.lsp.buf.implementation, bufopts) vim.keymap.set('n', '', vim.lsp.buf.signature_help, bufopts) vim.keymap.set('n', 'wa', vim.lsp.buf.add_workspace_folder, bufopts) vim.keymap.set('n', 'wr', vim.lsp.buf.remove_workspace_folder, bufopts) vim.keymap.set('n', 'wl', function () print(vim.inspect(vim.lsp.buf.list_workspace_folders())) end, bufopts) vim.keymap.set('n', 'D', vim.lsp.buf.type_definition, bufopts) vim.keymap.set('n', 'rn', vim.lsp.buf.rename, bufopts) vim.keymap.set('n', 'ca', vim.lsp.buf.code_action, bufopts) vim.keymap.set('n', 'gr', vim.lsp.buf.references.bufopts) vim.keymap.set('n', 'f', vim.lsp.buf.formatting, bufopts) end -- Now the servers must be defined and set. In order to load them it's -- convenient to define them in an array and use a loop. local servers = { 'pyright', 'clangd' } for _, lsp in pairs(servers) do require('lspconfig')[lsp].setup { on_attach = on_attach, flags = { debounce_text_changes = 150 } } end --- COLOR SCHEME --- vim.cmd[[colorscheme catppuccin]]
-
strip whitespace only on changed lines
I have used this vim plugin before https://github.com/ntpeters/vim-better-whitespace and I'd love to have the same behavior on emacs.
-
Using Vim for Everything!
I just saw a nice post in /u/medwatt about using vim for VHDL/Verilog and thought I'd contribute a little! * Syntax and error highlight: https://github.com/autozimu/LanguageClient-neovim * Column align: https://github.com/junegunn/vim-easy-align * Remove annoying whitespaces: https://github.com/ntpeters/vim-better-whitespace * Partial (fuzzy) filename search: https://github.com/junegunn/fzf.vim * Outline all declarations inside a file: ⠀https://github.com/preservim/tagbar * Treat indentations as vim-objects (useful for languages that don't use { }): https://github.com/michaeljsmith/vim-indent-object There is also mouse support in vim for those who want it. Try typing :set mouse=a. Very useful for resizing windows. I also highly recommend you get good at using folds (https://vim.fandom.com/wiki/Folding). It makes it a LOT easier to navigate files. You can save your fold config per-file with :mkview and load it later with :loadview. If I come up with more hints - I'll mention them in the comments!
nerdtree
-
I use the default file browser in vim (netrw). I know there are plugins that a lot of people like. Should I switch?
I personally use nerdtree. Add nerdtree-git-plugin too, that's nice when looking at your project (for files, use vim-gitgutter).
-
How to configure vim like an IDE
nerdtree is another very popular option
-
Auto update Javascript imports when moving file/folder
Using my toy js refactoring plugin and NERDTree.
-
Is it possible to use VIM as an ide?
2) Syntax check https://github.com/vim-syntastic/syntastic 3) File navigation https://github.com/preservim/nerdtree 4) Autocomplete There are many autocomplete extensions. I haven't found one that I feel comfortable to recommend. Another way is to create a txt file with all the key words and lines in the languages you use, make an autocommand that adds the txt file to the buffer, and then use ctrl-n or ctrl-p to autocomplete. You can also use ctrl-x-ctrl-l to autocmplete entire lines. 5) Running code Add commands in your .vmrc to run the current file as a a whatever file. I use :J to run java files, :P to run python files, :C to run c files and so on. For example, this is my command to run a java file: command J execute "!java %:t"
-
Auto-completion problems for terraform
Plug 'https://github.com/preservim/nerdtree'
- :(
-
New User
My basic vim workflow is that I open vim, which opens NerdTree for me by default. I can find the file I want in NerdTree, or I can hit Ctrl+p to open a file with fuzzy searching.
-
How do you work with buffers?
What's also useful is to have a tree plugin (such as nvim-tree or nerdtree), so you can just open any file in the workspace (or outside it) if needed. That way, even if you delete a buffer, you can just come back to a file whose buffer you deleted.
-
how do I download nerd tree on neovim??
Worth noting Nerdtree’s repo is now at https://github.com/preservim/nerdtree and not at https://github.com/scrooloose/nerdtree
What are some alternatives?
neovim - Vim-fork focused on extensibility and usability
nvim-tree.lua - A file explorer tree for neovim written in lua
ws-butler - Unobtrusively trim extraneous white-space *ONLY* in lines edited.
LunarVim - 🌙 LunarVim is an IDE layer for Neovim. Completely free and community driven.
lessspace.vim - Better whitespace stripping for Vim
fzf.vim - fzf :heart: vim
Catppuccino.nvim - 🍨 Catppuccin theme for NeoVim [Moved to: https://github.com/catppuccin/nvim]
vim-vinegar - vinegar.vim: Combine with netrw to create a delicious salad dressing
vim-workspace - 📑 Automated Vim session management with file auto-save and persistent undo history
fern.vim - 🌿 General purpose asynchronous tree viewer written in Pure Vim script
Esopoly - :stuck_out_tongue_closed_eyes: Polyglot written in 7 esoteric programming languages
chadtree - File manager for Neovim. Better than NERDTree.