• R/O
  • HTTP
  • SSH
  • HTTPS

Commit

Tags
Aucun tag

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

A multilingual input method framework


Commit MetaInfo

Révisionf9625aeadb4881a873b97c4aaa004dbef18e503a (tree)
l'heure2006-12-22 06:33:14
Auteuryamaken <yamaken@ff9a...>
Commiteryamaken

Message de Log

* This commit make SigScheme-based uim runnable again

* sigscheme/configure.in

- Change settings for
--enable-conf=uim. --disable-strict-toplevel-definitions and
--enable-srfi75-named-chars have been added
- Add --enable-soft-assert by default if --enable-debug

* sigscheme/src/module-srfi6.c

- (istrport_finalize): Rename to srfi6_istrport_finalize() to avoid
func name conflict on combind mode
- (srfi6_istrport_finalize): Renamed from istrport_finalize()
- (scm_p_srfi6_open_input_string): Follow the renaming

* uim/uim-scm.c

- (uim_scm_init): Enclose encoding handling into #if
SCM_USE_MULTIBYTE_CHAR

* scm/prime.scm

- (prime-reset-handler): Fix malformed empty lambda body

* scm/util.scm

- (hyphen-sym): New variable
- (define-record): Fix R5RS-inconformant hyphen-prefixed symbol with
hyphen-sym

* scm/uim-module-manager.scm

- (prepare-installed-im-list): Ditto

* sigscheme/QALog

- Update

Change Summary

Modification

--- a/scm/prime.scm
+++ b/scm/prime.scm
@@ -2048,7 +2048,7 @@
20482048 (define prime-reset-handler
20492049 (lambda (context)
20502050 ;(print "prime-reset-handler")
2051- ))
2051+ #f))
20522052
20532053 (define prime-mode-set
20542054 (lambda (context mode)
--- a/scm/uim-module-manager.scm
+++ b/scm/uim-module-manager.scm
@@ -29,6 +29,7 @@
2929 ;;; SUCH DAMAGE.
3030 ;;;;
3131
32+(require "util.scm")
3233 (require "im.scm")
3334 (require "lazy-load.scm")
3435
@@ -43,9 +44,10 @@
4344 ;; XXX temporary solution to register all IM in a file
4445 (set! require
4546 (lambda (file)
46- (let* ((file-sym (string->symbol file))
47- (loaded-sym (symbolconc '* file-sym '-loaded*))
48- (reloaded-sym (symbolconc '* file-sym '-reloaded*)))
47+ (let* ((loaded-sym (string->symbol
48+ (string-append "*" file "-loaded*")))
49+ (reloaded-sym (string->symbol
50+ (string-append "*" file "-reloaded*"))))
4951 (cond
5052 ((symbol-bound? reloaded-sym)
5153 loaded-sym)
--- a/scm/util.scm
+++ b/scm/util.scm
@@ -34,6 +34,8 @@
3434 ;(require "slib-mulapply.scm")
3535 ;(require "slib-srfi-1.scm")
3636
37+(define hyphen-sym (string->symbol "-"))
38+
3739 ;;
3840 ;; generic utilities
3941 ;;
@@ -574,10 +576,10 @@
574576 (for-each (lambda (spec index)
575577 (let* ((elem-sym (list-ref spec 0))
576578 (default (list-ref spec 1))
577- (getter-sym (symbolconc rec-sym '- elem-sym))
579+ (getter-sym (symbolconc rec-sym hyphen-sym elem-sym))
578580 (getter (lambda (rec)
579581 (list-ref rec index)))
580- (setter-sym (symbolconc rec-sym '-set- elem-sym '!))
582+ (setter-sym (symbolconc rec-sym hyphen-sym 'set- elem-sym '!))
581583 (setter (lambda (rec val)
582584 (set-car! (nthcdr index rec)
583585 val))))
@@ -587,7 +589,7 @@
587589 (interaction-environment))))
588590 rec-spec
589591 (iota (length rec-spec)))
590- (let ((creator-sym (symbolconc rec-sym '-new))
592+ (let ((creator-sym (symbolconc rec-sym hyphen-sym 'new))
591593 (creator (let ((defaults (map cadr rec-spec)))
592594 (lambda init-lst
593595 (cond
--- a/sigscheme/QALog
+++ b/sigscheme/QALog
@@ -911,7 +911,7 @@ corner case tests:
911911
912912 file: module-srfi6.c
913913 category: srfi
914-spec by eyes: yamaken@r3992
914+spec by eyes: yamaken@r3992, yamaken@r4172
915915 spec by tests: yamaken@r3992
916916 general review: yamaken@r3992
917917 64-bit by eyes: yamaken@r3992
--- a/sigscheme/configure.in
+++ b/sigscheme/configure.in
@@ -288,7 +288,7 @@ AX_FEATURE_ARG_X(conf, [select base configuration of SigScheme.
288288 r5rs)
289289 use_strict_r5rs=yes
290290 ;;
291- full|dev|uim)
291+ full|dev)
292292 use_strict_r5rs=no
293293 #use_const_list_literal=yes
294294 use_const_vector_literal=yes
@@ -298,6 +298,16 @@ AX_FEATURE_ARG_X(conf, [select base configuration of SigScheme.
298298 use_strict_toplevel_definitions=yes
299299 use_internal_definitions=yes
300300 ;;
301+ uim)
302+ use_strict_r5rs=no
303+ #use_const_list_literal=yes
304+ use_const_vector_literal=yes
305+ use_strict_null_form=no
306+ use_strict_vector_form=yes
307+ use_strict_argcheck=yes
308+ use_strict_toplevel_definitions=no
309+ use_internal_definitions=yes
310+ ;;
301311 small|siod)
302312 use_strict_r5rs=no
303313 use_const_list_literal=no
@@ -456,7 +466,7 @@ AX_FEATURE_ARG_X(conf, [select base configuration of SigScheme.
456466 use_srfi38=yes
457467 use_srfi48=yes
458468 use_srfi60=yes
459- use_srfi75_named_chars=no
469+ use_srfi75_named_chars=yes
460470 use_srfi75=no
461471 use_sscm_extensions=yes
462472 use_sscm_format_extensions=yes
@@ -657,7 +667,7 @@ default_encoding_sjis: sjis sjis_as_default
657667 AX_FEATURE_RESOLVE_DEPENDENCIES([recommended], [
658668 conf_dev: warning_suppressor
659669 storage_fatty: valuecons const_list_literal const_vector_literal
660-debug: accessor_assert strict_argcheck strict_encoding_check
670+debug: soft_assert accessor_assert strict_argcheck strict_encoding_check
661671 backtrace: srfi38
662672 ])
663673
--- a/sigscheme/src/module-srfi6.c
+++ b/sigscheme/src/module-srfi6.c
@@ -58,7 +58,8 @@
5858 /*=======================================
5959 File Local Function Declarations
6060 =======================================*/
61-static void istrport_finalize(char **str, scm_bool ownership, void **opaque);
61+static void srfi6_istrport_finalize(char **str, scm_bool ownership,
62+ void **opaque);
6263
6364 /*=======================================
6465 Function Definitions
@@ -72,7 +73,7 @@ scm_initialize_srfi6(void)
7273 }
7374
7475 static void
75-istrport_finalize(char **str, scm_bool ownership, void **opaque)
76+srfi6_istrport_finalize(char **str, scm_bool ownership, void **opaque)
7677 {
7778 SCM_ASSERT(!ownership);
7879
@@ -89,7 +90,8 @@ scm_p_srfi6_open_input_string(ScmObj str)
8990
9091 ENSURE_STRING(str);
9192
92- bport = ScmInputStrPort_new_const(SCM_STRING_STR(str), istrport_finalize);
93+ bport = ScmInputStrPort_new_const(SCM_STRING_STR(str),
94+ srfi6_istrport_finalize);
9395 hold_str = (ScmObj *)ScmInputStrPort_ref_opaque(bport);
9496 scm_gc_protect_with_init(hold_str, str);
9597 cport = scm_make_char_port(bport);
--- a/uim/uim-scm.c
+++ b/uim/uim-scm.c
@@ -590,6 +590,7 @@ uim_scm_init(const char *verbose_level)
590590 vlevel = atoi(verbose_level) % 10;
591591 }
592592
593+#if SCM_USE_MULTIBYTE_CHAR
593594 /* *GC safe operation*
594595 *
595596 * Set the raw unibyte codec which accepts all (multi)byte sequence
@@ -599,6 +600,7 @@ uim_scm_init(const char *verbose_level)
599600 * "ISO-8859-1" is a dummy name for the codec.
600601 */
601602 scm_current_char_codec = scm_mb_find_codec("ISO-8859-1");
603+#endif
602604
603605 storage_conf.heap_size = 16384;
604606 storage_conf.heap_alloc_threshold = 16384;