Μπρος-πίσω μ΄ ένα κλικ

Σου στείλανε τη διεύθυνση για το φάκελο σε κάποιον apache server με τις φωτογραφίες του γιορτινού τραπεζιού, χωρίς κάποια ιδιαίτερη σελίδα καταλόγου, και κάθε φορά πρέπει να ξαναγυρνάς στο φάκελο. Θες να πας γρήγορα μπρος πίσω στα ημερήσια στατιστικά σου στην πόρσε.

Πόσες φορές δεν τυχαίνει η διεύθυνση της επόμενης σελίδας, ή ακριβέστερα του επόμενου διαδικτυακού πόρου, που θέλουμε, να είναι επόμενη και με βάση μια αρίθμηση μέσα στη διεύθυνση;

Μπες εδώ και σύρε τους σχετικούς δεσμούς στη Bookmarks Toolbar του firefox* σου, κι έχεις τα κατάλληλα κουμπάκια γι’ αυτό το μπρος-πίσω, σε απόσταση ενός κλικ πλέον.

Ούτε θυμάμαι από πού τα πρωτοπήρα κι εγώ…

Ο κώδικας, αν θες να τα δημιουργήσεις ο ίδιος (νέο bookmark και στο location το περιεχόμενο):

javascript:(function(){%20var%20e,s;%20IB=-1;%20function%20isDigit(c)%20{%20return%20("0"%20<=%20c%20&&%20c%20<=%20"9")%20}%20L%20=%20location.href;%20LL%20=%20L.length;%20for%20(e=LL-1;%20e>=0;%20--e)%20if%20(isDigit(L.charAt(e)))%20{%20for(s=e-1;%20s>=0;%20--s)%20if%20(!isDigit(L.charAt(s)))%20break;%20break;%20}%20++s;%20if%20(e<0)%20return;%20oldNum%20=%20L.substring(s,e+1);%20newNum%20=%20""%20+%20(parseInt(oldNum,10)%20+%20IB);%20while%20(newNum.length%20<%20oldNum.length)%20newNum%20=%20"0"%20+%20newNum;%20location.href%20=%20L.substring(0,s)%20+%20newNum%20+%20L.slice(e+1);%20})();

και

javascript:(function(){%20var%20e,s;%20IB=1;%20function%20isDigit(c)%20{%20return%20("0"%20<=%20c%20&&%20c%20<=%20"9")%20}%20L%20=%20location.href;%20LL%20=%20L.length;%20for%20(e=LL-1;%20e>=0;%20--e)%20if%20(isDigit(L.charAt(e)))%20{%20for(s=e-1;%20s>=0;%20--s)%20if%20(!isDigit(L.charAt(s)))%20break;%20break;%20}%20++s;%20if%20(e<0)%20return;%20oldNum%20=%20L.substring(s,e+1);%20newNum%20=%20""%20+%20(parseInt(oldNum,10)%20+%20IB);%20while%20(newNum.length%20<%20oldNum.length)%20newNum%20=%20"0"%20+%20newNum;%20location.href%20=%20L.substring(0,s)%20+%20newNum%20+%20L.slice(e+1);%20})();

* Λίγο-πολύ, τα υποστηρίζουν όλοι οι browser, αλλά είπαμε, κάνουμε προπαγάνδα.

bookmarklets

get firefoxΈπεσα τις προάλλες σε μια ανάρτηση για το readability, το οποίο, πρόσφατα, το είχαν εκθειάσει πάλι στο {porcupinecolors}. Φυσικά, και για μένα αποτελεί απαραίτητο εργαλείο και είναι σε άμεση πρόσβαση στη Bookmarks Toolbar μου.

Με αυτή την αφορμή, όμως, είπα να δω σε τι αριθμό από bookmarklets έχω φτάσει, έτοιμα κυρίως, μερικά δικά μου, κάποια με keywords και παραμέτρους· τα περισσότερα σε χρήση και χρησιμότατα. Ούτε λίγο ούτε πολύ, λοιπόν, ήταν πάνω από 70. Ξεσκαρτάρισα αυτά που δεν με εξυπηρετούσαν πια, και έπεσα λίγο πάνω από τα 50.

Για να έχω καλύτερο έλεγχο τα έβαλα και αυτά στη σελίδα με τις διάφορες ρυθμίσεις που αφορούν τον Firefox μου (στο sidebar, δεξιά, στην ενότητα Δείτε, θα βρείτε μόνιμο σύνδεσμο). Μπορείτε να τα αναζητήσετε στο web με το όνομά τους μαζί με τη λέξη bookmarklet. Αν χρειάζεται κάτι διευκρίνιση, εδώ είμαστε.

Δεν μπορώ να φανταστώ μη ευκαιριακούς χρήστες του web που δεν χρησιμοποιούν bookmarklets (OK, μπορώ· αυτούς που χρησιμοποιούν ubiquity).

 
Κι άλλες σχετικές αναρτήσεις,  εδώ μέσα, μπόλικες

Φυσικά, (σχεδόν) όλα τα bookmarklet παίζουν σε (σχεδόν) όλους τους browser (ασχέτως αν η Microsoft εντελώς άκαιρα και αδικαιολόγητα είχε την έμπνευση να προειδοποιεί για ενδεχόμενο ζήτημα ασφάλειας. Ποιος; ο Internet Explorer!). Όμως, διαφημίζουμε firefox σε κάθε ευκαιρία. Κάνει τη ζωή όλων μας πιο εύκολη.

Κουκουζέλη, ορίστε λινκ υπογραμμισμένα

override link css decoration in WP comment blocksΔεν μπορούσα να σε αφήσω παραπονούμενο.

1. Χρησιμοποιείς firefox (γίνεται και στους άλλους browser, αλλά κάνω κήρυγμα) .

2. Φτιάχνεις ένα bookmarklet, άμεσα προσβάσιμο, ως «κουμπί»:

– πάνω στη Bookmarks Bar, δεξί κλικ πάνω σε κάποιο υφιστάμενο, η σε κενό της χώρο, New Bookmark…),

– δίνεις ένα πολύ σύντομο όνομα για οικονομία χώρου, π.χ. l, ή λ, (εκ του links /λινκς)

– δίνεις περιεχόμενο για το Location με copy paste από παρακάτω (χωρίς αναδίπλωση ή επιπλέον κενά):

javascript:styles='.comment-content%20a%20{%20margin-top:%200px;%20margin-right:%200px;%20margin-bottom:%200px;%20margin-left:%200px;%20padding-top:%200px;%20padding-right:%200px;%20padding-bottom:%200px;%20padding-left:%200px;%20color:%20#eeeeee;%20border-bottom-width:%201px;%20border-bottom-style:%20dotted;%20border-bottom-color:%20#eeeeee;%20}';%20newSS%20=%20document.createElement('link');%20newSS.rel%20=%20'stylesheet';%20newSS.href%20=%20'data:text/css,'%20+%20escape(styles);%20document.documentElement.childNodes[0].appendChild(newSS);%20void%200

– Αδιαφορείς για τα άλλα πεδία. Add

 
Ενώ, λοιπόν, βλέπεις σχόλια στο μπλογκ εδώ, για να υπογραμμιστούν όλα τα λινκ μέσα σ’ αυτά, πατάς το κουμπάκι που έφτιαξες. Με επαναφόρτωση της σελίδας επανέρχεται η διακόσμηση του θέματος του wordpress.

Ενημέρωση: Έτοιμο και το script, που κάνει περιττό το bookmarklet, και τα επιπλέον κλικ. Αν έχεις εγκατεστημένη τη μαϊμού πάτησε εδώ και συναίνεσε άφοβα στα περαιτέρω.

51, αισίως, οι γλώσσες του google translate

Πύργος της Βαβελ, WikipediaΑγγλικά, αλβανικά, αραβικά, βιετναμέζικα, βουλγαρικά, γαλικιανά, γαλλικά, γερμανικά, γίντις, δανέζικα, εβραϊκά, ελληνικά, εσθoνικά, ιαπωνικά, ινδικά, ινδονησιακά, ιρλανδέζικα, ισλανδικά, ισπανικά, ιταλικά, καταλανικά, κινεζικά, κορεατικά, κροατικά, λετονικά, λευκορωσικά, λιθουανικά, μαλεσιανά (μαλέι), μαλτέζικα, νορβηγικά, νοτιοαφρικανικά, ολλανδικά, ουαλέζικα, ουγγρικά, ουκρανικά, περσικά, πολωνικά, πορτογαλικά, ρουμανικά, ρωσικά, σέρβικα, (σλαβο)μακεδονικά, σλοβάκικα, σλοβένικα, σουαχίλι, σουηδικά, ταϋλανδέζικα, τουρκικά, τσέχικα, φινλανδικά, φιλιπινέζικα.

Πλέον, υποστηρίζονται και οι 23 επίσημες γλώσσες της Ε.Ε., ενώ το google περνάει αθόρυβα την υπηρεσία μετάφρασης στις υπόλοιπές του: google docs, google search, gmail, κ.ο.κ.

 
Υπενθυμίζουμε τον πιο γρήγορο τρόπο για να μεταφράζουμε με ένα κλικ οποιαδήποτε σελίδα στον firefox, εκμεταλλευόμενοι τη δυνατότητα να αποδίδουμε σε όποιο bookmark επιθυμούμε, κανονικό ή bookmarklet, ένα keyword, το οποίο, επιπροσθέτως, μπορεί να δέχεται παραμέτρους.

Google translate Bookmarklet with keyword and parameterΈνα bookmarklet είναι ένα τμήμα javascript κώδικα που υλοποιείται με την ειδική μορφή ενός URI που ξεκινά με το πρόθεμα javascript:, αντί των συνηθισμένων http:, file:, ftp:, κλπ., επιτρέποντας έτσι τη χρήση του ως στόχο ενός bookmark. Έτσι, ο browser αντί να ενεργήσει με βάση το αντίστοιχο πρωτόκολλο, εκτελεί τον κώδικα javascript του bookmarklet. Αν λοιπόν, τοποθετήσουμε ένα bookmarklet στην Bookmarks Toolbar του firefox, ή μέσα στα bookmarks μας, τότε μας αρκεί ένα κλικ πάνω του για να εκτελεστεί ο κώδικάς του. Εναλλακτικά, μπορούμε να πληκτρολογήσουμε το custom keyword που του έχουμε αποδώσει, μαζί με τις πιθανές παραμέτρους του.

Φτιάχνουμε, λοιπόν, ένα bookmarklet (Bookmarks, δεξί κλικ πάνω σε κάποιο υφιστάμενο, New Bookmark…), με όποιο όνομα θέλουμε, και με περιεχόμενο (χωρίς αναδίπλωση ή επιπλέον κενά) για το Location:

javascript:location.href='http://translate.google.com/translate?u='+document.location.href+'&sl=auto&tl='+'%s';

Φροντίζουμε στο πεδίο Keyword να δώσουμε ένα σύντομο όνομα (π.χ. tr) που δεν έχουμε δώσει σε άλλο bookmark. Για το bookmarklet αυτό δεν χρειαζόμαστε άμεση πρόσβαση, άρα δεν χρειάζεται να καταλαμβάνει χώρο στην Bookmarks Toolbar μας, και μπορούμε να το αποθηκεύσουμε οπουδήποτε μέσα στα bookmarks μας. Έτοιμοι!

 
Ενώ, λοιπόν, επισκεπτόμαστε μια οποιαδήποτε σελίδα, για να τη μεταφράσουμε σε κάποια από τις υπόλοιπες 50 γλώσσες που υποστηρίζει η υπηρεσία μετάφρασης της google (π.χ. στα ελληνικά), κάνουμε 2 απλά βήματα:

1. Πηγαίνουμε στη Location bar (απευθείας, με Ctrl+L)

2. Γράφουμε το keyword του bookmarklet, ένα κενό, και το δίγραμμα κατά ISO 639-1, της γλώσσας στόχου για τη μετάφραση (π.χ., γράφουμε tr el, για να μεταφράσουμε την τρέχουσα σελίδα στα ελληνικά, αν έχουμε ορίσει ως tr το keyword). Πατάμε enter και ιδού η μετάφραση…

Αν, παρ’ ελπίδα, δεν έχει ανιχνευτεί σωστά η γλώσσα προέλευσης, τη δηλώνουμε επί τόπου, και ξαναζητάμε μετάφραση.

 
Η προηγούμενη μεγάλη αναβάθμιση της υπηρεσίας

«και πού να τα προλάβεις όλ’ αυτά;», μέρος 2

cards-batchΛέγαμε, λοιπόν, ότι οι δύσκολες περιπτώσεις αφορούν λινκ που είναι στα σχόλια σε μπλογκ του blogger ή της wordpress, ή σε αναρτήσεις σε wordpress. Δες τι θα κάνεις, λοιπόν, για να καταλήξεις στο ανάλογο ποθητό «σεντόνι». Μόνο που και στις τρεις αυτές περιπτώσεις δεν θα είναι ίδιο σεντόνι με την περίπτωση της προηγούμενης ανάρτησης, οπότε παίρναμε στον firefox το rendering των αναρτήσεων, αλλά ένα σεντόνι με κώδικα xml που περιέχει τα λινκ που ζητάμε.

Εφόσον ο server δεν μας δίνει τρόπο να ανακτήσουμε όλες τις αναρτήσεις, ή όλα τα σχόλια μαζί, ό,τι και να επιδιώξει ο client είναι ανώφελο. Ευτυχώς, θα καταφύγουμε στο σύγχρονο Μεγάλο Αδελφό, πιο συγκεκριμένα, στο κομμάτι του που αφορά feeds, στον Google Reader (στη συνέχεια, GR).
 
αυτός είναι πανόπτης…

«και πού να τα προλάβεις όλ’ αυτά;», μέρος 1

Προειδοποίηση: Το κείμενο που ακολουθεί επιδιώκει να είναι όσο γίνεται προσιτό σε περισσότερους. Αν όμως, δεν μπορείτε να το παρακολουθήσετε, απλά προσπεράστε το· παρότι δεν έχει ως στόχο την επίδειξη, δεν επιχειρεί και να αρχίσει από το μηδέν.

 
cards-batchΒρήκες, λοιπόν, ένα μπλογκ που δεν φανταζόσουν, στον blogger ή στο wordpress –δεν αναφέρομαι αλλού, με υλικό σπάνιο για μουσικές αγαπημένες, εκτός κυκλοφορίας, πες ας πούμε την ψυχεδελική σκηνή των 60s, και μάλιστα διαβάζεις ότι ο μπλόγκερ δίνει και λινκς για να κατεβάσεις και να ακούσεις δίσκους που δεν υπάρχουν πια. Καθώς διαθέτεις αρκετό bandwidth, και είσαι και συνδρομητής σχετικών υπηρεσιών online αποθήκευσης αρχείων, αποφασίζεις να κατεβάσεις ό,τι προσφέρει το μπλογκ

Έχεις, πλέον, δυο προβλήματα. Ανακάλυψες πολύ αργά το μπλογκ, που έχει ήδη ζωή ετών και εκατοντάδων αναρτήσεων. Ακόμη χειρότερα, τα περιβόητα λινκς είναι στα σχόλια της κάθε ανάρτησης. Τι κάνεις; Η μία λύση είναι το «ξεφύλλισμα» όλου του μπλογκ, όλων των αναρτήσεων και των σχολίων. Σίγουρα, για ένα μπλογκ που ταιριάζει στα γούστα σου θα το κάνεις, εφόσον μπορείς να αφιερώσεις και τον απαιτούμενο χρόνο. Αν όμως αυτό δεν γίνεται; Τι καλά θα ήταν να είχες ένα τρόπο να μαζέψεις όλα τα λινκ για το «κατέβασμα», γρήγορα, ή πιο γρήγορα, εν πάση περιπτώσει από την πρώτη λύση…
 
πάμε στην εύκολη περίπτωση