Commit Graph

120 Commits

Author SHA1 Message Date
David Ibia
50368bc5c7 fix(remap.lua): change keymap for selecting all text from <leader>a to <C-a> to
avoid conflicts with other keybindings and improve usability.
2024-02-18 02:48:58 +01:00
David Ibia
b26965f4d2 feat(remap.lua): add keymap to show keymaps using Telescope plugin for better navigation and understanding of keybindings 2024-02-17 22:34:15 +01:00
David Ibia
7528b01bfa style(vim-tmux-navigator.lua): comment out unused key binding for TmuxNavigatePrevious command to improve code readability and maintainability 2024-02-16 23:03:01 +01:00
David Ibia
55edad9ed6 fix(toggleterm.lua): change key mapping for opening lazygit from "<leader>gl" to "<leader>gs" to avoid conflicts with other mappings
feat(toggleterm.lua): set toggleterm direction to "float" to make the terminal window float instead of splitting the current window
2024-02-16 22:59:57 +01:00
David Ibia
bfcd015867 chore(vim-fugitive): remove vim-fugitive.lua files
The vim-fugitive.lua files were removed as they are no longer needed in the project.
2024-02-16 14:14:26 +01:00
David Ibia
15246a74ab feat(toggleterm.lua): add support for toggleterm plugin to open a terminal and lazygit
This commit adds support for the toggleterm plugin in Neovim. It introduces a new Lua file `toggleterm.lua` in the `absolute/after` directory, which configures the toggleterm plugin. It sets up key mappings to open a terminal and toggle the lazygit terminal.

The `toggleterm.lua` file imports the `toggleterm` and `Terminal` modules from the toggleterm plugin. It then sets up the toggleterm plugin using the `toggle_term.setup()` function.

The `lazygit` terminal is defined using the `Terminal:new()` function. It specifies the command to run (`lazygit`), the directory to run the command in (`git_dir`), and the floating window options. It also defines an `on_open` function to start insert mode and set a key mapping to close the terminal, and an `on_close` function to start insert mode.

The `_LAZYGIT_TOGGLE()` function is defined to toggle the `lazygit` terminal.

Key mappings are set using the `vim.api.nvim_set_keymap()` function. The `<leader>gl` mapping is set to call the `_LAZYGIT_TOGGLE()` function, and the `<C-`` mapping is set to open a terminal using the `ToggleTerm` command.

Additionally, a new Lua file `toggleterm.lua` is added in the `absolute/plugins` directory, which exports the toggleterm plugin configuration. It requires the `absolute.after.toggleterm` module to configure the toggleterm plugin.
2024-02-16 14:13:23 +01:00
David Ibia
bbc43f98ee chore(lazy-lock.json): update commit hashes for fzf, nvim-lspconfig, nvim-tree.lua, nvim-treesitter, nvim-web-devicons, treesj, undotree, and vim-fugitive dependencies
The commit hashes for the following dependencies have been updated:
- fzf: updated from 90b8187 to a4f6c8f
- nvim-lspconfig: updated from 1bc8341 to 41f40dc
- nvim-tree.lua: updated from 8cbb1db to 4a87b8b
- nvim-treesitter: updated from cbf0dfd to b52b298
- nvim-web-devicons: updated from 313d9e7 to 7f30f2d
- treesj: updated from bc51763 to 60e2728
- undotree: updated from 7df3be7 to 9dbbf3b
- vim-fugitive: updated from fab00f7 to 8376227

These updates ensure that the latest versions of these dependencies are being used.
2024-02-11 21:30:39 +01:00
David Ibia
213a312bed feat(apple-pkl.lua): add plugin configuration for apple/pkl-neovim
This commit adds a new Lua file `apple-pkl.lua` to the `absolute/plugins` directory. The file contains the configuration for the plugin `apple/pkl-neovim`. The configuration includes the following:
- The plugin URL: `https://github.com/apple/pkl-neovim`
- The plugin should be loaded lazily
- The plugin should be triggered on the event "BufReadPre *.pkl"
- The plugin has a dependency on `nvim-treesitter/nvim-treesitter`
- The plugin build function installs the `pkl` language for Treesitter using the command `TSInstall! pkl`
2024-02-11 21:29:57 +01:00
David Ibia
a0d0658a16 feat(hologram.lua): add support for hologram plugin to display and handle image previews in Neovim
This commit adds two new files: `hologram.lua` and `hologram.lua`.

The `hologram.lua` file contains the configuration for the `hologram.nvim` plugin. It is responsible for setting up the plugin and linking it to the `absolute.after.hologram` file.

The `hologram.lua` file contains the implementation for handling image previews using the `hologram` and `image` modules. It sets up autocmds to trigger the `handle_image_preview` function when entering or opening a buffer with an image file. The function creates a new image object and displays it for 5 seconds before deleting it. There is also a `handle_image_preview_close` function that is triggered when leaving or closing a buffer with an image file, but it is currently commented out.

These changes were made to enhance the functionality of Neovim by allowing users to preview images within the editor using the `hologram.nvim` plugin.
2024-02-08 22:51:47 +01:00
David Ibia
bce7208644 refactor(dashboard.lua): remove unnecessary empty lines
refactor(dashboard.lua): update dashboard setup config to include the header option with the provided header array
2024-02-08 22:50:59 +01:00
David Ibia
0900427b05 fix(lsp-config.lua): fix typo in variable name 'bufnr' to 'opts.buffer' to enable completion triggered by <c-x><c-o>
refactor(lsp-config.lua): remove unnecessary 'enabled' property from 'pycodestyle' configuration
2024-02-08 22:50:45 +01:00
David Ibia
5d326673e0 feat(todo-comments.lua): add support for todo-comments plugin
This commit adds support for the todo-comments plugin. It includes the following changes:

- Added a new file `todo-comments.lua` in the `lua/absolute/after` directory.
- Imported the `todo-comments` module.
- Set up the `todo-comments` plugin with default options.
- Defined key mappings for jumping to previous and next todo comments.
- Defined key mappings for opening comments in Telescope and Trouble.
- Added a new file `todo-comments.lua` in the `lua/absolute/plugins` directory.
- Exported a table with the configuration for the `todo-comments` plugin, including its dependencies and a config function that requires the `absolute.after.todo-comments` module.
2024-02-08 22:50:11 +01:00
David Ibia
0dd38ef0ca chore(lazy-lock.json): update dependencies
- Update commit hashes for the following dependencies:
  - copilot.vim
  - dashboard-nvim
  - fzf
  - mason-lspconfig.nvim
  - none-ls.nvim
  - nvim-cmp
  - nvim-dap
  - nvim-dap-python
  - nvim-lspconfig
  - nvim-tree.lua
  - nvim-treesitter
  - nvim-web-devicons
  - rose-pine
  - tokyonight
  - treesj
  - undotree
  - vim-fugitive

- Add support for the following dependencies:
  - hologram.nvim
  - todo-comments.nvim

The commit hashes have been updated to the latest versions to ensure compatibility and take advantage of any bug fixes or new features. The new dependencies have been added to enhance the functionality of the project.
2024-02-08 22:49:10 +01:00
David Ibia
d4a82e867f chore(lazy-lock.json): update dependencies
- Update `copilot.vim` to commit `22fd9542e3c47552abab5e685fefd760e4f405b2`
  - Reason: Update to the latest commit for bug fixes and new features.
- Update `dressing.nvim` to commit `6f212262061a2120e42da0d1e87326e8a41c0478`
  - Reason: Update to the latest commit for bug fixes and new features.
- Update `friendly-snippets` to commit `b8fae73a479ae0a1c54f5c98fa687ae8a0addc53`
  - Reason: Update to the latest commit for bug fixes and new features.
- Update `fzf` to commit `dd886d22f0b95700ece24954ac00f6e2628226f1`
  - Reason: Update to the latest commit for bug fixes and new features.
- Update `nightfly` to commit `56fe47bd16272d9644fd9946a2596fa2c3905c35`
  - Reason: Update to the latest commit for bug fixes and new features.
- Update `none-ls.nvim` to commit `912f81829e9ab4ee3d54c3ea5a304c264f0003bc`
  - Reason: Update to the latest commit for bug fixes and new features.
- Update `nvim-lspconfig` to commit `021906284dcfb938bc236f8295af2650c60cb807`
  - Reason: Update to the latest commit for bug fixes and new features.
- Update `nvim-tree.lua` to commit `f39f7b6fcd3865ac2146de4cb4045286308f2935`
  - Reason: Update to the latest commit for bug fixes and new features.
- Update `nvim-treesitter` to commit `e9602f41192ba51842b4be4d02c718a64cd57acf`
  - Reason: Update to the latest commit for bug fixes and new features.
- Update `nvim-web-devicons` to commit `aaec87dbdaa776bfa0a13c8694bec9bcb7454719`
2024-01-30 16:11:02 +01:00
David Ibia
850814d169 feat(comment.lua): add support for commenting functionality in the Absolute plugin
feat(comment.lua): configure Comment.nvim plugin to load the comment setup from absolute.after.comment.lua file
2024-01-30 16:10:38 +01:00
David Ibia
41e667d58a chore(lsp-config.lua): update configuration for pylsp and emmet_ls
feat(lsp-config.lua): enable rope_autoimport, flake8, pyflakes, and pycodestyle plugins for pylsp
refactor(lsp-config.lua): comment out jedi_language_server configuration
2024-01-30 16:06:14 +01:00
David Ibia
246291ed8c feat(remap.lua): add keymap for selecting all text with "<leader>a" shortcut
The change adds a new keymap in the remap.lua file to select all text in the editor when the "<leader>a" shortcut is pressed. This allows users to quickly select the entire document without manually scrolling or using other selection methods.
2024-01-30 16:05:54 +01:00
David Ibia
4bc3130791 chore(none-ls.lua): add black as a formatting source in null-ls setup to support formatting for Python files 2024-01-30 16:05:39 +01:00
David Ibia
8712e379c4 Updated dependencies 2024-01-25 14:56:06 +01:00
David Ibia
be4db2a984 fix(remap.lua): update keymap command to toggle NvimTree instead of Maximizer
The keymap command for the leader key followed by backtick (`) has been updated to toggle the NvimTree instead of the Maximizer. This change improves the functionality of the keymap and aligns it with the desired behavior.
2024-01-25 14:55:45 +01:00
David Ibia
5cceac51e0 chore(remap.lua): update keymap description from "Toggle File Explorer" to "Show Cheatsheet" to accurately reflect the functionality
chore(remap.lua): update keymap command from "<cmd>NvimTreeToggle<CR>" to "<cmd>Cheatsheet<CR>" to match the updated functionality
chore(remap.lua): update description for moving selected line/block of text in visual mode up
2024-01-24 15:54:44 +01:00
David Ibia
707bc2a204 chore(nvim-tree.lua): reformat and organize the configuration options for nvim-tree plugin for better readability and maintainability 2024-01-24 15:54:34 +01:00
David Ibia
7d4ee66a33 feat(supertab.lua): add configuration for default completion type in SuperTab plugin
The configuration `vim.g.SuperTabContextDefaultCompletionType` is added to set the default completion type in the SuperTab plugin to `<c-n>`. This allows users to use the `<c-n>` key combination to trigger completion in the plugin.
2024-01-21 15:03:14 +01:00
David Ibia
8abbd568e5 chore(lsp-config.lua): update keybinding for signature help to use <leader>gh for better consistency
feat(lsp-config.lua): add support for Vue filetypes in emmet_ls configuration to enable emmet completion in Vue files
2024-01-21 15:03:01 +01:00
David Ibia
ae7209b8d0 chore(none-ls.lua): update formatting sources in null-ls setup
The formatting sources in the null-ls setup have been updated. The `null_ls.builtins.formatting.black` and `null_ls.builtins.formatting.rustfmt` sources have been removed, and the `null_ls.builtins.formatting.autopep8` source has been added. This change was made to improve the formatting capabilities of the null-ls plugin.
2024-01-16 11:20:10 +01:00
David Ibia
197dbab5d2 chore(lazy-lock.json): update commit hashes for none-ls.nvim, nvim-treesitter, nvim-web-devicons, and rose-pine
The commit hashes for the following dependencies have been updated:
- none-ls.nvim: Updated from 7e146f3a188853843bb4ca1bff24c912bb9b7177 to cf81e765460f722a381e5f3f5e3cbdce88398517
- nvim-treesitter: Updated from fcf843bf14adaeee53aad1b28fabba1d3b62fc8d to 59d4c14a1a4262cf637ff2420032593afa062749
- nvim-web-devicons: Updated from 4f5e6414438c920743fc1bb92bee1047620d6321 to 140edfcf25093e8b321d13e154cbce89ee868ca0
- rose-pine: Updated from c01a4a61020ddcfd3448fbb9cf11309f336bfb7b to b00800948e35df1df02c80cdea07988c4325d3ac

These updates ensure that the project is using the latest versions of these dependencies.
2024-01-16 01:35:12 +01:00
David Ibia
2f81b9e3f7 chore(lsp-config.lua): refactor code formatting and improve readability
feat(lsp-config.lua): add support for tailwindcss lsp and attach tailwind_colors only when using tailwindcss lsp
feat(lsp-config.lua): add key mappings for various LSP functionalities like go to declaration, go to definitions, show documentation, show LSP implementation, get help, show LSP type definitions, smart rename, see available code actions, show LSP references, format file, and restart LSP
feat(lsp-config.lua): configure language servers for html, typescript, css, tailwindcss, svelte, emmet, python, jedi, docker, json, vue, rust, lua, css, htmx, docker file, docker compose, and eslint
2024-01-16 01:34:57 +01:00
David Ibia
8c04ed3ff7 feat(tailwindcss-colors.lua): add support for tailwindcss-colors plugin
The `tailwindcss-colors.lua` file was added to the `absolute/after` directory. This file imports the `tailwindcss-colors` module and sets it up.

The `tailwindcss-colors.lua` file was also added to the `absolute/plugins` directory. This file returns a table with the plugin configuration, including a `config` function that requires the `absolute.after.tailwindcss-colors` module.

These changes were made to add support for the `tailwindcss-colors` plugin in the Absolute Neovim configuration.
2024-01-15 02:12:59 +01:00
David Ibia
e901890e97 feat(tailwind-sorter.lua): add tailwind-sorter plugin and configuration
The tailwind-sorter.lua file was added to the absolute/after directory. This file sets up the tailwind-sorter plugin with the following configuration:
- on_save_enabled is set to true, enabling the plugin to run on file save.
- on_save_pattern is set to a list of file patterns for which the plugin should run on save. The patterns include "*.html", "*.js", "*.jsx", "*.tsx", "*.twig", "*.hbs", "*.php", "*.heex", "*.astro", and "*.vue".

Additionally, the tailwind-sorter.lua file was added to the absolute/plugins directory. This file returns a table with the following properties:
- The first element is the plugin name "laytan/tailwind-sorter.nvim".
- The dependencies property specifies the required plugins "nvim-treesitter/nvim-treesitter" and "nvim-lua/plenary.nvim".
- The build property specifies the build command to be executed in the "formatter" directory. This command installs the necessary npm packages and builds the plugin.
- The config property is a function that requires the "absolute.after.tailwind-sorter" module, which contains the plugin configuration.

These changes were made to add the tailwind-sorter plugin to the project and configure it for use.
2024-01-15 02:12:46 +01:00
David Ibia
0499526c85 chore(lsp-config.lua): refactor and organize language server configurations for better readability and maintainability 2024-01-15 02:12:05 +01:00
David Ibia
57a1accde5 chore(lazy-lock.json): update dependencies for tailwind-sorter.nvim and tailwindcss-colors.nvim to latest commits on main branch 2024-01-15 02:11:51 +01:00
David Ibia
823b4f8900 chore(README.md): remove unnecessary section and update component description
feat(README.md): add TODO to list out plugins for better documentation
2024-01-15 02:11:38 +01:00
David Ibia
71a08f4097 chore(lazy-lock.json): update keyseer.nvim and mason-lspconfig.nvim dependencies
- Update keyseer.nvim to branch "main" and commit "6cb478f9b2be4af4680ceb0308a9b49cd6b6ea73"
- Update mason-lspconfig.nvim to branch "main" and commit "3ba1b92b771f33256b4969d696b82c8ae7075364"

These updates are necessary to ensure compatibility and take advantage of the latest features and bug fixes in the dependencies.
2024-01-15 01:49:17 +01:00
David Ibia
90154b6967 feat(keyseer): add keyseer plugin and configuration
Add keyseer plugin to the project by including the `jokajak/keyseer.nvim` package in the `lua/absolute/plugins/keyseer.lua` file. The plugin is configured to use the latest version available. The configuration file `lua/absolute/after/keyseer.lua` is also added, which sets up keyseer.
2024-01-15 01:49:02 +01:00
David Ibia
2342ae3f1b chore(remap.lua): remove unnecessary blank lines for better code readability
feat(remap.lua): add descriptions to keymap settings for better understanding and maintainability
fix(remap.lua): fix keymap setting for toggling TMUX Pane to use the correct leader key
2024-01-14 22:09:29 +01:00
David Ibia
0a16978543 refactor(lsp-config.lua): clean up code formatting and improve readability
feat(lsp-config.lua): add key mappings for LSP commands to improve productivity
feat(lsp-config.lua): configure additional language servers for HTML, Emmet, Pylsp, Jedi, Docker, JSON, Vue, and Rust
refactor(lsp-config.lua): remove unnecessary comments and blank lines
2024-01-14 22:09:19 +01:00
David Ibia
dfbe7acbc4 chore(lazy-lock.json): update dressing.nvim and fzf dependencies
- Update dressing.nvim to commit b2c644abfaae7523bb393b0c452adf3ebdaf53dc
- Update fzf to commit 1a9ea6f738cfafab83a5e0e828e60f0bf68bffee

The dependencies dressing.nvim and fzf were updated to their latest commits to ensure compatibility and take advantage of any bug fixes or new features.
2024-01-14 22:09:09 +01:00
David Ibia
4f0f762caa feat(treesj.lua): add treesj.lua file to enable toggling of Treesitter Join functionality
The treesj.lua file is added to the project to enable the toggling of Treesitter Join functionality. The `tsj.setup` function is called to configure the plugin with the option `use_default_keymaps` set to `false`. This ensures that the default keymaps provided by the plugin are not used.

A keymap is set using `vim.keymap.set` to bind the `<leader>m` key combination in normal mode to the command `TSJToggle`. The `opts.desc` option is set to provide a description for the keymap.

This change allows users to toggle the Treesitter Join functionality using the `<leader>m` key combination in normal mode.
2024-01-14 04:01:44 +01:00
David Ibia
adc0e7d95c feat(trouble.lua): add configuration for telescope plugin to integrate with trouble plugin
The `trouble.lua` file is added to configure the integration between the `telescope` plugin and the `trouble` plugin. This configuration sets up key mappings for opening trouble windows and quickfix lists. It also adds keybindings for toggling document diagnostics, workspace diagnostics, and the quickfix list using the leader key. This configuration enhances the functionality of the `telescope` plugin by integrating it with the `trouble` plugin.
2024-01-14 04:01:28 +01:00
David Ibia
4273043666 feat(fzf.lua): add fzf plugin configuration
The fzf.lua file is added to the absolute/plugins directory. It contains the configuration for the fzf plugin. The configuration includes the plugin name "junegunn/fzf" and the build command "./install --all". This configuration enables the fzf plugin to be used in the project.
2024-01-14 04:01:10 +01:00
David Ibia
de2237fb2c feat(git-blame.lua): add git-blame plugin configuration
The git-blame.lua file is added with the following configuration:
- The plugin "f-person/git-blame.nvim" is included.
- The event "VeryLazy" is associated with the plugin.
2024-01-14 04:00:58 +01:00
David Ibia
286a2f7ebe feat(nvim-surround.lua): add configuration for nvim-surround plugin
The `nvim-surround.lua` file was added to the `lua/absolute/after` directory. This file contains the configuration for the `nvim-surround` plugin. The `surround.setup({})` function is called to initialize the plugin with an empty configuration object. This allows the plugin to be used with default settings.
2024-01-14 04:00:45 +01:00
David Ibia
4591540449 chore(nvim-bqf.lua): add new file nvim-bqf.lua to the absolute/after directory 2024-01-14 04:00:33 +01:00
David Ibia
7834005138 feat(none-ls.lua): add none-ls plugin configuration
The none-ls plugin is added to the list of plugins in the absolute configuration. The plugin is configured to load the "absolute.after.none-ls" module. This configuration allows for the integration of the none-ls plugin into the absolute plugin system.
2024-01-14 04:00:21 +01:00
David Ibia
7b75e5058b feat(nvim-bqf.lua): add nvim-bqf plugin configuration
Add configuration for the nvim-bqf plugin. This plugin provides enhanced quickfix and location list functionality for Neovim. The configuration includes specifying the plugin as a dependency and configuring it to load after other plugins. Additionally, it requires the nvim-treesitter and fzf plugins as dependencies. Finally, it loads a custom configuration file for the nvim-bqf plugin.
2024-01-14 04:00:07 +01:00
David Ibia
cba7ae9980 feat(none-ls.lua): add configuration for null-ls plugin to enable formatting with stylua, prettierd, shfmt, black, and rustfmt
The changes were made to add configuration for the null-ls plugin in the none-ls.lua file. This configuration enables formatting with the following tools: stylua, prettierd, shfmt, black, and rustfmt. This allows for consistent and automated formatting of code in the Lua project.
2024-01-14 03:59:54 +01:00
David Ibia
7aa69de8a8 feat(nvim-surround.lua): add nvim-surround plugin
Add the nvim-surround plugin to the list of plugins used in the configuration. This plugin provides convenient mappings and commands for manipulating surrounding characters. The plugin is sourced from the "kylechui/nvim-surround" repository, using the latest version available. The plugin is configured to be loaded during the "VeryLazy" event, and the necessary configuration file is required to be loaded after the plugin is initialized.
2024-01-14 03:59:36 +01:00
David Ibia
2a47d47b8b feat(treesj.lua): add treesj plugin configuration
Add a new file `treesj.lua` to the `absolute/plugins` directory. The file contains the configuration for the `treesj` plugin. The plugin is sourced from the repository `Wansmer/treesj` and has a dependency on `nvim-treesitter/nvim-treesitter`. The configuration includes loading the `absolute.after.treesj` module.
2024-01-14 03:41:44 +01:00
David Ibia
80f7dcf1e9 feat(trouble.lua): add trouble.nvim plugin with configuration to the project
The trouble.nvim plugin is added to the project. It is a plugin that provides a better way to handle and navigate through the list of diagnostics and other code issues. The plugin is added as a dependency and requires the nvim-tree/nvim-web-devicons plugin to function properly. The configuration for the trouble.nvim plugin is added in the absolute.after.trouble.lua file.
2024-01-14 03:15:56 +01:00
David Ibia
75a58a2d0b feat(cheatsheet.lua): add cheatsheet plugin and its dependencies to the configuration
Add the cheatsheet plugin and its dependencies to the configuration file. This allows for the integration of the cheatsheet functionality into the application.
2024-01-14 03:13:00 +01:00