mawww / kakoune Goto Github PK
View Code? Open in Web Editor NEWmawww's experiment for a better code editor
Home Page: http://kakoune.org
License: The Unlicense
mawww's experiment for a better code editor
Home Page: http://kakoune.org
License: The Unlicense
:set buffer ft<space>rb<ret> → :set buffer filetype ruby
A shell script can replace the kakrc file next to the kak binary and remove the
need to ignore kakrc file from kak binary.
It should be possible to hook in .git/tags when in Git – Effortless Ctags with Git
I'm wondering if syntax highlighting is yet to be implemented or if there's an option I missed to turn it on.
.
repeats last change.
After typing <a-a>WD
, D
is repeatable in .
.
map global normal R <a-a>WD
After typing R
, <a-a>WD
should be repeatable in .
.
It concerns registers as well.
Example:
╭───────────╮
│ foobar │ n: bar
│ ‾‾‾‾‾‾ │
│ bazqux │ n: qux
│ ‾‾‾‾‾‾ │
╰───────────╯
→ s
%reg{n}
╭───────────╮
│ foobar │ n: bar
│ ‾‾‾ │
│ bazqux │ n: qux
│ ‾‾‾ │
╰───────────╯
We can always have the values of main register by executing
→ s
<c-r>n
Instead of
→ s
%reg{n}
Editing multiple buffers is not easy at the moment. Should be fixed in commit: add -buffer parameter to :exec command.
:exec -buffer a,b,c,d qq
auto show history completion when pressing <up>
or <down>
in command-line. history completion ends when pressing <left>
or <right>
or no candidates.
It’s not like we could offer intelligent completion for regex.
Propose a server where Kakoune is available is nice anyway. In this way, new
comers can learn the basics of Kakoune in their terminal (or browser) without
having to build or install Kakoune.
It should not, gl is to line end, on an empty line we are already on it.
n
for next match is definitely close to vi but I have another use case – n
for negate (see #41).
Also, m
for to match still consistent.
def foo %begin
bar %begin
foobar
end
end
[✓] backspace: delete the character before the cursor
[✗] delete: delete the character under the cursor
[✓] ←: select the character on the right of selection end
[✓] ↓: select the character below the selection end
[✓] ↑: select the character above the selection end
[✓] →: select the character on the left of selection end
shift arrow to extend current selection instead of replacing is not supported.
:command tchou<esc>
command tchou
should be in history and accessible via :↑
Take hook global NormalKey * %{ echo %match{0} }
.
%match{0}
is replaced with the match for which this hook was executed.
search for today with date
is possible by using :exec %sh{…}
:exec / %sh{ date }<ret>
Not bad, but it kind of breaks the natural thinking in interactive use.
/<alt-|>date<ret><ret>
should ease interactive use of shell command in (insert|command-line|prompt) mode.
def foo %-
bar %-
foobar
f
and t
motions can be replaced with <limit>/<characters>
then H
or L
motions if needed.
When providing a count with /
, set the maximum allowed length of the user input to <limit>
characters. Kakoune will automatically issue the command when the user input reaches that length.
Use case:
Example:
; JSON grammar
; see http://json.org
JSON ← S? ( Object / Array / String / True / False / Null / Number ) S?
Object ← "{"
( String ":" JSON ( "," String ":" JSON )*
/ S? )
"}"
Array ← "["
( JSON ( "," JSON )*
/ S? )
"]"
String ← S? ["] ( [^ " \ U+0000-U+001F ] / Escape )* ["] S?
Escape ← [\] ( [ " / \ b f n r t ] / UnicodeEscape )
UnicodeEscape ← "u" [0-9A-Fa-f]{4}
True ← "true"
False ← "false"
Null ← "null"
Number ← Minus? IntegralPart FractionalPart? ExponentPart?
Minus ← "-"
IntegralPart ← "0" / [1-9] [0-9]*
FractionalPart ← "." [0-9]+
ExponentPart ← ( "e" / "E" ) ( "+" / "-" )? [0-9]+
S ← [ U+0009 U+000A U+000D U+0020 ]+
def wq %{ write ; quit }
def wq! %{ write! ; quit! }
def waq %{ writeall ; quit }
def waq! %{ writeall!; quit! }
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.