Clone in a terminal:
Commit a84d6fe
Johan Mattsson - 2015-06-27T07:40:03+00:00
a84d6fe28b916ef8e3f42c2fe3d597bfccf87a59johan.mattsson.m@gmail.com

Case insensitive search in overview

Changed files (3)

Diff

diff --git a/libbirdfont/CharDatabaseParser.vala b/libbirdfont/CharDatabaseParser.valaindex d162061..5eadb46 100644--- a/libbirdfont/CharDatabaseParser.vala+++ b/libbirdfont/CharDatabaseParser.vala@@ -102,9 +102,10 @@ public class CharDatabaseParser : GLib.Object {  	public void insert_lookup (int64 character, string word) { 		string? errmsg;+		string w = word.down (); 		string query = """ 			INSERT INTO Words (unicode, word)-			VALUES (""" + @"$((int64) character)" + """, '""" + word.replace ("'", "''") + "');";+			VALUES (""" + @"$((int64) character)" + """, '""" + w.replace ("'", "''") + "');"; 		int ec = db.exec (query, null, out errmsg); 		if (ec != Sqlite.OK) { 			stderr.printf (query);@@ -163,7 +164,6 @@ public class CharDatabaseParser : GLib.Object { 		unicode_hex = e[0].up (); 		 		ch = Font.to_unichar ("U+" + unicode_hex.down ());-		stdout.printf ("Adding " + (!) ch.to_string () + "\n"); 		insert_entry ((int64) ch, data); 		utf8.add_single (ch); 		@@ -217,9 +217,7 @@ public class CharDatabaseParser : GLib.Object { 							add_entry (description); 							transaction_number++; 							-							if (transaction_number >= 1000) {-								print ("Write to database\n");-								+							if (transaction_number >= 1000) {								 								ec = db.exec ("END TRANSACTION", null, out errmsg); 								if (ec != Sqlite.OK) { 									warning ("Error: %s\n", (!) errmsg);diff --git a/libbirdfont/OverView.vala b/libbirdfont/OverView.valaindex b9e3880..07b2d56 100644--- a/libbirdfont/OverView.vala+++ b/libbirdfont/OverView.vala@@ -214,7 +214,13 @@ public class OverView : FontDisplay { 		 		listener.signal_submit.connect (() => { 			OverView o = MainWindow.get_overview ();-			GlyphRange r = CharDatabase.search (o.search_query);+			string q = o.search_query;+			+			if (q.char_count () > 1) {+				q = q.down ();+			}+			+			GlyphRange r = CharDatabase.search (q); 			o.set_current_glyph_range (r); 			TabContent.hide_text_input (); 			MainWindow.get_tab_bar ().select_tab_name ("Overview");diff --git a/resources/ucd.sqlite b/resources/ucd.sqliteindex 2464f03..742dc8c 100644Binary files a/resources/ucd.sqlite and b/resources/ucd.sqlite differ

Contact

Email: johan.mattsson.m@gmail.com
Mastodon: typo.social/@birdfont
GitHub: johanmattssonm
LinkedIn: johan-mattsson-2ab324112