こんな感じにファイルが並んでいるときに、
:mark_similars
すると、
同じような名前のファイルだけ、マークできる!
rc.conf で適当にマッピングしておくと便利。
commands.py
from ranger.api.commands import *
class mark_similars(Command):
"""
:mark_similars [<NAME>]
Mark all similar files by the name.
"""
do_mark = True
def execute(self):
from re import compile, sub, I, UNICODE
arg = self.rest(1)
if not arg:
arg = self.fm.thisfile.basename
pattern = compile('^' + sub(r'[^ァ-ヶぁ-ん一-龠a-zA-Z]+', '.+', arg) + '$', I | UNICODE)
cwd = self.fm.thisdir
for file in cwd.files:
if pattern.search(file.basename):
#cwd.mark_item(file, val=self.do_mark)
cwd.toggle_mark(file)
self.fm.ui.status.need_redraw = True
self.fm.ui.need_redraw = True