Commit Graph

150 Commits

Author SHA1 Message Date
Gokcehan
3deea69c4d rename 'cmd-delete-beg' to 'cmd-delete-home' 2018-05-16 00:02:06 +03:00
Gokcehan
980a89c908 rename 'cmd-beg' to 'cmd-home' 2018-05-16 00:00:20 +03:00
Gokcehan
de39594a46 add 'cmd-transpose-word' to swap words 2018-05-14 19:38:35 +03:00
Gokcehan
6e6cca33b8 add 'cmd-lowercase-word' to downcase word to end 2018-05-14 01:38:19 +03:00
Gokcehan
18f6d954a7 add 'cmd-uppercase-word' to upcase word to end 2018-05-14 01:30:53 +03:00
Gokcehan
1a95df7b64 add 'cmd-delete-word' to delete word to end 2018-05-14 01:25:26 +03:00
Gokcehan
afefc30a67 rename 'cmd-delete-word' to 'cmd-delete-unix-word' 2018-05-14 01:19:26 +03:00
Gokcehan
0c672fef6f add 'cmd-capitalize-word' to upcase letter 2018-05-14 01:16:01 +03:00
Gokcehan
ef709b5611 implement 'cmd-word' and 'cmd-word-back' commands
Related #67
2018-05-05 19:37:14 +03:00
Gokcehan
a0e1d4d59a sort cached directories while loading 2018-04-18 23:08:28 +03:00
Gokcehan
09b1daaade sort directory preview when options are changed 2018-04-18 21:57:41 +03:00
Gokcehan
8eb9055622 add 'drawbox' option to draw box around windows 2018-04-15 19:26:51 +03:00
Gokcehan
d608eb4a56 handle resize events properly 2018-04-15 18:18:39 +03:00
Gokcehan
ebd599deca remove 'lscolors' option
Related #37
2018-04-14 21:21:39 +03:00
Gokcehan
5a9a829252 handle 256 colors in $LS_COLORS
Related #37
2018-04-14 21:18:39 +03:00
M1rt
f92e0f53a5 LSCOLORS & LS_COLORS support (#96)
* LSCOLORS & LS_COLORS support

* Renamed lsColors to gColors

* Fixed gOptWords & setExpr.eval()
2018-04-14 14:58:29 +03:00
Gokcehan
4d3437a198 add builtin 'draw' command to update efficiently 2018-04-12 21:48:32 +03:00
Gokcehan
03619c3cbb handle command counts efficiently
Related #66
2018-04-12 18:04:37 +03:00
Gokcehan
54315ffde2 clear output on 'cmd-enter' with 'shell-pipe' 2018-04-06 22:22:38 +03:00
Gokcehan
f6c99a7d46 reset 'cmd-hist-next/prev' to last in normal mode 2018-04-03 23:19:13 +03:00
Gokcehan
e55c490bf5 add 'cmd-interrupt' command to kill current shell 2018-04-03 22:56:38 +03:00
Gokcehan
c63c8f63ac pipe stdin for 'shell-pipe' commands 2018-04-03 22:22:58 +03:00
Gokcehan
68232c06e3 rename 'read-shell' to 'shell' in shell commands 2018-03-27 21:23:34 +03:00
Gokcehan
4f05975e77 add builtin 'select' command to change selection 2018-03-27 20:47:17 +03:00
Gokcehan
32d729eac1 add a new shell type displaying the output 2018-03-26 21:22:18 +03:00
Gokcehan
61c8b588cd add promptfmt option to configure prompt line
Related #50
2018-02-22 18:18:30 +03:00
Gokcehan
288561a9ba bind redraw to control-l
Mentioned in #92.
2018-01-29 18:12:59 +03:00
Gokcehan
f6cce2d40c rename renew to reload and bind to control-r
Mentioned in #92.
2018-01-29 18:08:51 +03:00
Gokcehan
2c63096d3b avoid renew when hidden option is changed
Mentioned in #92.
2017-11-30 23:11:37 +03:00
Gokcehan
ce508d7ed3 add unmark command to unmark all selections
Mentioned in #79.
2017-11-25 16:15:04 +03:00
Gokcehan
d16fcbea71 add sanity checks to ratios option
Mentioned in #77.
2017-11-22 17:30:09 +03:00
Gokcehan
9b7bf63096 cleanup 2017-11-19 21:55:13 +03:00
Gokcehan
30ed1c651f add redraw command for ui update
Mentioned in #92.
2017-11-19 02:36:01 +03:00
Gokcehan
accb61dad1 eliminate redundant renews for sort changes
Mentioned in #92.
2017-11-18 22:06:30 +03:00
Gokcehan
fed8d73ffe move server file clearing to builtin 'put' command
If a user defines an asynchronous 'put' command it will fetch an empty
list from the server since server file list is immediately cleared after
every 'put' command. Now that we move the clearing to the builtin 'put'
command, users need to explicitly clear server file list in their custom
'put' commands if they like.
2017-10-26 21:16:24 +03:00
Gokcehan
263c9d9fef enable user defined 'put' commands
Mentioned in #48.
2017-09-10 17:14:50 +03:00
Gokcehan
cb577a4c3a handle user variables on all platforms 2017-08-06 11:05:46 +03:00
Gokcehan
cb072eba12 add smartcase option for smart case sensitive search
Mentioned in #69.
2017-07-15 17:46:22 +03:00
Gokcehan
ca7a3ccab4 add ignorecase option for case insensitive search
Mentioned in #69.
2017-07-15 17:18:37 +03:00
Gokcehan
9e69ce94ca add globsearch option for wildcard searching
Mentioned in #69.
2017-07-15 17:06:18 +03:00
Karol Woźniak
fe05105c88 Implement directory count info (#85) 2017-06-03 14:12:43 +03:00
Gokcehan
9962b378a8 add commands history
Mentioned in #81.
2017-05-15 12:30:50 +03:00
Gokcehan
3eca9059bf refresh preview after search
Mentioned in #78.
2017-04-19 17:02:15 +03:00
Gokcehan
52fbe460b7 update preview after shell commands
Mentioned in #64 and #71.
2017-04-09 18:18:02 +03:00
Gokcehan
8bc975a858 add wrapscan option for cyclic search
Mentioned in #57.
2017-03-16 16:22:42 +03:00
Gokcehan
249c44739f update preview and fileinfo after toggle
Mentioned in #64.
2017-03-10 19:00:21 +03:00
Gokcehan
3fd1222e4f implement cmap for command line mapping 2017-03-10 18:53:21 +03:00
Gokcehan
c55c4bf254 rename showinfo option to info
Related to #39.
2017-02-04 21:33:36 +03:00
Gokcehan
d605781d09 modify showinfo to handle multiple values
Mentioned in #39.
2017-02-04 21:28:03 +03:00
Gokcehan
6792ed86df update current file after shell commands 2017-01-15 15:44:47 +03:00
Olivier Perret
a704248696 preserve mark order in f[sx] variables (#59)
* preserve mark order in f[sx] variables

* Revert "preserve mark order in f[sx] variables"

This reverts commit e02c5e8bb3ec58f7cefafc92419f14c51e6730ef.

* preserve mark order in f[sx], but more efficiently
credit to @gokcehan for the idea
2017-01-06 00:23:22 +03:00
Olivier Perret
97cc5f78a8 refresh preview when searching (#56) 2016-12-26 23:51:59 +03:00
Karol Woźniak
8be854d3ba Add reverse option (#55) 2016-12-26 23:49:18 +03:00
Gokcehan
ad6ead5e45 add a filesep option to configure file seperator
Mentioned in #47.
2016-12-24 16:06:44 +03:00
Gokcehan
f7e778591a implement search/search-back and search-next/prev
Closes #38.
2016-12-24 15:57:57 +03:00
Gokcehan
977f6e287d sync file selection after put 2016-12-19 22:00:50 +03:00
Gokcehan
563fae38d2 add clear command to clear file selection
Mentioned in #45.
2016-12-19 21:53:47 +03:00
Gokcehan
0298630114 add remote flag to send remote commands to server
Mentioned in #45.
2016-12-19 21:28:57 +03:00
Gokcehan
2085b6d797 handle ratios change at runtime 2016-12-18 22:38:28 +03:00
Gokcehan
a717c31ca1 cleanup 2016-12-18 21:34:41 +03:00
Gokcehan
e532db082f use lowercase initials for type names 2016-12-18 00:47:37 +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
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