If you have an M3/M4 and are stuck on XNU like me, and you want a something between the notes app and a whole Electron IDE, it turns out that Kate also supporte macOS
(Actually, a lot of KDE programs do, I was elated to find out I could use Dolphin as file manager when I was limited by Finder)
I think Kate strikes this really nice middleground. It starts up immediately as just a text editor, but you can push it as far as you want to
I had to install several dependencies through homebrew, ignore some default dependencies that don't make sense on mac (wayland, pipewire, etc), and then it worked.
The build command I used, for reference: kde-builder dolphin --ignore-projects wayland plasma-wayland-protocols wayland-protocols kglobalaccel kpipewire kwayland selenium-webdriver-at-spi baloo packagekit-qt baloo-widgets
Note also there's some mac weirdness with the Dock where some kioworker process might show up as a separate icon. I packaged it in dolphin.app MacOS bundle, gave kioworker a Info.plist with LSUIElement=true, and that got rid of the Dock glitch.
So, I wouldn't say it's entirely painless to install. But if you're sufficiently annoyed by Finder, building Dolphin can be worth the effort.
Kate's a pretty good editor. I've made an attempt to replace vscode/vscodium with it once before.
The article is right about vscode turning into proprietary mush. I use vscodium and have run into issues with plugins that require cpptools, while cpptools complains whenever you, or an extension you're using, accesses it in an editor other than vscode.
It's been awhile but I remember there were things I was used to, some really nice things, that I didn't want to give up.
I love vscode's markdown editing features. (pasting a link over text to create a hyperlink or dragging and dropping image files to embed images etc.) I think some of the keyboard shortcuts I was used to were different (duplicating lines, selecting all occurrences of a selected text). Behavior of word/token traversing(Ctrl + Left|Right Arrow) was different. There were some things kate couldn't do at all that I don't remember.
This is pretty much the exact same way I use Sublime (except the git diff stuff is done in Sublime Merge, which is a separate application)
I've tried switching to Kate a few times since I prefer open source tools, but it feels like a major step down UX-wise. My primary workstations have been Linux with KDE Plasma for many years, but I am not a huge fan of the KDE aesthetics (which seems to aim for maximizing clutter).
I'm generally not a picky person, but my text editor is by far my most-used tool, so it's an exception.
I like that you can extend Sublime with Python. I know that it will never be Emacs, but Emacs is too hard for me, while Sublime feels much more accessible.
I don’t think it will dethrone Neovim for me, but this makes me wonder whether Kate could become my second editor and allow me to largely drop VS Code, especially with the DAP support. The session support also looks interesting.
I have been using neovim extensively for past several years. I also use vscode occasionally. Last year I tried Zed and was very impressed with its speed, responsiveness and featureset. Now it is available for Linux has well, but I have not tried linux version yet.
I use Kate only causally for some small temporary text snippets. I use Neovim with DAP fine using nvim-dap + nvim-dap-ui. I also recently started using LSP in neovim, and it's actually pretty powerful.
I should honestly give DAP a try in Neovim. I think DAP being newer, seemingly getting less attention than other elaborate technologies to integrate like LSP or Treesitter, and having a more complex UI made me suspect it might not be reliable. Adding a DAP plugin to a secondary editor also feels less risky. But it sounds like my concerns may have been addressed, if not overblown all along.
I have tried zed, and promptly uninstalled once I saw it was automatically downloading and running nodejs. I want an editor that is lightweight, not one that starts running extra crap I neither need nor want in the background. That was on top of the big focus on LLM integration (itself already a significant negative for me), but which I was willing to overlook to try out the rest.
I don't think Zed is very good in its current state. Too much extra cruft out of the box which you need to disable.
Fasterthanlime recommended it a while back on Mastodon so that did pique my interest. The focus on AI kind of put me off Zed, though. I don’t know whether that’s fair—I see one of their blog posts touts “Out of Your Face AI”—but that was my reaction.
Well, I use KDE for a while now, but one thing I've always tried to avoid was Kate ;-)
My primary editor is vim (cli), and my secondary editor is kwrite. Nowadays, I think kwrite is part of the Kate package, just simpler, as I don't like the whole session feature when you just want to edit a single file.
One feature that is impossible to live without for me is Undo Tree. Unfortunately, the only editors that support it are Vim/Neovim and Emacs. I would love to switch to one of these modern editors, but not a single one of them supports this feature.
You don't get a visible tree representation, but JetBrains at least saves every change to your files regardless of how they were edited and whether any changes were reverted. It produces a flat list though, but you do get diffs and it works across all edited files, not just the current one (it's basically a built-in mini-VCS).
I'm writing an editor. Could you explain to me the use case? I looked it up and I don't exactly understand the reason besides it might be fun to look at
I really did not like that other editors would lose text if you pressed undo and type. The way my undo's work is if you type "a b c" and hit undo twice (so it's just "a") then type "d", then undo twice, it'll restore to "a b c"
Many times, I write a bunch of code before realising that a lot of it (but not all of it) is incorrect. At this point, being able to switch between two different points of history and selectively copy-paste the stuff that was correct is a godsend.
This is especially useful if you undid some operations, typed a little and then realised that you forgot to copy some important stuff that was strewn around in the old version.
I‘m contemplating for a while to find a replacement for VSCode. I switched to it because Atom became too slow and it had great builtin support for most stuff. But I actually was never 100% happy. I usually split my work between bigger projects and smaller file edits. And VSCode was good for the second flow. But over the years and the popularity of LSPs it kinda became dump as well. I mean the fact that if one wants to edit a python or ruby file and simply wants code formatting and a semi smart intelli sense one needs to install an lsp plus plugin etc etc. Which used to work out of the box without bigger configuration. I work on different types of projects and need a fast and quick editor from time to time. VSCode used to be that for me. But now it’s bloated as a full IDE in some cases. Will look into Kate just to see what it has to offer.
TIL about Kate editor, but after 30 years of just using vi in a terminal (Unix, Mac, even Windows in cmd.exe) I switched to Zed editor (https://zed.dev). I had tried other editors in the past, but quickly fell back to vi/vim after a few hours or days, for various reasons. Been using Zed for a couple of months now and no plans to go back. It also uses LSPs, but whenever I connect to some (Linux) dev host from Zed on my Mac, it autoinstalls clangd to a .local directory and so far I haven’t had to manually install any extra software. Just took a while to figure out the best Zed config for me. It’s very configurable, customizable, but the UI itself is snappy & clean (written in Rust, for those who care about it).
I also really like Zed. But what prevents me from switching to Zed, is my workflow. I tend not to run desktop GUI applications on my main development machine (headless and sometimes remote). nvim is excellent in such circumstances.
Also nvim is available on all platforms. I know Zed is also recently available on Linux, but I really doubt it will be as good as Zed on Mac.
there is one feature that I truly miss from notepad++ and couldn't find it in kate.
the feature is the option to bookmark all matching lines in the find dialog, then from the bookmarks submenu you can delete bookmarked lines or delete unbookmarked lines.
super useful, yet couldn't find it in any other editor.
You have this in vim. It’s called “the quickfix list.”
Granted, it’s not as obvious to use as NP++ I’m sure. And it’s actually a generalized feature that works for more than just searches. But it does automatically get populated whenever you :grep in vim.
(Actually, a lot of KDE programs do, I was elated to find out I could use Dolphin as file manager when I was limited by Finder)
I think Kate strikes this really nice middleground. It starts up immediately as just a text editor, but you can push it as far as you want to
I had to install several dependencies through homebrew, ignore some default dependencies that don't make sense on mac (wayland, pipewire, etc), and then it worked.
The build command I used, for reference: kde-builder dolphin --ignore-projects wayland plasma-wayland-protocols wayland-protocols kglobalaccel kpipewire kwayland selenium-webdriver-at-spi baloo packagekit-qt baloo-widgets
Note also there's some mac weirdness with the Dock where some kioworker process might show up as a separate icon. I packaged it in dolphin.app MacOS bundle, gave kioworker a Info.plist with LSUIElement=true, and that got rid of the Dock glitch.
So, I wouldn't say it's entirely painless to install. But if you're sufficiently annoyed by Finder, building Dolphin can be worth the effort.
The article is right about vscode turning into proprietary mush. I use vscodium and have run into issues with plugins that require cpptools, while cpptools complains whenever you, or an extension you're using, accesses it in an editor other than vscode.
I love vscode's markdown editing features. (pasting a link over text to create a hyperlink or dragging and dropping image files to embed images etc.) I think some of the keyboard shortcuts I was used to were different (duplicating lines, selecting all occurrences of a selected text). Behavior of word/token traversing(Ctrl + Left|Right Arrow) was different. There were some things kate couldn't do at all that I don't remember.
I've tried switching to Kate a few times since I prefer open source tools, but it feels like a major step down UX-wise. My primary workstations have been Linux with KDE Plasma for many years, but I am not a huge fan of the KDE aesthetics (which seems to aim for maximizing clutter).
I'm generally not a picky person, but my text editor is by far my most-used tool, so it's an exception.
I don't think Zed is very good in its current state. Too much extra cruft out of the box which you need to disable.
My primary editor is vim (cli), and my secondary editor is kwrite. Nowadays, I think kwrite is part of the Kate package, just simpler, as I don't like the whole session feature when you just want to edit a single file.
https://www.jetbrains.com/help/idea/local-history.html
I really did not like that other editors would lose text if you pressed undo and type. The way my undo's work is if you type "a b c" and hit undo twice (so it's just "a") then type "d", then undo twice, it'll restore to "a b c"
This is especially useful if you undid some operations, typed a little and then realised that you forgot to copy some important stuff that was strewn around in the old version.
Kate Text Editor and OrgMode - https://news.ycombinator.com/item?id=40899978 - July 2024 (1 comment)
Kate editor on all platforms - https://news.ycombinator.com/item?id=40032869 - April 2024 (153 comments)
Kate Editor Features - https://news.ycombinator.com/item?id=37231529 - Aug 2023 (18 comments)
Integrated Terminal on Windows in KDE Kate - https://news.ycombinator.com/item?id=34824467 - Feb 2023 (1 comment)
Kate - https://news.ycombinator.com/item?id=34697173 - Feb 2023 (23 comments)
Using Kate's Git Features - https://news.ycombinator.com/item?id=34624765 - Feb 2023 (1 comment)
Kate – New Features – August 2022 - https://news.ycombinator.com/item?id=32585221 - Aug 2022 (1 comment)
Kate 22.08 - https://news.ycombinator.com/item?id=32219281 - July 2022 (6 comments)
Kate is a fantastic text editor - https://news.ycombinator.com/item?id=29623909 - Dec 2021 (1 comment)
KDE Advanced Text Editor: A Feature-Packed Text Editor - https://news.ycombinator.com/item?id=26972858 - April 2021 (1 comment)
Kate Editor: Search In Files and Multi-Threading - https://news.ycombinator.com/item?id=25969409 - Jan 2021 (1 comment)
The Kate Text Editor in 2020 - https://news.ycombinator.com/item?id=25592677 - Dec 2020 (5 comments)
The Kate text editor is 20 years old - https://news.ycombinator.com/item?id=25424735 - Dec 2020 (81 comments)
Kate is soon 20 years old - https://news.ycombinator.com/item?id=25030096 - Nov 2020 (12 comments)
Kate – A Qt Text Editor for Linux, MacOS and Windows - https://news.ycombinator.com/item?id=16558407 - March 2018 (2 comments)
Kate Turning 10 Years Old - https://news.ycombinator.com/item?id=2876471 - Aug 2011 (20 comments)
the feature is the option to bookmark all matching lines in the find dialog, then from the bookmarks submenu you can delete bookmarked lines or delete unbookmarked lines.
super useful, yet couldn't find it in any other editor.
Granted, it’s not as obvious to use as NP++ I’m sure. And it’s actually a generalized feature that works for more than just searches. But it does automatically get populated whenever you :grep in vim.