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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/bin/rtfm +79 -66
  3. metadata +4 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: fe94f89cc11a4df40689a0bf80b2f0a04a4dc458a2d25193310e6b03b2ce78e0
4
- data.tar.gz: 350b8285c94cc939380b47f00eaccacc96c13d7d849ac9ecd649a5fdf9590c85
3
+ metadata.gz: 3783b49d04b0ff909d2a28bb622c019921bffc2af20bbe19d8ef06d1bec567f7
4
+ data.tar.gz: 4beae68faee067a137d89022b322aa2bc96a8d3d6acf1ce50ad5bace8d98ba72
5
5
  SHA512:
6
- metadata.gz: 0ac190ef31f8524d9677468d28e40d28719d4099865dcf69e13a88e8225ee9e8259be7c354a580f0951faa40acefa4e8e2b495041b29ac4fd6345a475a514bf5
7
- data.tar.gz: ff6782fe6820db8a2e283b5b1fba0f9fc45b2c17a7cbddc6fb4e2bad4278e7f0d607e9f6305a594f0a828ecc0247e2cb39d9cfe99d53aa9d8d41f29b61f6a58d
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
- ? = 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)
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 = Go one item down in left pane (rounds to top)
33
- UP = Go one item up in left pane (rounds to bottom)
34
- LEFT = Go up one directory level
35
- 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
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 = 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
- h = 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
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 = 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
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 = 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)
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 = 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)
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 = 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)
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 = Run 'grep' to show files that contains the MATCH in current directory
89
- : = Enter "command mode" in bottom window (press ENTER to execute, press Ctrl-G to escape)
90
- ; = Show command history in right pane
91
- y = Copy path of selected item to primary selection (for pasting with middle mouse button)
92
- Y = Copy path of selected item to clipboard
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 'h' # Go to home dir
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 'l' # Show long info for all items
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.6.5
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-01 00:00:00.000000000 Z
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.6.5: Reverted to always listing dir in left panel, every
37
- 3 sec.'
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