• Stars
    star
    117
  • Rank 295,668 (Top 6 %)
  • Language
    Lua
  • Created almost 3 years ago
  • Updated about 1 month ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

My personal Neovim configuration.

Neovim Configuration

Editor Terminal Debugging

About

This repository contains my configurations, including key mappings, plugins, and other settings for Neovim. I'm primarily working day-to-day in VueJS, React, Typescript, Golang, Lua, and Clojure.

Neovim Version

Important: I'm on the latest Neovim release (0.9) and many of these plugins will break if on an older version.

Features

Dependencies

There are a few dependencies for this editor configuration that cannot be installed within Neovim. I've detailed them below, installation instructions assume an Ubuntu OS, although installation on other operating systems should be straightforward. Most of them are required for LSPs or Debuggers to work.

  1. Git version 2.36 or greater
sudo add-apt-repository ppa:git-core/ppa -y
sudo apt-get update -y
sudo apt install git -y
  1. npm and node, which are used to install some of the LSPs and Debuggers. I recommend installing node via NVM (node version manager). You may need to resource your .bashrc/.zshrc after installing NVM for the command to be available in your path.
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash
nvm install 20.5.0
  1. The Treesitter CLI, which is required for syntax highlighting
npm install -g tree-sitter-cli
  1. Golang (required for Golang Debugger + LSP). On Ubuntu:
sudo add-apt-repository ppa:longsleep/golang-backports -y
sudo apt update -y
sudo apt install golang-go -y
  1. Zip/Unzip commands (required to unpack Typescript Debugger)
sudo apt install zip -y
  1. The compiler gcc
sudo apt update -y
sudo apt install build-essential -y
  1. ripgrep for fuzzy finding
curl -LO https://github.com/BurntSushi/ripgrep/releases/download/13.0.0/ripgrep_13.0.0_amd64.deb
sudo dpkg -i ripgrep_13.0.0_amd64.deb
  1. python3 and pynvim for wilder
sudo add-apt-repository ppa:deadsnakes/ppa -y
sudo apt update -y
sudo apt install python3.11 -y
sudo apt install python3-pip -y
pip3 install --upgrade pynvim
  1. bun for faster language servers (tailwindcss and tsserver)
curl -fsSL https://bun.sh/install | bash
  1. gnu-sed (for the spectre plugin)

Quickstart

  1. Install the required dependencies listed above.
  2. Clone this repository to your Neovim configuration path: git clone https://github.com/harrisoncramer/nvim.git ~/.config/nvim
  3. Open Neovim. The plugin installation should start automatically; so should the LSP and Debugger installations.
  4. Run :UpdateRemotePlugins to update Wilder

Please be patient when you first open up Neovim, it is installing many depndencies the first time it starts! I'd recommend going and getting a cup of coffee, the process can take ~5 minutes to install all of the debuggers, LSPs, and treesitter language parsers.

You can see the status of the plugin installation with the :Lazy command. This will open automatically. You can see the status of the LSP and Debugger installations with the :Mason command.

More Repositories

1

gitlab.nvim

Create, review, and manage Gitlab reources without leaving Neovim
Lua
187
star
2

fullstack-template

This is a template repository to get up and running quickly with Vite, React, Jest, Express Docker, and Github Actions for CI/CD.
JavaScript
16
star
3

jump-tag

Neovim plugin for jumping between HTML tags.
Lua
13
star
4

go-shell-run

Simple Golang HTTP server to allow for the remote execution of shell commands.
Go
4
star
5

harrisoncramer.me

My personal blog and coding website.
MDX
3
star
6

cloture

Monorepo for Cloture, the web scraper that aggregates congressional information from across Capitol Hill.
TypeScript
2
star
7

DoD-Contract-Bot

Tweets out contracts from @DeptDefense at 5:00 p.m. EST every day.
JavaScript
2
star
8

dc_filing_bots

This is a repository of useful web crawlers for journalists. They ping DOJ's Foreign Agents Registration Act for new lobbyists, and the Senate stock and other asset disclosures. There's also a bot that's helping me get a scoop from the ACLU case on border wall funding.
JavaScript
2
star
9

node_login_with_trackers

JavaScript
1
star
10

Digital-Ocean-Scripts

These are a series of configuration scripts to setup a NodeJS production environment on a Digital Ocean droplet.
Shell
1
star
11

streetsleazy

It's hard to be a saint in the city
TypeScript
1
star
12

gql3.0_processors

JavaScript
1
star
13

arduino-security

An alarm using Arudino Uno and TinyGo!
Go
1
star
14

video-streaming-microservices

Distributed video streaming application built on Node.js, RabbitMQ, and Azure for file storage.
HCL
1
star
15

terraform-and-gh-actions

Simple repository showing how you can combine Terraform Cloud with Github Actions to automate your IAC.
HCL
1
star
16

typeorm-typegrapqhl-api

Dockerized API using typeorm, type-graphql, and Postgres.
TypeScript
1
star
17

serverless-typescript

Template project for AWS/Serverless development with Typescript.
TypeScript
1
star
18

serverless-scraper-api

Web scraping endpoints that use puppeteer and axios, which accept arguments via a POST request.
TypeScript
1
star
19

Tor_Puppeteer_Template

JavaScript
1
star
20

ts_frontend_template

TypeScript
1
star
21

Sked_Checker_Text_Bot

JavaScript
1
star
22

quiet.sh

An application that will help Github users check if they have accidentally committed sensitive keys to their repositories.
JavaScript
1
star
23

clipNotes

A Google Chrome Extension that lets you write notes about the sites that you visit, which persist across your visits. Designed for developers to take notes on documentation.
JavaScript
1
star
24

ts-react-dockerized

Template for building and deploying a React project (with Typescript) using Docker and Nginx as a reverse proxy.
TypeScript
1
star