mirror of
https://github.com/jarun/nnn.git
synced 2024-11-24 03:41:27 +00:00
Add wrapper script for patool integration
This commit is contained in:
parent
ad7c644290
commit
655461a3f2
|
@ -66,6 +66,7 @@ Have fun with it! Missing a feature? Want to contribute? Head to the rolling [To
|
|||
- [dual-pane or multi-pane](#dual-pane-or-multi-pane)
|
||||
- [change dir color](#change-dir-color)
|
||||
- [file copy, move, delete](#file-copy-move-delete)
|
||||
- [integrate patool](#integrate-patool)
|
||||
- [work faster at rename prompt](#work-faster-at-rename-prompt)
|
||||
- [set idle timeout](#set-idle-timeout)
|
||||
- [show hot plugged drives](#show-hot-plugged-drives)
|
||||
|
@ -480,6 +481,10 @@ Any other value disables colored directories.
|
|||
|
||||
In addition, `nnn` integrates with vidir. vidir supports batch file move and delete.
|
||||
|
||||
#### integrate patool
|
||||
|
||||
On systems where `atool` is not available but `patool` is, drop two copies of the Python3 script [natool](https://github.com/jarun/nnn/blob/master/scripts/natool) as `atool` and `apack` somewhere in `$PATH`.
|
||||
|
||||
#### work faster at rename prompt
|
||||
|
||||
The rename prompt supports some bash-like command-line shortcuts - <kbd>^A</kbd>, <kbd>^E</kbd>, <kbd>^U</kbd>. <kbd>^L</kbd> clears the name.
|
||||
|
|
40
scripts/natool/natool
Executable file
40
scripts/natool/natool
Executable file
|
@ -0,0 +1,40 @@
|
|||
#!/usr/bin/env python3
|
||||
|
||||
# #############################################################################
|
||||
# natool: a wrapper script to patool to list, extract and create archives
|
||||
#
|
||||
# usage: natool [-l] [-x] [archive] [file/dir]
|
||||
#
|
||||
# Examples:
|
||||
# - list archive : natool -l archive.7z
|
||||
# - extract archive: natool -x archive.7z
|
||||
# - create archive : natool archive.7z archive_dir
|
||||
#
|
||||
# Brief:
|
||||
# natool is written to integrate patool (instead of the default atool) with nnn
|
||||
# Two copies of this file should be dropped somewhere in $PATH - atool, apack
|
||||
#
|
||||
# Author: Arun Prakash Jana
|
||||
# Email: engineerarun@gmail.com
|
||||
# Homepage: https://github.com/jarun/nnn
|
||||
# Copyright © 2018 Arun Prakash Jana
|
||||
# #############################################################################
|
||||
|
||||
import sys
|
||||
from subprocess import Popen, PIPE, DEVNULL
|
||||
|
||||
if len(sys.argv) != 3:
|
||||
print('usage: natool [-l] [-x] [archive] [file/dir]')
|
||||
sys.exit(0)
|
||||
|
||||
if sys.argv[1] == '-x':
|
||||
cmd = ['patool', '--non-interactive', 'extract', sys.argv[2]]
|
||||
elif sys.argv[1] == '-l':
|
||||
cmd = ['patool', '--non-interactive', 'list', sys.argv[2]]
|
||||
else:
|
||||
cmd = ['patool', '--non-interactive', 'create', sys.argv[1], sys.argv[2]]
|
||||
|
||||
pipe = Popen(cmd, stdin=PIPE, stdout=PIPE, stderr=PIPE)
|
||||
out, err = pipe.communicate()
|
||||
print(out.decode())
|
||||
print(err.decode())
|
Loading…
Reference in a new issue