HNHacker News
TopNewBestAskShowJobs

L0stLink

234 karma · joined February 3, 2018

submissionscomments
L0stLink··on Firefox Privacy How-To Guide
They are saved under the user profile directory in the `prefs.js` file. src[0] I have it symlinked to `~/.config/firefox/pref.js` (which also contains `chrome/userChrome.css`, also symlinked to from the firefox profile) in this way they get checked into git with the rest of my dotfiles.

[0] https://support.mozilla.org/si/questions/965842

L0stLink··on Apple is evaluating new keyboard mechanisms to make thinner MacBooks
Linux rewards customization, if you don't have the time for that Gnome is a good starting point assuming you can adjust yourself to its workflow. XFCE is amazing (and was my primary before I switched to wayland/swaywm) and I have deep respect for its developers for what they have managed to produce with thunar being one of the most if not the most customizable lightweight file managers. It can have its issues at times but nothing that I have not been able to work around.
L0stLink··on Apple is evaluating new keyboard mechanisms to make thinner MacBooks
Linux has gotten to the point that it is no longer necessary to look at MacOS for a stable Unix environment. I don't need much from a laptop just decent keyboard, performance, battery life and for it to not thermal throttle, but unfortunately this seems to be incompatible with Apple's vision of the perfect MacBook. If this is the direction Apple is taking I cannot see myself buying a MacBook in the foreseeable future.
L0stLink··on Weld: Accelerating numpy, scikit and pandas as much as 100x with Rust and LLVM
None taken :), and my comment was about the snide in great (x3) grand parent comment(s). The whole fanboy/vegan/how do you know chain.
L0stLink··on Weld: Accelerating numpy, scikit and pandas as much as 100x with Rust and LLVM
Does that justify the snide remarks? We should show more tolerance, there might not be a tool in existence that does not have its disadvantages along with its advantages. Healthy discussion around facts is beneficial, dismissing people for being passionate is not.
L0stLink··on Weld: Accelerating numpy, scikit and pandas as much as 100x with Rust and LLVM
lets generalize it further: People will take chances to bring up what they are passionate about.

I can relate to this, it is not unreasonable for me.

L0stLink··on Python Is Eating the World
mypy can be used to achieve the same effect, but I would also like the ability to enforce types at run-time, and it would be great if more tools made use of PEP 484.
L0stLink··on Neovim v0.4.0
No problem, LanguageClient-neovim can be a bit overwhelming at first and if you are like me, you might need to rely on the included docs and GitHub issues, but it is well worth it. I am in my spare time working on getting floating window documentation working for completion items once that is done, I will have no need to keep coc.vim installed as backup.
L0stLink··on Neovim v0.4.0
no problem :)
L0stLink··on Neovim v0.4.0
> Where do I start?

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
    endfunction
L0stLink··on Neovim v0.4.0
I use LanguageClient-neovim[0] with pyls[1], tests are run using `:make` which populates the quickfix list with errors. I also heavily use the location list which gets populated with errors and warnings etc. automatically by LanguageClient-neovim. All of this is accessible through convenient keybindings. Full python setup here: https://github.com/L0stLink/anvil

Status 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

[1] https://github.com/palantir/python-language-server

[2] https://github.com/itchyny/lightline.vim

L0stLink··on Neovim v0.4.0
>language support is the most important for productivity

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.

[0] https://microsoft.github.io/language-server-protocol/

L0stLink··on Neovim v0.4.0
I have been using LanguageClient-neovim[0]. It is great, the main difference I have observed between LanguageClient-neovim and coc.vim is that LanguageClient-neovim provides a more vim centered UX (e.g. it automatically populates location/quickfix list with errors, warnings and hints which enables quickly jumping between error locations) while coc.vim provides a great out-of-the box experience but feels like VSCode strapped to nvim (It has its own extension ecosystem based on VSCode extensions) - I greatly appreciate the effort by coc.vim's developer, he has done great work and coc.vim defiantly has its advantages[1] over LanguageClient-neovim. LanguageClient-neovim requires a lot of customization in order to fit it to your work flow but once it is done, the experience feels a lot more native. On the topic of which, LanguageClient-neovim feels lighter and faster to me and has the added advantage of being usable without any external dependencies (because it is a compiled binary). I highly recommend checking it out.

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...

L0stLink··on Winter Is Coming for Java Updates
wow thanks, this has definitely piqued my interest in GraalVM, I have seen some polyglot examples on the official website, depending on the overhead it is going to enable some very interesting use-cases. Very excited to see where this goes.
L0stLink··on Winter Is Coming for Java Updates
As I understand it, Jython was not affected by Python Global Interpreter Lock (GIL), is the same true for GraalVM Python? If it is than it would be a great way to to speed up python applications.
L0stLink··on Letter from Tim Cook to Apple Investors
It is simple really, if the battery's health has declined enough to warrant a down clock, just let me know so I can:

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.

L0stLink··on Letter from Tim Cook to Apple Investors
The main difference is _consent_ and it should not require an explanation on why it is important. May be I am strange for wanting transparency? I do not want such facts to be hidden. Slowly degrading my user experience over time with no way of me knowing why is not a good way of handling battery degradation. And so I strongly disagree with you and the child comment, Apple did not do 'a good job' hiding it, and them now handling it as they should have in the first place does not deserve praise.
L0stLink··on Reasons Python Sucks
I agree, my above comment was aimed at this part of the parent comment:

> 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.

L0stLink··on Shanghai City in panoramic view in 195 gigapixels
It really does!
L0stLink··on Shanghai City in panoramic view in 195 gigapixels
That is the most performant and responsive panorama I have ever seen!
L0stLink··on Reasons Python Sucks
I do not see your comment as fair to the parent:

> 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.

L0stLink··on After losing half its value, Nvidia faces reckoning
I agree, memes often don't contribute towards the discussion and add unnecessary noise: they just regurgitate what has already been said (the above meme is an example). I like the culture of Hacker News and its higher quality discussions and I don't want it to turn into Reddit. When I want to look at memes, I go to Reddit and I suggest the same to others.
L0stLink··on Firefox desktop market share now below 9%
* install ublock origin[0], it is far superior to ad block.

[0] https://addons.mozilla.org/en-US/firefox/addon/ublock-origin...

L0stLink··on Microsoft now has the best hardware lineup in the industry
That is about to change https://github.com/jwilm/alacritty/pull/1374#issuecomment-42...
L0stLink··on JavaFX 11 is released
Not a legacy language it is just that the trend has been to use electron for x-platform desktop apps instead of something a bit more reasonable like Java.
L0stLink··on JavaFX 11 is released
Thank you so much for your answer, it has been really helpful.
L0stLink··on Windows file may be storing passwords and emails
For a long time now windows update has automatically installed the drivers for me and is what I typically recommend to everyone. Searching the web for drivers and downloading them manually will usually end in (even tech savvy) people installing crap-ware at best and malware at worse along side them. Configuring Linux is not a problem too as long as you pick the right hardware (which is usually just staying away from Qualcomm and Realtek NICs in my experience) and distro. The real time sink on linux is customizing it to the point where I am comfortable using it.
L0stLink··on JavaFX 11 is released
Hi, there are a few things I have wanted to ask from someone who is working with Java professionally as it is the programming language I know best (for context: I am a student who will be graduating in a year).

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.

L0stLink··on JavaFX 11 is released
check out Gerrit Grunwald's work on JavaFX based controls on github[0], there are also demos on his youtube channel[1].

[0] https://github.com/HanSolo [1] https://www.youtube.com/channel/UCCPbe_sGZuimJUyd2rdR7kA

L0stLink··on JavaFX 11 is released
I highly recommend checking out Gerrit Grunwald's work in JavaFX he has made some very nice JavaFX based controls which you an checkout on github[0], there are also demos on his youtube channel[1].

[0] https://github.com/HanSolo [1] https://www.youtube.com/channel/UCCPbe_sGZuimJUyd2rdR7kA

← PreviousPage 2 of 3Next →