我在设置 .emacs 文件时遇到了麻烦,以便我、小组和其他人都可以读取我的文件。我尝试了 Cx Cq,但在打开文件并再次保存后,只有我可以读取/写入文件。我也使用了 chmod +r(文件名),但当我重新加载 emacs 时问题再次出现。我不想每次编辑文件时都使用 chmod +r。我正在使用 Ubuntu 11.04 Codename:natty 并连接到使用 Mac OSX 10.5.8 的服务器。我使用 sftp 连接到服务器。
我检查了两台机器上的 umask,发现它们都是 22 或 0022。我不知道 sftp 或 .emacs 文件是否导致了此错误。我只是想知道我是否做错了所有事情,或者 emacs 中的某些设置是否正确。
答案1
如果你想全部文件在您的$HOME
目录中所有人都可以阅读, 跑步 :
find ~/ -type f -print0 | xargs -0 chmod 644
设置他们的权限(取自这里)。这与 emacs 打开它们无关:emacs 只会遵循文件系统限制它的权限。
如果您离开时文件权限恰好发生变化,则一定有某些东西在改变它们,您应该寻找它。
它也与 emacs 能够写入无关緩衝器碰巧访问这些文件。您应该始终能够编辑缓冲区,您可以使用 允许/阻止此操作C-x C-q。问题是,如果您将不可写文件的缓冲区设置为可写,您将无法将更改保存到磁盘,相反,如果您将可写文件的缓冲区设置为只读,您可以将任何更改保存到磁盘,但您无法在 emacs 缓冲区内进行此类更改。从您的描述来看,我不明白您为什么要使用它。
Cx Cq 运行命令 toggle-read-only
更改是否缓冲是只读的。