我正在嘗試使用基於當前緩衝區的文件類型設置的字符串(但不僅僅是文件類型)來編寫elisp函數。例如,我將如何取代這個:如何用elisp中的變量替換硬編碼的字符串?
(defun run()
(interactive)
(async-shell-command (concat "./" (file-name-base buffer-file-name)))
)
與此:
(defun run()
(interactive)
(async-shell-command (concat cmd (file-name-base buffer-file-name)))
)
其中cmd = 「./」
我試着使用defvar,但我得到一個錯誤每當我試圖使用一個字符串,但這:
(defvar flowers)
(set 'flowers '(rose)
讓flycheck給我的錯誤,「全球/動態無功'花缺乏PREF ix「(並且它不起作用)。
這是我見過的最不明確的問題之一。看起來好像您正在從內存中重新創建代碼,而不是從Emacs進行復制。您已完全替換原始代碼。您的示例變量無處存在於您的代碼中,因此無法知道您正在嘗試執行什麼操作。如果您需要幫助,請複製並粘貼您實際嘗試使用的代碼,並使您的示例相關。 – phils