Commit Graph

376 Commits

Author SHA1 Message Date
Gokcehan
e532db082f use lowercase initials for type names 2016-12-18 00:47:37 +03:00
Gokcehan
8ae5f838c7 simplify number extraction using regexp 2016-12-18 00:02:30 +03:00
Gokcehan
8d42bb166b increase lookahead length for ansi codes
Mentioned in #52.
2016-12-17 15:27:27 +03:00
Gokcehan
18bf206e8c handle empty folders properly while drawing the ui 2016-12-15 16:43:29 +03:00
Gokcehan
d3de4d8f32 skip broken links for executable completion 2016-12-15 16:19:01 +03:00
Gokcehan
22b157a8fa fix panic for empty shell completions 2016-12-15 16:11:41 +03:00
Gokcehan
751290ed9b fix panic for empty completions 2016-12-15 16:04:15 +03:00
Gokcehan
5f87cb2542 implement asynchronous read commands
This commit changes previous reading command implementation to an
asynchronous implementation. By the nature of this change, this commit
touches many places in the ui and evaluator. Aim is to fix the following
problems:

- There is no race condition anymore when reading commands and other
commands update the ui at the same time.

- Autocompletion and keymenu is now drawn in the main draw event. This
should fix some ui glitches when a new menu is smaller than the previous
one.

- Window resize event when reading a command is now properly handled.

- Readline actions are now regular commands. This should make it
possible to change the default keybindings for these actions in the
future.

Mentioned in #36.
2016-12-15 12:26:06 +03:00
Gokcehan
f66a4a4a2e don't override error messages in statusline 2016-12-03 01:05:49 +03:00
Gokcehan
721a20269e add natural sorting as a sortby option
Closes #21.
2016-12-03 00:45:04 +03:00
Gokcehan
225bd5b49c fix number extraction ending with number 2016-12-03 00:38:23 +03:00
Gokcehan
932e644c93 handle escapes in completions 2016-12-03 00:28:25 +03:00
Gokcehan
217d89ff96 handle unusual escape codes in files 2016-11-29 17:01:33 +03:00
Gokcehan
bfd33f8437 add whitespace escaping for backslash 2016-11-22 22:12:47 +03:00
Gokcehan
87434d3fe6 add quoting for single quote 2016-11-22 21:31:20 +03:00
Gokcehan
91ad00a294 remove client log file on successful quit 2016-11-22 21:01:29 +03:00
Gokcehan
e643525d5c use a buffered channel for quitting 2016-11-22 20:42:37 +03:00
Gokcehan
c8202bbc7a add timefmt option for time format in status line
Mentioned in #41.
2016-11-21 23:13:33 +03:00
Gokcehan
fdf8e9d480 send the actual passed cmd in sendServer 2016-11-18 23:38:38 +03:00
Gokcehan
4e1f1601fe add unicode command test 2016-11-18 22:45:49 +03:00
Gokcehan
586938fa70 cleanup 2016-11-18 22:41:18 +03:00
Gokcehan
697a05cdd0 handle unicode in the prompt
Mentioned in #30.
2016-11-18 22:28:55 +03:00
Gokcehan
d67054a000 replace /x/text package with mattn/go-runewidth
Mentioned in #35.
2016-11-14 01:35:34 +03:00
Gokcehan
d19809e8b6 evaluate search while reading 2016-11-14 01:16:52 +03:00
Gokcehan
bd8f215c55 load file after shell commands 2016-11-12 14:33:59 +03:00
Gokcehan
609c637e82 move file sorting to nav 2016-11-11 00:18:56 +03:00
Gokcehan
c6560ad607 fix less function for name sorting
Mentioned in #43.
2016-11-11 00:08:35 +03:00
Gokcehan
d151334f8f remove yank/delete messages
Mentioned in #13.
2016-11-10 23:47:07 +03:00
Gokcehan
3b5759efba sync with server on startup
Mentioned in #13 and #36.
2016-11-10 23:43:54 +03:00
Gokcehan
428f9e3dcb sync all clients in yank/delete
Mentioned in #13 and #36.
2016-11-10 23:32:46 +03:00
Karol Woźniak
a4c395a4de Refactor sorting types to only implement Len and Swap once (#43)
Using "trick" similar to `sort.Slice` that's comming in `go1.8`.
2016-11-10 01:01:30 +03:00
Gokcehan
9962827926 add sync command to synchronize yanked/deleted files with server
Mentioned in #13 and #36.
2016-11-09 00:39:39 +03:00
Gokcehan
c9023d4cdc load current file when ratios is modified 2016-11-08 00:13:37 +03:00
Gokcehan
724422efa3 keep a copy of saved files and show in the ui
Mentioned in #13 and #36.
2016-11-07 23:32:19 +03:00
Gokcehan
1511e05a2c comment 2016-11-06 23:25:59 +03:00
Gokcehan
6008bef959 move readExpr from ui to app 2016-11-06 23:10:42 +03:00
Gokcehan
84d066050c cleanup 2016-11-06 22:59:42 +03:00
Gokcehan
4fff4f97e2 remove redundant flush from ui.renew 2016-11-06 22:51:54 +03:00
Gokcehan
23f89f7c7f use single line strings for file list save and load 2016-11-06 21:32:14 +03:00
Gokcehan
b83833ed1c remove periodic renew from non-features
Mentioned in #36.
2016-11-06 20:48:45 +03:00
Gokcehan
4891a87d11 pass client id as id variable for shell commands
Mentioned in #36.
2016-11-06 18:19:48 +03:00
Gokcehan
ec4cb78535 rename paste command to put 2016-11-06 18:09:18 +03:00
Gokcehan
daff377f2d create server expression channel for only successful connections
Mentioned in #42.
2016-11-06 17:08:16 +03:00
Gokcehan
a2cc32c908 implement a send command for remove commands
Mentioned in #36.
2016-11-06 17:06:25 +03:00
Gokcehan
d622e74c51 use a unique id for each client
Mentioned in #36.
2016-11-06 01:49:45 +03:00
Gokcehan
e753b5b159 evaluate push command while reading 2016-10-31 11:52:32 +03:00
Ivan Menshykov
ca090fd144 Shadowing variable (#40) 2016-10-30 23:45:11 +03:00
Gokcehan
2f574962bc implement remote ping command 2016-10-30 02:20:35 +03:00
Gokcehan
1e0b558344 use a seperate goroutine/channel for quit 2016-10-27 22:24:42 +03:00
Karol Woźniak
c9b4389c65 Refactor Nav API around symlinks handling (mostly) (#33)
* gofmt ui.go

* Refactor Nav API around symlinks handling (mostly)

1. Get both `Lstat` and `Stat` while reading the files. Stat info is
   used by default, but we still can tell it's a link if needed.
2. Remove all other `Stat` calls from different places.
3. Handle hidden files while reading.
4. `currFile` now returns error if there are no files.
5. `currEmpty` and `currPath` not longer necessary, removed.
6. `open` now returns a named error ErrNotDir, where expected.

7. Side effect: Links that point at directories are now sorted among
   "actual" directories.
2016-10-24 22:18:31 +03:00