Develop and Download Open Source Software

Browse CVS Repository

Diff of /kogiku/kogiku/kogiku.el

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.16 by shirai, Tue Feb 10 11:52:26 2004 UTC revision 1.17 by shirai, Tue Feb 10 12:06:16 2004 UTC
# Line 129  If nil, kogiku toggle with a prefix argu Line 129  If nil, kogiku toggle with a prefix argu
129      (funcall (car kogiku-original-functions))))      (funcall (car kogiku-original-functions))))
130    
131  (defun kogiku-complete-with-toggle (switch)  (defun kogiku-complete-with-toggle (switch)
132    (when switch    (cond
133      (cond     ((and switch
134       ((eq minibuffer-completion-table 'kogiku-read-file-name-internal)           (eq minibuffer-completion-table 'kogiku-read-file-name-internal))
135        (setq minibuffer-completion-table kogiku-original-completion-table))      (setq minibuffer-completion-table kogiku-original-completion-table))
136       (t     (switch
137        (setq minibuffer-completion-table 'kogiku-read-file-name-internal)))      (setq minibuffer-completion-table 'kogiku-read-file-name-internal)))
     (kogiku-minibuffer-prompt-e21))  
138    (funcall (car kogiku-original-functions))    (funcall (car kogiku-original-functions))
139    (kogiku-minibuffer-prompt-not-e21))    (kogiku-minibuffer-prompt))
140    
141  (defun kogiku-minibuffer-prompt-e21 ()  (defun kogiku-minibuffer-prompt ()
142    (when (fboundp 'field-beginning)    (if (fboundp 'field-beginning)
143      (let ((prompt (buffer-substring (point-min) (field-beginning)))        ;; Emacs 21
144            (props (text-properties-at (point-min)))        (let ((prompt (buffer-substring (point-min) (field-beginning)))
145            (indicator (format "[%s]" kogiku-minibuffer-prompt-string))              (props (text-properties-at (point-min)))
146            (buffer-read-only nil)              (indicator (format "[%s]" kogiku-minibuffer-prompt-string))
147            (inhibit-read-only t))              (buffer-read-only nil)
148        (save-excursion              (inhibit-read-only t)
149          (if (eq minibuffer-completion-table 'kogiku-read-file-name-internal)              replace)
150              (when (string-match ":[^:]*" prompt)          (save-excursion
               (set-text-properties 0 (length indicator) props indicator)  
               (add-text-properties 0 (length indicator)  
                                    '(face kogiku-indicator-face) indicator)  
               (setq prompt (concat (substring prompt 0 (match-beginning 0))  
                                    indicator  
                                    (substring prompt (match-beginning 0))))  
               (delete-region (point-min) (field-beginning))  
               (goto-char (point-min))  
               (insert prompt))  
151            (when (string-match (regexp-quote indicator) prompt)            (when (string-match (regexp-quote indicator) prompt)
152                (setq replace t)
153              (setq prompt (replace-match "" nil nil prompt))              (setq prompt (replace-match "" nil nil prompt))
154              (set-text-properties 0 (length prompt) props prompt)              (set-text-properties 0 (length prompt) props prompt))
155              (when (and (eq minibuffer-completion-table
156                             'kogiku-read-file-name-internal)
157                         (string-match ":[^:]*" prompt))
158                (setq replace t)
159                (set-text-properties 0 (length indicator) props indicator)
160                (add-text-properties 0 (length indicator)
161                                     '(face kogiku-indicator-face) indicator)
162                (setq prompt (concat (substring prompt 0 (match-beginning 0))
163                                     indicator
164                                     (substring prompt (match-beginning 0)))))
165              (when replace
166              (delete-region (point-min) (field-beginning))              (delete-region (point-min) (field-beginning))
167              (goto-char (point-min))              (goto-char (point-min))
168              (insert prompt)))))))              (insert prompt))))
169        ;; Others
 (defun kogiku-minibuffer-prompt-not-e21 ()  
   (unless (fboundp 'field-beginning)  
170      (if (eq minibuffer-completion-table 'kogiku-read-file-name-internal)      (if (eq minibuffer-completion-table 'kogiku-read-file-name-internal)
171          (let ((max (min (point-max) (1+ (point-min)))))          (let ((max (min (point-max) (1+ (point-min)))))
172            (if kogiku-minibuffer-prompt-overlay            (if kogiku-minibuffer-prompt-overlay
# Line 342  If nil, kogiku toggle with a prefix argu Line 342  If nil, kogiku toggle with a prefix argu
342    (when (and (not kogiku-enable-once)    (when (and (not kogiku-enable-once)
343               (eq minibuffer-completion-table 'read-file-name-internal))               (eq minibuffer-completion-table 'read-file-name-internal))
344      (setq minibuffer-completion-table 'kogiku-read-file-name-internal))      (setq minibuffer-completion-table 'kogiku-read-file-name-internal))
345    (kogiku-minibuffer-prompt-e21)    (kogiku-minibuffer-prompt)
   (kogiku-minibuffer-prompt-not-e21)  
346    (let ((msg (format "[%s%s-mode]"    (let ((msg (format "[%s%s-mode]"
347                       (if kogiku-enable-once                       (if kogiku-enable-once
348                           (concat kogiku-minibuffer-prompt-string " ") "")                           (concat kogiku-minibuffer-prompt-string " ") "")

Legend:
Removed from v.1.16  
changed lines
  Added in v.1.17

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26