Commit Graph

93 Commits

Author SHA1 Message Date
David Ibia
db4b8ad12c refactor(gitignore.lua): replace GetProjectRoot function with require statement for
absolute.utils.get-git-root module to improve code organization and readability
feat(gitignore.lua): update keymap description to include GitIgnore prefix for
clarity and consistency with functionality provided by the keymap
2024-03-03 12:02:53 +01:00
David Ibia
6afb379fad feat(detect-os.lua): add script to detect the operating system and return
the corresponding value based on the environment variables and system
commands available
2024-03-03 12:02:46 +01:00
David Ibia
2bace8525a feat(get-git-root.lua): add Lua function to get the root directory of a Git project using 'git rev-parse --show-toplevel' command 2024-03-03 12:02:38 +01:00
David Ibia
c8b30a453e refactor(nvim-silicon.lua): change variable names for better readability
feat(nvim-silicon.lua): add functionality to create a screenshots directory and
open it based on the operating system
feat(nvim-silicon.lua): add keymaps for creating a screenshot and opening the
screenshots directory
feat(nvim-silicon.lua): update silicon setup with font and output settings
2024-03-03 12:02:27 +01:00
David Ibia
3ff0245770 chore(gitignore): add .DS_Store file to gitignore to prevent it from being tracked 2024-02-29 21:42:58 +01:00
David Ibia
e8e96fa782 fix(lazy-lock.json): update commit hashes for copilot.vim, fzf, gitignore.nvim,
incline.nvim, mini.nvim, none-ls.nvim, nvim-lspconfig, nvim-surround,
nvim-treesitter
feat(lazy-lock.json): add new plugins nvim-silicon, update their commit hashes
2024-02-29 21:35:41 +01:00
David Ibia
884fc44344 feat(nvim-silicon.lua): add support for generating code images using Silicon
feat(nvim-silicon.lua): create configuration to use Silicon for code image generation
2024-02-29 21:35:27 +01:00
David Ibia
696ba76d07 docs(README.md): reorganize and update dependencies, binaries, and plugins sections for
better readability and clarity
2024-02-29 21:35:01 +01:00
David Ibia
de887bc275 chore(lazy-lock.json): update commit hash for copilot.vim to 8f24a74d5937c1fb28fbce5caf05ffc633093fc5
chore(lazy-lock.json): remove hologram.nvim entry from lazy-lock.json file
2024-02-26 21:38:05 +01:00
David Ibia
1c57efd8cb refactor(incline.lua): change window placement to right for better UI consistency
feat(incline.lua): add function shortenPath to truncate long file paths for display
2024-02-26 21:37:57 +01:00
David Ibia
260aff8ebf chore(hologram.lua): remove unused hologram.lua files from absolute directory 2024-02-26 21:36:50 +01:00
David Ibia
30c2b464e0 refactor(incline.lua): remove unused functions get_git_diff and get_diagnostic_label
feat(incline.lua): add display of relative path in the rendered output for better context
2024-02-26 15:33:42 +01:00
David Ibia
6fba1ca3f1 refactor(incline.lua): improve code formatting and indentation for better readability
feat(incline.lua): add support for displaying diagnostic signs and git diff
information in the incline plugin to enhance user experience
2024-02-26 14:57:09 +01:00
David Ibia
e328a43453 chore(lazy-lock.json): add gitsigns.nvim plugin with specific branch and commit 2024-02-26 14:56:31 +01:00
David Ibia
69319e52c5 refactor(incline.lua): update incline setup to include window padding and margin
feat(incline.lua): add custom rendering function to display file icons, git diff
indicators, and diagnostic signs in incline plugin
2024-02-26 14:56:24 +01:00
David Ibia
49f2e99f83 feat(gitsigns): add gitsigns plugin to enhance git integration in Neovim
feat(gitsigns): configure gitsigns plugin to load setup in after directory for customization
2024-02-26 14:56:13 +01:00
David Ibia
d463bfcde0 chore(lazy-lock.json): update commit hashes for various plugins
feat(lazy-lock.json): update copilot.vim, friendly-snippets, fzf, git-blame.nvim,
mason-lspconfig.nvim, mason.nvim, none-ls.nvim, nvim-lspconfig, nvim-tree.lua,
nvim-treesitter, nvim-web-devicons plugins with new commit hashes
2024-02-26 14:37:23 +01:00
David Ibia
c4e74ff5e1 style(hologram.lua): fix indentation for consistency and readability
feat(hologram.lua): change image_pattern to start with a dot for file extensions
feat(hologram.lua): add support for handling image previews on buffer enter and leave events
2024-02-26 14:37:14 +01:00
David Ibia
ba39d9bfe4 style(toggleterm.lua): fix indentation and alignment for better readability
feat(toggleterm.lua): add lazygit terminal setup with custom configurations
feat(toggleterm.lua): add keymap to toggle lazygit terminal with leader key
feat(toggleterm.lua): comment out keymap for opening a general terminal
2024-02-26 14:37:06 +01:00
David Ibia
dcabac3a07 feat(incline.lua): add incline setup in incline.lua to configure incline plugin
feat(incline.lua): add incline plugin configuration in plugins/incline.lua to load incline setup on VeryLazy event
2024-02-26 14:36:51 +01:00
David Ibia
dce8aaa3bc chore(bufferline.lua): remove bufferline configuration and key mappings for tab
management to simplify and streamline the setup of the bufferline plugin
chore(bufferline.lua): remove bufferline plugin configuration and dependencies
to declutter the plugin setup and improve maintainability
2024-02-26 14:36:29 +01:00
David Ibia
d7f4bb752f chore(lazy-lock.json): update commit hashes for copilot.vim, friendly-snippets,
fzf, mason-lspconfig.nvim, none-ls.nvim, nvim-bqf, nvim-dap,
nvim-dap-python, nvim-dap-ui, nvim-lspconfig, nvim-tree.lua,
nvim-treesitter, nvim-web-devicons to latest versions
2024-02-22 12:27:10 +01:00
David Ibia
470940593f refactor(remap.lua): change keymap for regex replace to <leader>sr for better
clarity and add keymap for replacing selected text in visual mode with <leader>ss
2024-02-22 12:26:55 +01:00
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