{"id":13896300,"url":"https://github.com/johnsci911/nvim-ide","last_synced_at":"2025-07-17T12:31:41.287Z","repository":{"id":39569868,"uuid":"310806633","full_name":"johnsci911/nvim-ide","owner":"johnsci911","description":"VIM on steroids","archived":false,"fork":false,"pushed_at":"2024-11-06T10:27:54.000Z","size":1908,"stargazers_count":37,"open_issues_count":1,"forks_count":4,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-11-06T11:32:07.927Z","etag":null,"topics":["lua","neovim","nvim","vim","vimrc"],"latest_commit_sha":null,"homepage":"","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/johnsci911.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-11-07T09:09:30.000Z","updated_at":"2024-11-06T10:28:00.000Z","dependencies_parsed_at":"2024-04-11T15:41:39.610Z","dependency_job_id":"562952cd-cd77-46b3-8ca6-72a8ea637c21","html_url":"https://github.com/johnsci911/nvim-ide","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johnsci911%2Fnvim-ide","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johnsci911%2Fnvim-ide/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johnsci911%2Fnvim-ide/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johnsci911%2Fnvim-ide/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/johnsci911","download_url":"https://codeload.github.com/johnsci911/nvim-ide/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226260601,"owners_count":17596494,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["lua","neovim","nvim","vim","vimrc"],"created_at":"2024-08-06T18:02:49.193Z","updated_at":"2025-07-17T12:31:41.275Z","avatar_url":"https://github.com/johnsci911.png","language":"Lua","readme":"\u003ch2 align=\"center\"\u003eNeovim PDE - Personalized Development Environment\u003c/h2\u003e\n\n![Neovim](https://github.com/johnsci911/nvim-ide/assets/6580895/c663b535-d5de-4f37-afdf-231c9bf4a698)\n\n\u003ch5 align=\"center\"\u003eA neovim configuration base from the vim community\u003c/h5\u003e\n\n#### Awesome Plugins that are used\n- **lsp-trouble** - to jump between lsp warnings\n- **nvim-treesitter** - for accurate syntax highlighting\n- **nvim-telescope** - to preview files while searching\n- **ctrlsf.vim** and **vim-visual-multi** - to find and replace text with multi-cursor support\n- **vim-easy-align** - (gaip) Easy align texts\n- **Neoclip** - Clipboard\n- **Neorg** - ORG Mode for organization (Similar to Emacs)\n- **CodeCompanion** AI chat superpowers (I added a model switcher feature: \u003cleader\u003eais)\n- **AI** - Supermaven (online), cmp minuet (offline) - Code suggestion while you type.\n\n#### What's new\n- Fast AI tools - (CodeCompanion, Supermaven, Minuet) 🔥\n- Re-add Galaxyline status line - (Will replace because of compatibility issues)\n- Clipboards!\n- Laravel blade syntax highlighting (Still Beta)\n- Neogit - for GIT superpowers\n- Toggleterm - Replaced vim-floaterm since I want the ability to rename and select terminals\n\n#### Packages Required\n- Neovim 0.11.*\n- MCP Hub (Required for CodeCompanion)\n- ripgrep\n- fzf, fd - Required by Telescope\n- Neorg Note taking plugin (GCC 14+)\n- Silicon - Required for \u003cb\u003envim-silicon\u003c/b\u003e a code snapshot plugin\n\n##### Compatible OS\n- Mac and Linux\n\n#### LSP Auto-install\n* C++ (clang)\n* bash\n* css\n* html\n* json\n* lua\n* intelephense - (Phpactor if not using paid intelephense)\n* python\n* vim\n* yaml\n* emmet ls\n* c-sharp\n* TailwindCSS\n* GraphQL\n* svelte\n* typescript\n\n#### Custom Syntax Highlighting\n* Blade\n* Vue - custom typescript config since it's not supported as of now\n\n#### Linters\n- md - ~/.vale.ini\n    ```\n    MinAlertLevel = suggestion\n\n    [*.md]\n    IgnoreRules = Vale.spelling\n    ```\n\n#### I hate arrow keys :)\n* If using Karabiner-Elements\n    * Go to `~/.config/karabiner/` and edit `karabiner.json`\n    ```\n    {\n        \"global\": { \"show_in_menu_bar\": false },\n        \"machine_specific\": { \"krbn-empty-machine-identifier\": { \"enable_multitouch_extension\": true } },\n        \"profiles\": [\n            {\n                \"complex_modifications\": {\n                    \"rules\": [\n                        {\n                            \"description\": \"Play/Pause using Global + Space\",\n                            \"manipulators\": [\n                                {\n                                    \"from\": {\n                                        \"key_code\": \"spacebar\",\n                                        \"modifiers\": { \"mandatory\": [\"fn\"] }\n                                    },\n                                    \"to\": [{ \"key_code\": \"play_or_pause\" }],\n                                    \"type\": \"basic\"\n                                }\n                            ]\n                        },\n                        {\n                            \"description\": \"Use Tab + hjkl for navigation\",\n                            \"manipulators\": [\n                                {\n                                    \"from\": {\n                                        \"key_code\": \"tab\",\n                                        \"modifiers\": { \"optional\": [\"any\"] }\n                                    },\n                                    \"to\": [\n                                        {\n                                            \"set_variable\": {\n                                                \"name\": \"tab_pressed\",\n                                                \"value\": 1\n                                            }\n                                        }\n                                    ],\n                                    \"to_after_key_up\": [\n                                        {\n                                            \"set_variable\": {\n                                                \"name\": \"tab_pressed\",\n                                                \"value\": 0\n                                            }\n                                        }\n                                    ],\n                                    \"to_if_alone\": [{ \"key_code\": \"tab\" }],\n                                    \"type\": \"basic\"\n                                },\n                                {\n                                    \"conditions\": [\n                                        {\n                                            \"name\": \"tab_pressed\",\n                                            \"type\": \"variable_if\",\n                                            \"value\": 1\n                                        }\n                                    ],\n                                    \"from\": {\n                                        \"key_code\": \"j\",\n                                        \"modifiers\": { \"optional\": [\"any\"] }\n                                    },\n                                    \"to\": [{ \"key_code\": \"down_arrow\" }],\n                                    \"type\": \"basic\"\n                                },\n                                {\n                                    \"conditions\": [\n                                        {\n                                            \"name\": \"tab_pressed\",\n                                            \"type\": \"variable_if\",\n                                            \"value\": 1\n                                        }\n                                    ],\n                                    \"from\": {\n                                        \"key_code\": \"k\",\n                                        \"modifiers\": { \"optional\": [\"any\"] }\n                                    },\n                                    \"to\": [{ \"key_code\": \"up_arrow\" }],\n                                    \"type\": \"basic\"\n                                },\n                                {\n                                    \"conditions\": [\n                                        {\n                                            \"name\": \"tab_pressed\",\n                                            \"type\": \"variable_if\",\n                                            \"value\": 1\n                                        }\n                                    ],\n                                    \"from\": {\n                                        \"key_code\": \"h\",\n                                        \"modifiers\": { \"optional\": [\"any\"] }\n                                    },\n                                    \"to\": [{ \"key_code\": \"left_arrow\" }],\n                                    \"type\": \"basic\"\n                                },\n                                {\n                                    \"conditions\": [\n                                        {\n                                            \"name\": \"tab_pressed\",\n                                            \"type\": \"variable_if\",\n                                            \"value\": 1\n                                        }\n                                    ],\n                                    \"from\": {\n                                        \"key_code\": \"l\",\n                                        \"modifiers\": { \"optional\": [\"any\"] }\n                                    },\n                                    \"to\": [{ \"key_code\": \"right_arrow\" }],\n                                    \"type\": \"basic\"\n                                }\n                            ]\n                        }\n                    ]\n                },\n                \"devices\": [\n                    {\n                        \"identifiers\": { \"is_keyboard\": true },\n                        \"simple_modifications\": [\n                            {\n                                \"from\": { \"apple_vendor_top_case_key_code\": \"keyboard_fn\" },\n                                \"to\": [{ \"key_code\": \"left_control\" }]\n                            },\n                            {\n                                \"from\": { \"key_code\": \"left_command\" },\n                                \"to\": [{ \"key_code\": \"left_option\" }]\n                            },\n                            {\n                                \"from\": { \"key_code\": \"left_control\" },\n                                \"to\": [{ \"apple_vendor_top_case_key_code\": \"keyboard_fn\" }]\n                            },\n                            {\n                                \"from\": { \"key_code\": \"left_option\" },\n                                \"to\": [{ \"key_code\": \"left_command\" }]\n                            },\n                            {\n                                \"from\": { \"key_code\": \"right_option\" },\n                                \"to\": [{ \"apple_vendor_top_case_key_code\": \"keyboard_fn\" }]\n                            }\n                        ]\n                    }\n                ],\n                \"fn_function_keys\": [\n                    {\n                        \"from\": { \"key_code\": \"f5\" },\n                        \"to\": [{ \"apple_vendor_top_case_key_code\": \"illumination_down\" }]\n                    },\n                    {\n                        \"from\": { \"key_code\": \"f6\" },\n                        \"to\": [{ \"apple_vendor_top_case_key_code\": \"illumination_up\" }]\n                    }\n                ],\n                \"name\": \"Personal\",\n                \"selected\": true,\n                \"virtual_hid_keyboard\": { \"keyboard_type_v2\": \"ansi\" }\n            }\n        ]\n    }\n    ```\n\n#### TODO\n* Formatters for frameworks (disabled by default)\n* Git-graph (Disabled for now)\n* [Yazi](https://github.com/sxyazi/yazi) as file manager. [Installation here!](https://yazi-rs.github.io/docs/installation/#homebrew)\n* Remove bloat\n","funding_links":[],"categories":["Lua"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjohnsci911%2Fnvim-ide","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjohnsci911%2Fnvim-ide","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjohnsci911%2Fnvim-ide/lists"}