如何让 Emacs 在保存文件时创建中间目录?

2024-04-13

有没有办法在 emacs 中创建文件夹树 - 类似于

mkdir -p

in bash?

基本上 - 我希望 emacs 创建所有中间模具 - 如果它们不存在 - 当我保存文件时。


功能make-directory这样做。您的具体问题可能会这样解决:

(add-hook 'before-save-hook
          (lambda ()
            (when buffer-file-name
              (let ((dir (file-name-directory buffer-file-name)))
                (when (and (not (file-exists-p dir))
                           (y-or-n-p (format "Directory %s does not exist. Create it?" dir)))
                  (make-directory dir t))))))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何让 Emacs 在保存文件时创建中间目录? 的相关文章

  • 模棱两可的出现“只是”

    我是一个绝对的初学者 使用 emacs 浏览 LYAH 我当前的设置 Ubuntu 12 04 LTS 使用体验 初学者 GNU Emacs 23 Use Experience beginner 能够在 haskell 主要模式下工作 发现
  • 对于 Emacs,如何将 view-lossage 收集的内容存储到外部文件中?

    对于 Emacs 我如何存储内容view lossage收集到外部文件中 理想情况下 我希望将这些击键数据自动增量地存储到外部日志文件中 这意味着在 Emacs 启动时默认情况下会这样做 至少在 Emacs 24 中 我现在无法检查之前的版
  • 如何让 Emacs 在保存文件时创建中间目录?

    有没有办法在 emacs 中创建文件夹树 类似于 mkdir p in bash 基本上 我希望 emacs 创建所有中间模具 如果它们不存在 当我保存文件时 功能make directory这样做 您的具体问题可能会这样解决 add ho
  • 在 Emacs 中移动到搜索查找的开始和结束位置

    接受搜索时如何将点置于搜索字符串的开头或结尾 所以说你执行 C s foobar 当我按 RET 时 我希望将光标置于找到的字符串的末尾 如果按 C RET 则将光标置于开头 Thanks 尝试这个 defun my isearch exi
  • emacs - 如何在子目录中进行查找文件搜索

    我想为 Emacs 实现类似 Resharper 的 转到文件 功能 当按下上述快捷键时 Resharper 会弹出一个接受通配符字符串的文本框 并显示一个自动完成菜单 其中列出了项目中与该通配符匹配的所有文件 source jetbrai
  • 如何去掉 CR (^M) 并保留 LF (^J) 字符?

    我正在尝试使用 Hexl 模式手动从文本文件中删除一些特殊字符 但不知道如何在 Hexl 模式下删除任何内容 我真正想要的是删除回车符并保留换行符 Hexl 模式是执行此操作的正确方法吗 无需寻找替代 就用吧 M x delete trai
  • 如何在 emacs 中对多种语言进行拼写检查?

    我主要使用 HTML 编写文档emacs作为我的主要编辑 Emacs 允许您使用以下命令以交互方式对当前缓冲区进行拼写检查ispell buffer 由于我在多种语言之间切换 因此我在文件末尾有一个 HTML 注释 指定该文件的主词典和个人
  • Emacs 在 haskell 模式下挂起,并调用 下面的 haskell-load-file 调用

    当在 Haskell 文件中时 我使用C c C l运行命令inferior haskell load file其目的是将当前文件加载到 GHCI 解释器中 但 Emacs 会挂起 直到我点击C g 有人知道我怎样才能让它发挥作用吗 all
  • 更改组织模式新一天开始的时间

    我使用组织模式来计时我的工作 有时我会工作几个小时到午夜 例如 我记录的时间从 2013 年 6 月 3 日晚上 10 点开始 到 2013 年 6 月 4 日凌晨 2 点结束 组织模式在凌晨 0 点进行划分 开始新的一天 但如果将 0am
  • ESS 在 Windows 上找不到 Rterm.exe

    我将 R 安装在名为 X alphaAndOmega R R 的目录中 所以Rterm exe 32位版本 位于 X alphaAndOmega R R bin i386 我知道它不是 标准 R 目录 并且 标准 R 目录 例如 R 3 0
  • Emacs-helm 中的选项卡(任何内容)不会自动完成当前的最佳匹配

    While trying to autocomplete a file e g to open a file with C x C f Emacs helm shows a list of possible candidates If I
  • IPython 自动完成 emacs24 不起作用

    我将 emacs24 0 92 与 IPython 12 一起使用 我从 IPython 存储库中获取了 ipython el 文件并尝试了这个补丁 https github com ipython ipython pull 204但是自动
  • emacs 启动后更改 X11 窗口标题

    当我启动 emacs 时 我可以使用 title 选项来控制保存 emacs 应用程序的 x 窗口的标题 emacs从elisp启动后可以更改标题吗 M x set frame name NewName RET 和来自 elisp set
  • 如何从 Emacs 中运行 Cygwin Bash Shell?

    我在 Windows 上运行 GNU Emacs 因此输入 M x shell 启动 Windows 命令行 DOS shell 但是 我希望能够从 Emacs 中运行 Cygwin Bash Shell 或任何其他非 Windows sh
  • 在 Emacs ruby​​ 模式下使用制表符缩进而不是空格

    我一直在尝试配置 Emacs 以便在缩进 Ruby 代码时插入一个 制表符 而不是一系列 空格 到目前为止 我已经尝试设置 varruby indent tabs mode to t这样 根据文档 它将 如果非零 则在 ruby 模式下插入
  • 在 Emacs Paredit 中交换括号和方括号

    如何在 paredit 模式下定义交换括号和方括号的命令 所以任务就是把它变成这样 例如 blah a b c 进入这个 blah a b c 使用 paredit 模式 移至表达式的开头 a 进而 C M SPC
  • Windows、Emacs、Git Bash 和 shell 命令

    Windows 7 Emacs 24 3 1 git 1 8 1 msysgit 1 我的等效 emacs 文件中有以下内容 if equal system type windows nt progn setq explicit shell
  • 将字符定义为单词边界

    我已经定义了 字符在乳胶模式下充当单词组成部分 我对结果非常满意 唯一困扰我的是像这样的序列 alpha beta被视为单个单词 当然 这是预期的行为 有没有办法让 emacs 将特定字符解释为单词 starter 这样 它将始终被视为其后
  • 如何使用 Emacs 通过 HTTP 打开远程文件?

    大多数开源软件都通过某些 HTTP 服务公开其代码 我想从 Emacs 打开并浏览此类代码 但 AFAICS trapmp 只允许ssh and ftp 因此 我的第一个问题是如何打开 HTTP URL 以便在 Emacs 中进行读取 然后
  • 如何让 clangd 转向 c++20

    当没有其他信息时 如何让 clangd 回退到 c 20 例如 在第一次构建之前 cmake 可以生成一个 这是在带有最新 LLVM 的 Arch Linux 上 这是通过 Emacs LSP 运行的 但这应该没有什么区别 你可以加 Com

随机推荐

  • Scala 模式匹配推断“Any”而不是存在类型,会破坏类型安全吗?

    我遇到了一个令人费解的案例类类型推理问题 这是一个最小的例子 trait T X case class Thing A B X a A f A gt B extends T X def hmm X t T X t match case Th
  • 如何在 vb.net 中引用项目中包含的文件

    当您将图像包含在项目中时 图像会复制到哪个目录中 如果将其复制到输出目录 则可以使用Path Combine Shared ReadOnly AppDirectory As String Path GetDirectoryName New
  • nginx;仅使用 try_files 如果文件存在则返回响应代码

    Since IfIsEvil http wiki nginx org IfIsEvil我一直在尝试使用指令设置配置try files只是为了让维护页面与响应代码 503 一起显示 对于任何 URI 无一例外 即包括 php 页面 如果存在维
  • 将 HTML 附加到容器元素而不使用 innerHTML

    我需要一种在不使用innerHTML 的情况下将HTML 附加到容器元素的方法 我不想使用innerHTML的原因是因为当它像这样使用时 element innerHTML htmldata 它的工作原理是先替换所有 html 然后再添加旧
  • 如何制作不完全圆的圆?

    我想做如下图所示的圆角 但我在制作内圆的时候遇到了麻烦 我尝试过border top style border right style但还没有得到相同的结果 circle border radius 50 width 100px heigh
  • Flask 的 jsonify() 中缩小的 JSON

    Flask 提供了方便的jsonify 函数 它从 Python 变量返回 JSON 对象 from flask import Flask jsonify app Flask name app route def json hello re
  • Python - “in”语句搜索对象列表的速度很慢

    我希望有人能解释为什么搜索对象引用列表比搜索普通列表慢得多 这是使用 python in 关键字进行搜索 我认为它以 C 编译器 速度运行 我认为列表只是对象引用 指针 的数组 因此搜索应该非常快 两个列表在内存中的大小正好是 412236
  • ASP.NET Core 3.1 / Identity 会话永不过期。如何让它在滑动到期时到期?

    我的网站的安全检查显示会话 即登录 永远不会过期 我已经测试过自己 发现了同样的情况 今天早上我在本地主机上打开了该网站 但我仍然从昨天开始登录 我一直认为它会在 20 分钟后过期 就像在 NET Framework 应用程序中一样 我使用
  • SQL Server:将 varchar 转换为 INT

    我被困在转换varchar column UserID to INT 我知道 请不要问为什么UserID专栏最初并不是作为 INT 创建的 说来话长 所以我尝试了这个 但它不起作用 并给我一个错误 select CAST userID AS
  • 获取所有 Slack 用户上次活动时间戳的方法

    我正在构建一个 Python 脚本 用于检索我工作的组织的所有 Slack 用户的一组信息 目前 利益相关者要求我检索我们组织的用户上次在 Slack 上活跃的时间 我遇到了users getPresence https api slack
  • 过滤范围、lambda 和 is_sorted

    这是我在过滤迭代器方面遇到的问题的简化版本 因此没有必要要求我以不同的方式重写它以避免过滤器 奇怪的是 仅在真实代码中is sorted似乎有问题 其他用途似乎工作正常 include
  • 如何修剪 JQuery 自动完成框的输入?

    有没有办法将用户输入的输入修剪 删除前导 尾随空格 到 jQuery 自动完成文本中
  • Android - 如何在设备上安装签名的 APK?

    我正处于将签名的 APK 发布到 Android Market 的最后准备阶段 在谷歌的文档 http developer android com guide publishing preparing html他们说 10 测试您编译和签名
  • 以编程方式关闭 JDialog 中显示的 JPanel

    我有一个主应用程序框架 MainFrame class 在 a 的动作执行事件上JButton a JPanel MyJPanel class 将其放入即可打开JDialog 我不延长JDialog创造MyJPanel类 因为我可能也需要
  • Gmail“无法附加空文件”

    我的应用程序使用 iText 库创建一个 PDF 带有已填写表单的模板 PDF 然后我想将其附加到电子邮件中发送 当我尝试附加文件时出现错误Can t attach empty file在 Gmail 应用程序中 还尝试过 HTC 电子邮件
  • 如何旋转图像以对齐文本以进行提取?

    我正在使用 pytesseract 从图像中提取文本 但它不适用于倾斜的图像 考虑下面给出的图像 这是提取文本的代码 它在不倾斜的图像上运行良好 img cv2 imread
  • 无法在 mac os x mojave 上安装 mysqlclient

    我正在尝试在 mac os x mojave 上安装 mysqlclient sudo pip3 install mysqlclient 我收到以下错误 clang Wno unused result Wsign compare Wunre
  • PHP 8.0 中处理未定义数组键的最佳方法[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 几个月前 我升级到了 PHP 8 0 和许多开发人员一样 我也遇到了这个通知变成警告的麻烦 我不明白处理这个问题的正确方法 所以我想知道如何解决
  • 通过批处理文件终止 MS Access 进程

    我尝试打开 MS Access 延迟大约 5 秒 然后关闭应用程序 使用下面的 bat 文件 我可以打开程序 但在延迟后无法将其关闭 echo off start B Access C Program Files x86 Microsoft
  • 如何让 Emacs 在保存文件时创建中间目录?

    有没有办法在 emacs 中创建文件夹树 类似于 mkdir p in bash 基本上 我希望 emacs 创建所有中间模具 如果它们不存在 当我保存文件时 功能make directory这样做 您的具体问题可能会这样解决 add ho