Cheer Xiao
|
9c2b6871b3
|
Define edit.tty.Termios entirely in terms of C.struct_termios
syscall and unsafe imports are no longer needed.
|
2014-10-06 23:22:28 +02:00 |
|
Cheer Xiao
|
5069fd9774
|
FreeBSD compatibility fix.
|
2014-10-01 02:07:11 +02:00 |
|
Guangyu Zhang
|
e0212a7353
|
Add Mac OS X support
|
2014-09-28 10:29:20 +08:00 |
|
Cheer Xiao
|
8a5f2513b3
|
edit: Remove Highlighter.
The new Highlighter will be a completely different thing.
|
2014-09-21 22:36:57 +02:00 |
|
Cheer Xiao
|
613ad85a96
|
Introduce Subscript between Compound and Primary
Subscription is no longer implemented as caret. As a result,
`set $a table = [foo]; echo bar$a[0]` now works as expected.
|
2014-09-16 21:12:46 +02:00 |
|
Cheer Xiao
|
2451dc0cf9
|
A term is now a compound expression. A term list is now a spaced expression.
|
2014-09-16 17:57:33 +02:00 |
|
Cheer Xiao
|
319e2d9274
|
A factor is now called a primary expression.
|
2014-09-04 17:17:10 +02:00 |
|
Cheer Xiao
|
a3c8ed4876
|
Instead of specialized parse.Context, just use the incomplete parse tree
|
2014-08-22 09:12:18 +02:00 |
|
Cheer Xiao
|
776c1b3824
|
edit: SIGINT should not reset editorState.savedTermios
This resolves issue #29.
|
2014-07-29 10:30:47 +08:00 |
|
Cheer Xiao
|
ce7dcebb1c
|
edit: Update an outdated comment
|
2014-07-29 10:25:22 +08:00 |
|
Cheer Xiao
|
397be11049
|
Reworked evaluation procedure. This resolves issue #2.
eval.Checker is now replaced by eval.Compiler which compiles the AST into a
closure operating on the Evaluator. Huge commit, sorry.
|
2014-04-30 10:46:36 +08:00 |
|
Cheer Xiao
|
70be7dcd90
|
Slightly more accurate highlighting of commands
|
2014-04-15 21:18:10 +08:00 |
|
Cheer Xiao
|
0761040225
|
Really ignore instead of panic on bogus CPR
|
2014-04-15 11:34:03 +08:00 |
|
Cheer Xiao
|
cd38cbe45e
|
Remove bogus comments
|
2014-04-15 10:52:39 +08:00 |
|
Cheer Xiao
|
227343fffe
|
edit: On encountering error in navigation.refresh, store it and continue
|
2014-04-15 10:51:23 +08:00 |
|
Cheer Xiao
|
06a0760ede
|
New editor builtin kill-word-left
|
2014-03-30 15:03:04 +08:00 |
|
Cheer Xiao
|
a7bfa40302
|
edit.New -> .NewEditor
|
2014-03-20 13:16:20 +08:00 |
|
Cheer Xiao
|
b01a9befbd
|
edit: Synchronize control of edit.Reader too
|
2014-03-17 22:54:42 +08:00 |
|
Cheer Xiao
|
98c034f581
|
util/async-reader.go: set file back to blocking mode and sync properly
|
2014-03-17 22:47:09 +08:00 |
|
Cheer Xiao
|
4a1415dcda
|
Much better sys.SetNonblock...
|
2014-03-17 22:39:57 +08:00 |
|
Cheer Xiao
|
b0719d087c
|
Color commands after ( and ?(
|
2014-03-17 22:00:35 +08:00 |
|
Cheer Xiao
|
06b0098705
|
Status redir now uses ?>. Introduce ?( for status substitution
|
2014-03-17 17:07:38 +08:00 |
|
Cheer Xiao
|
31451c572a
|
Lex, color and highlight the new status redir token >?
|
2014-03-17 11:23:32 +08:00 |
|
Cheer Xiao
|
a6f9b61459
|
edit: Only put non-empty lines into history
|
2014-03-16 23:07:45 +08:00 |
|
Cheer Xiao
|
336815fe4b
|
edit: Ditch cancel-history, just use start-insert
|
2014-03-13 22:30:23 +08:00 |
|
Cheer Xiao
|
36ab4b4f12
|
edit: Fix history
|
2014-03-13 22:27:38 +08:00 |
|
Cheer Xiao
|
370b88cfea
|
edit: Get rid of leReturn.newMode and changeMode
|
2014-03-13 22:21:58 +08:00 |
|
Cheer Xiao
|
8e56d98994
|
edit: Put all transitional states in editorState
|
2014-03-13 22:14:49 +08:00 |
|
Cheer Xiao
|
f034e85888
|
edit: editorState.history is now not a pointer
|
2014-03-13 15:53:48 +08:00 |
|
Cheer Xiao
|
38a8c657fc
|
edit: Reset ed.navigation properly
|
2014-03-10 21:34:54 +08:00 |
|
Cheer Xiao
|
de062a03d1
|
edit: Handle SIGWINCH and SIGINT
SIGINT handling is a bit buggy but will be fixed.
|
2014-03-10 21:33:08 +08:00 |
|
Cheer Xiao
|
2820389fa4
|
edit: sigch -> sigs
|
2014-03-10 21:25:00 +08:00 |
|
Cheer Xiao
|
0624368bcc
|
Use util.AsyncReader to build a new async edit.Reader
Now we can start really dealing with signals!
|
2014-03-10 21:22:54 +08:00 |
|
Cheer Xiao
|
1e4cd9dea0
|
edit: Make 0 a special rune for invalid key
|
2014-03-10 19:07:47 +08:00 |
|
Cheer Xiao
|
877cbe58d1
|
edit: Key.rune -> .Rune
|
2014-03-10 19:06:22 +08:00 |
|
Cheer Xiao
|
64dd483c73
|
edit: Factor out {Setup Cleanup}Terminal
|
2014-03-10 18:52:39 +08:00 |
|
Cheer Xiao
|
b2f4e8f781
|
edit: ReadLine now accepts funcs as prompt and rprompt.
The prompt is now correctly updated when cding in navigation mode
|
2014-03-10 14:51:37 +08:00 |
|
Cheer Xiao
|
afaa18377e
|
edit: Implement and bind move-dot-{up down}
|
2014-03-10 13:47:19 +08:00 |
|
Cheer Xiao
|
6b7e1296c1
|
Add util.Find{FirstEOL LastSOL}; use it
|
2014-03-10 00:31:22 +08:00 |
|
Cheer Xiao
|
8460fa8b4c
|
edit: Fix killLineRight
|
2014-03-10 00:28:43 +08:00 |
|
Cheer Xiao
|
c9686c85be
|
edit: Export most funcs in wcwidth.go
|
2014-03-10 00:17:29 +08:00 |
|
Cheer Xiao
|
bbca89f4c9
|
Support Shift-Tab
|
2014-03-10 00:12:12 +08:00 |
|
Cheer Xiao
|
20924b0c31
|
edit: Don't use Capital in error msg
|
2014-03-10 00:07:29 +08:00 |
|
Cheer Xiao
|
2a4887007b
|
edit: Fix (*BadEscSeq).Error
|
2014-03-10 00:01:51 +08:00 |
|
Cheer Xiao
|
0e8756ce16
|
edit: Ditch -b or -f in builtin names
One of up/down, left/right or prev/next is used depending on the context.
|
2014-03-09 23:59:49 +08:00 |
|
Cheer Xiao
|
d017c35dd9
|
edit: Ditch reader.unreadBuffer
|
2014-03-09 16:21:00 +08:00 |
|
Cheer Xiao
|
1e788f8161
|
edit: Fix command mode line
|
2014-03-09 00:57:49 +08:00 |
|
Cheer Xiao
|
075c399591
|
edit: Only do a full refresh when w.oldBuf.cells != nil
This is quite dirty...
|
2014-03-09 00:56:17 +08:00 |
|
Cheer Xiao
|
3fd932c5bc
|
edit: Implement and bind builtin kill-rune-f
|
2014-03-09 00:53:07 +08:00 |
|
Cheer Xiao
|
331ea9cb09
|
edit: Implement editor builtins kill-line-{b f} really in terms of lines
|
2014-03-09 00:49:30 +08:00 |
|