Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在emacs状态栏上显示正常运行时间?我正在寻找状态栏上显示的/usr/bin/uptime输出_Emacs_Elisp_Uptime - Fatal编程技术网

如何在emacs状态栏上显示正常运行时间?我正在寻找状态栏上显示的/usr/bin/uptime输出

如何在emacs状态栏上显示正常运行时间?我正在寻找状态栏上显示的/usr/bin/uptime输出,emacs,elisp,uptime,Emacs,Elisp,Uptime,我想在emacs状态栏上显示/usr/bin/uptime输出? 我在centos上使用GNU Emacs 23.1.1 谢谢查找功能emacs正常运行时间。看看这个来定制模式行。@lousyu的建议值得遵循。关于具体的实现,这里有一个片段: 显然,我希望在那里显示不同的内容,但这对您来说应该是一个不错的起点。我的系统没有正常运行时间,所以我无法为您测试。但它应该给你一个想法。似乎可以在我的系统上使用ps替代uptime 也许其他人会提供一个更简单或更干净的解决方案。您还可以查看调用进程或启动进

我想在emacs状态栏上显示/usr/bin/uptime输出? 我在centos上使用GNU Emacs 23.1.1


谢谢

查找功能
emacs正常运行时间
。看看这个来定制模式行。

@lousyu的建议值得遵循。关于具体的实现,这里有一个片段:


显然,我希望在那里显示不同的内容,但这对您来说应该是一个不错的起点。

我的系统没有正常运行时间,所以我无法为您测试。但它应该给你一个想法。似乎可以在我的系统上使用
ps
替代
uptime

也许其他人会提供一个更简单或更干净的解决方案。您还可以查看
调用进程
启动进程
,而不是
shell命令来字符串
--
启动进程
是异步的。您可能还想考虑使用一个空闲计时器---这里的代码可以大大降低Emacs,因为每次模式行被更新时,它都会调用<代码>正常运行时间>代码> < /P>
(setq-default 
 mode-line-format
 (list " " 'mode-line-modified
       "--" 'mode-line-buffer-identification
       "--" 'mode-line-modes
       'mode-line-position
       "--" '(:eval (shell-command-to-string "uptime"))
       "-%-"))
下面是另一种方法,它似乎不会明显减慢速度:

(defun bar ()
  (with-current-buffer (get-buffer-create "foo")
    (erase-buffer)
    (start-process "ps-proc" "foo" "uptime")))

(setq foo (run-with-idle-timer 30 'REPEAT 'bar))

(setq-default 
 mode-line-format
 (list " " 'mode-line-modified
       "--" 'mode-line-buffer-identification
       "--" 'mode-line-modes
       'mode-line-position
       "--" '(:eval (with-current-buffer (get-buffer-create "foo")
                      (buffer-substring (point-min) (point-max))))
       "-%-"))

我会定义一个次要模式,并使用带有空闲计时器的
来更新modeline(这是状态栏,对吗?)。哎呀,这在我之前的评论中丢失了:。为什么
M-
正常运行时间
够了吗?您好,谢谢回复。。emacs正常运行时间不会提供系统正常运行时间。我正在寻找系统正常运行时间。非常感谢。这对我很有帮助。emacs帮助我理解了如何调用外部命令。
(defun bar ()
  (with-current-buffer (get-buffer-create "foo")
    (erase-buffer)
    (start-process "ps-proc" "foo" "uptime")))

(setq foo (run-with-idle-timer 30 'REPEAT 'bar))

(setq-default 
 mode-line-format
 (list " " 'mode-line-modified
       "--" 'mode-line-buffer-identification
       "--" 'mode-line-modes
       'mode-line-position
       "--" '(:eval (with-current-buffer (get-buffer-create "foo")
                      (buffer-substring (point-min) (point-max))))
       "-%-"))