lv-config.example.lua 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  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 = 'spacegray'
  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. O.ignore_case = true
  18. O.smart_case = true
  19. O.lushmode = false
  20. O.transparent_window = false
  21. -- After changing plugin config it is recommended to run :PackerCompile
  22. O.plugin.hop.active = false
  23. O.plugin.dial.active = false
  24. O.plugin.dashboard.active = true
  25. O.plugin.matchup.active = false
  26. O.plugin.colorizer.active = false
  27. O.plugin.numb.active = false
  28. O.plugin.ts_playground.active = false
  29. O.plugin.indent_line.active = false
  30. O.plugin.gitlinker.active = false
  31. O.plugin.zen.active = false
  32. -- dashboard
  33. -- O.dashboard.custom_header = {""}
  34. -- O.dashboard.footer = {""}
  35. -- if you don't want all the parsers change this to a table of the ones you want
  36. O.treesitter.ensure_installed = "all"
  37. O.treesitter.ignore_install = {"haskell"}
  38. O.treesitter.highlight.enabled = true
  39. O.lang.clang.diagnostics.virtual_text = true
  40. O.lang.clang.diagnostics.signs = true
  41. O.lang.clang.diagnostics.underline = true
  42. -- python
  43. -- add things like O.python.formatter.yapf.exec_path
  44. -- add things like O.python.linter.flake8.exec_path
  45. -- add things like O.python.formatter.isort.exec_path
  46. O.lang.python.formatter = 'yapf'
  47. -- O.python.linter = 'flake8'
  48. O.lang.python.isort = true
  49. O.lang.python.autoformat = true
  50. O.lang.python.diagnostics.virtual_text = true
  51. O.lang.python.diagnostics.signs = true
  52. O.lang.python.diagnostics.underline = true
  53. O.lang.python.analysis.type_checking = "off"
  54. O.lang.python.analysis.auto_search_paths = true
  55. O.lang.python.analysis.use_library_code_types = true
  56. -- lua
  57. -- TODO look into stylua
  58. O.lang.lua.formatter = 'lua-format'
  59. -- O.lua.formatter = 'lua-format'
  60. O.lang.lua.autoformat = false
  61. -- javascript
  62. O.lang.tsserver.formatter = 'prettier'
  63. O.lang.tsserver.linter = nil
  64. O.lang.tsserver.autoformat = true
  65. -- json
  66. O.lang.json.autoformat = true
  67. -- ruby
  68. O.lang.ruby.autoformat = true
  69. -- go
  70. O.lang.go.autoformat = true
  71. -- rust
  72. O.lang.rust.autoformat = true
  73. -- create custom autocommand field (This would be easy with lua)
  74. -- Turn off relative_numbers
  75. -- O.relative_number = false
  76. -- Turn off cursorline
  77. -- O.cursorline = false
  78. -- Neovim turns the default cursor to 'Block'
  79. -- when switched back into terminal.
  80. -- This below line fixes that. Uncomment if needed.
  81. -- vim.cmd('autocmd VimLeave,VimSuspend * set guicursor=a:ver90') -- Beam
  82. -- vim.cmd('autocmd VimLeave,VimSuspend * set guicursor=a:hor20') -- Underline
  83. -- NOTE: Above code doesn't take a value from the terminal's cursor and
  84. -- replace it. It hardcodes the cursor shape.
  85. -- And I think `ver` means vertical and `hor` means horizontal.
  86. -- The numbers didn't make a difference in alacritty. Please change
  87. -- the number to something that suits your needs if it looks weird.
  88. -- TODO
  89. -- custom autocommands
  90. -- user defined plugin config
  91. -- custom settings