Mozilla Labs Ubiquity : mashup while you browse


Recommended Posts

http://labs.mozilla.com/2008/08/introducing-ubiquity/

Ubiquity is a Firefox extension with a similar feel to Launchy or Executor - the "type and find" desktop applications, but it runs within the browser and is more of social networking enhancement than a simple launcher.

You can highlight a locality you have typed in an email, type "map" and you will have a map to paste in your message.

You can translate on-page; search amazon, google, wikipedia, yahoo, youtube, etc.; digg and twitter; lookup and insert yelp review; get the weather; syntax highlight any code you find; and a lot more.

Concept seems to be very useful but i really doubt users will find it easy to use, or else it will became one more geeky stuff :)

That was my worry as well to begin with, but using it I realized that it was extremely intuitive so I'm not gonna write it off as something for "geeks only" just yet.

This is brilliant. The basic functions should be easy enough for even non-geeky users "email to contact", looking up word definitions, weather info etc. work very nicely. As a Gmail addict I have been in love with the "email to" command since the beginning.

Edited by macel
what a geek may think is intuitive may well not be simply because of learned behaviour.

The thing is, there's only so much you can before you have to start breaking certain user interface traditions in order to innovate. It doesn't seem to hard though, and will indeed feel more intuitive to do once they do it a few times (well, as in, once they get used to it, they'll just do it naturally instead of making it seem like a chore).

This is the code for my gmail ubiquity command. To install it just ubiquity "command-editor" then copy and paste the code into the text box on the page that appears and it should just work!

Just typing "gmail" will show you the 5 newest unread emails in your inbox.

If you then type a number up to 20 after gmail it will show you the 5 unread emails after that e.g. 6 will show you emails 6-11.

You can also look at emails with different labels e.g. "label work" or filter results by a contact or email e.g. "email [email protected]".

Clicking on the subject line of the email previews will take you that email.

pressing enter will take you to your inbox or whatever label you are currently looking at.

Note: You have to be logged into gmail for this to work, but you don't need to be on the gmail website.

noun_email_type = new CmdUtils.NounType("type",
  ["unread", "inbox", "starred", "chats", "sent", "drafts", "all", "spam", "trash"]);

CmdUtils.CreateCommand({
  name: "gmail",
  contributors: "Ross Brown",
  description: "Lets you look at your gmail",
  help: "Lets you look at new emails in your gmail account using the gmail atom feed.",
  takes: {StartNumber: noun_arb_text},
  modifiers: {label: noun_arb_text ,type: noun_email_type ,contact: noun_type_contact ,email: noun_arb_text},

  preview: function(pblock, mn, mods) {
    pblock.innerHTML = "Fetching mail";
    if(mods.label.text!=null && mods.label.text!=undefined) {
      var url = "http://mail.google.com/mail/feed/atom/" + mods.label.text;
    } else if(mods.type.text!=null && mods.type.text!=undefined) {
      var url = "http://mail.google.com/mail/feed/atom/" + mods.type.text;
    } else {
      var url = "http://mail.google.com/mail/feed/atom/";
    }

    var EmailSearch = false;
    if(mods.contact.text!=null && mods.contact.text!=undefined) {
      var SearchEmail = mods.contact.text;
      EmailSearch = true;
    } else if(mods.email.text!=null && mods.email.text!=undefined) {
      var SearchEmail = mods.email.text;
      EmailSearch = true;
    }

    jQuery.ajax({
      url: url,
      type: "GET",
      dataType: "xml",
      timeout: 1000,
      error: function(){
         pblock.innerHTML = "Error: Could not get mail";
      },
      success: function(xml){
          var emailNo = 1;
          var intMn = parseInt(mn.text);
          if (isNaN(intMn)) {
            var emailMin = 1;
          } else {
            var emailMin = intMn;
          }
          var emailMax = emailMin + 5;

          pblock.innerHTML = "<style> .title {font-size: 90%;} .subject {font-size: 75%;} .summary {font-size: 60%; font-style: italic;} .info {font-size: 60%;}</style>";

          var searchTitle = jQuery(xml).find('tagline').text();
          if(EmailSearch) {searchTitle += " From: " + SearchEmail;}

          pblock.innerHTML += "<div class='title'>" + searchTitle + " (Showing " + emailMin + "-" + (emailMax-1) + " of " + jQuery(xml).find('fullcount').text() + " messages)</div>";

          jQuery(xml).find('entry').each(function(){
            email = jQuery(this).find('email').text();
            if(EmailSearch!=true || email.indexOf(SearchEmail)!=-1) {
              if(emailMin <= emailNo && emailNo < emailMax) {
                subject = jQuery(this).find('title').text();
                link = jQuery(this).find('link').attr('href');
                name = jQuery(this).find('name').text();
                summary = jQuery(this).find('summary').text();
                modified = jQuery(this).find('modified').text();
                modified = modified.replace("T", " ");
                modified = modified.replace("Z", "");
                modified = modified.replace(/-/g, "/");

                pblock.innerHTML += "<p><a href='" + link + "'><div class='subject'>" + subject + "</div>";
                //For some reason the </a> tag acts like <p> here//ail
                pblock.innerHTML += "<div class='info'>From: " + name + " (<a href='mailto:" + email + "'>" + email + ") - " + modified + "</div>";
                pblock.innerHTML += "<div class='summary'>" + summary + "</div>";
                pblock.innerHTML += "</p>";
              }
              emailNo++;
            }
          });
      }
    });
  },
  execute: function(mn, mods) {
    if(mods.label.text!=null && mods.label.text!=undefined && mods.label.text!="") {
      Utils.openUrlInBrowser("http://mail.google.com/mail/#label/" + mods.label.text);
    } else if(mods.type.text!=null && mods.type.text!=undefined) {
      Utils.openUrlInBrowser("http://mail.google.com/mail/#" + mods.type.text);
    } else {
      Utils.openUrlInBrowser("http://mail.google.com/mail/");
    }
  }
});

Maybe a toolbar button / drop down menu with a list of common tasks would make it more user friendly?

If you ubiquity "command-list" or navigate to "chrome://ubiquity/content/cmdlist.html" there is a list of all the available commands you have for ubiquity.

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Latest Rufus update improves new Windows 11 install method by Taras Buria Pete Batard, the maker of Rufus, a very popular app for creating bootable Windows (and other OS) media, has released a new beta version of its app. Rufus 4.15 beta is now out, and while it offers no new features, there are all sorts of improvements and fixes, including for the new Windows 11 installation method that was introduced in version 4.14 in early May. The "Silent Windows 11 installation" is a new feature whose goal is to automate operating system installation. All you have to do is boot from the drive, and then Rufus takes over, doing all things for you, such as setting up a new account, skipping ads and prompts, and more. It is a very handy tool, but initially, it had some bugs and issues that required addressing. With version 4.15 beta, Rufus is fixing that, particularly a bug with installation failing at 75%, crashes on Snapdragon X-based PCs, and more. Here is the changelog: Rufus 4.15 beta is now available for download from its GitHub repository. If you have never used Rufus before, you can check out our guide here. It is a very useful utility to have, as it allows you to deal with plenty of Windows 11's annoyances, which are still there, despite Microsoft's ongoing efforts to fix them.
    • Microsoft fixes one of Excel Copilot's most frustrating limitations by Usama Jawad Microsoft began integrating Copilot into Excel a couple of years ago and has been upgrading it with new functionalities since then. While some changes have been controversial, Microsoft is hoping to win over users by allowing them to be more productive via Copilot. To that end, it has now announced a Copilot improvement that may actually be appreciated by people who use it regularly. Excel customers often use the Copilot prompt box to issue instructions to format and customize their data, but it can become quite tiring to keep repeating the same instructions again and again. Microsoft now allows you to define Copilot personalization rules for formatting, naming conventions, formulas, and report styles. These can be accessed via Settings > Personalization, where you can explain your rules in natural language like "Always format currency in USD with no decimals", and just let Copilot take care of the rest. Microsoft is going a step further in this direction by allowing you to set workbook rules too. These rules are stored as a .Rules sheet, and are preserved while the workbook is shared. This fosters collaboration while making sure that standard rules govern the Copilot editing experience across the organization. Other advantages of this capability include pointing it to specific examples, defining dynamic formulas, and referencing an entire sheet and asking Copilot to infer rules based on that. You can leverage this feature by opening Copilot in Excel, clicking on "+", and selecting Create workbook rules. If you have an existing .Rules sheet, you can simply start listing the rules in column A as well. Personalization features are available to all Copilot in Excel users across the web, Mac, and Windows. Meanwhile, workbook rules are currently being previewed for Windows and Mac customers on the Insiders channel. General availability is scheduled after a few weeks, but a concrete date is currently unknown. Overall, the Excel capability is quite similar to ChatGPT's memory features, which allow you to permanently store items in the AI model's context window.
    • Imagine you still haven't discovered Total Commander that is doing all those things for three decades already...
    • This sounds like underneath the nice marketing spin, either someone at Adobe got tired of their lazy devs and asked Microsoft to help them sort at least some of Adobe's ancestral spaghetti code to make it go faster, or Microsoft wanted Adobe's crap to run better on Windows to make it look better when compared to Apple, so they offered to intervene. Either way, GOOD.
    • My favorite file manager for Windows 11 finally gets a long-requested feature by Taras Buria Files is among the best File Explorer alternatives for Windows 10 and 11. This free app is packed with all sorts of features and conveniences, but there is one crucial feature that is still missing—Tree View. Fortunately, the latest update in the Preview channel finally delivers it. With version 4.1.4, which is now available for download in the Preview channel, developers implemented Tree View, a new mode that displays folders in an expandable hierarchy. Windows 11's stock File Explorer always had this feature, but it was nowhere to be found in Files until now. Starting with the latest preview update, you can expand each drive and its nested folders without leaving the current location and then open the folder you need in the main view. To try Tree View in Files, update the app to the latest preview version, then click the small arrow next to a drive to expand its content. The developers say they are rolling out Tree View in Preview first to gather feedback from users and improve the feature before bringing it to all in the stable channel. In addition to Tree View, Files 4.1.14 improves the Windows Fonts folder. You can now preview each font directly in Files with no need to open the built-in font viewer. For now, these two features are only available in the Preview channel. For those using the stable release, developers recently released version 4.1.3, with improvements for the built-in tag system, on-demand folder size calculation, and plenty of various fixes. You can check out the full release notes here. You can download Files from the Microsoft Store (paid version) or its official website (free).
  • Recent Achievements

    • One Month Later
      Vincian earned a badge
      One Month Later
    • First Post
      Jocimo earned a badge
      First Post
    • Week One Done
      suprememobiles48 earned a badge
      Week One Done
    • One Month Later
      Windows Guy earned a badge
      One Month Later
    • One Month Later
      Prasann earned a badge
      One Month Later
  • Popular Contributors

    1. 1
      +primortal
      517
    2. 2
      +Edouard
      172
    3. 3
      PsYcHoKiLLa
      90
    4. 4
      Steven P.
      79
    5. 5
      ATLien_0
      68
  • Tell a friend

    Love Neowin? Tell a friend!