![]() |
| |
| Join the live Webchat: Join #esp Join #sole | ||
| <@tav> | i'll just point out the current full search syntax |
| <@tav> | you can set the period you want to search within, accepted values for 'period' are: hour, day, today, week, month, and year |
| <@tav> | .search period:hour |
| <@tav> | you can also set the 'order' parameter to either 'asc' or 'desc' -- by default order:desc applies, i.e. the results are sorted in reverse chronological order |
| <@tav> | but one can get more of an "irc logs" feel, by doing: |
| <@tav> | .search period:day order:asc |
| <@tav> | the timestamps for each entry are given as relative times, you can disable this by using: |
| <@tav> | .search prettydate:off |
| <@tav> | similarly, you can also disable the automatic embedding of youtube/flickr/vimeo/wikipedia/etc. with |
| <@tav> | .search embed:off |
| <@tav> | you can limit the search to a specific channel, using: |
| <@tav> | .search <#sole> |
| <@tav> | and likewise limit the search to a specific authenticated user using: |
| <@tav> | .search <@tav> |
| <@tav> | or limit the search to a specific irc nick (authenticated or not): |
| <@tav> | .search <+tav> |
| <@tav> | or you can find instances where a specific user is addressed using: |
| <@tav> | .search "@tav" |
| <@tav> | (perhaps that should be the default behaviour for search on just @tav -- i.e. without the quote marks?) |
| <@tav> | the addressing logic takes into account the irc convention of addressing an individual at the start of a sentence, and not limited to explicit addressing by using @user |
| <@tav> | you can also set explicit from: and to: timestamps in pseudo-iso8601 format in order to limit the search results to a specific period, e.g. |
| <@tav> | .search from:2009-08-20T11:03 order:asc |
| <@tav> | .search from:2009-08-19 to:2009-08-20 order:asc |
| <@tav> | no timezone support yet, so it assumes UTC/GMT for the given datetime |
| <@tav> | you can search for a !type easily |
| <@tav> | .search !intention |
| <@tav> | and of course, you can combine these operators, e.g. to find all the !intentions by @tav |
| <@tav> | .search !intention <@tav> |
| <@tav> | you might have noticed that all items are given an identifier of the form ~user/id |
| <@tav> | the id is an incrementing integer if it's not named, e.g. ~tav/275 |
| <@tav> | .search <~tav/275> |
| <@tav> | doing a search for such an implicit ~plex/link in that way finds not just all the other lines which reference it, but also the original line |
| <@tav> | a user could have given an explicit name as an id for a line instead of the automatic integer, e.g. ~tav/profile |
| <@tav> | you can find all references and definitions using that name by tav similarly |
| <@tav> | .search <~tav/profile> |
| <@tav> | if you click above, it'll show mutltiple definitions for the same name of 'profile' but with different !types |
| <@tav> | as well as all the references to it |
| <@tav> | you can filter just the definitions by type using: |
| <@tav> | .search <~tav/profile> <!skype> |
| <@tav> | skype, mailto, http, https, spotify, irc and ftp links are made into links |
| <@tav> | the search supports full text search by default, so you can find references to a website using |
| <@tav> | .search wikipedia.org |
| <@tav> | you can find any part of a url if there's only 4 "parts" to it, e.g. |
| <@tav> | .search http://en.wikipedia.org |
| <@tav> | or |
| <@tav> | .search wikipedia.org/wiki |
| <@tav> | where the 4 parts were "http en wikipedia org" and 3 parts were "wikipedia org wiki" |
| <@tav> | you can also search for phrases with punctuation by using "quotes" |
| <@tav> | e.g. if i were to say that c++ is a pile of shit |
| <@tav> | then you could find it using: |
| <@tav> | .search "c++" |
| <@tav> | or perhaps the more frequent |
| <@tav> | .search "+1" |
| <@tav> | back to those ~plex/links |
| <@tav> | whilst a search for <~tav/profile> only found *my* definitions of 'profile' and respective references to it, you can do a global search to all definitions and references to *everyone's* 'profile' |
| <@tav> | .search <~/profile> |
| <@tav> | you can similarly filter the definitions by type |
| <@tav> | .search <~/profile> <!skype> |
| <@tav> | you can similarly find all the definitions by a specific user, e.g. |
| <@tav> | .search <~happyseaurchin> |
| <@tav> | and again filter it as above |
| <@tav> | note: in all these cases any other query parameters you pass in -- i.e. not <~plex/link> or <!type> would filter the references set and not the definitions |
| <@tav> | e.g. |
| <@tav> | .search <~happyseaurchin> different |
| <@tav> | by default all the defintions at the top are "merged" -- i.e. it assumes that the latest item with the same type/name combination overrides the previous definition |
| <@tav> | this can be turned off |
| <@tav> | e.g. compare |
| <@tav> | .search <~happyseaurchin/crowd-hotel> |
| <@tav> | .search <~happyseaurchin/crowd-hotel> merge:off |
| ← | @junkafarian quit (Nick collision from services.) in #esp · |
| → | junkafarian joined the channel. in #esp · |
| <@tav> | you can of course, find multiple people's definitions, e.g. |
| <@tav> | .search <~happyseaurchin/crowd-hotel> <~psytek/crowd-hotel> |
| <@tav> | of course, you can ignore the defintions and just focus on the references, e.g. |
| <@tav> | .search ~tav/profile |
| <@tav> | ehm |
| <@tav> | .search "~tav/profile" |
| <@tav> | actually what happens is that definitions are shown for a ~user/name combo |
| → | thruflo joined the channel. in #esp · |
| <@tav> | but the assumption is that it'd be way too much for just ~user or just ~/name |
| <@tav> | and thus not shown in those instances unless an explicit request for definitions is given by enclosing the ~plex/link in <angle-brackets> |
| <@tav> | but, to see references to all ~/profile items, just do: |
| <@tav> | .search ~/profile |
| <@tav> | and likewise with |
| <@tav> | .search ~cre8radix |
| <@tav> | for references to items by a specific user |
| <@tav> | i'm sure there's a bunch of other things i'm forgetting |
| <@tav> | but, finally, you can search for items of a specific "format", e.g. |
| <@tav> | to find all the irc nick changes: |
| <@tav> | .search <?irc.nick> |
| <@tav> | to find all the /me lines in irc: |
| <@tav> | .search <?irc:action> |
| <@tav> | to find just the normal irc messages (including /me lines) but not the rest of the irc.nick changes, irc.join, irc.part, irc.quit -- you can: |
| <@tav> | .search <?irc> |
| <@tav> | anyways, hope that was helpful -- it's bound to change, so don't get too attached to the search syntax -- it needs a lot of work -- suggestions v.welcome! |