rtfm-filemanager 1.6.5 → 1.7.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/bin/rtfm +79 -66
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3783b49d04b0ff909d2a28bb622c019921bffc2af20bbe19d8ef06d1bec567f7
|
4
|
+
data.tar.gz: 4beae68faee067a137d89022b322aa2bc96a8d3d6acf1ce50ad5bace8d98ba72
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 88b30836be23ebcbfff703b21c550bf855c21a8f127ed8bd0f65b4d3e10bcfbf1a1fdc3559d58240e70496d5d9c3ea599eaededa0d6792ad5db3fefd87d715c7
|
7
|
+
data.tar.gz: afdd31852da552fc5b923efe8173d6d7d665d67a16aaa7715b02015f6acb3301d62e43d318f0a310b9b19d445f5076ef9aec396963bc4fcc0114c4666fcaadc0
|
data/bin/rtfm
CHANGED
@@ -20,76 +20,77 @@
|
|
20
20
|
RTFM - Ruby Terminal File Manager (https://github.com/isene/RTFM)
|
21
21
|
|
22
22
|
BASIC KEYS
|
23
|
-
?
|
24
|
-
r
|
25
|
-
R
|
26
|
-
W
|
27
|
-
|
28
|
-
q
|
29
|
-
Q
|
23
|
+
? = Show this help text
|
24
|
+
r = Refresh RTFM (recreates all windows. Use on terminal resize or when there is garbage somewhere)
|
25
|
+
R = Reload configuration (~/.rtfm.conf)
|
26
|
+
W = Write parameters to ~/.rtfm.conf
|
27
|
+
(@lsall, @lslong, @lsorder, @lsinvert, @border, @width, @preview, @tagged, @marks)
|
28
|
+
q = Quit
|
29
|
+
Q = QUIT (without writing changes to the config file)
|
30
30
|
|
31
31
|
MOTION
|
32
|
-
DOWN
|
33
|
-
UP
|
34
|
-
LEFT
|
35
|
-
RIGHT
|
36
|
-
|
37
|
-
|
38
|
-
PgDown
|
39
|
-
PgUp
|
40
|
-
END
|
41
|
-
HOME
|
32
|
+
j/DOWN = Go one item down in left pane (rounds to top)
|
33
|
+
k/UP = Go one item up in left pane (rounds to bottom)
|
34
|
+
h/LEFT = Go up one directory level
|
35
|
+
l/RIGHT = Enter directory or open file (using run-mailcap or xdg-open)
|
36
|
+
Use the key 'x' to force open using xdg-open (or run-mailcap) - used for opening html files
|
37
|
+
in a browser rather than editing the file in your text editor
|
38
|
+
PgDown = Go one page down in left pane
|
39
|
+
PgUp = Go one page up in left pane
|
40
|
+
END = Go to last item in left pane
|
41
|
+
HOME = Go to first item in left pane
|
42
42
|
|
43
43
|
JUMPING AND MARKS
|
44
|
-
m
|
45
|
-
|
46
|
-
|
47
|
-
M
|
48
|
-
'
|
49
|
-
/
|
50
|
-
n
|
51
|
-
N
|
52
|
-
|
53
|
-
f
|
54
|
-
L
|
44
|
+
m = Mark current dir (persistent). Next letter is the name of the mark [a-zA-Z']
|
45
|
+
The special mark "'" jumps to the last directory (makes toggling dirs easy)
|
46
|
+
Press '-' and a letter to delete that mark
|
47
|
+
M = Show marked items in right pane
|
48
|
+
' = Jump to mark (next letter is the name of the mark [a-zA-Z'])
|
49
|
+
/ = Enter search string in bottom window to highlight matching items and jump to the first match
|
50
|
+
n = Jump to the next item matched by '/'
|
51
|
+
N = Jump to the previous item matched by '/'
|
52
|
+
~ = Jump to Home directory
|
53
|
+
f = Follow symlink to the directory where the target resides
|
54
|
+
L = Start 'locate' search for files, then use '#' to jump to desired line/directory
|
55
55
|
|
56
56
|
TAGGING
|
57
|
-
t
|
58
|
-
Ctrl-t
|
59
|
-
T
|
60
|
-
u
|
57
|
+
t = Tag item (toggles)
|
58
|
+
Ctrl-t = Add items matching a pattern to list of tagged items (Ctrl-t and then . will tag all items)
|
59
|
+
T = Show currently tagged items in right pane
|
60
|
+
u = Untag all tagged items
|
61
61
|
|
62
62
|
MANIPULATE ITEMS
|
63
|
-
p
|
64
|
-
P
|
65
|
-
s
|
66
|
-
d
|
67
|
-
c
|
63
|
+
p = Put (copy) tagged items here
|
64
|
+
P = PUT (move) tagged items here
|
65
|
+
s = Create symlink to tagged items here
|
66
|
+
d = Delete selected item and tagged items. Press 'd' to confirm
|
67
|
+
c = Change/rename selected (adds command to bottom window)
|
68
68
|
|
69
69
|
DIRECTORY VIEWS
|
70
|
-
a
|
71
|
-
l
|
72
|
-
o
|
73
|
-
i
|
74
|
-
O
|
75
|
-
G
|
76
|
-
H
|
77
|
-
|
78
|
-
S
|
70
|
+
a = Show all (also hidden) items
|
71
|
+
l = Show long info per item (show item attributes)
|
72
|
+
o = Change the order/sorting of directories (circular toggle)
|
73
|
+
i = Invert/reverse the sorting
|
74
|
+
O = Show the Ordering in the bottom window (the full ls command)
|
75
|
+
G = Show git status for current directory
|
76
|
+
H = Do a cryptographic hash of the current directory with subdirs
|
77
|
+
If a previous hash was made, compare and report if there has been any change
|
78
|
+
S = Show comprehensive system info (system, CPU, filesystem, latest dmesg messages)
|
79
79
|
|
80
80
|
RIGHT PANE
|
81
|
-
ENTER
|
82
|
-
TAB
|
83
|
-
S-TAB
|
84
|
-
w
|
85
|
-
-
|
81
|
+
ENTER = Refresh the right pane
|
82
|
+
TAB = Next page of the preview (if doc long and ∇ in the bottom right)
|
83
|
+
S-TAB = Previous page (if you have moved down the document first - ∆ in the top right)
|
84
|
+
w = Change the width of the left/right panes (left pane ⇒ ⅓ ⇒ ¼ ⇒ ⅕ ⇒ ⅙ ⇒ ½ ⇒ ⅓)
|
85
|
+
- = Toggle preview in right pane (turn it off for faster traversing of directories)
|
86
|
+
_ = Toggle preview of images in right pane
|
86
87
|
|
87
88
|
ADDITINAL COMMANDS
|
88
|
-
g
|
89
|
-
:
|
90
|
-
;
|
91
|
-
y
|
92
|
-
Y
|
89
|
+
g = Run 'grep' to show files that contains the MATCH in current directory
|
90
|
+
: = Enter "command mode" in bottom window (press ENTER to execute, press Ctrl-G to escape)
|
91
|
+
; = Show command history in right pane
|
92
|
+
y = Copy path of selected item to primary selection (for pasting with middle mouse button)
|
93
|
+
Y = Copy path of selected item to clipboard
|
93
94
|
|
94
95
|
COPYRIGHT: Geir Isene, 2020-1. No rights reserved. See http://isene.com for more.
|
95
96
|
HELPTEXT
|
@@ -300,17 +301,17 @@ def main_getkey # GET KEY FROM USER
|
|
300
301
|
@write_conf = false
|
301
302
|
exit 0
|
302
303
|
# MOTION
|
303
|
-
when 'DOWN'
|
304
|
+
when 'DOWN', 'j'
|
304
305
|
var_resets
|
305
306
|
@index = @index >= @max_index ? @min_index : @index + 1
|
306
307
|
@w_r.update = true
|
307
308
|
@w_b.update = true
|
308
|
-
when 'UP'
|
309
|
+
when 'UP', 'k'
|
309
310
|
var_resets
|
310
311
|
@index = @index <= @min_index ? @max_index : @index - 1
|
311
312
|
@w_r.update = true
|
312
313
|
@w_b.update = true
|
313
|
-
when 'LEFT'
|
314
|
+
when 'LEFT', 'h'
|
314
315
|
var_resets
|
315
316
|
cur_dir = Dir.pwd
|
316
317
|
@directory[Dir.pwd] = @selected # Store this directory before leaving
|
@@ -319,7 +320,7 @@ def main_getkey # GET KEY FROM USER
|
|
319
320
|
@directory[Dir.pwd] = File.basename(cur_dir) unless @directory.key?(Dir.pwd)
|
320
321
|
@w_r.update = true
|
321
322
|
@w_b.update = true
|
322
|
-
when 'RIGHT'
|
323
|
+
when 'RIGHT', 'l'
|
323
324
|
var_resets
|
324
325
|
@directory[Dir.pwd] = @selected # Store this directory before leaving
|
325
326
|
@marks["'"] = Dir.pwd
|
@@ -390,7 +391,7 @@ def main_getkey # GET KEY FROM USER
|
|
390
391
|
end
|
391
392
|
@w_r.update = true
|
392
393
|
@w_b.update = true
|
393
|
-
when '
|
394
|
+
when '~' # Go to home dir
|
394
395
|
var_resets
|
395
396
|
@directory[Dir.pwd] = @selected # Store this directory before leaving
|
396
397
|
@marks["'"] = Dir.pwd
|
@@ -460,15 +461,12 @@ def main_getkey # GET KEY FROM USER
|
|
460
461
|
when 'p' # Copy tagged items here
|
461
462
|
copy_move_link("copy")
|
462
463
|
@w_r.update = true
|
463
|
-
@w_b.update = true
|
464
464
|
when 'P' # Move tagged items here
|
465
465
|
copy_move_link("move")
|
466
466
|
@w_r.update = true
|
467
|
-
@w_b.update = true
|
468
467
|
when 's' # Create symlink to tagged items here
|
469
468
|
copy_move_link("link")
|
470
469
|
@w_r.update = true
|
471
|
-
@w_b.update = true
|
472
470
|
when 'd' # Delete items tagged and @selected
|
473
471
|
tagged_info
|
474
472
|
w_b_info(" Delete selected and tagged? (press 'd' again to delete)")
|
@@ -497,7 +495,7 @@ def main_getkey # GET KEY FROM USER
|
|
497
495
|
@lsall == "" ? @lsall = "-a" : @lsall = ""
|
498
496
|
@w_r.update = true
|
499
497
|
@w_b.update = true
|
500
|
-
when '
|
498
|
+
when 'A' # Show all info for all items
|
501
499
|
@lslong = !@lslong
|
502
500
|
@w_r.update = true
|
503
501
|
@w_b.update = true
|
@@ -631,8 +629,16 @@ def main_getkey # GET KEY FROM USER
|
|
631
629
|
@w_b.update = true
|
632
630
|
when '-'
|
633
631
|
@preview = !@preview
|
632
|
+
@preview ? p = "On" : p = "Off"
|
633
|
+
w_b_info("Preview = " + p)
|
634
|
+
getch
|
635
|
+
@break = true
|
636
|
+
when '_'
|
637
|
+
@showimage = !@showimage
|
638
|
+
@showimage ? i = "On" : i = "Off"
|
639
|
+
w_b_info("Image preview = " + i)
|
640
|
+
getch
|
634
641
|
@break = true
|
635
|
-
@w_b.update = true
|
636
642
|
# ADDITIONAL COMMANDS
|
637
643
|
when '/' # Get search string to mark items that match the input
|
638
644
|
@w_b.nohistory = true
|
@@ -736,6 +742,8 @@ def conf_write
|
|
736
742
|
conf += "@border = #{@border}\n"
|
737
743
|
conf.sub!(/^@preview.*\n/, "")
|
738
744
|
conf += "@preview = #{@preview}\n"
|
745
|
+
conf.sub!(/^@showimage.*\n/, "")
|
746
|
+
conf += "@showimage = #{@showimage}\n"
|
739
747
|
w_r_info("Press W again to write this to .rtfm.conf:\n\n" + conf)
|
740
748
|
if getchr == 'W'
|
741
749
|
w_b_info(" Parameters written to .rtfm.conf")
|
@@ -913,10 +921,13 @@ def copy_move_link(type) # COPY OR MOVE TAGGED ITEMS (COPY IF "keep == true")
|
|
913
921
|
case type
|
914
922
|
when "copy"
|
915
923
|
FileUtils.cp_r(item, dest)
|
924
|
+
w_b_info(" Item(s) copied here.")
|
916
925
|
when "move"
|
917
926
|
FileUtils.mv(item, dest)
|
927
|
+
w_b_info(" Item(s) moved here.")
|
918
928
|
when "link"
|
919
929
|
FileUtils.ln_s(item, dest)
|
930
|
+
w_b_info(" Item(s) symlinked here.")
|
920
931
|
end
|
921
932
|
rescue StandardError => err
|
922
933
|
w_b_info(err.to_s)
|
@@ -1293,6 +1304,8 @@ def w_b_exec(cmd) # EXECUTE COMMAND FROM @W_B
|
|
1293
1304
|
pager_start
|
1294
1305
|
pager_show
|
1295
1306
|
@w_r.update = false
|
1307
|
+
else
|
1308
|
+
@w_r.update = true
|
1296
1309
|
end
|
1297
1310
|
}
|
1298
1311
|
rescue
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rtfm-filemanager
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.7.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Geir Isene
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-12-
|
11
|
+
date: 2021-12-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: curses
|
@@ -33,8 +33,8 @@ dependencies:
|
|
33
33
|
description: 'A full featured terminal browser with syntax highlighted files, images
|
34
34
|
shown in the terminal, videos thumbnailed, etc. You can bookmark and jump around
|
35
35
|
easily, delete, rename, copy, symlink and move files. RTFM has a a wide range of
|
36
|
-
other features. New in 1.
|
37
|
-
|
36
|
+
other features. New in 1.7.3: Added feedback messages on copy/move/symink & cd to
|
37
|
+
home dir = ''~'''
|
38
38
|
email: g@isene.com
|
39
39
|
executables:
|
40
40
|
- rtfm
|