小编N K*_*man的帖子

27
推荐指数
2
解决办法
6336
查看次数

退出程序启动后,防止Emacs退出?

一旦我启动退出流程,有没有办法阻止Emacs退出?

我偶尔会胖手指C-xC-s作为C-xC-c.恢复运行并不是一个糟糕的过程,但我很好奇是否有办法可以停止退出流程,以便我可以不间断地继续打开所有文件.

使用GNU Emacs 24.3.1.在Window 7下运行Cygwin.

emacs confirmation quit

26
推荐指数
1
解决办法
2445
查看次数

Emacs epa模式:pinentry无法加密和保存文件

我试图在emacs中使用epa模式和组织模式,如本文所述.

我使用屏幕会话和ssh连接到计算机.因此,我需要将/ usr/bin/pinentry更改为指向/ usr/bin/pinentry-curses为/ usr/bin/pinentry-gtk-2.

我有

pinentry-program /usr/bin/pinentry-curses 
Run Code Online (Sandbox Code Playgroud)

作为我的.gnupg/gpg.conf中的最后一行.当我尝试保存文件时,我会看到这个菜单:

Select recipients for encryption.
If no one is selected, symmetric encryption will be performed.
- `m' to mark a key on the line
- `u' to unmark a key on the line
[Cancel][OK]
Run Code Online (Sandbox Code Playgroud)

我选择'确定'但只能获得

Opening output file: Encrypt failed, Exit
Run Code Online (Sandbox Code Playgroud)

我没有提示我的密码短语,也没有给出其他输出.它不会提示输入密码.它甚至没有将我的gpg'用户'列为foo@bar.com.

但是,当.gnupg/gpg.conf文件中没有该行时,我会在"选择加密收件人"对话框中看到我的gpg"用户".但是,cpu与消息说明:

Encrypting /home/user/test.gpg...
Run Code Online (Sandbox Code Playgroud)

(我假设它正在尝试生成gtk窗口并在圆圈中运行)

我有点困惑为什么我需要将/ usr/bin/pinentry链接到/ usr/bin/pinentry-curses并在我的gpg.conf文件中添加该行.

在将/ usr/bin/pinentry链接到/ usr/bin/pinentry-gtk-2之前,如果我在本地计算机上,则会在列出我的gpg用户的情况下获得"选择收件人加密"提示.我会得到一个对话框来输入我的密码,这一切都奏效了.我明白了

Encrypting /home/user/test.gpg...
Run Code Online (Sandbox Code Playgroud)

这一切都会成功.

我在今天早上最新的Arch系统上运行GNU Emacs 24.2.1.

我很好奇我做错了什么.我已经在arch wiki上检查了关于pinentry和gpg的文章,他们没有帮助解决问题.提前致谢.

更新:26-10-2012今天早上更新包装cryptsetup似乎已经影响了行为.当我打开.gpg文件时,我现在得到一个"请输入密码短语"提示,但它似乎永远不会过去.输入密码后,提示永远不会消失.

emacs gnu-screen passphrase gnupg tmux

5
推荐指数
1
解决办法
1235
查看次数

Python etag/last修改不起作用; 如何获得最新的rss

我正在尝试编写一个python程序,它将抓取并显示自上次运行程序以来的任何rss更新.我正在使用feedparser并尝试使用etags并按照此处所述进行最后修改,但我的测试脚本似乎无法正常工作.

import feedparser
rsslist=["http://skottieyoung.tumblr.com/rss","http://mrjakeparker.com/feed/"]
for feed in rsslist:
print('--------'+feed+'-------')
d=feedparser.parse(feed)
print(len(d.entries))
if (len(d.entries) > 0):
    etag=d.feed.get('etag','')
    modified=d.get('modified',d.get('updated',d.entries[0].get('published','no modified,update or published fields present in rss')))

    d2=feedparser.parse(feed,modified)
    if (len(d2.entries) > 0):
        etag2=d2.feed.get('etag','')
        modified2=d2.get('updated',d.entries[0].get('published',''))

    if (d2==d): #ideally we would never see this bc etags/last modified would prevent unnecessarily downloading what we all ready have.
        print("Arrg these are the same")
Run Code Online (Sandbox Code Playgroud)

老实说,我不确定rss/xml技术是否已经改变了我在线使用的参考文献,或者我的代码是否有问题.

无论我在寻找有效使用rss feed的最佳解决方案.我正在寻找最小化带宽浪费,例如使用最后修改和etags字段的带宽浪费.

提前致谢.

python feedparser

4
推荐指数
1
解决办法
2832
查看次数

Linux/Cygwin递归复制文件更改扩展名

我正在寻找一种递归查找扩展名为X(.js)的文件的方法,并在扩展名为Y( .ts)的同一目录中制作该文件的副本.

例如/foo/bar/foobar.js - > /foo/bar/foobar.js和/foo/bar/foobar.ts

/foo/bar.js - > /foo/bar.js和/foo/bar.ts等

我的尽职调查:我正在考虑使用find&xargs&cp和大括号扩展(cp foobar.{js,ts})但是xargs使用大括号来表示从xargs传递的文件列表.这让我感到难过,因为我刚刚发现了支撑膨胀/替换的令人敬畏的酱汁.

我觉得必须有一个单线解决方案,但我很难想出一个.

我找到了执行任务的想法:将所需目录复制到新目录,然后将该目录与新目录合并; 以递归方式在每个目录中运行重命名脚本; 使用rsync复制; 使用find,xargs和cpio.

目前看来,运行像这样的重命名脚本脚本是我最终要做的.

linux rsync find xargs cp

2
推荐指数
1
解决办法
3468
查看次数

标签 统计

emacs ×2

confirmation ×1

cp ×1

express ×1

feedparser ×1

find ×1

gnu-screen ×1

gnupg ×1

linux ×1

node.js ×1

passphrase ×1

python ×1

quit ×1

rsync ×1

tmux ×1

xargs ×1