frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Kate and Python Language Server

https://akselmo.dev/posts/kate-python-lsp/
79•todsacerdoti•7mo ago

Comments

josteink•7mo ago
As someone who recently set up something similar in Emacs with eglot I had to ditch Python-LSP-server.

It was so incredibly slow to respond, even on a M2 Max MBP, that it lowered my productivity by orders of magnitudes (and made Emacs laggy).

Maybe I did something wrong? I don’t know.

What I do know is that I tried pyright instead as a different LSP-server for Python and I haven’t looked back.

It’s a night and day difference. It’s snappy and everything works as expected, with venvs and mypy too.

kstrauser•7mo ago
I agree. I really wanted to like python-lsp-server (aka pylsp), but I felt it's kind of a mess getting everything set up and configured. Loathe as I was to configure a server running in Node to help my editor with Python code, it's far and away the best option I've found so far.

I do hope "ruff server" will do for Python LSPs what ruff did for linting and formatting.

nerdponx•7mo ago
I haven't tried the Ruff server yet, but Jedi Language Server is usably fast, and does a good enough job.
kstrauser•7mo ago
Jedi's very nice for refactoring and auto-completion! I get more value from linting and type checking, though, and Jedi doesn't handle those. Pairing it with something like pyright is a great combination if your editor lets you connect to multiple servers.
kristjansson•7mo ago
It's not ready yet, but https://pyrefly.org/ might be a good competitor/complement in the future
tiltowait•7mo ago
Looks promising! It doesn't work with my poetry environment, but I like what I see so far. Definitely something to watch.
team_pyrefly•7mo ago
Hi! I'm on the team behind Pyrefly. Thanks for taking a look and raising the need for poetry support. We added a GitHub issue to track that here: https://github.com/facebook/pyrefly/issues/166
arccy•7mo ago
last time i looked the people were recommending basedpyright: https://github.com/DetachHead/basedpyright
Hasnep•7mo ago
I've been recommending it whenever Pylance comes up on HN or Lobsters, the docs explain how to set it up on the most popular editors: https://docs.basedpyright.com/dev/installation/ides
wormius•7mo ago
Not particularly relevant to the core article, but just a dumb thought re: the LSP/LS annoyance mentioned in the intro.

I think maybe some of it stems from 'ls' the command. If I saw something called py-ls instead of py-lsp, I may think it's a python based ls command. "Name Collision" as it were.

Anyways off to read the rest of the article...

ogoffart•7mo ago
I wrote a language server too, and I also went with "-lsp" naming because it's way more recognizable. "LSP" is kind of a brand. If you look at the list at https://microsoft.github.io/language-server-protocol/impleme... a lot of them are named -lsp.
dundarious•7mo ago
Might not be an issue for your typical setup, but I suggest quoting your variable expansions in bash. Otherwise, spaces, etc., will lead to issues.

It would also make sense to use path after it is defined, instead of sometimes using `$1` again.

But I'm confused by `cd`ing into `$path` and then checking paths that are prefixed by `$path`... I assume that is an error, and you won't run it like `script.sh ./work/project` and expect a path like `./work/project/work/project` or `./work/project/project` to exist. Can just `cd "$1"` and be done.

Mildly surprised the .venv/venv check isn't an elif as well.

  #!/usr/bin/env bash
  cd "$1"
  if [ -d ./.venv ]; then
    source ./.venv/bin/activate
  elif [ -d ./venv ]; then
    source ./venv/bin/activate
  fi
  exec pylsp --check-parent-process

The biggest CRT ever made: Sony's PVM-4300

https://dfarq.homeip.net/the-biggest-crt-ever-made-sonys-pvm-4300/
45•giuliomagnifico•1h ago•15 comments

The ancient monuments saluting the winter solstice

https://www.bbc.com/culture/article/20251219-the-ancient-monuments-saluting-the-winter-solstice
87•1659447091•5h ago•50 comments

If you don't design your career, someone else will (2014)

https://gregmckeown.com/if-you-dont-design-your-career-someone-else-will/
202•TheAlchemist•4h ago•104 comments

Italian Competition Authority Fines Apple $115M for Abusing Dominant Position

https://en.agcm.it/en/media/press-releases/2025/12/A561
28•amarcheschi•3h ago•10 comments

A guide to local coding models

https://www.aiforswes.com/p/you-dont-need-to-spend-100mo-on-claude
483•mpweiher•17h ago•269 comments

Show HN: Netrinos – A keep it simple Mesh VPN for small teams

https://netrinos.com
16•pcarroll•2d ago•7 comments

Programming languages used for music

https://timthompson.com/plum/cgi/showlist.cgi?sort=name&concise=yes
109•ofalkaed•1d ago•33 comments

A year of vibes

https://lucumr.pocoo.org/2025/12/22/a-year-of-vibes/
35•lumpa•4h ago•10 comments

Deliberate Internet Shutdowns

https://www.schneier.com/blog/archives/2025/12/deliberate-internet-shutdowns.html
236•WaitWaitWha•3d ago•107 comments

Well being in times of algorithms

https://www.ssp.sh/blog/well-being-algorithms/
37•articsputnik•4h ago•17 comments

Debian's Git Transition

https://diziet.dreamwidth.org/20436.html
41•all-along•6h ago•4 comments

Show HN: Books mentioned on Hacker News in 2025

https://hackernews-readings-613604506318.us-west1.run.app
517•seinvak•22h ago•183 comments

Show HN: Backlog – a public repository of real work problems

https://www.worldsbacklog.com/
46•anticlickwise•5h ago•12 comments

I'm just having fun

https://jyn.dev/i-m-just-having-fun/
419•lemper•6d ago•179 comments

Disney Imagineering Debuts Next-Generation Robotic Character, Olaf

https://disneyparksblog.com/disney-experiences/robotic-olaf-marks-new-era-of-disney-innovation/
226•ChrisArchitect•16h ago•93 comments

Webb observes exoplanet that may have an exotic helium and carbon atmosphere

https://science.nasa.gov/missions/webb/nasas-webb-observes-exoplanet-whose-composition-defies-exp...
87•taubek•3d ago•22 comments

Microsoft will kill obsolete cipher that has wreaked decades of havoc

https://arstechnica.com/security/2025/12/microsoft-will-finally-kill-obsolete-cipher-that-has-wre...
27•signa11•6d ago•6 comments

Inverse Parentheses

https://kellett.im/a/inverse-parentheses
56•mighty-fine•6h ago•45 comments

Build Android apps using Rust and Iced

https://github.com/ibaryshnikov/android-iced-example
122•rekireki•12h ago•43 comments

Aliasing

https://xania.org/202512/15-aliasing-in-general
58•ibobev•6d ago•11 comments

Functional Flocking Quadtree in ClojureScript

https://www.lbjgruppen.com/en/posts/flocking-quadtrees
77•lbj•6d ago•5 comments

Kernighan's Lever

https://linusakesson.net/programming/kernighans-lever/index.php
79•xk3•2d ago•35 comments

Cartoon Network channel errors (1995 – 2025)

https://cnas.fandom.com/wiki/Channel_Errors
38•Pikamander2•5h ago•12 comments

Decompiling the Synergy: Human–LLM Teaming in Reverse Engineering [pdf]

https://www.zionbasque.com/files/papers/dec-synergy-study.pdf
9•matt_d•4d ago•0 comments

(Social) media manipulation in one image

https://kerkour.com/social-media-manipulation
6•randomint64•11m ago•3 comments

CO2 batteries that store grid energy take off globally

https://spectrum.ieee.org/co2-battery-energy-storage
289•rbanffy•23h ago•242 comments

How I protect my Forgejo instance from AI web crawlers

https://her.esy.fun/posts/0031-how-i-protect-my-forgejo-instance-from-ai-web-crawlers/index.html
73•todsacerdoti•23h ago•47 comments

Rue: Higher level than Rust, lower level than Go

https://rue-lang.dev/
185•ingve•17h ago•153 comments

More on whether useful quantum computing is “imminent”

https://scottaaronson.blog/?p=9425
110•A_D_E_P_T•17h ago•89 comments

A Guide to Magnetizing N48 Magnets in Ansys Maxwell

https://blog.ozeninc.com/resources/from-datasheet-to-demagnetization-a-guide-to-magnetizing-n48-m...
46•peter_d_sherman•5d ago•6 comments