Welcome to Vifm Q&A, where you can ask questions about Vifm usage. Registration is optional, anonymous posts are moderated. GitHub or Google logins are enabled.

What's wrong with these filter command definitions?

0 votes
asked Jan 5, 2016 in vifm by aleksejrs
edited Jan 5, 2016 by aleksejrs
  1. command fil filter! (важность-(важное\|неважное-topics)\|срочность-(не)\?срочное)$
  2. command fil filter!/(важность-(важное|неважное-topics)|срочность-(не)\?срочное)$/

Both full commands result in "Add bang to force".

  1. The part after "fil " of the first command (with a space) alone works.
  2. The part after "fil " of the second command (without a space) says "Invalid command name". I guess that's because the unescaped "|" is not considered part of the regexp. But doesn't that contradict the manual, which says "Using second variant you can use the bar ('|') symbol without escaping."?

For vimrc, Vifm says "Error in …/.config/vifm/vifmrc at line 4" instead of any of the messages above.

Version: 0.8.1-beta
Git info: v0.8.1-beta-27-gdb756b67a597-dirty
Compiled at: Jan 5 2016 18:08:01

1 Answer

+1 vote
answered Jan 5, 2016 by xaizek
selected Jan 5, 2016 by aleksejrs
 
Best answer

fil is a short name of :f[ile], so there is a conflict. You can't redefine :file and not sure if redefining :fil should be allowed.

filter!/(важность-(важное|неважное-topics)|срочность-(не)\?срочное)$/

Would work with a space after ! before, works without it now. It was a bug, thanks.

For vimrc, Vifm says "Error in …/.config/vifm/vifmrc at line 4" instead of any of the messages above.

Yeah, status bar should display actual error while dialog is visible, but that doesn't work out well in all cases (so would be better to display error in dialog).

commented Jan 5, 2016 by aleksejrs

Thanks, now the second filter works (and the "?" must not be escaped in it because of the slashes).

If you would like to make a bug report or feature request consider using GitHub, SourceForge or e-mail. Posting such things here won't be considered as spam, but this is not a perfect place for it.
...