Kate hopes and dreams (wishlist)

Kate is amazing text editor. It’s honestly my primary pick over VSCode/Codium any day.

But I think Kate could still use some more love. There is already a wishlist here: Kate Improvements and Suggestions 2023 (#92) · Issues · Utilities / Kate · GitLab

However I feel like not everyone has invent account, so maybe it’s easier to juggle around some ideas here as well.

Here’s some of my personal wishes:

  • Make it clear the debug plugin can be used more than just GDB since it has DAP support (I will work on this at some point unless someone else is faster :stuck_out_tongue: Basically need to do some renaming)
  • Streamline the session management (These are just my opinions on the matter, do tell me if I am wrong :V )
    • Sessions shouldn’t IMO handle plugin settings at all.
    • Plugin settings should be tied to the project the plugin is opened in, using .kateproject files.
    • Ideally, in my opinion, the flow is like this: Session holds multiple projects, projects hold plugin settings per project.
  • Some items like diagnostics etc. are a bit “all over the place” like build plugin has it’s own build diagnostics. I’m currently working on streamlining this since diagnostics panel has now nice filtering.
  • General streamlining of features (Please report more of these)
  • .kateproject files should be more upfront and there should be a tool to generate a kateproject template file, like VSCode has for some of it’s settings, like debugging tools.
  • Very big and difficult goal: Plugin creation without needing for C++ and building.
    • I know a couple of people who would be interested in making plugins for Kate but they really do not like writing C++.

Feel free to share your ideas here or the issue I linked above!

7 Likes

IMHO Kate is one of the best text editor / IDE.

I agree about the .kateproject. I don’t see how one is suppose to use them at all without previous knowledge.

About personal wishes, I think the filesystem browser need some improvements. It is what trigger me the most as I tend to alt+tab to dolphin from time to time instead of staying in Kate.

I don’t know if I am using it wrong, but all I see each time is :
image
I didn’t find any options to resize or manage columns, so I have to either have the panel take half the screen or guess the filenames.

It may also be a setting, but it don’t act well with tree view. Each time I click on a file, it open the view on the folder. So in a situation like this :

.
├── include
│   └── hello.h
└── src
    └── hello.c

Instead of clicking one the .c, then the .h, I have to click on the .c, change the folder, then click on the .h. It defeat the purpose of having a tree view.

3 Likes

Yeah, a simple “save currently open files as .kateproject” action would be awesome.

6 Likes

For filesystem browser there is a tiny settings button there

image

Tree view is the most compact. Also you can disable the “atomatically synchronise” setting so it wont change the folder on you.

2 Likes

I was thinking of adding a settings tab for the project plugin that can be used to generate/modify .kateproject file. If .kateproject exists it parses all the data from it and then you can modify it.

It would also show the file in it’s json form so one could modify just from that.

2 Likes

I think on the welcome page, there could be a selection from a list of projects and sessions.

The one thing keepiing me on Visual Studio Code is Debugger Adapter Protocol support.

Kate has it! :slight_smile: gdbplugin: Debugger Adapter Protocol backend (!741) · Merge requests · Utilities / Kate · GitLab

But it definitely should be more widely out there for everyone. It’s a bit of hidden feature now. But it has worked well for me!

3 Likes

We just merged a commit that adds debug buttons always to be visible in the debug view like this:

I’ve also renamed the plugin and fixed the IO view colors. I will keep working on fixing bugs etc. on Kate debug plugin for now.

7 Likes

Oh, this is exciting! Thank you!

1 Like

Kate Editor. There is one option I would like to see and that is ‘Column mode’. I have an old editor from another company that I use for working with text documents for my applications. Many times I have the need to create columns of miscellaneous information. How about a hot key such as ALT+C to turn column mode on or off? Great editor, Kate. I am playing with it now learning how to navigate it’s resources. Thank you.

1 Like

Forgot to mention that I’ve added the DAP settings visible in the settings menu now!

I think this will be out with 23.08.

Just need to write the documentation too… :smiley:

3 Likes

By the way, if you wish to try newest git version of Kate, here’s couple things I have for it:

Fedora: akselmo/kate Copr

Arch: Install package home:akselmo:kate-git-arch / kate-git

1 Like

Would be great to have support for multiple language servers per language.
Use case:
GitHub - pappasam/jedi-language-server: A Python language server exclusively for Jedi. If Jedi supports it well, this language server should too., for python supports some functionality, and they delegate people to use for code diagnostics etc to different server, GitHub - iamcco/diagnostic-languageserver: diagnostic language server integrate with linters. Currently, I don’t see possibility to use both of them at the same time in Kate.

1 Like

Hi,

I make a wish for kate, files open on wayland like on x11

In my case, when I open files with Kate on different virtual desktops, Wayland groups all the Kate windows into a single akte instance. Therefore, when I open another file, it is grouped with the existing instance of Kate instead of creating a new separate kate instance on another virtual desktop.

Predictive markdown support? Like when writing dotted lists and pressing Enter, that the - already appears.

Also LSP servers that actually work? I always get some errors on Fedora but I found no way to get Bash, fish or python suggestions.

Also, preset code blocks with a few clicks?

More plugins by users! Poorly no idea how to do that, but I would like to learn typst and Kate is simply the best editor. Vscodium has a user plugin already

1 Like

In my case, when I open files with Kate on different virtual desktops, Wayland groups all the Kate windows into a single akte instance.

Check in configure kate → behaviour → open each document in its own window. Would that work for you?

1 Like

Predictive markdown support? Like when writing dotted lists and pressing Enter, that the - already appears.
Also, preset code blocks with a few clicks?

Kate has snippets plugin that can be scripted to do whatever you wish, so that might work for you :slight_smile: The scripts use javascript if i remember correctly.

Also LSP servers that actually work? I always get some errors on Fedora but I found no way to get Bash, fish or python suggestions.

This is out of our hands, you could ask Fedora for help on this. When I used Fedora, I symlinked all my LSP stuff to ~/.local/bin (if I downloaded it from github for example) and then set it to the session variable with the help of this: Session Environment Variables - KDE UserBase Wiki

This way Kate could read the LSP binaries/links from ~/.local/bin without any extra steps.

More plugins by users! Poorly no idea how to do that, but I would like to learn typst and Kate is simply the best editor. Vscodium has a user plugin already

I hope to see this too in future :slight_smile:

1 Like

Hi,

Thanks a lot, you solve it, I set kate with your parameter, kate open now each document in its own window.

Please, By default set kate with the parameter, open each document in its own window.

Kate should make accessing some of the following basic text/lines functions more easily via its menu:

  • Sort lines (ascending/descending),
  • Trim leading and trailing spaces and tabs from lines,
  • Delete duplicated lines,
  • Delete empty lines,
  • Shuffle lines,
  • Indent (shift right/left) lines,
  • Format selected lines or whole text,
  • Word count

It’s sad to see some important functions buried deep in those ambiguous sub menus

1 Like