GithubHelp home page GithubHelp logo

jeremytechdev / nvcode Goto Github PK

View Code? Open in Web Editor NEW

This project forked from lunarvim/lunarvim

0.0 0.0 0.0 8.67 MB

Truly the Ultimate Neovim Config NVCode

Home Page: https://www.chrisatmachine.com/neovim

License: GNU General Public License v3.0

Lua 70.98% Vim Script 21.60% Shell 7.42%

nvcode's Introduction

NVCode Logo

chat on Discord GitHub license Open Source? Yes! PRs Welcome Patreon donate button follow on Twitter

NVCode Demo

This project aims to help one transition away from VSCode, and into a superior text editing experience. (Just making this clear)

This is also a community project, if you would like to see support for a feature or language consider making a PR.

Install In One Command!

Make sure you have the newest version of Neovim

bash <(curl -s https://raw.githubusercontent.com/ChristianChiarulli/nvim/master/utils/installer/install.sh)

After installation run nvim and then :PackerInstall

Get the latest version of Neovim

cd ~
sudo rm -r neovim
git clone https://github.com/neovim/neovim
cd neovim
sudo make CMAKE_BUILD_TYPE=Release install
cd ~
sudo rm -r neovim

VSCode support

I recommend you support Free/Libre versions if you plan to use VSCode:

After installing the Neovim extension in VSCode

I recommend using this alongside the VSCode which-key extension

You will also need settings.json and keybindings.json which can be found in utils/vscode_config

Point the nvim path to your nvim binary

Point your init.vim path to:

$HOME/.config/nvim/vimscript/nv-vscode/init.vim

Clipboard Support

  • On Mac pbcopy should be built-in

  • Ubuntu

    sudo apt install xsel
  • Arch

    sudo pacman -S xsel
  • WSL2

    Make sure ~/bin is in your path in this case.

    curl -sLo/tmp/win32yank.zip https://github.com/equalsraf/win32yank/releases/download/v0.0.4/win32yank-x64.zip
    unzip -p /tmp/win32yank.zip win32yank.exe > /tmp/win32yank.exe
    chmod +x /tmp/win32yank.exe
    mv /tmp/win32yank.exe ~/bin

LSP

To install a supported language server:

  :LspInstall <your_language_server>

Most common languages should be supported out of the box, if yours is not I would welcome a PR

For a more in depth LSP support: link

Useful Programs

ranger
ueberzug
fd
ripgrep
jq
fzf
lazygit
lazydocker
ncdu
pynvim
neovim-remote

EFM server

In order for linters and formatters to work you will need to install efm-langserver

:LspInstall efm

Formatters and Linters

Python

pip3 install --user flake8
pip3 install --user yapf

Lua

luarocks install --server=https://luarocks.org/dev luaformatter

Yaml, Json, Javascript, HTML, CSS

npm install -g prettier

Markdown

pandoc

Vim Gists

To use vim-gists you will need to configure the following:

git config --global github.user <username>

Snippets

If you are looking for snippets checkout this github topic: Snippet Topic

De-bugging

To set up your particular debugger, look here: link

TODO

HIGH PRIORITY

Move user config into config.lua ts-comment string for react

From here I will update for bug fixes and implement low priority features when I have time

LOW PRIORITY

  • list all binaries needed for formatters and linters
  • add badges to readme
  • Implement what I can from this java config: link
    • better ui for code actions - formatting
    • setup junit tests for java
  • look into emmet-ls
  • toggle virtual text diagnostics
  • configure neogit
  • vim ult test
  • what is fzy
  • https://github.com/pwntester/octo.nvim
  • configure surround
  • maybe incorporate ultisnips
  • switch back to nvim-autopairs when/if it doesn't break snippets
  • Implement this for typescript https://github.com/jose-elias-alvarez/nvim-lsp-ts-utils
  • look into tabnine

PLUGIN BUGS

REACT COMMENTING IS A NIGHTMARE (the filetype is just not recognized idk why)

nvcode's People

Contributors

ghmhd avatar jameswalmsley avatar chaesngmin avatar biserstoilov avatar vladdoster avatar prettyirrelevant avatar bapjiws avatar aniedzwiedz avatar athuld avatar acksld avatar benatouba avatar danielfalbo avatar dialguiba avatar henrypalacios avatar ivano9 avatar sobelek avatar jasonmb626 avatar mandaputtra avatar sansyrox avatar teepobharu avatar acemouty avatar fanmih avatar haininhhoang94 avatar michaelslec avatar seocamo avatar tiagovla avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.