234 karma · joined February 3, 2018
I can relate to this, it is not unreasonable for me.
best place would be the docs :h nvim_open_win()
here is a function that takes a buffer id and creates a floating window based on it anchored to current cursor position:
let s:buff = 0
let s:buff_max_heigth = 12
function! CreateTempBuffer(buffer) abort
let text = nvim_buf_get_lines(a:buffer, 0, -1, v:true)
if s:buff == 0
let s:buff = nvim_create_buf(v:false, v:true)
endif
call nvim_buf_set_lines(s:buff, 0, -1, v:true, text)
let height = len(text)
if height > s:buff_max_heigth
let height = s:buff_max_heigth
endif
let width = 0
for index in range(len(text))
let line = text[index]
let lwd = strdisplaywidth(line)
if lwd > width
let width = lwd
endif
let text[index] = line
endfor
let width = width + 1
let opts = {'relative': 'cursor', 'width': width, 'height': height, 'col': 0,
\ 'row': 0, 'anchor': 'SW', 'style': 'minimal'}
let win = nvim_open_win(s:buff, v:false, opts)
return win
endfunctionStatus bar is lightline[2] with a custom theme, which I haven't gotten around to pushing yet. I can share it if you are interested. Other than the colors on the bar everything should work.
[0] https://github.com/autozimu/LanguageClient-neovim
That is a great point, and this is precisely the goal of the Language Server Protocol[0] (LSP). I agree that dedicated tools have more sophisticated support but LSP is quickly bridging that gap. With how extensible editors like vim and emacs are coupled with there powerful text manipulation capabilities the development experience offered by them in combination with a good Language Server and Client is not to be underestimated. Although editor ergonomics are very subjective so I know this topic can get very controversial.
tl;dr:
coc.vim is for those looking for a VSCode like experience out of nvim (stuff works out of the box requiring minimal customization, installing plugins to get the required functionality) where LanguageClient-neovim is for those who prefer a vim centric approach (extremely minimal, manually customizing everything to get it to fit you workflow).
If you are interested in LanguageClient-neovim you can checkout my config[2][3] you might find it helpful .
[0] https://github.com/autozimu/LanguageClient-neovim
[1] It shows documentation for completion list items in a floating window similar to VSCode.
[2] https://github.com/L0stLink/anvil
[3] https://github.com/L0stLink/anvil/blob/master/settings/Langu...
a) replace the battery.
b) opt-in to degraded performance.
c) upgrade my device.
Rather than (in effect) tricking me into an upgrade before it was really needed.
> a huge and over-complicated xml-based system
It was an attempt to show that there are not 'umpteen different alternatives' and the ones that exist, do so for a reason. Though looking back, I should have worded it in a better way.
> there are umpteen alternatives (gradle etc)
there was ant (build tool) then came maven which is much more flexible and contains dependency management capabilities (and _is loved_ by many) nothing to add that the parent did not already say. Then came gradle which has faster build speed and features like incremental builds and a Groovy based configuration.
pip did not ship with python for a long time, and has problems of its own.
[0] https://addons.mozilla.org/en-US/firefox/addon/ublock-origin...
What is Java still being used for? is it mostly Spring work and Android apps or are there still other use cases?
What do you use Java for? or What is the nature of work that you do which makes use of Java?
It would be very helpful if you could answer these.
[0] https://github.com/HanSolo [1] https://www.youtube.com/channel/UCCPbe_sGZuimJUyd2rdR7kA
[0] https://github.com/HanSolo [1] https://www.youtube.com/channel/UCCPbe_sGZuimJUyd2rdR7kA