[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/beardbolt db87a0a6a4 080/323: Refactor rmsbolt-temp-dir
From: |
ELPA Syncer |
Subject: |
[elpa] externals/beardbolt db87a0a6a4 080/323: Refactor rmsbolt-temp-dir to be more clear it's a private variable |
Date: |
Thu, 9 Mar 2023 10:58:19 -0500 (EST) |
branch: externals/beardbolt
commit db87a0a6a45549d4a681434d2d2a497f00bd72d4
Author: Jay Kamat <jaygkamat@gmail.com>
Commit: Jay Kamat <jaygkamat@gmail.com>
Refactor rmsbolt-temp-dir to be more clear it's a private variable
---
rmsbolt.el | 53 +++++++++++++++++++++++++++--------------------------
1 file changed, 27 insertions(+), 26 deletions(-)
diff --git a/rmsbolt.el b/rmsbolt.el
index 46745cc146..70134adf50 100644
--- a/rmsbolt.el
+++ b/rmsbolt.el
@@ -106,25 +106,12 @@
:group 'rmsbolt)
;;;; Variables:
-(defvar rmsbolt-temp-dir nil
- "Temporary directory to use for compilation and other reasons.")
-(defvar rmsbolt-shell "bash"
- "Shell rmsbolt will use to split paths.")
(defvar rmsbolt-output-buffer "*rmsbolt-output*")
;; whether rmsbolt-mode is enabled.
(defvar rmsbolt-mode)
(defvar rmsbolt-hide-compile t)
(defvar rmsbolt-binary-asm-limit 10000)
-(defun rmsbolt-output-filename (src-buffer &optional asm)
- "Function for generating an output filename for SRC-BUFFER.
-
-Outputs assembly file if ASM."
- (if (and (not asm)
- (buffer-local-value 'rmsbolt-disassemble src-buffer))
- (expand-file-name "rmsbolt.out" rmsbolt-temp-dir)
- (expand-file-name "rmsbolt.s" rmsbolt-temp-dir)))
-
(defvar-local rmsbolt-line-mapping nil
"Line mapping hashtable from source lines -> asm lines")
(defvar-local rmsbolt-current-line nil
@@ -143,6 +130,10 @@ Outputs assembly file if ASM."
"Idle timer for rmsbolt overlays.")
(defvar rmsbolt--compile-idle-timer nil
"Idle timer for rmsbolt overlays.")
+(defvar rmsbolt--temp-dir nil
+ "Temporary directory to use for compilation and other reasons.
+
+Please DO NOT modify this blindly, as this directory will get deleted on Emacs
exit.")
(defvar rmsbolt-dir (when load-file-name
(file-name-directory load-file-name))
@@ -150,6 +141,16 @@ Outputs assembly file if ASM."
(defvar-local rmsbolt-src-buffer nil)
+;;;; Variable-like funcs
+(defun rmsbolt-output-filename (src-buffer &optional asm)
+ "Function for generating an output filename for SRC-BUFFER.
+
+Outputs assembly file if ASM."
+ (if (and (not asm)
+ (buffer-local-value 'rmsbolt-disassemble src-buffer))
+ (expand-file-name "rmsbolt.out" rmsbolt--temp-dir)
+ (expand-file-name "rmsbolt.s" rmsbolt--temp-dir)))
+
;;;; Regexes
(defvar rmsbolt-label-def (rx bol (group (any ".a-zA-Z_$@")
@@ -863,9 +864,9 @@ Outputs assembly file if ASM."
'identity
(list "&&" demangler
"<" (rmsbolt-output-filename src-buffer t)
- ">" (expand-file-name "tmp.s" rmsbolt-temp-dir)
+ ">" (expand-file-name "tmp.s" rmsbolt--temp-dir)
"&&" "mv"
- (expand-file-name "tmp.s" rmsbolt-temp-dir)
+ (expand-file-name "tmp.s" rmsbolt--temp-dir)
(rmsbolt-output-filename src-buffer t))
" "))
existing-cmd))
@@ -887,7 +888,7 @@ Outputs assembly file if ASM."
(cmd (funcall func :src-buffer src-buffer))
;; Convert to demangle if we need to
(cmd (rmsbolt--demangle-command cmd lang src-buffer))
- (default-directory rmsbolt-temp-dir))
+ (default-directory rmsbolt--temp-dir))
(when (buffer-local-value 'rmsbolt-disassemble src-buffer)
(pcase
@@ -932,29 +933,29 @@ Outputs assembly file if ASM."
(defun rmsbolt--gen-temp ()
"Generate rmsbolt temp dir if needed."
- (unless (and rmsbolt-temp-dir
- (file-exists-p rmsbolt-temp-dir))
- (setq rmsbolt-temp-dir
+ (unless (and rmsbolt--temp-dir
+ (file-exists-p rmsbolt--temp-dir))
+ (setq rmsbolt--temp-dir
(make-temp-file "rmsbolt-" t))
(add-hook 'kill-emacs-hook
(lambda ()
- (when (and (boundp 'rmsbolt-temp-dir)
- rmsbolt-temp-dir
- (file-directory-p rmsbolt-temp-dir))
- (delete-directory rmsbolt-temp-dir t))
- (setq rmsbolt-temp-dir nil)))))
+ (when (and (boundp 'rmsbolt--temp-dir)
+ rmsbolt--temp-dir
+ (file-directory-p rmsbolt--temp-dir))
+ (delete-directory rmsbolt--temp-dir t))
+ (setq rmsbolt--temp-dir nil)))))
(defun rmsbolt-starter (lang-mode)
"Code for fully setting up a language from LANG-MODE."
(rmsbolt--gen-temp)
(let* ((lang-def (rmsbolt--get-lang lang-mode))
(file-name
- (expand-file-name (rmsbolt-l-starter-file-name lang-def)
rmsbolt-temp-dir))
+ (expand-file-name (rmsbolt-l-starter-file-name lang-def)
rmsbolt--temp-dir))
(exists (file-exists-p file-name))
(src-file-name
(when rmsbolt-dir
(expand-file-name (rmsbolt-l-starter-file-name lang-def)
- (expand-file-name "starters/" rmsbolt-dir ))))
+ (expand-file-name "starters/" rmsbolt-dir))))
(src-file-exists (when src-file-name
(file-exists-p src-file-name))))
(if (not src-file-exists)
- [elpa] externals/beardbolt 503b51ecb8 066/323: Fix typo, (continued)
- [elpa] externals/beardbolt 503b51ecb8 066/323: Fix typo, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt ca92d533ad 061/323: Add basic support for python, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt fef52d3de3 057/323: Update readme, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 1f50b7bb7f 069/323: Add java framework, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 0e0d82d774 056/323: Override default directory to prevent rouge executables, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 7e4baa833e 068/323: Fix a few comments, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 234e09b81a 065/323: Fix spelling of OCaml, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 285f9bd9be 074/323: Add missing import, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt d126f452d2 077/323: Update README, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 1001531172 073/323: Add java demo, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt db87a0a6a4 080/323: Refactor rmsbolt-temp-dir to be more clear it's a private variable,
ELPA Syncer <=
- [elpa] externals/beardbolt 526ed37d71 088/323: Don't add overlays to non-rmsbolt-mode buffers, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 9967391c74 105/323: Clean up pony support, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 910509ce5d 104/323: Document buffer-local tweakables in readme, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 5cecc2fb67 096/323: Fix typo in README, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 7e25ed58f2 099/323: Merge branch 'patch-1' into 'master', ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 439c7cb213 082/323: Satisfy checkdoc, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 04dd896bd5 114/323: Update README, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 6c53494f52 089/323: Add note for contributors, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 171a23628c 090/323: Reorder and clarify readme usage, ELPA Syncer, 2023/03/09
- [elpa] externals/beardbolt 26fc524912 083/323: Fix usage of if-let*, ELPA Syncer, 2023/03/09