Skip to content
This repository was archived by the owner on Mar 30, 2023. It is now read-only.

Commit 3bc43fa

Browse files
author
hokorobi
committed
add: [miel-3] add correspond frame
add: add close miel-mode easily
1 parent 417bcca commit 3bc43fa

File tree

3 files changed

+58
-10
lines changed

3 files changed

+58
-10
lines changed

site-lisp/bugs/issue-035689f4f3e3a4f308f58016152913aa3ce84521.yaml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ type: :feature
55
component: miel
66
release:
77
reporter: hokorobi <syuheisakuya@hotmail.com>
8-
status: :unstarted
9-
disposition:
8+
status: :closed
9+
disposition: :fixed
1010
creation_time: 2009-07-02 15:12:24.710000 Z
1111
references: []
1212

@@ -16,3 +16,7 @@ log_events:
1616
- hokorobi <syuheisakuya@hotmail.com>
1717
- created
1818
- ""
19+
- - 2009-07-02 17:12:11.741000 Z
20+
- hokorobi <syuheisakuya@hotmail.com>
21+
- closed with disposition fixed
22+
- ""

site-lisp/bugs/issue-4face8ae6496c9e40386dcef97db0672d041a0e9.yaml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ type: :feature
55
component: miel
66
release:
77
reporter: hokorobi <syuheisakuya@hotmail.com>
8-
status: :unstarted
9-
disposition:
8+
status: :closed
9+
disposition: :fixed
1010
creation_time: 2009-07-02 15:08:49.522000 Z
1111
references: []
1212

@@ -16,3 +16,7 @@ log_events:
1616
- hokorobi <syuheisakuya@hotmail.com>
1717
- created
1818
- ""
19+
- - 2009-07-02 17:11:53.553000 Z
20+
- hokorobi <syuheisakuya@hotmail.com>
21+
- closed with disposition fixed
22+
- ""

site-lisp/miel9.l

Lines changed: 46 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,9 @@
2828
(defvar Miel-edit-buffer nil) ; 編集バッファ名一時記憶変数
2929
(defvar Miel-mode-line-format ; モードライン定義
3030
"--%*- %b (%M) [%k:%l] %P %f")
31+
(defvar Miel-frame-name "miel") ; フレーム名
32+
(defvar Miel-pwd-buffer-name "[ Show Pwd ]")
33+
(defvar Miel-browser-buffer-name "[ File Browser ]")
3134
; "( %M ) %P %f")
3235

3336
; ----------
@@ -52,6 +55,7 @@
5255
(define-key *miel-mode-map* '(#\SPC) 'miel-mark-file)
5356
; 削除
5457
(define-key *miel-mode-map* '(#\d) 'miel-delete-file))
58+
(define-key *miel-mode-map* '(#\q) 'miel-quit)
5559
; kill-buffer キーバインドの再定義(global-map でないとダメ)
5660
(define-key *global-keymap* '(#\C-x #\k) 'miel-delete-buffer)
5761

@@ -66,10 +70,11 @@
6670
((equal Miel-edit-buffer nil) ; Mielが編集を起動していなければ
6771
(delete-other-windows)
6872
(cond
69-
((find-name-buffer "[ File Browser ]")
70-
(delete-buffer "[ File Browser ]"))
73+
((find-name-buffer Miel-browser-buffer-name)
74+
(delete-buffer Miel-browser-buffer-name))
7175
(t nil))
72-
(delete-buffer (selected-buffer))) ; カレントバッファを削除
76+
; (delete-buffer (selected-buffer))) ; カレントバッファを削除
77+
)
7378
(t
7479
(delete-buffer Miel-edit-buffer) ; 編集バッファを削除
7580
(setq Miel-edit-buffer nil) ; リセット
@@ -256,7 +261,7 @@
256261
; 現在行のファイルの内容を別ウィンドウに読み込み、表示する
257262
(interactive)
258263
(let ((win (selected-window))
259-
(buf2 (get-buffer-create "[ File Browser ]"))
264+
(buf2 (get-buffer-create Miel-browser-buffer-name))
260265
(file (miel-get-filename))) ; ファイル名取得
261266
(save-excursion
262267
(set-buffer buf2) ; 編集対象バッファを切替える
@@ -316,6 +321,38 @@
316321

317322
; ----------
318323

324+
(defun frame-get ()
325+
; Miel のフレームを取得
326+
(find-pseudo-frame Miel-frame-name))
327+
328+
; ----------
329+
330+
(defun restore ()
331+
; Miel のフレームを表示
332+
(interactive)
333+
(let ((frame (frame-get)))
334+
(when frame
335+
(select-pseudo-frame frame)
336+
(when (find-buffer Miel-pwd-buffer-name)
337+
(switch-to-buffer Miel-pwd-buffer-name))
338+
)))
339+
340+
; ----------
341+
342+
(defun miel-quit ()
343+
; miel-mode の終了
344+
(interactive)
345+
(let ((pf (find-pseudo-frame Miel-frame-name)))
346+
(when pf
347+
(delete-pseudo-frame pf)
348+
(when (find-buffer Miel-browser-buffer-name)
349+
(delete-buffer Miel-browser-buffer-name))
350+
(when (find-buffer Miel-pwd-buffer-name)
351+
(delete-buffer Miel-pwd-buffer-name))
352+
)))
353+
354+
; ----------
355+
319356
(defun miel (dir)
320357
; Miel メイン処理関数
321358
; ディレクトリ一覧を表示してファイルの情報を表示
@@ -354,9 +391,12 @@
354391
(defun miel-mode ()
355392
; 往年の著名な DOS-Filer Miel.exe の clone
356393
(interactive)
357-
(delete-other-windows)
394+
(when (frame-get)
395+
(restore)
396+
(return-from miel-mode))
397+
(new-pseudo-frame Miel-frame-name)
358398
(setq Miel-window-height (window-height))
359-
(switch-to-buffer "[ Show Pwd ]")
399+
(switch-to-buffer Miel-pwd-buffer-name)
360400
(setq Miel-main-window (selected-window))
361401
; メジャーモードの設定
362402
(setq major-mode 'miel-mode)

0 commit comments

Comments
 (0)