unichars 0.5 → 0.6.0.p0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 2501a38884a12585d434581b88c85e0ec6f85f19
4
+ data.tar.gz: f7b8e61f275d888a62af734b9c5200e6c28645b4
5
+ SHA512:
6
+ metadata.gz: 30d7b66616d54775a1d073321942cd2b6c17e853198ef256b9646f53fd208692630f24255f9c8963ea612f1bc0e9c78ca857c506df28a70d177efb27e1284660
7
+ data.tar.gz: e2b5e2301440b380786fdf36c1f3fc68bf0212e2d250a721793b761bc85722d226ad32f038a5573b961af5faed865865ef54e4470bbe2afda99d0f1dfd59f6e9
@@ -1,21 +1,44 @@
1
1
 
2
2
  SHELL = /bin/sh
3
3
 
4
+ # V=0 quiet, V=1 verbose. other values don't work.
5
+ V = 0
6
+ Q1 = $(V:1=)
7
+ Q = $(Q1:0=@)
8
+ ECHO1 = $(V:1=@:)
9
+ ECHO = $(ECHO1:0=@echo)
10
+
4
11
  #### Start of system configuration section. ####
5
12
 
6
13
  srcdir = .
7
- topdir = /Users/manfred/.rvm/ruby-1.9.2-preview1/include/ruby-1.9.1
8
- hdrdir = /Users/manfred/.rvm/ruby-1.9.2-preview1/include/ruby-1.9.1
9
- arch_hdrdir = /Users/manfred/.rvm/ruby-1.9.2-preview1/include/ruby-1.9.1/$(arch)
14
+ topdir = /Users/manfred/.rbenv/versions/2.1.2/include/ruby-2.1.0
15
+ hdrdir = $(topdir)
16
+ arch_hdrdir = /Users/manfred/.rbenv/versions/2.1.2/include/ruby-2.1.0/x86_64-darwin13.0
17
+ PATH_SEPARATOR = :
10
18
  VPATH = $(srcdir):$(arch_hdrdir)/ruby:$(hdrdir)/ruby
11
- prefix = $(DESTDIR)/Users/manfred/.rvm/ruby-1.9.2-preview1
19
+ prefix = $(DESTDIR)/Users/manfred/.rbenv/versions/2.1.2
20
+ rubysitearchprefix = $(rubylibprefix)/$(sitearch)
21
+ rubyarchprefix = $(rubylibprefix)/$(arch)
12
22
  rubylibprefix = $(libdir)/$(RUBY_BASE_NAME)
13
23
  exec_prefix = $(prefix)
24
+ vendorarchhdrdir = $(vendorhdrdir)/$(sitearch)
25
+ sitearchhdrdir = $(sitehdrdir)/$(sitearch)
26
+ rubyarchhdrdir = $(rubyhdrdir)/$(arch)
14
27
  vendorhdrdir = $(rubyhdrdir)/vendor_ruby
15
28
  sitehdrdir = $(rubyhdrdir)/site_ruby
16
- rubyhdrdir = $(includedir)/$(RUBY_BASE_NAME)-$(ruby_version)
29
+ rubyhdrdir = $(includedir)/$(RUBY_VERSION_NAME)
30
+ vendorarchdir = $(vendorlibdir)/$(sitearch)
31
+ vendorlibdir = $(vendordir)/$(ruby_version)
17
32
  vendordir = $(rubylibprefix)/vendor_ruby
33
+ sitearchdir = $(sitelibdir)/$(sitearch)
34
+ sitelibdir = $(sitedir)/$(ruby_version)
18
35
  sitedir = $(rubylibprefix)/site_ruby
36
+ rubyarchdir = $(rubylibdir)/$(arch)
37
+ rubylibdir = $(rubylibprefix)/$(ruby_version)
38
+ sitearchincludedir = $(includedir)/$(sitearch)
39
+ archincludedir = $(includedir)/$(arch)
40
+ sitearchlibdir = $(libdir)/$(sitearch)
41
+ archlibdir = $(libdir)/$(arch)
19
42
  ridir = $(datarootdir)/$(RI_BASE_NAME)
20
43
  mandir = $(datarootdir)/man
21
44
  localedir = $(datarootdir)/locale
@@ -36,57 +59,62 @@ datarootdir = $(prefix)/share
36
59
  libexecdir = $(exec_prefix)/libexec
37
60
  sbindir = $(exec_prefix)/sbin
38
61
  bindir = $(exec_prefix)/bin
39
- rubylibdir = $(rubylibprefix)/$(ruby_version)
40
- archdir = $(rubylibdir)/$(arch)
41
- sitelibdir = $(sitedir)/$(ruby_version)
42
- sitearchdir = $(sitelibdir)/$(sitearch)
43
- vendorlibdir = $(vendordir)/$(ruby_version)
44
- vendorarchdir = $(vendorlibdir)/$(sitearch)
62
+ archdir = $(rubyarchdir)
63
+
45
64
 
46
- CC = gcc
65
+ CC = gcc-4.2
47
66
  CXX = g++
48
67
  LIBRUBY = $(LIBRUBY_A)
49
68
  LIBRUBY_A = lib$(RUBY_SO_NAME)-static.a
50
- LIBRUBYARG_SHARED = -l$(RUBY_SO_NAME)
51
- LIBRUBYARG_STATIC = -l$(RUBY_SO_NAME)-static
52
- OUTFLAG = -o
53
- COUTFLAG = -o
69
+ LIBRUBYARG_SHARED =
70
+ LIBRUBYARG_STATIC = -l$(RUBY_SO_NAME)-static -framework CoreFoundation
71
+ empty =
72
+ OUTFLAG = -o $(empty)
73
+ COUTFLAG = -o $(empty)
54
74
 
55
75
  RUBY_EXTCONF_H =
56
76
  cflags = $(optflags) $(debugflags) $(warnflags)
57
- optflags = -O3
58
- debugflags = -g
59
- warnflags = -Wall -Wno-unused-parameter -Wno-parentheses -Wno-missing-field-initializers -Wshorten-64-to-32 -Wpointer-arith -Wwrite-strings
60
- CFLAGS = -fno-common $(cflags) -pipe -I/opt/homebrew/Cellar/glib/2.20.5/include/glib-2.0 -I/opt/homebrew/Cellar/glib/2.20.5/lib/glib-2.0/include
77
+ optflags = -O3 -fno-fast-math
78
+ debugflags = -ggdb3
79
+ warnflags = -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wshorten-64-to-32 -Wimplicit-function-declaration -Wextra-tokens
80
+ CCDLFLAGS = -fno-common
81
+ CFLAGS = $(CCDLFLAGS) -O3 -Wno-error=shorten-64-to-32 -pipe -I/usr/local/Cellar/glib/2.40.0_1/include/glib-2.0 -I/usr/local/Cellar/glib/2.40.0_1/lib/glib-2.0/include -I/usr/local/opt/gettext/include $(ARCH_FLAG)
61
82
  INCFLAGS = -I. -I$(arch_hdrdir) -I$(hdrdir)/ruby/backward -I$(hdrdir) -I$(srcdir)
62
83
  DEFS =
63
- CPPFLAGS = -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE $(DEFS) $(cppflags)
64
- CXXFLAGS = $(CFLAGS) $(cxxflags)
65
- ldflags = -L. -L/usr/local/lib -L/opt/homebrew/Cellar/glib/2.20.5/lib -L/opt/homebrew/Cellar/gettext/0.17/lib
66
- dldflags =
67
- archflag =
68
- DLDFLAGS = $(ldflags) $(dldflags) $(archflag)
69
- LDSHARED = $(CC) -dynamic -bundle -undefined suppress -flat_namespace
70
- LDSHAREDXX = $(CXX) -dynamic -bundle -undefined suppress -flat_namespace
84
+ CPPFLAGS = -I/Users/manfred/.rbenv/versions/2.1.2/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT $(DEFS) $(cppflags)
85
+ CXXFLAGS = $(CCDLFLAGS) $(cxxflags) $(ARCH_FLAG)
86
+ ldflags = -L. -L/Users/manfred/.rbenv/versions/2.1.2/lib -fstack-protector -L/usr/local/Cellar/glib/2.40.0_1/lib -L/usr/local/opt/gettext/lib
87
+ dldflags = -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress
88
+ ARCH_FLAG =
89
+ DLDFLAGS = $(ldflags) $(dldflags) $(ARCH_FLAG)
90
+ LDSHARED = $(CC) -dynamic -bundle
91
+ LDSHAREDXX = $(CXX) -dynamic -bundle
71
92
  AR = ar
72
93
  EXEEXT =
73
94
 
74
- RUBY_BASE_NAME = ruby
75
95
  RUBY_INSTALL_NAME = ruby
76
96
  RUBY_SO_NAME = ruby
77
- arch = i386-darwin10.2.0
97
+ RUBYW_INSTALL_NAME =
98
+ RUBY_VERSION_NAME = $(RUBY_BASE_NAME)-$(ruby_version)
99
+ RUBYW_BASE_NAME = rubyw
100
+ RUBY_BASE_NAME = ruby
101
+
102
+ arch = x86_64-darwin13.0
78
103
  sitearch = $(arch)
79
- ruby_version = 1.9.1
80
- ruby = /Users/manfred/.rvm/ruby-1.9.2-preview1/bin/ruby
104
+ ruby_version = 2.1.0
105
+ ruby = $(bindir)/ruby
81
106
  RUBY = $(ruby)
107
+ ruby_headers = $(hdrdir)/ruby.h $(hdrdir)/ruby/ruby.h $(hdrdir)/ruby/defines.h $(hdrdir)/ruby/missing.h $(hdrdir)/ruby/intern.h $(hdrdir)/ruby/st.h $(hdrdir)/ruby/subst.h $(arch_hdrdir)/ruby/config.h
108
+
82
109
  RM = rm -f
83
110
  RM_RF = $(RUBY) -run -e rm -- -rf
84
- RMDIRS = $(RUBY) -run -e rmdir -- -p
111
+ RMDIRS = rmdir -p
85
112
  MAKEDIRS = mkdir -p
86
113
  INSTALL = /usr/bin/install -c
87
114
  INSTALL_PROG = $(INSTALL) -m 0755
88
115
  INSTALL_DATA = $(INSTALL) -m 644
89
116
  COPY = cp
117
+ TOUCH = exit >
90
118
 
91
119
  #### End of system configuration section. ####
92
120
 
@@ -104,14 +132,19 @@ extout =
104
132
  extout_prefix =
105
133
  target_prefix =
106
134
  LOCAL_LIBS =
107
- LIBS = -lglib-2.0 -lintl -lpthread -ldl -lobjc
108
- SRCS = glib.c
135
+ LIBS = -lglib-2.0 -lintl -lpthread -ldl -lobjc
136
+ ORIG_SRCS = glib.c
137
+ SRCS = $(ORIG_SRCS)
109
138
  OBJS = glib.o
139
+ HDRS =
110
140
  TARGET = glib
141
+ TARGET_NAME = glib
142
+ TARGET_ENTRY = Init_$(TARGET_NAME)
111
143
  DLLIB = $(TARGET).bundle
112
144
  EXTSTATIC =
113
145
  STATIC_LIB =
114
146
 
147
+ TIMESTAMP_DIR = .
115
148
  BINDIR = $(bindir)
116
149
  RUBYCOMMONDIR = $(sitedir)$(target_prefix)
117
150
  RUBYLIBDIR = $(sitelibdir)$(target_prefix)
@@ -126,61 +159,81 @@ CLEANOBJS = *.o *.bak
126
159
  all: $(DLLIB)
127
160
  static: $(STATIC_LIB)
128
161
  .PHONY: all install static install-so install-rb
129
- .PHONY: clean clean-so clean-rb
162
+ .PHONY: clean clean-so clean-static clean-rb
130
163
 
164
+ clean-static::
131
165
  clean-rb-default::
132
166
  clean-rb::
133
167
  clean-so::
134
- clean: clean-so clean-rb-default clean-rb
135
- @-$(RM) $(CLEANLIBS) $(CLEANOBJS) $(CLEANFILES)
168
+ clean: clean-so clean-static clean-rb-default clean-rb
169
+ -$(Q)$(RM) $(CLEANLIBS) $(CLEANOBJS) $(CLEANFILES) .*.time
136
170
 
137
171
  distclean-rb-default::
138
172
  distclean-rb::
139
173
  distclean-so::
140
- distclean: clean distclean-so distclean-rb-default distclean-rb
141
- @-$(RM) Makefile $(RUBY_EXTCONF_H) conftest.* mkmf.log
142
- @-$(RM) core ruby$(EXEEXT) *~ $(DISTCLEANFILES)
143
- @-$(RMDIRS) $(DISTCLEANDIRS)
174
+ distclean-static::
175
+ distclean: clean distclean-so distclean-static distclean-rb-default distclean-rb
176
+ -$(Q)$(RM) Makefile $(RUBY_EXTCONF_H) conftest.* mkmf.log
177
+ -$(Q)$(RM) core ruby$(EXEEXT) *~ $(DISTCLEANFILES)
178
+ -$(Q)$(RMDIRS) $(DISTCLEANDIRS) 2> /dev/null || true
144
179
 
145
180
  realclean: distclean
146
181
  install: install-so install-rb
147
182
 
148
- install-so: $(RUBYARCHDIR)
149
- install-so: $(RUBYARCHDIR)/$(DLLIB)
150
- $(RUBYARCHDIR)/$(DLLIB): $(RUBYARCHDIR) $(DLLIB)
183
+ install-so: $(DLLIB) $(TIMESTAMP_DIR)/.RUBYARCHDIR.time
151
184
  $(INSTALL_PROG) $(DLLIB) $(RUBYARCHDIR)
185
+ clean-static::
186
+ -$(Q)$(RM) $(STATIC_LIB)
152
187
  install-rb: pre-install-rb install-rb-default
153
188
  install-rb-default: pre-install-rb-default
154
189
  pre-install-rb: Makefile
155
190
  pre-install-rb-default: Makefile
156
- $(RUBYARCHDIR):
157
- $(MAKEDIRS) $@
191
+ pre-install-rb-default:
192
+ $(ECHO) installing default glib libraries
193
+ $(TIMESTAMP_DIR)/.RUBYARCHDIR.time:
194
+ $(Q) $(MAKEDIRS) $(@D) $(RUBYARCHDIR)
195
+ $(Q) $(TOUCH) $@
158
196
 
159
197
  site-install: site-install-so site-install-rb
160
198
  site-install-so: install-so
161
199
  site-install-rb: install-rb
162
200
 
163
- .SUFFIXES: .c .m .cc .cxx .cpp .C .o
201
+ .SUFFIXES: .c .m .cc .mm .cxx .cpp .C .o
164
202
 
165
203
  .cc.o:
166
- $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
204
+ $(ECHO) compiling $(<)
205
+ $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
206
+
207
+ .mm.o:
208
+ $(ECHO) compiling $(<)
209
+ $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
167
210
 
168
211
  .cxx.o:
169
- $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
212
+ $(ECHO) compiling $(<)
213
+ $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
170
214
 
171
215
  .cpp.o:
172
- $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
216
+ $(ECHO) compiling $(<)
217
+ $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
173
218
 
174
219
  .C.o:
175
- $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
220
+ $(ECHO) compiling $(<)
221
+ $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $<
176
222
 
177
223
  .c.o:
178
- $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -c $<
224
+ $(ECHO) compiling $(<)
225
+ $(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -c $<
226
+
227
+ .m.o:
228
+ $(ECHO) compiling $(<)
229
+ $(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -c $<
179
230
 
180
231
  $(DLLIB): $(OBJS) Makefile
181
- @-$(RM) $(@)
182
- $(LDSHARED) -o $@ $(OBJS) $(LIBPATH) $(DLDFLAGS) $(LOCAL_LIBS) $(LIBS)
232
+ $(ECHO) linking shared-object $(DLLIB)
233
+ -$(Q)$(RM) $(@)
234
+ $(Q) $(LDSHARED) -o $@ $(OBJS) $(LIBPATH) $(DLDFLAGS) $(LOCAL_LIBS) $(LIBS)
235
+ $(Q) $(POSTLINK)
183
236
 
184
237
 
185
238
 
186
- $(OBJS): $(hdrdir)/ruby.h $(hdrdir)/ruby/defines.h $(arch_hdrdir)/ruby/config.h
239
+ $(OBJS): $(HDRS) $(ruby_headers)
Binary file
@@ -1,4 +1,5 @@
1
1
  #include <ruby.h>
2
+ #include <ruby/encoding.h>
2
3
  #include <glib.h>
3
4
 
4
5
  #ifndef RSTRING_LEN
@@ -39,10 +40,11 @@ static VALUE utf8_upcase(VALUE self, VALUE string)
39
40
  {
40
41
  VALUE result;
41
42
  gchar *temp;
43
+ rb_encoding *utf8_enc = rb_enc_find("UTF-8");
42
44
 
43
45
  Check_Type(string, T_STRING);
44
46
  temp = g_utf8_strup(StringValuePtr(string), RSTRING_LEN(string));
45
- result = rb_str_new2(temp);
47
+ result = rb_external_str_new_with_enc(temp, strlen(temp), utf8_enc);
46
48
  free(temp);
47
49
 
48
50
  return result;
@@ -60,10 +62,11 @@ static VALUE utf8_downcase(VALUE self, VALUE string)
60
62
  {
61
63
  VALUE result;
62
64
  gchar *temp;
65
+ rb_encoding *utf8_enc = rb_enc_find("UTF-8");
63
66
 
64
67
  Check_Type(string, T_STRING);
65
68
  temp = g_utf8_strdown(StringValuePtr(string), RSTRING_LEN(string));
66
- result = rb_str_new2(temp);
69
+ result = rb_external_str_new_with_enc(temp, strlen(temp), utf8_enc);
67
70
  free(temp);
68
71
 
69
72
  return result;
@@ -81,10 +84,11 @@ static VALUE utf8_reverse(VALUE self, VALUE string)
81
84
  {
82
85
  VALUE result;
83
86
  gchar *temp;
87
+ rb_encoding *utf8_enc = rb_enc_find("UTF-8");
84
88
 
85
89
  Check_Type(string, T_STRING);
86
90
  temp = g_utf8_strreverse(StringValuePtr(string), RSTRING_LEN(string));
87
- result = rb_str_new2(temp);
91
+ result = rb_external_str_new_with_enc(temp, strlen(temp), utf8_enc);
88
92
  free(temp);
89
93
 
90
94
  return result;
@@ -109,6 +113,7 @@ static VALUE utf8_normalize(VALUE self, VALUE string, VALUE form)
109
113
  VALUE result;
110
114
  gchar *temp;
111
115
  GNormalizeMode mode;
116
+ rb_encoding *utf8_enc = rb_enc_find("UTF-8");
112
117
 
113
118
  Check_Type(string, T_STRING);
114
119
  Check_Type(form, T_SYMBOL);
@@ -126,12 +131,57 @@ static VALUE utf8_normalize(VALUE self, VALUE string, VALUE form)
126
131
  }
127
132
 
128
133
  temp = g_utf8_normalize(StringValuePtr(string), RSTRING_LEN(string), mode);
129
- result = rb_str_new2(temp);
134
+ result = rb_external_str_new_with_enc(temp, strlen(temp), utf8_enc);
130
135
  free(temp);
131
136
 
132
137
  return result;
133
138
  }
134
139
 
140
+ /*
141
+ * call-seq:
142
+ * utf8_titleize(string)
143
+ *
144
+ * Returns a title case string.
145
+ *
146
+ * Glib.utf8_titleize('привет всем') #=> Привет Всем
147
+ */
148
+ static VALUE utf8_titleize(VALUE self, VALUE string)
149
+ {
150
+ VALUE result;
151
+ gchar *temp;
152
+ long index, length_in_bytes, length_in_chars;
153
+ gunichar *chars_as_ucs4, current_char;
154
+ gboolean first_character_of_word = TRUE;
155
+
156
+ Check_Type(string, T_STRING);
157
+
158
+ length_in_bytes = RSTRING_LEN(string);
159
+ if ((chars_as_ucs4 = g_utf8_to_ucs4(StringValuePtr(string), length_in_bytes, NULL, &length_in_chars, NULL))) {
160
+ rb_encoding *utf8_enc = rb_enc_find("UTF-8");
161
+
162
+ for (index = 0; index < length_in_chars; index++) {
163
+ current_char = chars_as_ucs4[index];
164
+ if (first_character_of_word == TRUE && g_unichar_isalpha(current_char)) {
165
+ chars_as_ucs4[index] = g_unichar_totitle(current_char);
166
+ first_character_of_word = FALSE;
167
+ }
168
+
169
+ if (g_unichar_isspace(current_char) || g_unichar_ispunct(current_char)) {
170
+ first_character_of_word = TRUE;
171
+ }
172
+ }
173
+
174
+ temp = g_ucs4_to_utf8(chars_as_ucs4, -1, NULL, NULL, NULL);
175
+ result = rb_external_str_new_with_enc(temp, strlen(temp), utf8_enc);
176
+ g_free(chars_as_ucs4);
177
+ g_free(temp);
178
+
179
+ return result;
180
+ } else {
181
+ return Qnil;
182
+ }
183
+ }
184
+
135
185
 
136
186
  /* The Glib module holds methods which wrap Glib2 functions.
137
187
  */
@@ -146,4 +196,5 @@ Init_glib()
146
196
  rb_define_module_function(mGlib, "utf8_downcase", utf8_downcase, 1);
147
197
  rb_define_module_function(mGlib, "utf8_reverse", utf8_reverse, 1);
148
198
  rb_define_module_function(mGlib, "utf8_normalize", utf8_normalize, 2);
199
+ rb_define_module_function(mGlib, "utf8_titleize", utf8_titleize, 1);
149
200
  }
Binary file
@@ -1,5 +1,26 @@
1
+ "gcc-4.2 -o conftest -I/Users/manfred/.rbenv/versions/2.1.2/include/ruby-2.1.0/x86_64-darwin13.0 -I/Users/manfred/.rbenv/versions/2.1.2/include/ruby-2.1.0/ruby/backward -I/Users/manfred/.rbenv/versions/2.1.2/include/ruby-2.1.0 -I. -I/Users/manfred/.rbenv/versions/2.1.2/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -Wno-error=shorten-64-to-32 -pipe conftest.c -L. -L/Users/manfred/.rbenv/versions/2.1.2/lib -L/usr/local/Cellar/glib/2.40.0_1/lib -L/usr/local/opt/gettext/lib -lglib-2.0 -lintl -lruby-static -framework CoreFoundation -lpthread -ldl -lobjc "
2
+ couldn't understand kern.osversion `14.0.0'
3
+ checked program was:
4
+ /* begin */
5
+ 1: #include "ruby.h"
6
+ 2:
7
+ 3: int main(int argc, char **argv)
8
+ 4: {
9
+ 5: return 0;
10
+ 6: }
11
+ /* end */
12
+
13
+ "gcc-4.2 -o conftest -I/Users/manfred/.rbenv/versions/2.1.2/include/ruby-2.1.0/x86_64-darwin13.0 -I/Users/manfred/.rbenv/versions/2.1.2/include/ruby-2.1.0/ruby/backward -I/Users/manfred/.rbenv/versions/2.1.2/include/ruby-2.1.0 -I. -I/Users/manfred/.rbenv/versions/2.1.2/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -Wno-error=shorten-64-to-32 -pipe conftest.c -L. -L/Users/manfred/.rbenv/versions/2.1.2/lib -L/usr/local/Cellar/glib/2.40.0_1/lib -L/usr/local/opt/gettext/lib -lglib-2.0 -lintl -lruby-static -framework CoreFoundation -lpthread -ldl -lobjc "
14
+ couldn't understand kern.osversion `14.0.0'
15
+ checked program was:
16
+ /* begin */
17
+ 1: #include "ruby.h"
18
+ 2:
19
+ 3: int main() {return 0;}
20
+ /* end */
21
+
1
22
  package configuration for glib-2.0
2
- cflags: -I/opt/homebrew/Cellar/glib/2.20.5/include/glib-2.0 -I/opt/homebrew/Cellar/glib/2.20.5/lib/glib-2.0/include
3
- ldflags: -L/opt/homebrew/Cellar/glib/2.20.5/lib -L/opt/homebrew/Cellar/gettext/0.17/lib
4
- libs: -lglib-2.0 -lintl
23
+ cflags: -I/usr/local/Cellar/glib/2.40.0_1/include/glib-2.0 -I/usr/local/Cellar/glib/2.40.0_1/lib/glib-2.0/include -I/usr/local/opt/gettext/include
24
+ ldflags: -L/usr/local/Cellar/glib/2.40.0_1/lib -L/usr/local/opt/gettext/lib
25
+ libs: -lglib-2.0 -lintl
5
26
 
@@ -71,6 +71,13 @@ class Unichars
71
71
  def normalize(form=Unichars.default_normalization_form)
72
72
  self.class.new(Glib.utf8_normalize(@wrapped_string, form))
73
73
  end
74
+
75
+ # Returns a Unichars instance with string in title case
76
+ #
77
+ # Unichars.new('привет всем').titleize.to_s #=> Привет Всем
78
+ def titleize
79
+ self.class.new(Glib.utf8_titleize(@wrapped_string))
80
+ end
74
81
  end
75
82
 
76
- Unichars.default_normalization_form = :kc
83
+ Unichars.default_normalization_form = :kc
metadata CHANGED
@@ -1,66 +1,71 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: unichars
3
- version: !ruby/object:Gem::Version
4
- version: "0.5"
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.6.0.p0
5
5
  platform: ruby
6
- authors:
6
+ authors:
7
7
  - Manfred Stienstra
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
-
12
- date: 2010-02-22 00:00:00 +01:00
13
- default_executable:
14
- dependencies: []
15
-
16
- description: " Unichars is a wrapper around Glib2 UTF8 functions.\n"
11
+ date: 2014-09-24 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: peck
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ description: |2
28
+ Unichars is a wrapper around Glib2 UTF8 functions.
17
29
  email: manfred@fngtps.com
18
30
  executables: []
19
-
20
- extensions:
31
+ extensions:
21
32
  - ext/glib/extconf.rb
22
- extra_rdoc_files:
23
- - README
33
+ extra_rdoc_files:
24
34
  - LICENSE
25
35
  - ext/glib/glib.c
26
- files:
27
- - lib/chars.rb
28
- - lib/unichars.rb
36
+ files:
37
+ - LICENSE
38
+ - ext/glib/Makefile
29
39
  - ext/glib/extconf.rb
30
40
  - ext/glib/glib.bundle
31
41
  - ext/glib/glib.c
32
42
  - ext/glib/glib.o
33
- - ext/glib/Makefile
34
43
  - ext/glib/mkmf.log
35
- - README
36
- - LICENSE
37
- has_rdoc: true
44
+ - lib/chars.rb
45
+ - lib/unichars.rb
38
46
  homepage:
39
47
  licenses: []
40
-
48
+ metadata: {}
41
49
  post_install_message:
42
- rdoc_options:
43
- - --charset=utf-8
44
- require_paths:
50
+ rdoc_options:
51
+ - "--charset=utf-8"
52
+ require_paths:
45
53
  - lib
46
- required_ruby_version: !ruby/object:Gem::Requirement
47
- requirements:
48
- - - ">="
49
- - !ruby/object:Gem::Version
50
- version: "0"
51
- version:
52
- required_rubygems_version: !ruby/object:Gem::Requirement
53
- requirements:
54
+ required_ruby_version: !ruby/object:Gem::Requirement
55
+ requirements:
54
56
  - - ">="
55
- - !ruby/object:Gem::Version
56
- version: "0"
57
- version:
57
+ - !ruby/object:Gem::Version
58
+ version: '0'
59
+ required_rubygems_version: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - ">"
62
+ - !ruby/object:Gem::Version
63
+ version: 1.3.1
58
64
  requirements: []
59
-
60
65
  rubyforge_project:
61
- rubygems_version: 1.3.5
66
+ rubygems_version: 2.2.2
62
67
  signing_key:
63
- specification_version: 3
64
- summary: Unichars is a wrapper around Glib2 UTF8 functions. It was written to speed up ActiveSupport::Multibyte, but I'm sure people can find other uses for it.
68
+ specification_version: 4
69
+ summary: Unichars is a wrapper around Glib2 UTF8 functions. It was written to speed
70
+ up ActiveSupport::Multibyte, but I'm sure people can find other uses for it.
65
71
  test_files: []
66
-
data/README DELETED
@@ -1,65 +0,0 @@
1
- -%{ Unichars }%-
2
-
3
- Unichars is a simple wrapper around Glib2. It was originally written to speed up ActiveSupport::Multibyte on Ruby 1.8 but it can probably used for other things as well.
4
-
5
-
6
- --^^--^^- INSTALLING -^^--^^--
7
-
8
- INSTALLING ON MAC OS X
9
-
10
- $ port install glib2
11
- $ gem install unichars
12
-
13
- INSTALLING ON DEBIAN
14
-
15
- $ apt-get install libglib2.0-dev
16
- $ gem install unichars
17
-
18
-
19
- --^^--^^- EXAMPLES -^^--^^--
20
-
21
- FOR USE WITH RAILS
22
-
23
- In config/environment.rb add:
24
-
25
- config.gem 'unichars'
26
-
27
- Add config/initializers/unichars.rb:
28
-
29
- ActiveSupport::Multibyte.proxy_class = Unichars
30
-
31
- After that you can just use Unichars through the character proxy on String:
32
-
33
- '¡Ay Dios mío!'.chars.reverse
34
-
35
- FOR USE WITH ACTIVESUPPORT WITHOUT RAILS
36
-
37
- Note that you probably want to load ActiveSupport before loading Unichars because Unichars subclasses itself from ActiveSupport::Multibyte::Chars when you do so.
38
-
39
- require 'rubygems' rescue LoadError
40
- require 'activesupport'
41
- require 'unichars'
42
- ActiveSupport::Multibyte.proxy_class = Unichars
43
-
44
- After that you can just use Unichars through the character proxy on String:
45
-
46
- '¡Ay Dios mío!'.chars.reverse
47
-
48
- FOR USE WITHOUT ACTIVESUPPORT
49
-
50
- Yeah, so, ehm. Yeah.
51
-
52
- require 'rubygems' rescue LoadError
53
- require 'unichars'
54
-
55
- After that you can do:
56
-
57
- Unichars.new('¡Ay Dios mío!').reverse
58
-
59
- Or maybe:
60
-
61
- class String
62
- def chars
63
- Unichars.new(self)
64
- end
65
- end