« Utilisateur:Sarcastic » : différence entre les versions
(→shell) |
m (Mise à jour) |
||
(7 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
J'ai été utilisateur du bépo depuis la version 0.6.5.1, et jusqu'à la version 1.0-rc2. Maintenant, je suis passé au dvorak-us, un poil modifié pour accueillir une touche morte pour faire toutes les zarberies bien françaises que sont les accents, les cédilles, et les autres fioritures comme les guillemets doublement chevrotants, et tout ce genre de glyphes. J'ai fait ce changement entre autre pour la programmation, puis par curiosité, un peu. | |||
Ah. Et mon mot de passe est <code>toto2</code>. Je le mets là pour ne pas l'oublier — c'est que ça commence à prendre de la place tout ces post-its sous le clavier, avec tout ces sites. | |||
__TOC__ | __TOC__ | ||
Ligne 12 : | Ligne 12 : | ||
==Shell== | ==Shell== | ||
Alors, trouver comment modifier les raccourcis dans le shell, on peut dire que j'ai carrément pataugé. En fait, y a trois éléments sur lesquels on peut intervenir : le terminal (le vrai), le shell à proprement parler (sh, bash, zsh) et l'émulateur de terminal (rxvt, xterm, uxterm, et d'autres | Alors, pour trouver comment modifier les raccourcis dans le shell, on peut dire que j'ai carrément pataugé. En fait, y a trois éléments sur lesquels on peut intervenir : le terminal (le vrai), le shell à proprement parler (sh, bash, zsh) et l'émulateur de terminal (rxvt, xterm, uxterm, et d'autres). Et chacun a ses limitations plus ou moins rigolottes. | ||
===rxvt-unicode=== | ===rxvt-unicode=== | ||
Ligne 23 : | Ligne 23 : | ||
URxvt.keysym.C-i: \004 | URxvt.keysym.C-i: \004 | ||
</nowiki></pre> | </nowiki></pre> | ||
Il faut caser ces lignes dans le fichier .Xdefaults | Les codes en \xxx ce sont des caractères en octal. Il s'avère que les caractères de \001 à \032 (01d à 26d, si vous comptez pas encore en octal) ne sont rien d'autre que l'alphabet avec control dessus. Ça tombe bien, hein ! | ||
Il faut caser ces lignes dans le fichier ~/.Xdefaults. Les <s>ubunteros</s> gens peu avertis peuvent redémarrer X, mais a priori, redémarrer vos terminaux devrait suffir. Et voilà C-c, C-z et C-d duppliqués à des emplacements moins moisis que ceux avec lesquels on se retrouve par défaut en bépo. Mais juste pour rxvt-unicode, pas pour xterm et toute la compagnie. | |||
===zsh=== | ===zsh=== | ||
Ligne 43 : | Ligne 45 : | ||
==Irssi== | ==Irssi== | ||
Petit script | Petit script qui affiche les liens entre doubles crochets dans la fenêtre serveur. | ||
<pre><nowiki> | <pre><nowiki> | ||
use strict; | use strict; | ||
Ligne 49 : | Ligne 51 : | ||
use Irssi; | use Irssi; | ||
$VERSION = 0. | $VERSION = 0.1; | ||
%IRSSI = ( | %IRSSI = ( | ||
authors => "Sarcastic", | authors => "Sarcastic", | ||
name => " | name => "debepify script", | ||
description => "Print url | description => "Print url between [[]] on #fr-dvorak-bepo", | ||
license => "WTFPL" | license => "WTFPL" | ||
); | ); | ||
Ligne 59 : | Ligne 61 : | ||
sub uniq | sub uniq | ||
{ | { | ||
my %hash = | my %hash = map { $_, 1 } @_; | ||
return keys %hash; | |||
return %hash; | |||
} | } | ||
Ligne 76 : | Ligne 73 : | ||
} | } | ||
sub | sub debepify | ||
{ | { | ||
my $msg = shift; | my $msg = shift; | ||
my @links; | |||
my | foreach my $link (split(/\]\]/, $msg)) | ||
foreach | { | ||
push @links, $1 if ($link =~ /\[\[(.+)$/); | |||
} | |||
foreach (uniq @links) | |||
{ | { | ||
print CRAP "debepify: http://www.clavier-dvorak.org/wiki/", urlencode($_); | |||
print | |||
} | } | ||
} | } | ||
sub sig_message_public | sub sig_message_public | ||
Ligne 98 : | Ligne 92 : | ||
my ($server, $msg, $nick, $address, $target) = @_; | my ($server, $msg, $nick, $address, $target) = @_; | ||
if ($target eq '#fr-dvorak-bepo' | if ($target eq '#fr-dvorak-bepo' | ||
&& $msg =~ /\[\[[^<>]+?\]\]/) | |||
&& $msg =~ / | |||
{ | { | ||
debepify $msg; | |||
} | } | ||
return; | return; |
Dernière version du 10 novembre 2008 à 18:39
J'ai été utilisateur du bépo depuis la version 0.6.5.1, et jusqu'à la version 1.0-rc2. Maintenant, je suis passé au dvorak-us, un poil modifié pour accueillir une touche morte pour faire toutes les zarberies bien françaises que sont les accents, les cédilles, et les autres fioritures comme les guillemets doublement chevrotants, et tout ce genre de glyphes. J'ai fait ce changement entre autre pour la programmation, puis par curiosité, un peu.
Ah. Et mon mot de passe est toto2
. Je le mets là pour ne pas l'oublier — c'est que ça commence à prendre de la place tout ces post-its sous le clavier, avec tout ces sites.
Matériel
J'utilise un clavier Logitech Ultra Flat que je compte remplacer par un TypeMatrix. Et un trackball au pouce, de chez Logitech aussi.
Emacs
Voir ici.
Shell
Alors, pour trouver comment modifier les raccourcis dans le shell, on peut dire que j'ai carrément pataugé. En fait, y a trois éléments sur lesquels on peut intervenir : le terminal (le vrai), le shell à proprement parler (sh, bash, zsh) et l'émulateur de terminal (rxvt, xterm, uxterm, et d'autres). Et chacun a ses limitations plus ou moins rigolottes.
rxvt-unicode
Lui permet de modifier le mapping au niveau des touches ctrl. Ça permet par exemple de retrouver C-c, C-z et C-d à leurs places habituelles (Surtout C-z, en fait). Voilà un rapide replacement de ces trois là :
! C-c URxvt.keysym.C-x: \003 ! C-z URxvt.keysym.C-0xe9: \032 ! C-d URxvt.keysym.C-i: \004
Les codes en \xxx ce sont des caractères en octal. Il s'avère que les caractères de \001 à \032 (01d à 26d, si vous comptez pas encore en octal) ne sont rien d'autre que l'alphabet avec control dessus. Ça tombe bien, hein !
Il faut caser ces lignes dans le fichier ~/.Xdefaults. Les ubunteros gens peu avertis peuvent redémarrer X, mais a priori, redémarrer vos terminaux devrait suffir. Et voilà C-c, C-z et C-d duppliqués à des emplacements moins moisis que ceux avec lesquels on se retrouve par défaut en bépo. Mais juste pour rxvt-unicode, pas pour xterm et toute la compagnie.
zsh
On peut modifier les déplacements du curseurs et un tas de trucs avec la commande bindkey. Plus ou moins en cours, selon mon humeur.
stty
Alors, le petit problème de stty c'est qu'il modifie les touches pour tous les utilisateurs et pour tous les terminaux (graphiques ou non). Et plus grand inconvénient encore, il ne marche qu'en local. Ça veut dire que si vous vous connectez en ssh à un serveur, vous trouverez les raccourcis standards.
En plus de ça, seules les lettres simples ont l'air de marcher, donc exit les lettres accentuées (et vu que l'équivalent de C-z en bépo serait C-é…).
Cette méthode est particulièrement dégueulasse, mais elle a le — faible — mérite d'exister (personnellement, je la conseille pas, et je ne l'utilise pas), et comme je l'ai tapée avant d'avoir l'idée de chercher dans urxvt, je la laisse. Voilà comment modifier les raccourcis via stty :
$ stty -a # Liste les raccourcis et les touches auxquelles ils sont attribués $ stty intr ^X # Déplacement du C-c en C-x $ stty susp ^B # Déplacement du C-z en C-b
XMonad
Mon fichier de configuration est tellement chaotique, que j'ose pas trop le mettre ici. Si quelqu'un demande, peut-être que je trouverai le courage de le nettoyer.
Irssi
Petit script qui affiche les liens entre doubles crochets dans la fenêtre serveur.
use strict; use vars qw($VERSION %IRSSI); use Irssi; $VERSION = 0.1; %IRSSI = ( authors => "Sarcastic", name => "debepify script", description => "Print url between [[]] on #fr-dvorak-bepo", license => "WTFPL" ); sub uniq { my %hash = map { $_, 1 } @_; return keys %hash; } sub urlencode { my $url = shift; $url =~ y/ /_/; $url =~ s/([^A-Za-z0-9_\/:.-])/sprintf("%%%%%02X", ord($1))/seg; return $url; } sub debepify { my $msg = shift; my @links; foreach my $link (split(/\]\]/, $msg)) { push @links, $1 if ($link =~ /\[\[(.+)$/); } foreach (uniq @links) { print CRAP "debepify: http://www.clavier-dvorak.org/wiki/", urlencode($_); } } sub sig_message_public { my ($server, $msg, $nick, $address, $target) = @_; if ($target eq '#fr-dvorak-bepo' && $msg =~ /\[\[[^<>]+?\]\]/) { debepify $msg; } return; } Irssi::signal_add ('message public', \&sig_message_public);