How to replace string of a webpage using firefox addon? - firefox-addon

I want to create an addon whose xpi installation will enable to replace a string of a website with other string.
For example , replacing all "the"s in a webpage with "change".
Actually, wanted to create an addon for a site due to which some complex word occuring multiple times could changed to a simpler word with a toolbar button click or by selection of the word and changing the word via clicking an option in the context-menu
Thnaks advance. Will give some more info if required.

This is a great question.
This is a simple thing to do, however it is very tricky to do it right. Right - means that it is done in a way that is safe from XSS attacks, and done very efficiently. It is common to see people not walking the tree, and doing all kinds of non-performant stuff.
What people do is copy paste this add-on and just modify the replaceText function -
https://addons.mozilla.org/en-US/firefox/files/browse/361576/file/data/content-script.js

Related

Adding a bar to a bootstrapped firefox extension

I'm trying to develop my first firefox extension and I chose a bootstrapped one, because I can do it easily (not having to install nothing). Now, I'm trying to find at least some documentation to start, and I really need to know how can I add a panel to the browser, something like the history panel, but with some personalized components, as buttons and inputs.
I'm so confused because there are a lot of ways in developing extensions, but I really want to preserve bootstraped method. Any idea how to add the panel or what to read? (I already have read this, and didn't helped https://developer.mozilla.org/es/docs/Extensions/Bootstrapped_extensions )

Stop part of page being index by search engines?

How can I stop search engines indexing part of my page? Is there an HTML5 element for this?
Its just a line of text that I want to hide (a co-worker doesnt want their name on google for some reason). Im thinking that I could inject the text with javascript, but I have heard google does sometimes look inside javascript files.
I also thought of using images instead of text, but im concerned how this will look cross device and platform. Ive noted text rendering can differ on mac and pc and thats before ive had to think about mobile devices, retina displays, etc.
Thanks
You can't hide content unless you use the methods you've already outlined above. Your best bet is to use JavaScript in an external file and then block that file using robots.txt.

Is there a way to disable email engines from automatically hyperlinking a URL?

One of my clients wants to disable the URL to be shown as a hyperlinked URL, it has to be recognized as plain text, this is what I have tried:
ur<!comments>l
I have also tried to remove the <a></a> tag, as well as remove "http://" of the URL, none of them worked in Outlook. Outlook still recognized it as a hyperlink.
Anybody have any workaround here?
There is a zero-width non-breaking space that I like to use: 
I place it in strategic places so that the URL does not get recognized as a URL, like so: http://wwwdomain.com.
This strategy has worked for me across platforms and rendering clients. Its advantages are twofold: 1) it prevents the client from auto-rendering text as a link, and 2) unlike other "non-breaking" zero-width space ascii codes (ie ), it wraps the entire URL if your URL happens to need it (instead of just the parts after the zero-width space).
Try it out.
Credit belongs to my coworker, actually. Seems to work in all clients that we tested.
www.websitename.<img src="" width="0" height="0">com
An empty image tag with 0 width and 0 height. Insert it between the dot and the following text (in this case "com").
After we tried several things, he somehow suffered from a moment of inspiration/brilliance.
No visible spacing between the characters. Not sure what will happen if you copy/paste the string into a browser directly, though. It served my purpose of not allowing email clients to automatically make it a hyperlink, though.
This one worked for me. It is a combination of Scott's answer and David K. Hess's comment.
Break your url using <span>. However, you need to break it in a way that they are not matched as url when the mail client scans it.
eg: http<span>://</span><span>google.</span>com
You can turn off auto-hyperlinking in general. Here is a tutorial for Outlook 2007:
Turn automatic hyperlinking on or off
I have a similar issue with words like "chequed.com" and "interviewing.com" that are creating a hyperlink in my messages when I do not want it to.
The first step I took was to edit the HTML link tags.. but there weren't any.
After that, I went to the text in the email and added a very small space by using a fount of 8pt (im using an ESP, otherwise I would have gone with 1px)
This may help if you're having the same issue.
My solution for this is
http://...
I contacted Gmail's support and spoke with a department manager for Apple Care. This is expected behavior and cannot be prevented. These hacks no longer work, and if implemented could result in your IP being listed as a phishing operation. You're dancing around security issues here. I would suggest revising your content strategy.
The only thing you can do currently is wrap all email addresses in mailto links and phone numbers in tel links. There are no other options available as of 2017.
I had success with janusoo's solution for years until for some reason it began to introduce line breaks on some clients. I found that I could proceed with ​
www.websitename.​com
You might try using CSS to re-flow the text.
<p>www.example.<span style="float:left">http://</span>com/</p>
If the part with "http://" still gets marked as a URL, try breaking things up in different places.
One other trick would be to replace the periods with some other Unicode character that LOOKS like a period but actually isn't. For example, "⠄" (U-2840) is a Braille single-dot.
Alas (!) I don't have any Microsoft applications I can test this with, but good luck with it. :)
If you use . to replace your '.' in your hyperlinks you'll solve Outlook 2007 Hyperlinking the URL.

How do i make a simple web based notepad application

I have to make formatting available for a text box in a web based application just like the options available here to make selected text bold or in italics. I don't know where to start. can anyone please guide me.
Thanks
Why reinvent the wheel? Use something that already exists:
TinyMCE
CKEditor
Here's a list of ten different rich text editors that will do what you need.
http://www.queness.com/post/212/10-jquery-and-non-jquery-javascript-rich-text-editors
Depends on what you're going to be coding in, but I'm sure most languages have built-in types for text boxes that can handle formatted text (not unlike the one I'm typing in right now), and probably have a method that returns the contents of the box.
All you'd need is to figure out is the format code, if you want to store this text and open it elsewhere.
If you want to create from "scratch", you can use any JavaScript framework to ease your work. There are many "good" frameworks out there:
jQuery, ExtJS, GWT, YUI, etc. Just choose the one that suits to your need.
http://en.wikipedia.org/wiki/Comparison_of_JavaScript_frameworks

How to get rid of stupid "pad" labels produced by RTML functions?

I am unlucky to be in charge of maintaining some old Yahoo! Store built using their RTML-based platform.
Recently I've noticed that HTML code generated by some RTML functions is sprinkled all over with "padding images" (or whatever is the conventional name for those 1x1 pixel images used to enforce layout). I have nothing against using such images, but... all those images are supplied with an ALT attribute like this:
<img href="http://.../image1x1.gif" alt="pad">
With all due respect to the original authors of RTML, but they must have been smoking something when they came up with this "accessibility enhancement"... :-(
Anyway, here are my questions:
Does anybody know a list of all RTML functions that generate HTML with all these "pad" images?
Is there any way to get rid of all those alt="pad" attributes without rewriting a lot of RTML code?
NB: This may sound a little cynical, but improved accessibility is not the main goal here. The main goal is to stop exposing those moronic alt="pad" attributes to Google and other smart search engines. So client-side scripting is not going to help, as far as I know.
Thank you!
P.S. Probably, most of you are really lucky and never heard of RTML. Because if somebody would establish a prize for software products based on
commercial success
------------------
usability
ratio, this RTML-based "platform" would probably win the first place.
P.P.S. Apparently someone from Yahoo! finally listened, because I can no longer find those silly "pad" tags in the RTML generated for our store. Nevertheless, one of the ideas offered in response to my original question does provide a very practical solution - not just to the original problem but to any similar problem with RTML platform. See the winning answer - it's really good.
The only way I see is to have your own website front-end that will filter whatever you want from the RTML site....
for example, your rtml site is at http://rtmlusglysite.yahoo.com/store/XYZ01134 , you could host a simple PHP front-end at http:://www.example.com that would be acting like a "filtering" HTTP web proxy, so http://rtmlusglysite.yahoo.com/store/XYZ01134/item1234.rtml would be accessed by http://www.example.com/item1234.html
It's not an ideal solution, but it should work, and you could do some more fancy stuff.
Nice try from the other posters, but there is a very simple RTML command that will do it. . .
TEXT PAT-SUBST s GRAB
MULTI
HEAD
BODY
TEXT #var-with-alt-tag-equals-pad-in-it
frompat "alt=\"pad\""
topat ""
The above RTML will find all instances of alt="pad" and replace it with nothing.
Well you're right on RTML being relatively untraveled :)
Do you have a way to add your own attributes to these images tags? If so, would it be possible to override the alt attribute? If you specify alt="", I would think that would override Yahoo's... Otherwise consider putting a useful alt tag in there for the blind and dialup types.
It's the first time I'm hearing about this platform, but here is an idea: if you can add javascript to the pages, you could write a function that will run after the page has loaded and remove all the alt="pad" attributes from the page.
Unfortunately this solutions works only with browsers that know about scripting, so lynx or some other text based browsers might not support it.
I have shared a link official RTML guide from yahoo. Hope it will help. Thanks!
List of available RTML books and resources

Resources