كيفية حفظ الملفات على التركيز وزنه في إيماكس تلقائيا

StackOverflow https://stackoverflow.com/questions/1230245

  •  22-07-2019
  •  | 
  •  

سؤال

هل من الممكن تكوين إيماكس، بحيث يوفر كل الملفات عندما يفقد نافذة ايماكس التركيز؟

هل كانت مفيدة؟

المحلول

وأنا استخدم هذا، وأنها ستعمل فقط إذا ايماكس يعمل تحت X (مثل ذلك على الارجح في شيء من هذا القبيل أوبونتو).

(when
   (and (featurep 'x) window-system)
 (defvar on-blur--saved-window-id 0 "Last known focused window.")
 (defvar on-blur--timer nil "Timer refreshing known focused window.")
 (defun on-blur--refresh ()
   "Runs on-blur-hook if emacs has lost focus."
   (let* ((active-window (x-window-property
                          "_NET_ACTIVE_WINDOW" nil "WINDOW" 0 nil t))
          (active-window-id (if (numberp active-window)
                                active-window
                              (string-to-number
                               (format "%x00%x"
                                       (car active-window)
                                       (cdr active-window)) 16)))
          (emacs-window-id (string-to-number
                            (frame-parameter nil 'outer-window-id))))
     (when (and
            (= emacs-window-id on-blur--saved-window-id)
            (not (= active-window-id on-blur--saved-window-id)))
       (run-hooks 'on-blur-hook))
     (setq on-blur--saved-window-id active-window-id)
     (run-with-timer 1 nil 'on-blur--refresh)))
 (add-hook 'on-blur-hook #'(lambda () (save-some-buffers t)))
 (on-blur--refresh))

نصائح أخرى

وأضفت التركيز السنانير لجنو إيماكس 24.4.

ودعوا focus-in-hook وfocus-out-hook.

ويمكنك إضافة

(defun save-all ()
  (interactive)
  (save-some-buffers t))

(add-hook 'focus-out-hook 'save-all)

لملف .emacs ويجب حفظ كافة الملفات على فقدان التركيز.

ولست متأكدا إذا كان هذا هو ما تريد.

(defun dld-deselect-frame-hook ()
  (save-some-buffers 1))

(add-hook 'deselect-frame-hook 'dld-deselect-frame-hook)

ومن: HTTP: //www.dribin. غزاله / ديف / بلوق / المحفوظات / 2003/09/10 / ايماكس /

وتحرير: يبدو فقط للعمل في إكس إيماكس

<اقتباس فقرة>   

[...] ميزة أتحدث عنه هو من   الكتبة. ومن أنه جدا عندما   تحرير أتش تي أم أل، وما شابه ذلك، كنت لا   يجب أن تضغط C-س-C الصورة بعد الآن، كنت   مجرد تغيير النافذة والتحقق من   المتصفح.

في هذه الحالة، بدلا من التحول إلى تطبيق المتصفح، تأمر إيماكس لتحميل التطبيق المتصفح (C-c C-v أو M-x browse-url-of-buffer). مع هذا الأسلوب، يمكنك كتابة وظيفة بنفسك الذي يحفظ العازلة و<م> ثم يجلب تصل المتصفح، مثل:

(defun my-browse-url-of-buffer ()
  "Save current buffer and view its content in browser."
  (interactive)
  (save-buffer)
  (browse-url-of-buffer))

ووصل الأمر إلى ربط مريحة.

وأو يمكنك الاستمرار في استخدام html-autoview-mode أنه في كل مرة كنت يحفظ العازلة، تلقائيا بتحميل الملف إلى المتصفح المفضل لديك.

ويمكنك استخدام `لصناعة السيارات في حفظ الفاصل الزمني 'لحفظ كل n الأحرف التي تقوم بكتابتها. ومجموعة من الألغام إلى 100. وهكذا عن كل 2-3 خطوط للقانون، ربما؟

<اقتباس فقرة>   

وصناعة السيارات في حفظ الفاصل الزمني هو متغير   المعرف في `C شفرة المصدر". قيمته   100

     

والوثائق:   * عدد من الأحداث المدخلات بين السيارات ينقذ. صفر وسائل تعطيل   الحفظ التلقائي نظرا لعدد الأحرف   كتبته.

     

ويمكنك تخصيص هذا المتغير.

وهذا لا يجيب سؤالك الأصلي. انها مجرد وسيلة لتحقيق شيئا من هذا القبيل.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top