Commit graph

583 commits

Author SHA1 Message Date
Frothy
4453d5c9dd
visuals/indent-blankline: rename scope.showCurrContext to scope.enabled 2023-11-24 12:05:19 +03:00
0067d44695
modules/visuals: update indent-blankline to v3 2023-11-16 12:18:22 +03:00
Frothy
4dc7576176 treewide: change modules to use 'inherit (builtins) ... 2023-11-14 00:18:32 -07:00
Frothy
7518c31ca8 treewide: move missing modules from 'with lib' to 'inherit (lib) ...' 2023-11-07 19:16:46 -07:00
b4972956a2
ui/smartcolumn: inherit library function from lib 2023-11-07 14:24:11 +03:00
Frothy
ffa25c8c8a treewide: move from 'with lib' to 'inherit (lib) ...' 2023-11-06 21:41:53 -07:00
3fde6a4bf3
modules/core: inherit literalExpression from lib 2023-11-06 12:39:54 +03:00
c1f449137f
treewide: cleanup 2023-11-06 12:33:38 +03:00
385d91f7e4
docs: use literalMD for example codeblocks
Co-authored-by: Ching Pei Yang <59727193+horriblename@users.noreply.github.com>
2023-11-06 11:15:33 +03:00
9328443273
docs: use inline anchors for referenced options 2023-11-06 03:46:51 +03:00
3de5f1ba39
docs: use nixosOptionDocs
NixOS 23.11 is deprecating DocBook option documentation. Following home-manager in this change is probably a good idea
2023-11-04 14:30:04 +03:00
Kalle Jepsen
17d8409109 basic: declare option to set smartcase or ignorecase 2023-10-28 14:53:06 +02:00
83802bb7db
lsp/nvim-docs-view: add keybinds 2023-10-27 09:30:20 +03:00
ce8fdf0003
modules/lsp: add nvim-docs-view
A neovim plugin to display lsp hover documentation in a side panel.
2023-10-26 15:03:58 +03:00
Kalle Jepsen
2a809a64ff statusline/lualine: Move helper to lib 2023-10-24 09:18:44 +02:00
Kalle Jepsen
11a974a111 statusline/lualine: extensible sections
This adds extraActiveSection and extraInactiveSection to the lualine
options to make it possible to easily extend the defaults with
additional sections. We're also changing the exposed type of the
*activeSection attributes from `str` to `listOf str`.
2023-10-23 21:08:31 +02:00
2b48b6d844
Merge pull request #156 from horriblename/feat-disable-autoformat
feat: allow disabling format on save per buffer
2023-10-23 20:22:01 +03:00
7b8f68e6d0
visuals/highlight-undo: increase highlight timeout duration 2023-10-23 20:15:31 +03:00
Ching Pei Yang
d43afa4316 feat: keybind to toggle format on save 2023-10-23 18:50:15 +02:00
Frothy
e749ab20d3 lsp: remove duplicate keybindings from config 2023-10-23 08:46:49 -06:00
7b175abeb6
Merge pull request #171 from ksonj/lsp-mappings
lsp: make key bindings configurable
2023-10-23 08:42:34 +03:00
Kalle Jepsen
c693d2fbd4 lsp: make key bindings configurable
This exposes the keybindings for the lsp commands to the configuration
and maps a few more commands (e.g. `vim.lsp.buf.format()`) It also adds
a description to be picked up by whichkey to make the whichkey UX a bit
nicer (ie. we're now showing "Go to definition" instead of just
"vim.lsp.buf.definition()")
2023-10-22 22:42:55 +02:00
9b63ac826e
languages/bash: use mkEnableOption for enable options 2023-10-22 18:08:48 +03:00
6e448cf958
feat: bash language server 2023-10-22 18:02:55 +03:00
b358bfdbd0
docs: use literalAsciiDoc 2023-10-22 01:54:56 +03:00
c353329620
modules/visuals: add highlight-undo
a plugin for highlighting undo/redo targets
2023-10-22 01:22:31 +03:00
Kalle Jepsen
a452a0b0e7 fixes enable option descriptions
mkEnableOption already adds the phrase "Whether to enable ..." to the
beginning of the option description, such that the string argument
should only be "thing to be enabled"
2023-10-21 19:15:36 +02:00
Kalle Jepsen
49c0a5962f plugins: Replace null-ls with none-ls
null-ls is unmaintained as of August 2023 (see
https://github.com/jose-elias-alvarez/null-ls.nvim/issues/1621). none-ls
appears to be the accepted replacement fork.
2023-10-21 12:35:39 +02:00
Frothy
e722c97188 theme/oxocarbon: add oxocarbon theme module 2023-10-20 16:39:46 -06:00
0631fccccf
Merge pull request #159 from ksonj/python-isort
languages/python: add black-and-isort formatter
2023-10-20 17:49:09 +03:00
99c40c716b
statusline/lualine: get excluded buffers from a list in LSP status component 2023-10-20 15:03:00 +03:00
7b2e7cb6a8
statusline/lualine: use nvim_get_option_value() instead of nvim_buf_get_option()
Co-authored-by: Frothy <76622149+FrothyMarrow@users.noreply.github.com>
2023-10-20 12:50:51 +03:00
ff5555e3c8
statusline/lualine: disable LSP status inside toggleterm buffer 2023-10-20 11:34:29 +03:00
Kalle Jepsen
bdfad60e34 languages/python: fix isort package 2023-10-20 10:01:49 +02:00
Kalle Jepsen
e3b55d9798 languages/python: add black-and-isort formatter
Adds two additional formatters for python:

- isort, to only sort imports
- black-and-isort, which runs black + isort in a compatible manner
2023-10-20 09:58:03 +02:00
Kalle Jepsen
997a345cda utility/surround: vendor keybindings for surround
Adds an opioniated set of keybindings for nvim-surround that avoids
conflicts with nvim-leap by default and an option to disable those.
2023-10-17 12:47:44 +02:00
Kalle Jepsen
570eb32a5c utility/surround: run format 2023-10-16 13:02:37 +02:00
Kalle Jepsen
59c23f2855 utility/surround: Add mappings for nvim-surround
The default mappings for nvim-leap and nvim-surround conflict
(i.e. nvim-surround uses `S` in visual mode). This change adds options
to adapt the mappings for nvim-surround directly from the
surround-module.
2023-10-16 11:53:24 +02:00
isabel
38371e56b0
fix: typo ledaer -> leader 2023-10-14 19:35:43 +01:00
8c4d7a3673
ui/noice: disable messages by default
fixes completion sources showing up every single time
2023-10-14 14:52:55 +03:00
Ching Pei Yang
0614dbfd0a
fix: typo 2023-10-10 13:16:09 +02:00
Yoni FIRROLONI
4161589b56 languages/php: init 2023-10-10 12:12:57 +02:00
ec574e1c00
languages/python: replace deprecated string type 2023-10-06 13:57:48 +03:00
6e4f70283a
Merge pull request #144 from jacekpoz/plugin-thingy-deprecation 2023-10-03 21:24:28 +03:00
jacekpoz
bfb8ada774
fix: stop using deprecated buildVimPluginFrom2Nix 2023-10-03 19:48:09 +02:00
Ching Pei Yang
1deee2f27b fix: add missing on_attach for jdtls 2023-09-26 14:39:50 +02:00
Ching Pei Yang
18dabf1725 doc: improve description of neodev 2023-09-23 15:41:34 +02:00
Ching Pei Yang
456295b46e feat: add neodev plugin 2023-09-23 15:37:04 +02:00
Ching Pei Yang
bdebf01a67 feat: add lua treesitter & lsp 2023-09-23 15:37:04 +02:00
0a1a12e778
Merge pull request #134 from horriblename/optional-lsp-installation 2023-09-23 13:19:14 +03:00
Ching Pei Yang
0843e95efa doc: update description of all lsp.package 2023-09-23 03:26:41 +02:00
jacekpoz
ed79b6efa5
Merge remote-tracking branch 'upstream/main' 2023-09-21 12:15:22 +02:00
jacekpoz
391f18ce29
feat: disable useSystemClipboard by default 2023-09-21 12:14:35 +02:00
Ching Pei Yang
0e66f6282b feat: make svelte lsp install optional 2023-09-19 22:53:10 +02:00
Ching Pei Yang
232d93024c feat: make clang lsp install optional 2023-09-19 22:53:10 +02:00
Ching Pei Yang
ed09cb7ed6 feat: make dart lsp install optional 2023-09-19 22:53:10 +02:00
Ching Pei Yang
35e86d1f12 feat: make sql lsp install optional 2023-09-19 22:53:10 +02:00
Ching Pei Yang
54f52bec2b feat: make python lsp install optional 2023-09-19 22:53:10 +02:00
Ching Pei Yang
13c3026362 feat: make typescript lsp install optional 2023-09-19 22:53:10 +02:00
Ching Pei Yang
a0399722a0 feat: make java lsp install optional 2023-09-19 22:52:24 +02:00
Ching Pei Yang
2075211c18 feat: make zig lsp install optional 2023-09-19 22:52:24 +02:00
Ching Pei Yang
3ca97bccbc feat: make rust lsp install optional 2023-09-19 22:52:24 +02:00
Ching Pei Yang
3907c61f9b feat: make go lsp install optional 2023-09-19 22:52:24 +02:00
Ching Pei Yang
2f0efdbf15 feat: make nix lsp install optional 2023-09-19 22:52:24 +02:00
jacekpoz
944bd6d451
feat: update clangd to 16 2023-09-17 19:07:01 +02:00
jacekpoz
0d6a5a928f fix: actually set scrollOffset 2023-08-25 22:18:50 +02:00
5b8e4a89a1
Merge pull request #120 from FrothyMarrow/fix/cursorline 2023-08-17 22:51:09 +03:00
Ching Pei Yang
e721456fe3 fix: use boolToString on boolean 2023-08-14 14:25:06 +02:00
Yavor Kolev
97764f6140
Merge branch 'NotAShelf:main' into overhaul-spell 2023-08-11 16:56:47 +03:00
b1184bab47
fix: warns due to types.string deprecation 2023-08-11 10:04:56 +03:00
de48713394
fix: missing closing bracket when navbuddy is disabled 2023-08-10 20:31:56 +03:00
a9430961e8
dev: clean up breadcrumbs module
potentially avoid unwanted plugin loads
2023-08-10 20:18:21 +03:00
35ea9e5da3
fix: add missing args to the dracula setup 2023-08-10 17:42:54 +03:00
yavko
13416f0cdf
style(spell): apply suggestions 2023-08-10 14:48:18 +03:00
AmanSe
13878ce081
feat: Initial jdtls support 2023-08-09 17:06:13 +05:30
Frothy
0a826fb4d3 refactor: remove unnecessary word 'enable' from mkEnableOption 2023-08-07 21:32:14 -04:00
6ab7d7667d
feat: build orgmode grammar manually 2023-08-07 14:56:29 +03:00
Frothy
d126519514 fix: cursorline configuration 2023-08-06 22:30:06 -04:00
yavko
31c237d149
feat(spell): add multiple language support and vim-dirtytalk
BREAKING CHANGE: `vim.spellChecking.language` is replaced with `vim.spellChecking.languages`
2023-08-06 14:24:54 +03:00
7190ee4b87
fix: lua syntax mismatch for global formatting and nix language
the nix expression for formatter configuration were missing two curly closing brackets
2023-08-05 21:33:31 +03:00
6173845515
docs: fix mismatching option definitions 2023-08-05 15:15:04 +03:00
fcaed357f4
feat: customizable neovim package 2023-08-01 17:28:06 +03:00
f0dffff72e
feat: rewrite nvimtree configuration and rename nvimTreeLua to nvimTree
WARNING: breaking change - see #109
2023-07-31 13:50:10 +03:00
e35613d004
Merge branch 'main' into feature/nix-diagnostics 2023-07-31 13:41:27 +03:00
fe36dbf6e1
Merge pull request #112 from NotAShelf/feature/lsp-lines 2023-07-31 13:40:33 +03:00
c933684647
feat: configurable leader key 2023-07-31 13:40:13 +03:00
35f3be1306
feat(languages/nix): statix & deadnix diagnostics 2023-07-31 13:34:55 +03:00
da86a1f5bf
Merge branch 'main' of github.com:NotAShelf/neovim-flake into dev/extend-filetree 2023-07-31 08:17:18 +03:00
f4c2845049
feat: lsplines module 2023-07-30 19:54:54 +03:00
7b89a3ad25
feat: provide configuration options for nvim-code-action-menu 2023-07-30 19:13:05 +03:00
ab83adbd36
docs: fix mismatching zig language description 2023-07-30 18:36:10 +03:00
93c8643fd8
feat(modules/basic): make leader key configurable 2023-07-30 18:32:53 +03:00
46203de8d5
dev: fix typo in indent marker icon name 2023-07-30 18:18:06 +03:00
9c3e82b41b
feat: enable navic integration for catppuccin theme 2023-07-30 18:13:35 +03:00
452e5475e1
dev: provide empty defaults 2023-07-30 17:49:13 +03:00
745088159c
dev: move defaults inside submodules 2023-07-30 16:46:14 +03:00
bb76a26c1b
dev: rename deprecated git.timeOut 2023-07-30 16:32:07 +03:00
7f7926fbbb
dev: cleanup 2023-07-30 16:00:18 +03:00
c766e8cf27
dev: provide defaults within submodules 2023-07-30 15:38:17 +03:00
2f09d48e7c
dev: redefine diagnostics as submodules 2023-07-30 15:18:25 +03:00
500c9b67dd
dev use submodules for diagnostics 2023-07-30 14:46:59 +03:00
b90ec97fed
I don't even know what's wrong anymore 2023-07-30 14:40:38 +03:00
05f3c653bf
dev: rewrite icons section 2023-07-30 14:29:34 +03:00
897f7ce746
style: alejandra 2023-07-30 13:41:07 +03:00
83a8308ed5
dev: rewrite view section of nvimtree config 2023-07-30 13:16:39 +03:00
bb6b138027
dev: remove unused defaults 2023-07-30 12:31:56 +03:00
c42e53a61b
dev: use literalExpression for examples 2023-07-30 12:12:28 +03:00
77223a2235
style: formatting with alejandra 2023-07-30 12:12:07 +03:00
24b5839922
dev: default window width to int 2023-07-30 12:02:42 +03:00
74d7b394b5
feat: match new nvimtree.lua module name in othere modules 2023-07-30 11:41:09 +03:00
5c7546a8fa
feat: rename nvimtree.lua option and conform to new configuration format 2023-07-30 11:40:46 +03:00
yavko
1c181f49ed
feat(languages/ts): add denols 2023-07-29 23:34:21 +03:00
f01d6c2949
dev: improve nvim-navic and navbuddy loading logic 2023-07-28 17:08:42 +03:00
d96d885fdd
merge main into breadcrumbs 2023-07-28 16:09:10 +03:00
306eba2302
dev: match navbuddy component border styles with global border component style 2023-07-28 15:59:16 +03:00
f2f9c32eca
Merge pull request #99 from horriblename/feature/extra-plugins 2023-07-28 11:28:20 +03:00
b95687940d
Merge pull request #105 from NotAShelf/feature/window-borders 2023-07-26 18:54:18 +03:00
Ching Pei Yang
8d72e28c4d add descriptions for extraPlugins 2023-07-26 15:36:24 +02:00
Ching Pei Yang
5981cd14f8 rename for clarity 2023-07-26 15:27:08 +02:00
107cea4f20
fix: (toString false) producing an empty line 2023-07-26 15:12:32 +03:00
NotAShelf
6e3ae75ae8
Merge branch 'main' into feature/breadcrumbs 2023-07-26 10:36:08 +03:00
cc1f1b2ed8
feat: per-plugin border styles
defaults to the value of globalStyle, can be overriden
2023-07-26 10:33:01 +03:00
0667f1f936
dev: add missing hover window borders via noice.nvim 2023-07-25 22:16:20 +03:00
36cf072920
dev: add missing navbuddy icons and keybinds 2023-07-24 23:05:07 +03:00
ef122b1b4d
feat: make navbuddy icons and keybinds configurable 2023-07-24 21:36:01 +03:00
4233a2c20d
feat: copilot completions in nvim-cmp sources 2023-07-24 17:24:35 +03:00
b9e0f20e39
feat: add borders to lspsaga windows 2023-07-23 22:39:08 +03:00
0951114a29
feat: make visible borders optional 2023-07-23 22:39:07 +03:00
260f9e7e8b
dev: make the permanent rendering of breadcrumbs optional 2023-07-21 22:35:05 +03:00
Frothy
5a2b13c291 fix: display winbar even when it is empty 2023-07-21 12:59:45 -04:00
Ching Pei Yang
afec39f3d9 make extraPluginType singular instead of a list 2023-07-21 15:39:20 +02:00
Ching Pei Yang
2167481cc2 implement extraPluginConfigs 2023-07-21 15:25:46 +02:00
2319ee082c dev: custom type for extraPlugin module 2023-07-21 15:25:46 +02:00
AmanSe
f8a46d68a7
feat: add daily note options for obsidian 2023-07-20 23:09:47 +05:30
4301ade29a
feat: make most navbuddy options configurable 2023-07-20 18:34:36 +03:00
Ching Pei Yang
507d824731 fix cmp scroll docs keybinds 2023-07-20 14:02:47 +02:00
Ching Pei Yang
f3f7082597 fix cmp abort keymap 2023-07-20 13:33:22 +02:00
b9e152aa50
feat: allow Navbuddy to automatically attach to the Lsp server 2023-07-19 23:06:29 +03:00
863047e490
dev: allow nvim-navic to attach to the Lsp if breadcrumbs is enabled 2023-07-19 23:06:06 +03:00
41584157eb
feat: display breadcrumbs on winbar 2023-07-19 23:05:38 +03:00
14179505b3
feat: breadcrumbs 2023-07-19 22:49:06 +03:00
Ching Pei Yang
86237bfd2d feat: add transparency support for tokyonight
docs: update release notes
2023-07-17 23:39:34 +02:00
896c09b972
fix: presence-nvim providing invalid client id 2023-07-15 19:24:09 +03:00
de84d74144
feat: supress ccls offset encoding messages 2023-07-13 23:22:16 +03:00
01a1fbdf55
dev: default to prettier until prettierd is fixed and updated 2023-07-13 23:19:53 +03:00
319fb0b566
feat: add borders to nvim-cmp completion window 2023-07-12 20:55:08 +03:00
NotAShelf
5e0a9b1d07
Merge pull request #88 from NotAShelf/prettier-daemon
prettier daemon
2023-07-11 23:13:22 +03:00
24f6ed145e
feat: default to prettierd over prettier 2023-07-11 22:54:43 +03:00
8cda01b885
feat: add prettierd as an alternative to prettier 2023-07-11 22:54:22 +03:00
Ching Pei Yang
b5efd5cba7 feat: add dap support for dart 2023-06-27 00:28:54 +02:00
Ching Pei Yang
ae0a2389ff feat(dap): add breakpoint icon 2023-06-27 00:04:58 +02:00
Ching Pei Yang
fe9da14d85 feat: add mapping options for nvim-dap 2023-06-27 00:04:58 +02:00
Ching Pei Yang
588d348bd2 feat: add dap support for rust 2023-06-27 00:04:58 +02:00
Ching Pei Yang
3a8b614ea9 feat: add dap support for clang 2023-06-27 00:04:58 +02:00
Ching Pei Yang
b3b6f56fbc feat: add dap support for python 2023-06-27 00:04:58 +02:00
Ching Pei Yang
b029426d34 feat: add debugger for go 2023-06-27 00:04:58 +02:00
Ching Pei Yang
bdf77593ee feat: default dap keybinds 2023-06-27 00:04:58 +02:00
Ching Pei Yang
624782e196 feat: add option for debugger configs 2023-06-27 00:04:58 +02:00
Ching Pei Yang
1eceb04db9 feat: new option enableDAP 2023-06-27 00:04:58 +02:00
Ching Pei Yang
595e76ed2f feat: option to autostart debugger UI 2023-06-27 00:04:58 +02:00
NotAShelf
640e37bd08 dev: init nvim-dap setup 2023-06-27 00:04:58 +02:00
Ching Pei Yang
b4eaabea95 fix(flutter-tools): bug where dart lsp is not found 2023-06-26 12:31:51 +02:00
Ching Pei Yang
99c69c4e9c fix(clangd): use same offsetEncoding as null-ls 2023-06-12 01:12:05 +02:00
NotAShelf
456dee6298
dev(lualine): remove background from search results component 2023-06-07 14:30:55 +03:00
NotAShelf
2e40253457
feat: nvim-surround 2023-06-07 14:28:27 +03:00
NotAShelf
0c01fbc121
feat: display LSP source on statusline 2023-06-07 02:36:02 +03:00
NotAShelf
30519c1a23
feat: neovim spellchecking 2023-06-06 03:25:50 +03:00
NotAShelf
79edfbdb47
fix(illuminate): ignore NvimTree for highlighting 2023-06-06 03:25:43 +03:00
NotAShelf
c20456e3a1
feat: vim-illuminate 2023-06-06 03:05:05 +03:00
NotAShelf
b8d2c23eaf
feat: add more configuration options for modes.nvim 2023-06-06 02:33:18 +03:00
NotAShelf
5300f9c253
style: formatting 2023-06-06 02:25:10 +03:00
NotAShelf
a1d99ca752
fix: '&' causing build failures 2023-06-06 02:22:55 +03:00
NotAShelf
8845d7a54d
feat: lualine UI improvements 2023-06-06 01:49:48 +03:00
NotAShelf
6e21655c3f
feat: customizable cursorline option 2023-06-06 01:49:38 +03:00
NotAShelf
2cb1e3b110
fix: regression in lualine config 2023-06-05 23:14:47 +03:00
NotAShelf
a2b58e17af
docs: fix mkEnableOption usage for autogenerated documentation 2023-06-05 23:10:25 +03:00
NotAShelf
86fec8646d
feat: improved smartcolumn freeform 2023-06-04 17:36:01 +03:00
NotAShelf
2cfeb22764
feat: implement freeform smartcolumn column positions 2023-06-04 14:12:08 +03:00
NotAShelf
471677d403
feat: color previews via nvim-colorizer-lua 2023-06-04 10:24:17 +03:00
NotAShelf
1cc6bb8b8a
feat: rename colorizer to ccc 2023-06-04 09:41:10 +03:00
NotAShelf
bd61b1375a
feat: assert failing conditions 2023-06-04 09:39:17 +03:00
NotAShelf
3362e6cf36
feat: disable scrollbar on code action menus and notifications 2023-06-04 08:47:41 +03:00
NotAShelf
f7bbfe3e3a
feature: svelte lsp and diagnostics 2023-06-03 17:18:26 +03:00
NotAShelf
0afa7184f1
Merge pull request #82 from n3oney/feature/null-priority
feat: give null-ls priority over other formatters
2023-05-26 14:30:58 +03:00
NotAShelf
ee3a5dc4a0
feat(catppuccin: more plugin integrations) 2023-05-24 04:53:58 +03:00
NotAShelf
d65223e34e
feat(fidget): catppuccin integration 2023-05-24 04:53:58 +03:00
n3oney
6b61beb0ef
feat: give null-ls priority over other formatters 2023-05-23 22:55:01 +02:00
n3oney
dced02feed
chore: add comments 2023-05-22 19:00:33 +02:00
n3oney
5c6cd508c3
feat: make it possible to use strings for the RC
when providing a string, it will get mapped as if it was given with nivm.dag.entryAnywhere, which will most likely be what people want
2023-05-22 16:12:00 +02:00
NotAShelf
6201d04724
feat: update default NodeJS package for Copilot.lua 2023-05-20 17:48:40 +03:00
NotAShelf
266fbac791
dev(nvimtree-lua): rename cursorLine -> cursorline 2023-05-19 15:19:16 +03:00
NotAShelf
24265c591d
feat: fidget support for catppuccin theme 2023-05-19 15:14:49 +03:00
NotAShelf
4f8a035d82
feat: cursorlineopt config option 2023-05-19 15:14:25 +03:00
NotAShelf
0a7f9865f1
fix(nvimtree-lua): disable cursor-line to false 2023-05-19 14:58:00 +03:00
NotAShelf
d2fab111de
fix: override cursorlineopt=number via autocmds 2023-05-16 17:25:20 +03:00
NotAShelf
bae1ef363a
fix: set cursorlineopt=number if theme is transparent 2023-05-16 17:00:51 +03:00
NotAShelf
e58409fc4d
Merge pull request #77 from n3oney/patch/fix-formatting
fix formatting
2023-05-16 13:02:39 +03:00
NotAShelf
3edf981d6b
Merge pull request #75 from NotAShelf/feature/wakatime
Feature/wakatime
2023-05-15 14:38:58 +03:00
n3oney
2b6580e19c
fix: re-work formatting code 2023-05-14 20:04:37 +02:00
n3oney
1aa354e4a2
feat: replace eslint with eslint_d for better performance 2023-05-12 20:30:37 +02:00