Old:Aggiungere un motore di ricerca al quicksearch di Firefox: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
mNessun oggetto della modifica
 
(11 versioni intermedie di 5 utenti non mostrate)
Riga 1: Riga 1:
Questo script cambia ricorsivamente i permessi di file e directory, ma impostando permessi diversi per i file e per le directory. In tal modo si possono impostare con un solo comando i permessi di esecuzione di un'intera gerarchia di directory (in modo da potervi accedere) e contemporaneamente togliere il permesso di esecuzione a tutti i file ivi contenuti.
{{Old}}
Dopo il precedente [[Il vostro motore di ricerca da Firefox|tip sulla ricerca veloce]] approfondiamo con un tutorial per scrivere un plugin per aggiungere il vostro motore di ricerca preferito (nel mio caso [http://beeblex.com Beeblex]) nella barra in alto a destra di Firefox.


Basta posizionarsi nella cartella interessata e lanciare lo script. Se non viene usato nessun parametro verranno impostati dei sani default (640 per i file e 750 per le cartelle).
Il plugin non sarà molto difficile da scrivere e sarà altrettanto semplice da installare.


{{Box|Esempio|Un utilizzo tipico � quello di sanare i permessi di file copiati da cdrom, da partizioni windows, da chiavette usb formattate fat32 etc. }}
Innanzitutto vediamo com'è scritto un plugin di ricerca:


<pre>
XML:


I due parametri opzionali sono i permessi rispettivamente di file e cartelle nello stesso formato accettato da chmod.
1.
 
2.  # Search file for Beeblex
{{Box|Esempio| $ cd cartella/da/modificare/
3. #
  $ chmodr g-wx g-w
4.  # Creation:  26/07/2005 by Francesco Fullone <francesco AT fullo.net>
}}
5.  # based on http://searchplugins.mozdev.org/ by  Andreas melcom Urban
 
6.
7. <SEARCH
8.        name="Beeblex"
9.        description = "Beeblex PHP Search"
10.        method="GET"
11.        action="http://www.beeblex.com/search.php"
12. >
13.     
14. <input name="s" user>
15. <input name="d" value="ALLDB">
16. <inputnext name="start" factor="10">
17. <inputprev name="start" factor="10">
18.   
19. <interpret
20.    browserResultType="result"
21.    resultListStart="<!--a-->"
22.    resultListEnd="<!--z-->"
23.    resultItemStart="<!--m-->"
24.    resultItemEnd="<!--n-->"
25. >
26. </search>
27.
</pre>
Le cose che più ci interessano sono:


Ecco lo script:
* all'interno del tag <code>search</code> l'attributo <code>action</code> che deve contenere l'url del motore di ricerca o della pagina che prenderà la stringa in input.
<pre>
* Il tag contenente l'attributo <code>user</code> dovrà avere come valore di name il parametro di ricerca, ad esempio in Beeblex è '''s''' mentre in Google è '''q'''.
#!/bin/bash
* il secondo <code>input</code> tag contiene eventuali parametri aggiuntivi; nel mio caso ho detto a Beeblex di cercare ovunque, avrei potuto anche indicare con il valore <code>php_blogs</code> di cercare nella sola sezione dei blogs
#
* i tag <code>inputnext</code> ed <code>inputprev</code> servono per far partire la ricerca da un certo risultato, anche in questo caso sarà opportuno controllare sul motore di ricerca quali sono i parametri corretti da inserire in <code>name</code>.
# Antonio Ingargiola - 2004
#
# chmodr - Un chmod Ricorsivo, che rispetta le differenze file-directory
#
# Cambia ricorsivamente i permessi di file e directory, ma impostando
# permessi diversi per i file e per le directory
#
# USO
# ^^^
#
# chmodr
#  Senza parametri imposta ad un sano default tutti i file (640) e alle
#  directory (750) contenute nella directory corrente.
#
# chmodr permessi_file permessi_dir
#  Applica ai file nella directory corrente e sotto-directory i
'permessi_file' e tutte le directory i 'permessi_dir'. La sintassi
per i permessi e' la stessa di chmod quindi sia ottale che simbolica.
#


help () {
Una volta scritto il plugin chiamatelo con il nome del motore di ricerca ed assegnateli l'estensione .src a questo punto andate nella directory dove avete installato firefox e copiate il file all'interno della sua sottodirectory <code>searchplugins</code>.
  echo -e "\n    Antonio Ingargiola - 2004\n"
  echo -e "  chmodr - Un chmod Ricorsivo, che rispetta le differenze file-directory\n"
  echo -e "  Cambia ricorsivamente i permessi di file e directory, ma impostando"
  echo -e "  permessi diversi per i file e per le directory.\n"
                                                                         
  echo -e "  USO"
  echo -e "  ^^^\n"
  echo -e "  chmodr"
  echo -e "    Senza parametri imposta ad un sano default tutti i file (640) e alle "
  echo -e "    directory (750) contenute nella directory corrente.\n"
 
  echo -e "  chmodr permessi_file permessi_dir"
  echo -e "    Applica ai file nella directory corrente e sotto-directory i "
  echo -e "    'permessi_file' e tutte le directory i 'permessi_dir'. La sintassi"
  echo -e "    per i permessi e' la stessa di chmod quindi sia ottale che simbolica.\n"
  exit 1
}


valid_mod () {
Se volete crearvi anche un'icona dovrete usare un'immagine gif o png di 16x16 pixel con lo stesso nome del file di plugin.
# Check if the mods are syntactically correct
   
    echo "$1" |\
    perl -n -e 'if ($_ =~ /^[01234567]{3}$/) {exit 0}; exit 1'
    ok_numerical=$?


    echo "$1" |\
Per i più pigri ho preparato da scaricare o da installare via web il plugin per Beeblex descritto in questo tutorial.
    perl -n -e 'if ($_ =~ /^[ugoa]{0,3}[+-=]{1}[rwx]{1,3}$/) {exit 0}; exit 1'
    ok_symbolical=$?
   
    # echo "num $ok_numerical, sym $ok_symbolical" # DEBUG
    [ "$ok_numerical" = 0 -o "$ok_symbolical" = 0 ]
    return $?
}


[[ "$1" = -* ]] && help
Un suggerimento, se non sapete che parametri utilizzare per la ricerca createvi una shortcut nei bookmark con il [[Il vostro motore di ricerca da Firefox|metodo spiegato precedentemente]], poi aprite la finestra dei bookmark e controllate le proprietà della shortcut appena creata. L'url in questione conterrà tutti i parametri a voi necessari per scrivervi il plugin! :)


FILE_MOD="$1"
Ultima segnalazione, su mozdev c'è una [http://searchplugins.mozdev.org/ nutrita lista di plugin] di ricerca già pronta all'uso.
DIR_MOD="$2"
BASE_DIR="$3"
[ -z "$1" ] && FILE_MOD="640"
[ -z "$2" ] && DIR_MOD="750"
[ -z "$3" ] && BASE_DIR="./"


cd "$BASE_DIR"
'''[update]'''


if !( valid_mod $FILE_MOD && valid_mod $DIR_MOD ); then
Scopro, grazie a Dariosky nei commenti, che anche MozillaItalia ha una nutrita lista di [http://www.mozillaitalia.org/sherlock/ plugin per i motori di ricerca] ed inoltre esiste uno script [http://www.fullo.net/blog/images/installengine.js javascript] per installarli automaticamente da web.
    echo -e "\n ERRORE: Il formato dei permessi e' sbagliato. Per i dettagli"
    echo -e "        vedere la pagina di manuale di chmod.\n"
    exit 2
fi


ls | while read file; do
ciuaz
    if [ -d "$file" ]; then
echo " Entro nella directory '$file'"
chmod u+rwx "$file" 2> /dev/null ||\
{ echo " Non ho i permessi per entrare in '$file'"; continue; }
cd "$file"; $0 $@; cd -
chmod $DIR_MOD "$file" && echo -e " Directory '$file' impostata.\n"
    elif [ -f "$file" ]; then
echo -n "  $file ... "
chmod $FILE_MOD "$file" && echo " [ OK ]"
    else
echo " Ignoro '$file', probabilmente un link."
    fi
done
</pre>


Il core dell script (quello che esegue effettivamente il cambio dei permessi) la parte finale da '''ls | while read ...''' in poi. Tutta la parte precedente serve solo a controllare la correttezza dei parametri passati e a stampare una eventuale schermata di help.
----
----
Autore: [[Utente:TheNoise|~ The_Noise]]


[[Categoria:Sistema]]
Tratto da: [http://www.fullo.net/blog/index.php/archives/2005/07/26/aggiungere-un-motore-di-ricerca-a-firefox/ Full(o)bloG]
[[Categoria:Shell]]
[[Categoria:Script]]
[[Categoria:Tips&Tricks]]

Versione attuale delle 18:24, 3 nov 2019

Emblem-important.png Attenzione. Questa guida è obsoleta. Viene mantenuta sul Wiki solo per motivi di natura storica e didattica.


Dopo il precedente tip sulla ricerca veloce approfondiamo con un tutorial per scrivere un plugin per aggiungere il vostro motore di ricerca preferito (nel mio caso Beeblex) nella barra in alto a destra di Firefox.

Il plugin non sarà molto difficile da scrivere e sarà altrettanto semplice da installare.

Innanzitutto vediamo com'è scritto un plugin di ricerca:

XML:

1.
2.  # Search file for Beeblex
3.  #
4.  # Creation:  26/07/2005 by Francesco Fullone <francesco AT fullo.net>
5.  # based on http://searchplugins.mozdev.org/ by  Andreas melcom Urban
6.
7.  <SEARCH
8.         name="Beeblex"
9.         description = "Beeblex PHP Search"
10.        method="GET"
11.        action="http://www.beeblex.com/search.php"
12. >
13.       
14. <input name="s" user>
15. <input name="d" value="ALLDB">
16. <inputnext name="start" factor="10">
17. <inputprev name="start" factor="10">
18.    
19. <interpret
20.     browserResultType="result"
21.     resultListStart="<!--a-->"
22.     resultListEnd="<!--z-->"
23.     resultItemStart="<!--m-->"
24.     resultItemEnd="<!--n-->"
25. >
26. </search>
27.

Le cose che più ci interessano sono:

  • all'interno del tag search l'attributo action che deve contenere l'url del motore di ricerca o della pagina che prenderà la stringa in input.
  • Il tag contenente l'attributo user dovrà avere come valore di name il parametro di ricerca, ad esempio in Beeblex è s mentre in Google è q.
  • il secondo input tag contiene eventuali parametri aggiuntivi; nel mio caso ho detto a Beeblex di cercare ovunque, avrei potuto anche indicare con il valore php_blogs di cercare nella sola sezione dei blogs
  • i tag inputnext ed inputprev servono per far partire la ricerca da un certo risultato, anche in questo caso sarà opportuno controllare sul motore di ricerca quali sono i parametri corretti da inserire in name.

Una volta scritto il plugin chiamatelo con il nome del motore di ricerca ed assegnateli l'estensione .src a questo punto andate nella directory dove avete installato firefox e copiate il file all'interno della sua sottodirectory searchplugins.

Se volete crearvi anche un'icona dovrete usare un'immagine gif o png di 16x16 pixel con lo stesso nome del file di plugin.

Per i più pigri ho preparato da scaricare o da installare via web il plugin per Beeblex descritto in questo tutorial.

Un suggerimento, se non sapete che parametri utilizzare per la ricerca createvi una shortcut nei bookmark con il metodo spiegato precedentemente, poi aprite la finestra dei bookmark e controllate le proprietà della shortcut appena creata. L'url in questione conterrà tutti i parametri a voi necessari per scrivervi il plugin! :)

Ultima segnalazione, su mozdev c'è una nutrita lista di plugin di ricerca già pronta all'uso.

[update]

Scopro, grazie a Dariosky nei commenti, che anche MozillaItalia ha una nutrita lista di plugin per i motori di ricerca ed inoltre esiste uno script javascript per installarli automaticamente da web.

ciuaz


Tratto da: Full(o)bloG