lv-config.lua 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. --[[
  2. O is the global options object
  3. Formatters and linters should be
  4. filled in as strings with either
  5. a global executable or a path to
  6. an executable
  7. ]] -- THESE ARE EXAMPLE CONFIGS FEEL FREE TO CHANGE TO WHATEVER YOU WANT
  8. -- general
  9. O.auto_complete = true
  10. O.colorscheme = 'lunar'
  11. O.auto_close_tree = 0
  12. O.wrap_lines = false
  13. O.timeoutlen = 100
  14. O.document_highlight = true
  15. O.extras = false
  16. O.leader_key = ' '
  17. -- After changing plugin config it is recommended to run :PackerCompile
  18. O.plugin.hop.active = true
  19. O.plugin.dial.active = true
  20. O.plugin.dashboard.active = true
  21. O.plugin.matchup.active = true
  22. O.plugin.colorizer.active = true
  23. O.plugin.numb.active = true
  24. O.plugin.ts_playground.active = true
  25. -- dashboard
  26. -- O.dashboard.custom_header = {""}
  27. -- O.dashboard.footer = {""}
  28. -- if you don't want all the parsers change this to a table of the ones you want
  29. O.treesitter.ensure_installed = "all"
  30. O.treesitter.ignore_install = {"haskell"}
  31. O.treesitter.highlight.enabled = true
  32. O.lang.clang.diagnostics.virtual_text = false
  33. O.lang.clang.diagnostics.signs = false
  34. O.lang.clang.diagnostics.underline = false
  35. -- python
  36. -- add things like O.python.formatter.yapf.exec_path
  37. -- add things like O.python.linter.flake8.exec_path
  38. -- add things like O.python.formatter.isort.exec_path
  39. O.lang.python.formatter = 'yapf'
  40. -- O.python.linter = 'flake8'
  41. O.lang.python.active = true
  42. O.lang.python.isort = true
  43. O.lang.python.autoformat = true
  44. O.lang.python.diagnostics.virtual_text = true
  45. O.lang.python.diagnostics.signs = true
  46. O.lang.python.diagnostics.underline = true
  47. O.lang.python.analysis.type_checking = "off"
  48. O.lang.python.analysis.auto_search_paths = true
  49. O.lang.python.analysis.use_library_code_types = true
  50. -- lua
  51. -- TODO look into stylua
  52. O.lang.lua.active = true
  53. O.lang.lua.formatter = 'lua-format'
  54. -- O.lua.formatter = 'lua-format'
  55. O.lang.lua.autoformat = false
  56. -- javascript
  57. O.lang.tsserver.formatter = 'prettier'
  58. O.lang.tsserver.linter = nil
  59. O.lang.tsserver.autoformat = true
  60. -- json
  61. O.lang.json.autoformat = true
  62. -- ruby
  63. O.lang.ruby.autoformat = true
  64. -- go
  65. O.lang.go.autoformat = true
  66. -- create custom autocommand field (This would be easy with lua)
  67. -- Turn off relative_numbers
  68. -- O.relative_number = false
  69. -- Turn off cursorline
  70. -- O.cursorline = false
  71. -- Neovim turns the default cursor to 'Block'
  72. -- when switched back into terminal.
  73. -- This below line fixes that. Uncomment if needed.
  74. -- vim.cmd('autocmd VimLeave,VimSuspend * set guicursor=a:ver90') -- Beam
  75. -- vim.cmd('autocmd VimLeave,VimSuspend * set guicursor=a:hor20') -- Underline
  76. -- NOTE: Above code doesn't take a value from the terminal's cursor and
  77. -- replace it. It hardcodes the cursor shape.
  78. -- And I think `ver` means vertical and `hor` means horizontal.
  79. -- The numbers didn't make a difference in alacritty. Please change
  80. -- the number to something that suits your needs if it looks weird.