[banshee] Allow comma-separated synonyms for aliases in AliasedObjectSet (bgo#592198)
- From: Alexander Kojevnikov <alexk src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [banshee] Allow comma-separated synonyms for aliases in AliasedObjectSet (bgo#592198)
- Date: Fri, 11 Sep 2009 02:22:44 +0000 (UTC)
commit 0e92a3f7ab1ffb0e46d390ebcc3bb24d7902da1b
Author: Alexander Kojevnikov <alexander kojevnikov com>
Date: Fri Sep 11 12:21:30 2009 +1000
Allow comma-separated synonyms for aliases in AliasedObjectSet (bgo#592198)
.../Banshee.Services/Banshee.Query/BansheeQuery.cs | 56 ++++++++++----------
.../Hyena/Hyena.Query/AliasedObjectSet.cs | 10 ++--
2 files changed, 34 insertions(+), 32 deletions(-)
---
diff --git a/src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs b/src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs
index 8c6fc53..9ef535b 100644
--- a/src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs
+++ b/src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs
@@ -95,7 +95,7 @@ namespace Banshee.Query
public static QueryField ArtistField = new QueryField (
"artist", "DisplayArtistName",
Catalog.GetString ("Artist"), "CoreArtists.NameLowered", true,
- // Translators: These are unique search aliases for "artist". Please, no spaces. Blank ok.
+ // Translators: These are unique search aliases for "artist". You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("artist"), Catalog.GetString ("by"), Catalog.GetString ("artists"),
"by", "artist", "artists"
);
@@ -103,7 +103,7 @@ namespace Banshee.Query
public static QueryField AlbumArtistField = new QueryField (
"albumartist", "DisplayAlbumArtistName",
Catalog.GetString ("Album Artist"), "CoreAlbums.ArtistNameLowered", true,
- // Translators: These are unique search aliases for "album artist". Please, no spaces. Blank ok.
+ // Translators: These are unique search aliases for "album artist". You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("albumartist"), Catalog.GetString ("compilationartist"),
"albumartist", "compilationartist"
);
@@ -113,7 +113,7 @@ namespace Banshee.Query
public static QueryField AlbumField = new QueryField (
"album", "DisplayAlbumTitle",
Catalog.GetString ("Album"), "CoreAlbums.TitleLowered", true,
- // Translators: These are unique search aliases for "album". Please, no spaces. Blank ok.
+ // Translators: These are unique search aliases for "album". You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("album"), Catalog.GetString ("on"), Catalog.GetString ("from"),
"on", "album", "from", "albumtitle"
);
@@ -121,7 +121,7 @@ namespace Banshee.Query
public static QueryField DiscNumberField = new QueryField (
"disc", "DiscNumber",
Catalog.GetString ("Disc"), "CoreTracks.Disc", typeof(NaturalIntegerQueryValue),
- // Translators: These are unique search fields (and nouns). Please, no spaces. Blank ok.
+ // Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("disc"), Catalog.GetString ("cd"), Catalog.GetString ("discnum"),
"disc", "cd", "discnum"
);
@@ -129,7 +129,7 @@ namespace Banshee.Query
public static QueryField DiscCountField = new QueryField (
"disccount", "DiscCount",
Catalog.GetString ("Disc Count"), "CoreTracks.DiscCount", typeof(NaturalIntegerQueryValue),
- // Translators: These are unique search fields (and nouns). Please, no spaces. Blank ok.
+ // Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("discs"), Catalog.GetString ("cds"),
"discs", "cds"
);
@@ -138,7 +138,7 @@ namespace Banshee.Query
"track", "TrackNumber",
// Translators: noun
Catalog.GetString ("Track Number"), "CoreTracks.TrackNumber", typeof(NaturalIntegerQueryValue),
- // Translators: These are unique search fields. Please, no spaces. Blank ok.
+ // Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
"#", Catalog.GetString ("track"), Catalog.GetString ("trackno"), Catalog.GetString ("tracknum"),
"track", "trackno", "tracknum"
);
@@ -147,7 +147,7 @@ namespace Banshee.Query
"trackcount", "TrackCount",
// Translators: noun
Catalog.GetString ("Track Count"), "CoreTracks.TrackCount", typeof(NaturalIntegerQueryValue),
- // Translators: These are unique search fields. Please, no spaces. Blank ok.
+ // Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("tracks"), Catalog.GetString ("trackcount"),
"tracks", "trackcount"
);
@@ -155,7 +155,7 @@ namespace Banshee.Query
public static QueryField BpmField = new QueryField (
"bpm", "Bpm",
Catalog.GetString ("Beats per Minute"), "CoreTracks.BPM", typeof(NaturalIntegerQueryValue),
- // Translators: These are unique search fields. Please, no spaces. Blank ok.
+ // Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("bpm"),
"bpm"
);
@@ -164,7 +164,7 @@ namespace Banshee.Query
"bitrate", "BitRate",
// Translators: noun
Catalog.GetString ("Bit Rate"), "CoreTracks.BitRate", typeof(NaturalIntegerQueryValue),
- // Translators: These are unique search fields. Please, no spaces. Blank ok.
+ // Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("bitrate"), Catalog.GetString ("kbs"), Catalog.GetString ("kps"),
"bitrate", "kbs", "kps"
);
@@ -172,7 +172,7 @@ namespace Banshee.Query
public static QueryField TitleField = new QueryField (
"title", "DisplayTrackTitle",
Catalog.GetString ("Name"), "CoreTracks.TitleLowered", true,
- // Translators: These are unique search fields. Please, no spaces. Blank ok.
+ // Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("title"), Catalog.GetString ("titled"), Catalog.GetString ("name"), Catalog.GetString ("named"),
"title", "titled", "name", "named"
);
@@ -180,7 +180,7 @@ namespace Banshee.Query
public static QueryField YearField = new QueryField (
"year", "Year",
Catalog.GetString ("Year"), "CoreTracks.Year", typeof(YearQueryValue),
- // Translators: These are unique search fields. Please, no spaces. Blank ok.
+ // Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("year"), Catalog.GetString ("released"), Catalog.GetString ("yr"),
"year", "released", "yr"
);
@@ -188,28 +188,28 @@ namespace Banshee.Query
public static QueryField GenreField = new QueryField (
"genre", "Genre",
Catalog.GetString ("Genre"), "CoreTracks.Genre", false,
- // Translators: These are unique search fields. Please, no spaces. Blank ok.
+ // Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("genre"), "genre"
);
public static QueryField ComposerField = new QueryField (
"composer", "Composer",
Catalog.GetString ("Composer"), "CoreTracks.Composer", false,
- // Translators: These are unique search fields. Please, no spaces. Blank ok.
+ // Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("composer"), "composer"
);
public static QueryField ConductorField = new QueryField (
"conductor", "Conductor",
Catalog.GetString ("Conductor"), "CoreTracks.Conductor", false,
- // Translators: These are unique search fields. Please, no spaces. Blank ok.
+ // Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("conductor"), "conductor"
);
public static QueryField GroupingField = new QueryField (
"grouping", "Grouping",
Catalog.GetString ("Grouping"), "CoreTracks.Grouping", false,
- // Translators: These are unique search fields. Please, no spaces. Blank ok.
+ // Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("grouping"), "grouping"
);
@@ -217,7 +217,7 @@ namespace Banshee.Query
"comment", "Comment",
// Translators: noun
Catalog.GetString ("Comment"), "CoreTracks.Comment", false,
- // Translators: These are unique search fields (and nouns). Please, no spaces. Blank ok.
+ // Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("comment"), "comment"
);
@@ -225,7 +225,7 @@ namespace Banshee.Query
"licenseuri", "LicenseUri",
// Translators: noun
Catalog.GetString ("License"), "CoreTracks.LicenseUri", typeof(ExactStringQueryValue),
- // Translators: These are unique search fields (and nouns). Please, no spaces. Blank ok.
+ // Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("license"), Catalog.GetString ("licensed"), Catalog.GetString ("under"),
"license", "licensed", "under"
);
@@ -233,7 +233,7 @@ namespace Banshee.Query
public static QueryField RatingField = new QueryField (
"rating", "SavedRating",
Catalog.GetString ("Rating"), "CoreTracks.Rating", new Type [] {typeof(RatingQueryValue)},//, typeof(NullQueryValue)},
- // Translators: These are unique search fields. Please, no spaces. Blank ok.
+ // Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("rating"), Catalog.GetString ("stars"),
"rating", "stars"
);
@@ -241,7 +241,7 @@ namespace Banshee.Query
public static QueryField PlayCountField = new QueryField (
"playcount", "PlayCount",
Catalog.GetString ("Play Count"), "CoreTracks.PlayCount", typeof(NaturalIntegerQueryValue),
- // Translators: These are unique search fields (and nouns). Please, no spaces. Blank ok.
+ // Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("plays"), Catalog.GetString ("playcount"), Catalog.GetString ("listens"),
"plays", "playcount", "numberofplays", "listens"
);
@@ -249,7 +249,7 @@ namespace Banshee.Query
public static QueryField SkipCountField = new QueryField (
"skipcount", "SkipCount",
Catalog.GetString ("Skip Count"), "CoreTracks.SkipCount", typeof(NaturalIntegerQueryValue),
- // Translators: These are unique search fields (and nouns). Please, no spaces. Blank ok.
+ // Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("skips"), Catalog.GetString ("skipcount"),
"skips", "skipcount"
);
@@ -257,7 +257,7 @@ namespace Banshee.Query
public static QueryField FileSizeField = new QueryField (
"filesize", "FileSize",
Catalog.GetString ("File Size"), "CoreTracks.FileSize", typeof(FileSizeQueryValue),
- // Translators: These are unique search fields (and nouns). Please, no spaces. Blank ok.
+ // Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("size"), Catalog.GetString ("filesize"),
"size", "filesize"
);
@@ -265,7 +265,7 @@ namespace Banshee.Query
public static QueryField UriField = new QueryField (
"uri", "Uri",
Catalog.GetString ("File Location"), "CoreTracks.Uri", typeof(ExactStringQueryValue),
- // Translators: These are unique search fields. Please, no spaces. Blank ok.
+ // Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("uri"), Catalog.GetString ("path"), Catalog.GetString ("file"), Catalog.GetString ("location"),
"uri", "path", "file", "location"
);
@@ -273,7 +273,7 @@ namespace Banshee.Query
public static QueryField DurationField = new QueryField (
"duration", "Duration",
Catalog.GetString ("Time"), "CoreTracks.Duration", typeof(TimeSpanQueryValue),
- // Translators: These are unique search fields. Please, no spaces. Blank ok.
+ // Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("duration"), Catalog.GetString ("length"), Catalog.GetString ("time"),
"duration", "length", "time"
);
@@ -281,7 +281,7 @@ namespace Banshee.Query
public static QueryField MimeTypeField = new QueryField (
"mimetype", "MimeType",
Catalog.GetString ("Mime Type"), "CoreTracks.MimeType {0} OR CoreTracks.Uri {0}", typeof(ExactStringQueryValue),
- // Translators: These are unique search fields. Please, no spaces. Blank ok.
+ // Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("type"), Catalog.GetString ("mimetype"), Catalog.GetString ("format"), Catalog.GetString ("ext"),
"type", "mimetype", "format", "ext", "mime"
);
@@ -289,7 +289,7 @@ namespace Banshee.Query
public static QueryField LastPlayedField = new QueryField (
"lastplayed", "LastPlayed",
Catalog.GetString ("Last Played"), "CoreTracks.LastPlayedStamp", new Type [] {typeof(RelativeTimeSpanQueryValue), typeof(DateQueryValue)},
- // Translators: These are unique search fields. Please, no spaces. Blank ok.
+ // Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("lastplayed"), Catalog.GetString ("played"), Catalog.GetString ("playedon"),
"lastplayed", "played", "playedon"
);
@@ -297,7 +297,7 @@ namespace Banshee.Query
public static QueryField LastSkippedField = new QueryField (
"lastskipped", "LastSkipped",
Catalog.GetString ("Last Skipped"), "CoreTracks.LastSkippedStamp", new Type [] {typeof(RelativeTimeSpanQueryValue), typeof(DateQueryValue)},
- // Translators: These are unique search fields. Please, no spaces. Blank ok.
+ // Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("lastskipped"), Catalog.GetString ("skipped"), Catalog.GetString ("skippedon"),
"lastskipped", "skipped", "skippedon"
);
@@ -305,7 +305,7 @@ namespace Banshee.Query
public static QueryField DateAddedField = new QueryField (
"added", "DateAdded",
Catalog.GetString ("Date Added"), "CoreTracks.DateAddedStamp", new Type [] {typeof(RelativeTimeSpanQueryValue), typeof(DateQueryValue)},
- // Translators: These are unique search fields. Please, no spaces. Blank ok.
+ // Translators: These are unique search fields. You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("added"), Catalog.GetString ("imported"), Catalog.GetString ("addedon"), Catalog.GetString ("dateadded"), Catalog.GetString ("importedon"),
"added", "imported", "addedon", "dateadded", "importedon"
);
@@ -325,7 +325,7 @@ namespace Banshee.Query
public static QueryField ScoreField = new QueryField (
"score", "Score",
Catalog.GetString ("Score"), "CoreTracks.Score", typeof(IntegerQueryValue),
- //Translators: These are unique search fields (and nouns). Please, no spaces. Blank ok.
+ //Translators: These are unique search fields (and nouns). You can use CSV for synonyms. Please, no spaces. Blank ok.
Catalog.GetString ("score"),
"score"
);
diff --git a/src/Libraries/Hyena/Hyena.Query/AliasedObjectSet.cs b/src/Libraries/Hyena/Hyena.Query/AliasedObjectSet.cs
index e3533b9..05f1632 100644
--- a/src/Libraries/Hyena/Hyena.Query/AliasedObjectSet.cs
+++ b/src/Libraries/Hyena/Hyena.Query/AliasedObjectSet.cs
@@ -53,10 +53,12 @@ namespace Hyena.Query
map [obj.Name.ToLower ()] = obj;
foreach (string alias in obj.Aliases) {
if (!String.IsNullOrEmpty (alias) && alias.IndexOf (" ") == -1) {
- string lower_alias = alias.ToLower ();
- map [lower_alias] = obj;
- if (!aliases.Contains (lower_alias)) {
- aliases.Add (lower_alias);
+ foreach (string sub_alias in alias.Split(',')) {
+ string lower_alias = sub_alias.ToLower ();
+ map [lower_alias] = obj;
+ if (!aliases.Contains (lower_alias)) {
+ aliases.Add (lower_alias);
+ }
}
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]