[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] 105/352: wcheck-update-buffer-data uuden tietokannan mukaiseksi
From: |
Stefan Monnier |
Subject: |
[elpa] 105/352: wcheck-update-buffer-data uuden tietokannan mukaiseksi |
Date: |
Mon, 07 Jul 2014 14:02:50 +0000 |
monnier pushed a commit to branch master
in repository elpa.
commit 403b3b48724aa803c13d742e17da38c6a0130d1e
Author: Teemu Likonen <address@hidden>
Date: Wed Jul 22 07:56:51 2009 +0000
wcheck-update-buffer-data uuden tietokannan mukaiseksi
---
wcheck-mode.el | 76 ++++++++++++++++++++++++++-----------------------------
1 files changed, 36 insertions(+), 40 deletions(-)
diff --git a/wcheck-mode.el b/wcheck-mode.el
index d9a32ae..1938e4a 100644
--- a/wcheck-mode.el
+++ b/wcheck-mode.el
@@ -256,7 +256,6 @@ This is used when language does not define face."
(defvar wcheck-buffer-window-areas nil)
(make-variable-buffer-local 'wcheck-buffer-window-areas)
-(defvar wcheck-buffer-process-data nil)
(defvar wcheck-buffer-data nil)
(defconst wcheck-process-name-prefix "wcheck/"
@@ -667,54 +666,51 @@ Return the stopped process or nil if there was no such
process."
proc)))
-(defun wcheck-update-buffer-process-data (buffer language)
- "Update variable `wcheck-buffer-process-data' for BUFFER.
-Calling this function is the primary way to tell `wcheck-mode'
-that BUFFER is using LANGUAGE and its settings. If LANGUAGE is
-nil remove BUFFER from the list."
+(defun wcheck-update-buffer-data (buffer language)
+ "Update process and language data for BUFFER.
+Calling this function is the primary way to maintain the language
+and process data associated to BUFFER. If LANGUAGE is nil remove
+BUFFER from the list."
(when (and (bufferp buffer)
(or (stringp language)
(not language)))
- ;; Remove illegal elements from the list, that is, elements whose
- ;; cdr is not a string.
- (dolist (item wcheck-buffer-process-data)
- (unless (stringp (cdr item))
- (setq wcheck-buffer-process-data
- (delq item wcheck-buffer-process-data))))
-
- ;; Construct a list of currently needed languages/processes.
- (let ((old-langs (mapcar #'cdr wcheck-buffer-process-data))
- new-langs)
+ ;; Construct a list of currently used processes.
+ (let ((old-processes (wcheck-get-all-data :process))
+ new-processes)
;; Remove dead buffers and possible minibuffers from the list.
- (dolist (item wcheck-buffer-process-data)
- (when (or (not (buffer-live-p (car item)))
- (minibufferp (car item)))
- (setq wcheck-buffer-process-data
- (delq item wcheck-buffer-process-data))))
-
- ;; Remove BUFFER from the list.
- (setq wcheck-buffer-process-data
- (assq-delete-all buffer wcheck-buffer-process-data))
+ (dolist (item (wcheck-get-all-data :buffer))
+ (when (or (not (buffer-live-p item))
+ (minibufferp item))
+ (wcheck-delete-buffer-data item)))
+
(if language
- ;; LANGUAGE was given so add this BUFFER's language info to
- ;; the list.
- (add-to-list 'wcheck-buffer-process-data
- (cons buffer language))
- ;; LANGUAGE was not given so this usually means that wcheck-mode
- ;; is being turned off from this buffer. Remove BUFFER from the
- ;; list of buffers which request for wcheck update.
- (wcheck-timer-read-request-delete buffer))
-
- ;; Construct a list of languages/processes that are still needed.
- (setq new-langs (mapcar #'cdr wcheck-buffer-process-data))
+ (progn
+ ;; LANGUAGE was given. If data for this buffer does not
+ ;; exist create it.
+ (unless (wcheck-get-buffer-data buffer)
+ (wcheck-create-buffer-data buffer))
+ ;; Add this BUFFER's language info and reset the process
+ ;; info.
+ (wcheck-set-buffer-data buffer :language language)
+ (wcheck-set-buffer-data buffer :process nil))
+
+ ;; LANGUAGE was not given so this normally means that
+ ;; wcheck-mode is being turned off for this buffer. Remove
+ ;; BUFFER from the list of buffers which request for wcheck
+ ;; update and remove all buffer data.
+ (wcheck-timer-read-request-delete buffer)
+ (wcheck-delete-buffer-data buffer))
+
+ ;; Construct a list of processes that are still used.
+ (setq new-processes (wcheck-get-all-data :process))
;; Stop those processes which are no longer needed.
- (dolist (lang old-langs)
- (unless (member lang new-langs)
- (wcheck-end-process lang)))))
+ (dolist (proc old-processes)
+ (unless (memq proc new-processes)
+ (wcheck-end-process proc)))))
- wcheck-buffer-process-data)
+ wcheck-buffer-data)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- [elpa] 91/352: Muutos muuttujan kuvauksessa: buffer-specific --> buffer-local, (continued)
- [elpa] 91/352: Muutos muuttujan kuvauksessa: buffer-specific --> buffer-local, Stefan Monnier, 2014/07/07
- [elpa] 97/352: Kielellistä hienosaatöä muuttujan wcheck-language-data ohjeeseen, Stefan Monnier, 2014/07/07
- [elpa] 95/352: Lisätään tarkistus ulkoisen prosessin päälläolosta, Stefan Monnier, 2014/07/07
- [elpa] 99/352: Maalataan sanat tiedossa olevan tekstialueen perusteella, Stefan Monnier, 2014/07/07
- [elpa] 98/352: Luetaan vain tarpeelliset tekstialueet, Stefan Monnier, 2014/07/07
- [elpa] 100/352: Merkitään funtio-objektit #'-merkillä, Stefan Monnier, 2014/07/07
- [elpa] 101/352: Korjataan kirjoitusvirhe funktion kuvauksesta, Stefan Monnier, 2014/07/07
- [elpa] 106/352: Muutetaan prosessit puskurikohtaisiksi, Stefan Monnier, 2014/07/07
- [elpa] 96/352: Customize-tyypin "face" tilalle "symbol", Stefan Monnier, 2014/07/07
- [elpa] 103/352: Siirretään overlayt uuteen paikkaan, Stefan Monnier, 2014/07/07
- [elpa] 105/352: wcheck-update-buffer-data uuden tietokannan mukaiseksi,
Stefan Monnier <=
- [elpa] 110/352: Muutetaan wcheck-send-words hakemaan kielitiedot tietokannasta, Stefan Monnier, 2014/07/07
- [elpa] 107/352: Poistetaan turha wcheck-end-process, Stefan Monnier, 2014/07/07
- [elpa] 104/352: Lisätään matalan tason tietokantafunktiot, Stefan Monnier, 2014/07/07
- [elpa] 114/352: Asetetaan ajastinfunktiot hakemaan tiedot uudesta tietokannasta, Stefan Monnier, 2014/07/07
- [elpa] 108/352: Siirretään koukkujen asennus omiin funktioihinsa, Stefan Monnier, 2014/07/07
- [elpa] 112/352: Muutetaan wcheck-make-overlay hakemaan kielitiedot tietokannasta, Stefan Monnier, 2014/07/07
- [elpa] 116/352: Muutetaan tietokannan kyselyfunktio geneerisemmäksi, Stefan Monnier, 2014/07/07
- [elpa] 109/352: Muutetaan wcheck-read-words hakemaan kielitiedot tietokannasta, Stefan Monnier, 2014/07/07
- [elpa] 120/352: Kielellistä hienosäätöä dokumentteihin, Stefan Monnier, 2014/07/07
- [elpa] 115/352: Muutetaan wcheck-mode ja -change-language käyttämään uutta tietokantaa, Stefan Monnier, 2014/07/07