Projectile: Bash errors are shown as file names when projectile-find-file is used

Created on 11 Nov 2017  Â·  4Comments  Â·  Source: bbatsov/projectile

Expected behavior

Bash errors should not be shown as file names.

Actual behavior

Bash errors are shown as file names under following settings:

(setq shell-file-name "bash")
(setq shell-command-switch "-ic")

Steps to reproduce the problem

  • set two variables as they are given upward
  • get into a project
  • try projectile-find-file

Environment & Version information

Projectile version information

Projectile version: Projectile 20171109.240

Emacs version

GNU Emacs 25.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.22.19) of 2017-09-16

Operating system

Arch Linux thinkpad 4.9.61-1-lts #1 SMP Wed Nov 8 17:49:38 CET 2017 x86_64 GNU/Linux

Bug Stale

Most helpful comment

I'm experiencing similar problem
when my config contains following setting:
(setq shell-command-switch "-ic")
helm-projectile-find-file fails with following error:

In ‘Projectile files’ source:[helm-current-buffer projectile-project-p buffer-live-p projectile-project-root projectile-current-project-files nil expand-file-name] 8]’ (file-error "Setting current directory" "No such file or directory" "/home/user/git/myProject/bash: cannot set terminal process group (-1): Inappropriate ioctl for device bash: no job control in this shell

shell-file-name is set to "/bin/bash"

All 4 comments

I'm not sure if it should fall here, or be a separate issue: projectile-find-file seems to trying local shell in TRAMP buffers, and as a result showing something like /bin/sh: 693: /usr/bin/fish: not found as a file name.

For additional info, I didn't customize my shell-file-name, emacs took it from system's environment.

Doing something like M-: (setq shell-file-name "/bin/bash") (e.g. shell which exist on remote server) fixes projectile-find-file.
I also wonder if it might be some kind of a TRAMP bug and should be reported to emacs developers.

I'm experiencing similar problem
when my config contains following setting:
(setq shell-command-switch "-ic")
helm-projectile-find-file fails with following error:

In ‘Projectile files’ source:[helm-current-buffer projectile-project-p buffer-live-p projectile-project-root projectile-current-project-files nil expand-file-name] 8]’ (file-error "Setting current directory" "No such file or directory" "/home/user/git/myProject/bash: cannot set terminal process group (-1): Inappropriate ioctl for device bash: no job control in this shell

shell-file-name is set to "/bin/bash"

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contribution and understanding!

This issues been automatically closed due to lack of activity. Feel free to re-open it if you ever come back to it.

Was this page helpful?
0 / 5 - 0 ratings