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
def wq %{ write ; quit }
def wq! %{ write! ; quit! }
def waq %{ writeall ; quit }
def waq! %{ writeall!; quit! }
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.
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.
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}
[✓] 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.
def foo %begin
bar %begin
foobar
end
end
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.
:set buffer ft<space>rb<ret> → :set buffer filetype ruby
Take hook global NormalKey * %{ echo %match{0} }
.
%match{0}
is replaced with the match for which this hook was executed.
I'm wondering if syntax highlighting is yet to be implemented or if there's an option I missed to turn it on.
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.
.
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.
def foo %-
bar %-
foobar
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
It should be possible to hook in .git/tags when in Git – Effortless Ctags with Git
A shell script can replace the kakrc file next to the kak binary and remove the
need to ignore kakrc file from kak binary.
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 ]+
:command tchou<esc>
command tchou
should be in history and accessible via :↑
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.
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.