Classic confinement and alias request for kakoune

Kakoune is an editor so users will need to edit files anywhere on their system, therefore classic confinement is required :slight_smile:.

I’d also like to request the alias kak as this is what the upstream binary uses.

Repo with snapcraft.yaml: github.com/lukewh/kakoune-snap

Any reason you didn’t register kakoune rather than kakoune-lukewh? If you registered the ‘proper’ name you could then offer the snap upstream.

It was already registered and I wanted to ensure it worked first. I’ll try my luck and request kakoune :+1:

:white_check_mark: Done

1 Like

This is now a request for classic confinement for kakoune!

https://kakoune.org/ lists kakoune as a code editor. Some code editors like gedit work in strict mode while others or more like IDEs and require access to hostfs for include files, etc, etc. Also, code editors typically aren’t used for editing system files.

Can you describe more specifically what the typical use cases are for kakoune? Is it (only) a cli tool? If it is graphical, can it be made to use xdg-open? Also if graphical, how is it typically invoked to edit system files?

Kakoune is based on Vi and in that sense is a general text editor, however its main focus is code editing, which many people use it for. Some plugins available for Kakoune extend its IDE-like behaviour.

I however use it as a general editor, in place of Vi/ Vim for quick edits to configs, yaml etc. (the syntax support is good out of the box) - I have $EDITOR set to kak.

I am by no means a Kakoune power user as it supports window management via X11 - but in this case Kakoune acts as a server as far as I can tell and as such is CLI only.

kak is invoked from a terminal, here’s the -help output:

Usage: kak [options] [file]... [+<line>[:<col>]|+:]

Options:
-c <arg>     connect to given session
-e <arg>     execute argument on client initialisation
-E <arg>     execute argument on server initialisation
-n           do not source kakrc files on startup
-s <arg>     set session name
-d           run as a headless session (requires -s)
-p <arg>     just send stdin as commands to the given session
-f <arg>     filter: for each file, select the entire buffer and execute the given keys
-i <arg>     backup the files on which a filter is applied using the given suffix
-q           in filter mode, be quiet about errors applying keys
-ui <arg>    set the type of user interface to use (ncurses, dummy, or json)
-l           list existing sessions
-clear       clear dead sessions
-debug <arg> initial debug option value
-version     display kakoune version and exit
-ro          readonly mode
-help        display a help message and quit

Prefixing a positional argument with a plus (`+`) sign will place the
cursor at a given set of coordinates, or the end of the buffer if the plus
sign is followed only by a colon (`:`)

:slightly_smiling_face:

Thank you for the additional information. There are other vim derivatives (not to mention emacs) which are all classic, so the requirements are understood.

@advocacy - can you vet the publisher?

+1 for the kak alias (which is a binary provided by the kakoune deb so clearly appropriate). @reviewers - can others vote on the alias?

+1 on the kak alias - it seems both distinctive enough and known for kakoune, command-not-found offers that as the sole provider of that command in the deb universe.

  • Daniel

+1 from me too for the kak alias

3 votes for, 0 against for the ‘kak’ alias. Granting. This is now live.

I’ve performed the vetting. Granting classic.