Revision: bf57b8b4ac94
Author: KIHARA Hideto <[email protected]>
Date: Thu May 17 03:42:55 2012
Log: Fix error on showing last page of kigou mode.
* scm/tutcode.scm
- (tutcode-pseudo-table-style-make-page):
Not to omit empty block to avoid mismatch with nr candidates.
- (tutcode-table-in-vertical-candwin):
Add argument whether to omit empty lower half block.
- (tutcode-auto-help-dump):
Follow the argument change of tutcode-table-in-vertical-candwin.
http://code.google.com/p/uim/source/detail?r=bf57b8b4ac94
Modified:
/scm/tutcode.scm
=======================================
--- /scm/tutcode.scm Sat May 12 16:49:54 2012
+++ /scm/tutcode.scm Thu May 17 03:42:55 2012
@@ -1908,7 +1908,11 @@
(+ idx 1)
(cons (tutcode-get-candidate-handler-internal pc idx 0)
cands))))))
- (tutcode-table-in-vertical-candwin cands)))
+ ;; ºÇ½é¤Î¥Ú¡¼¥¸°Ê³°¤Ï¡¢²¼È¾Ê¬¥Ö¥í¥Ã¥¯¤¬¶õ¤Ç¤â¾Êά¤·¤Ê¤¤
+ ;; (Á´¸õÊä¿ô¤ÏºÇ½é¤Î¥Ú¡¼¥¸¤Î¸õÊä¿ô¤ò¤â¤È¤Ë·×»»¤¹¤ë¤Î¤Ç¡¢
+ ;; ºÇ½é¤Î¥Ú¡¼¥¸¤Ç²¼È¾Ê¬¥Ö¥í¥Ã¥¯Í¤ê¤Ê¤Î¤Ë¡¢ºÇ¸å¤Î¥Ú¡¼¥¸¤Ç¾Êά¤µ¤ì¤ë¤È¡¢
+ ;; ¸õÊ䤬¤ê¤Ê¤¯¤Ê¤Ã¤Æget-candidate»þ¤Ë¥¨¥é¡¼¤Ë¤Ê¤ë)
+ (tutcode-table-in-vertical-candwin cands (= start-index 0))))
;;; ¸õÊä¥ê¥¹¥È¾å¤Î¸õÊäÈÖ¹æ¤ò¡¢µ¼»÷ɽ·Á¼°¾å¤Î¸õÊäÈÖ¹æ¤ËÊÑ´¹
(define (tutcode-pseudo-table-style-candwin-index pc idx)
@@ -2039,9 +2043,10 @@
;;; (ɽ·Á¼°¸õÊ䥦¥£¥ó¥É¥¦Ì¤Âбþ¤Ç¡¢½Ä¤Ë¸õÊä¤òʤ٤ëcandwinÍÑ¡£
;;; uim-el¤Ç(setq uim-candidate-display-inline t)¤Î¾ì¹çÅù)
;;; @param cands ("ɽ¼¨Ê¸»úÎó" "¥é¥Ù¥ëʸ»úÎó" "Ãí¼á")¤Î¥ê¥¹¥È
+;;; @param omit-empty-block?
ɽ¤Î²¼È¾Ê¬(¥·¥Õ¥È¥¡¼Îΰè)¤¬¶õ¤Î¾ì¹ç¤Ë¾Êά¤¹¤ë¤«
;;; @return ÊÑ´¹¸å¤Î¥ê¥¹¥È¡£
;;; Îã:(("*¤ä|*¤Þ|*¤«|*¤¢|*¤Ï||*¡×|*¡Û|*¡Ä|*¡¦|*¡É||" "q" "") ...)
-(define (tutcode-table-in-vertical-candwin cands)
+(define (tutcode-table-in-vertical-candwin cands omit-empty-block?)
(let*
((layout (if (null? uim-candwin-prog-layout)
uim-candwin-prog-layout-qwerty-jis
@@ -2058,12 +2063,14 @@
(let*
;; ɽ¤Î²¼È¾Ê¬(¥·¥Õ¥È¥¡¼Îΰè)¤¬¶õ¤Î¾ì¹ç¤Ï¾åȾʬ¤À¤±»È¤¦
((vecmax
- (let loop ((k (* 13 4)))
- (if (>= k vecsize)
- (* 13 4)
- (if (string? (vector-ref vec k))
- vecsize
- (loop (+ k 1))))))
+ (if (not omit-empty-block?)
+ vecsize
+ (let loop ((k (* 13 4)))
+ (if (>= k vecsize)
+ (* 13 4)
+ (if (string? (vector-ref vec k))
+ vecsize
+ (loop (+ k 1)))))))
;; ³ÆÎó¤ÎºÇÂçÉý¤òÄ´¤Ù¤ë
(width-list0
(let colloop
@@ -2711,7 +2718,7 @@
(append-map
(lambda (elem)
(list (car elem) "\n"))
- (tutcode-table-in-vertical-candwin help))))
+ (tutcode-table-in-vertical-candwin help #t))))
(tutcode-commit pc (apply string-append linecands) #t #t))))))
;;; preeditɽ¼¨¤ò¹¹¿·¤¹¤ë¡£