Menu

#381 ctrl-k / piping breaks when command contains // character sequence

Unknown
closed-fixed
nobody
None
v4.4
5
2018-01-10
2017-11-26
Josip Rodin
No

Forwarding from the Debian bug tracking system: http://bugs.debian.org/877734

From: Matija Nalis

When piping text block through external command (via ctrl-k /), joe breaks
if external command parameters contains two consecutive slashes.

For example, piping (ctrl-k /) block through:
sed -e 's/foo/bar/'
work normally, as does replacing by space:
sed -e 's/foo/ /'
but piping it through:
sed -e 's/foo//'

(to delete string 'foo')

fails with "/bin/sh: 1: Syntax error: Unterminated quoted string"

It also does weird syntax-coloring in "Command to filter file through"
prompt, showing all of command but last slash and apostrophe in green.
Also when recalling command next time with up-arrow, it shows only slash
and apostrophe instead of whole command!

The problem arises after upgrading from jessie to stretch - the joe in
jessie and before was working normally.

Discussion

  • Joe Allen

    Joe Allen - 2017-12-07

    Yeah, so I tried copying the emacs feature where you can begin a new path by typing //. I think I will eliminate this feature because I've found many cases where you want to paste in a path that contains // and JOE can't open the file (some compilers included // in the middle of a path). It also causes the problem you mention.

     
  • Joe Allen

    Joe Allen - 2017-12-19

    This is now fixed in Mercurial.

    I kept the path restart (//) feature, but now suppress it for commands.

     
  • Joe Allen

    Joe Allen - 2018-01-10
    • status: open --> closed-fixed
     

Log in to post a comment.

MongoDB Logo MongoDB