Commit Graph

189 Commits

Author SHA1 Message Date
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
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
bd8f215c55 load file after shell commands 2016-11-12 14:33:59 +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
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
ec4cb78535 rename paste command to put 2016-11-06 18:09:18 +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
Ivan Menshykov
2345e16794 Dirfirst option and numerical sorting (#27)
* Create option dirfirst, and add numerical sorting

* Add only dirfirst option
2016-10-18 23:17:27 +03:00
Gokcehan
a3965ca1d9 handle keys of push command while scanning 2016-10-15 21:46:31 +03:00
Olivier Perret
69ff83a4b0 add command to invert marks in current directory 2016-10-09 18:19:32 +02:00
Gokcehan
751dbe8a7c show message for successful yank/delete
Mentioned in #13.
2016-10-02 00:11:45 +03:00
Gokcehan
27135faccd add a push command to simulate key pushes 2016-09-18 19:21:24 +03:00
Gokcehan
6094078185 buffer file and dir previews for drawing
Mentioned in #5.
2016-09-15 16:28:36 +03:00
Gokcehan
ceb1f2d15a expand ~ to HOME in previewer option
Mentioned in #5.
2016-09-15 14:27:14 +03:00
Gokcehan
a31ce17b90 add half-up/half-down/page-up/page-down commands 2016-09-09 00:04:44 +03:00
Gokcehan
607cd7aeff format 2016-09-02 23:06:25 +03:00
Gokcehan
188bd97b3b fix jiggle when scrolloff is maxed 2016-09-02 22:47:11 +03:00
Gokcehan
cd63dc1872 unmap a binding or delete a command when expression is empty
With this commit `map`/`cmd` keywords are also used to remove a
binding/command by leaving the expression part empty (e.g. `map j`
removes keybinding for `j` or `cmd trash` removes `trash` command).

Mentioned in #16.
2016-09-02 21:32:11 +03:00
Gokcehan
a6ae19b0b3 cleanup 2016-08-28 17:02:58 +03:00
Gokcehan
c19d3450a2 add an option to filter file content for preview
Mentioned in #5.
2016-08-28 15:04:57 +03:00
Gokcehan
ce25fc55ca add an option to configure shell used by commands 2016-08-27 14:12:03 +03:00
Gokcehan
ef4dd12e33 use open-file command instead of opener option
Mentioned in #7.
2016-08-25 00:51:52 +03:00
Gokcehan
fb26551693 rename redraw to renew 2016-08-24 12:36:52 +03:00
Gokcehan
4bf8b2d76a sync ui for redraw 2016-08-24 12:34:54 +03:00
Gokcehan
19561f6531 show completion menu for multiple match 2016-08-21 18:41:03 +03:00
CodinCat
aae350fea5 fix cd command without any argument 2016-08-19 10:53:25 +08:00
Gokcehan
4b0a6d1013 cleanup 2016-08-17 23:28:42 +03:00
Gokcehan
3830a2499d error context for evaluator 2016-08-17 23:00:16 +03:00
Gokcehan
fac1c9e8de move selection path handling to eval 2016-08-14 15:37:22 +03:00
Gokcehan
6a2bdf472b handle dir symlinks in preview and open 2016-08-14 15:15:54 +03:00
Gokcehan
4b266c97e9 initial commit 2016-08-13 15:49:04 +03:00