4

My Emacs version is 26.1. The system is Microsoft Windows 10. When I run M-x proced, the buffer does not list the proced used on the current system. What is this situation?

enter image description here

  • Hello, are you using plain Emacs, or the one with Spacemacs customizations? – Emre Sevinç Apr 17 '19 at 10:07
  • Also, can you try running your Emacs without any initialization and loading of packages. You can see how to do that at https://stackoverflow.com/a/19194832/236007 After that, can you try M-x proced again? This way, you can identify if some configuration or package is interfering with proced mode. – Emre Sevinç Apr 17 '19 at 10:11
  • Hello, I'm using Spacemacs customizations. When I started using emacs-Q, I tried M-x proced again, but it didn't show any useful information. I don't know where the problem was – 鱼鱼鱼三条鱼 Apr 17 '19 at 12:02
  • 1
    It looks like Emacs uses list-system-processes and process-attributes in the background. Can you try evaluating first (list-system-processes) in your *scratch* buffer, and if it returns a list of numbers such as (0 4 492 704 808 824 908 968 980 672 552 1124 ...) can you then try to evaluate something like (process-attributes 1124) (replace 1124 with a number that you see in your list). This might show whether Emacs by itself can retrieve the process information from your MS Windows operating system. – Emre Sevinç Apr 17 '19 at 12:54
  • Thank you. These two functions can return all the processes on my system and view the properties of the corresponding processes, but when I key in M-x proced, I don't have a list of the current system processes. – 鱼鱼鱼三条鱼 Apr 17 '19 at 14:16
  • Then it looks like Emacs by itself has no problem of communicating with MS Windows 10, and get the list of running processes. In this case, I suspect that something in the Spacemacs configuration might be interfering with proced, though I'm not sure what exactly at the moment. – Emre Sevinç Apr 18 '19 at 07:23
  • (proced) => (proced-update t) => proced-filter => proced-filter-alist (let ((proced-filter (quote all))) (proced)) This is what I read in a post about Emac proced. I tried to run these commands to get the process of my current system in the proced buffer, but I could only get proced information every time Emacs was restarted. Once I killed the initialized proced buffer, I couldn't get proced information again (when I typed M-x proced). – 鱼鱼鱼三条鱼 Apr 18 '19 at 08:19

1 Answers1

0

Just a hunch, but the documentation for proced states:

Generate a listing of UNIX system processes.

Windows 10 is not a Unix-like system so my guess is that might cause some wonkiness. Granted, I'm on Windows 10 and the command generates a listing of processes anyway.

  • Maybe list-processes would be helpful?
  • You could always "brute force" it and run the shell command to list all processes with M-! tasklist.
Lorem Ipsum
  • 4,477
  • 2
  • 15
  • 35
  • I've tried Emacs 27.0.50 on my Win 10 system, and for me it's the opposite: proced lists the running Windows processes, whereas list-processes doesn't list any process at all. – Emre Sevinç Apr 17 '19 at 12:41
  • 1
    According to the documentation of list-processes: "Display a list of all processes that are Emacs sub-processes." – Emre Sevinç Apr 17 '19 at 12:42
  • 1
    I think you meant list-system-processes (its documentation reads as "Return a list of numerical process IDs of all running processes.") – Emre Sevinç Apr 17 '19 at 12:55
  • Thank you. I want to try to list the processes on the current system in emacs, but list-proced does not display the process information on my system. – 鱼鱼鱼三条鱼 Apr 18 '19 at 05:19