diff options
-rw-r--r-- | doc/ranger.1 | 7 | ||||
-rw-r--r-- | doc/ranger.pod | 6 | ||||
-rw-r--r-- | ranger/config/commands.py | 12 | ||||
-rw-r--r-- | ranger/config/rc.conf | 2 | ||||
-rw-r--r-- | ranger/config/rifle.conf | 11 | ||||
-rw-r--r-- | ranger/data/mime.types | 22 |
6 files changed, 37 insertions, 23 deletions
diff --git a/doc/ranger.1 b/doc/ranger.1 index 7f5be704..49339bf2 100644 --- a/doc/ranger.1 +++ b/doc/ranger.1 @@ -133,7 +133,7 @@ .\" ======================================================================== .\" .IX Title "RANGER 1" -.TH RANGER 1 "ranger-1.6.1" "12/11/2014" "ranger manual" +.TH RANGER 1 "ranger-1.6.1" "01/01/2015" "ranger manual" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l @@ -834,6 +834,7 @@ ranger. For your convenience, this is a list of the \*(L"public\*(R" commands i \& quit \& quit! \& relink newpath +\& rename_append \& rename newname \& save_copy_buffer \& scout [\-FLAGS] pattern @@ -1057,6 +1058,10 @@ it by typing `` or '' the next time you start ranger. .IX Item "relink newpath" Change the link destination of the current symlink file to <newpath>. First <tab> will load the original link. +.IP "rename_append" 2 +.IX Item "rename_append" +Opens the console with \*(L":rename <current file>\*(R" with the cursor automatically +placed before the file extension .IP "rename \fInewname\fR" 2 .IX Item "rename newname" Rename the current file. If a file with that name already exists, the renaming diff --git a/doc/ranger.pod b/doc/ranger.pod index ee20ef9f..279e44fd 100644 --- a/doc/ranger.pod +++ b/doc/ranger.pod @@ -851,6 +851,7 @@ ranger. For your convenience, this is a list of the "public" commands including quit quit! relink newpath + rename_append rename newname save_copy_buffer scout [-FLAGS] pattern @@ -1112,6 +1113,11 @@ it by typing `` or '' the next time you start ranger. Change the link destination of the current symlink file to <newpath>. First <tab> will load the original link. +=item rename_append + +Opens the console with ":rename <current file>" with the cursor automatically +placed before the file extension + =item rename I<newname> Rename the current file. If a file with that name already exists, the renaming diff --git a/ranger/config/commands.py b/ranger/config/commands.py index c496f71e..a8813de2 100644 --- a/ranger/config/commands.py +++ b/ranger/config/commands.py @@ -722,18 +722,18 @@ class rename(Command): def tab(self): return self._tab_directory_content() -class renameConsole(Command): - """:renameConsole +class rename_append(Command): + """:rename_append Creates an open_console for the rename command, automatically placing the cursor before the file extension. """ def execute(self): - if "." in self.fm.thisfile.basename: - offset = 6 + len(self.fm.thisfile.basename) - self.fm.thisfile.basename[::-1].index('.') - self.fm.open_console('rename ' + self.fm.thisfile.basename, position=offset) + cf = self.fm.thisfile + if cf.basename.find('.') != 0 and cf.basename.rfind('.') != -1 and not cf.is_directory: + self.fm.open_console('rename ' + cf.basename, position=(7 + cf.basename.rfind('.'))) else: - self.fm.open_console('rename ' + self.fm.thisfile.basename) + self.fm.open_console('rename ' + cf.basename) class chmod(Command): """:chmod <octal number> diff --git a/ranger/config/rc.conf b/ranger/config/rc.conf index 12fd2a32..4c8fd799 100644 --- a/ranger/config/rc.conf +++ b/ranger/config/rc.conf @@ -325,7 +325,7 @@ map yn shell -f echo -n %f | xsel -i; xsel -o | xsel -i -b map = chmod map cw console rename -map a renameConsole +map a rename_append map A eval fm.open_console('rename ' + fm.thisfile.basename) map I eval fm.open_console('rename ' + fm.thisfile.basename, position=7) diff --git a/ranger/config/rifle.conf b/ranger/config/rifle.conf index 4776cdf9..ef3a5b63 100644 --- a/ranger/config/rifle.conf +++ b/ranger/config/rifle.conf @@ -82,8 +82,8 @@ ext x?html?, has w3m, terminal = w3m "$@" # Define the "editor" for text files as first action mime ^text, label editor = $EDITOR -- "$@" mime ^text, label pager = "$PAGER" -- "$@" -!mime ^text, label editor, ext xml|csv|tex|py|pl|rb|sh|php = $EDITOR -- "$@" -!mime ^text, label pager, ext xml|csv|tex|py|pl|rb|sh|php = "$PAGER" -- "$@" +!mime ^text, label editor, ext xml|csv|tex|py|pl|rb|js|sh|php = $EDITOR -- "$@" +!mime ^text, label pager, ext xml|csv|tex|py|pl|rb|js|sh|php = "$PAGER" -- "$@" ext 1 = man "$1" ext s[wmf]c, has zsnes, X = zsnes "$1" @@ -98,6 +98,7 @@ name ^[mM]akefile$ = make ext py = python -- "$1" ext pl = perl -- "$1" ext rb = ruby -- "$1" +ext js = node -- "$1" ext sh = sh -- "$1" ext php = php -- "$1" @@ -188,6 +189,6 @@ label wallpaper, number 13, mime ^image, X = feh --bg-center "$1" label wallpaper, number 14, mime ^image, X = feh --bg-fill "$1" # Define the editor for non-text files + pager as last action - !mime ^text, !ext xml|csv|tex|py|pl|rb|sh|php = ask -label editor, !mime ^text, !ext xml|csv|tex|py|pl|rb|sh|php = $EDITOR -- "$@" -label pager, !mime ^text, !ext xml|csv|tex|py|pl|rb|sh|php = "$PAGER" -- "$@" + !mime ^text, !ext xml|csv|tex|py|pl|rb|js|sh|php = ask +label editor, !mime ^text, !ext xml|csv|tex|py|pl|rb|js|sh|php = $EDITOR -- "$@" +label pager, !mime ^text, !ext xml|csv|tex|py|pl|rb|js|sh|php = "$PAGER" -- "$@" diff --git a/ranger/data/mime.types b/ranger/data/mime.types index 2adc2e99..b3c3e8dc 100644 --- a/ranger/data/mime.types +++ b/ranger/data/mime.types @@ -10,15 +10,17 @@ # ############################################################################### -audio/flac flac -audio/musepack mpc mpp mp+ -audio/ogg oga ogg spx -audio/wavpack wv wvc +audio/flac flac +audio/musepack mpc mpp mp+ +audio/ogg oga ogg spx +audio/wavpack wv wvc -video/mkv mkv -video/webm webm -video/flash flv -video/ogg ogv ogm -video/divx div divx +video/mkv mkv +video/webm webm +video/flash flv +video/ogg ogv ogm +video/divx div divx + +text/x-ruby rb +application/javascript js -text/x-ruby rb |