GithubHelp home page GithubHelp logo

cnsky1103 / oh-my-nvim Goto Github PK

View Code? Open in Web Editor NEW

This project forked from hardhackerlabs/oh-my-nvim

1.0 0.0 0.0 19.33 MB

A theme-driven, out-of-the-box modern configuration of neovim (HardHackerNvim)๐Ÿ’Ž

Home Page: https://hardhacker.com

License: Apache License 2.0

Lua 100.00%

oh-my-nvim's Introduction

HardHacker

oh-my-nvim

A theme-driven, out-of-the-box modern configuration of neovim ๐Ÿ’Ž

We developed a theme called HardHacker, which we thought was pretty and eye friendly, but we found that many neovim plugins have their own color scheme, so we made a neovim integration environment that matches the hardhacker theme.

๐Ÿ“ฆ Features

  • Session load and switch
  • File explorer
  • File find and search
  • Terminal
  • LSP
  • Pretty Code highlighting, Colors highlighting
  • Auto completion
  • Languages
  • Git integration
  • Git diff view
  • Pretty Tabline, Statusline, Winbar, Outline
  • Starting screen
  • Quick resize the window
  • Zen mode
  • Markdown Preview via your browser
  • ...

๐ŸŽ† Preview

๐Ÿ“Œ Requirements

  • Neovim 0.8+
  • Not required, but recommended

๐Ÿšง Install

MacOS/Linux

0๏ธโƒฃ Backup your current nvim

mv ~/.config/nvim       ~/.config/nvim.bak
mv ~/.local/share/nvim  ~/.local/share/nvim.bak

1๏ธโƒฃ Clone oh-my-nvim repo

git clone https://github.com/cnsky1103/oh-my-nvim.git ~/.config/nvim

2๏ธโƒฃ Start nvim in your terminal, then automatically install and setup all plugins

3๏ธโƒฃ Restart nvim and enjoy it ๐Ÿป

4๏ธโƒฃ Keep updated

โŒ›๏ธ Update

You should keep updated, it's great.

You can use git pull to update it. If you've edited something, you may need to merge the content manually, just like a normal git operation.

๐Ÿงฑ Languages

Install LSP Server

Use command :LspInstall to download and install a server, e.g. :LspInstall rust_analyzer.

Install TreeSitter Parser

Use command :TSInstall to download and install a parser, e.g. :TSInstall rust.

๐Ÿ  Custom

๐Ÿ” Configuration structure

~/.config/nvim/
โ”œโ”€โ”€ init.lua
โ”œโ”€โ”€ lazy-lock.json
โ””โ”€โ”€ lua/
    โ”œโ”€โ”€ plugins/
    โ”‚ย ย  โ””โ”€โ”€ ...
    โ”œโ”€โ”€ languages/
    โ”‚ย ย  โ””โ”€โ”€ ...
    โ”œโ”€โ”€ my_plugins/
    โ”‚ย ย  โ””โ”€โ”€ ...
    โ”œโ”€โ”€ basic.lua
    โ”œโ”€โ”€ custom.lua
    โ”œโ”€โ”€ custom_keys.lua
    โ”œโ”€โ”€ custom_opts.lua
    โ””โ”€โ”€ settings.lua
  • ~/.config/nvim/lua/my_plugins/

    You can put the plugins you want into the directory.

  • ~/.config/nvim/lua/custom.lua

    This file does not exist by default, you can create this file, then place some custom configuration logic, the custom.lua module will be loaded last.

โŒจ๏ธ Shortcut Keys

๐Ÿ‘‰ View the default shortcut settings

You can edit the default settings of the shortcut keys in this configuration file (~/.config/nvim/lua/custom_keys.lua).

๐Ÿ˜ Add the plugins you want

If you want to add your own plugins, you can create a plugin_name.lua file in the directory ~/.config/nvim/lua/my_plugins. Setup the plugins in this file.

The plugin configuration in the plugin_name.lua file refers to the following template (lazy.nvim syntax):

return {
    -- Your Plugin1
    {
        'hardhacker/plugin1',
        config = function() ... end
    },

    -- Your Plugin2
    {'hardhacker/plugin2'},
}

๐Ÿ’ฏ Recommended plugins

Some useful plugins are configured by default in the directory ~/.config/nvim/misc/recommended, but they are not loaded into neovim by default , so if you need them, you can copy them into the directory ~/.config/nvim/lua/my_plugins/.

Example:

cp ~/.config/nvim/misc/recommended/markdown.lua ~/.config/nvim/lua/my_plugins/

๐Ÿงฉ Plugins

๐Ÿ‘‰ View all plugins integrated

Use lazy.nvim to manage plugins.

oh-my-nvim's People

Contributors

skoowoo avatar cnsky1103 avatar sfwn avatar

Stargazers

 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.