Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#51 Le 14/02/2008, à 14:15

scholi

Re : Liste de Commandes/Fonctions utile sous VIM

Yannick_LM a écrit :

Bon, allez à moi. cool

Un truc qui sert à rien, pour commencer : l'encodage en ROT13.

Je trouve pas qu'il sert à rien. Dans mes fichier php, j'encode toujours le mot de passe de ma base de donnée en ROT13 et utilise la commande str_rot13 de php pour le décoder. Ainsi si quelqu'un passe derrière mon écran alors que je suis sur la ligne où se trouve le mot de passe il ne pourra pas le deviner en un coup d'œil.

Tant qu'on est dans les commandes g... je précise que ~ (qui change la casse du caractère sous le curseur) ne marche pas si il est suivit d'une {motion} (enfin ça dépend de votre configuration clavier). Pour cela utilisez g~ à la place. Ainsi g~w changera la casse de tout un mot (c'est pratique si on a oublié CapsLock et que l'on veut pas tour reffacer.

Sinon, vu que tu parles des tabulations, on peut aussi utiliser gt et gT pour passer à la suivante ou précédente...

Question du paste, il y a aussi la solution
"*p si c'est copié depuis la console ou "+p si c'est copié depuis une fenêtre X. Mais ta solution te touche toggle me semble quand même 4 fois plus simple wink


S'il n'y a pas de solution, c'est qu'il n'y a pas de problème.

Hors ligne

#52 Le 15/02/2008, à 09:51

kdfx

Re : Liste de Commandes/Fonctions utile sous VIM

scholi a écrit :

:1,10%!sort trie les 10 premières lignes

il me semble que c'est plutà´t

:1,10!sort


c'est d'autant plus pratique si on a ajouté

set number

dans le fichier de configuration .vimrc

Dernière modification par kdfx (Le 15/02/2008, à 09:54)


trOp FastOch'  :  Spécial Gimp
les tutos vidéos  (: ->format libre inside <- :)
c'est par ici
PC convertis : 13; Win$ pulvérisés : 5 cracks; 7 XP; 1 Vista Capable avorté dans l'œuf...

Hors ligne

#53 Le 15/02/2008, à 10:59

fredr

Re : Liste de Commandes/Fonctions utile sous VIM

scholi a écrit :

je viens de trouver le must! Je savais que SHIFT-INSERT permettait de coller le contenu du presse papier, mais je ne sais pas comment copier un bout de texte dans le presse-papier

Salut,

Pour copier c'est CTRL INSERT, ce sont les raccourcis de bases de la plupart des shells...

Fred


ArcoLinuxD Awesome
L'optimiste pense que nous vivons dans le meilleur des mondes. Et le pessimiste craint que ce ne soit exact.

Hors ligne

#54 Le 16/02/2008, à 09:49

abetsic

Re : Liste de Commandes/Fonctions utile sous VIM

J'ai trouvé très récemment un plugin qui va me changer la vie :
http://www.vim.org/scripts/script.php?script_id=2086

Il permet de définir des bouts de code générique, et en tapant une abbréviation, vim développe l'abbréviation. Jusque là  rien de nouveau par rapport à  ce qui existe par défaut dans vim avec la commande :abbr, mais en plus on peut définir des marqueurs dans le code générique et en appuyant sur shift+enter, on saute de marqueur en marqueur.

Par exemple on tape :

for()SHIFT+ENTER

et on obtient

for ([~init~]; [~cond~]; [~step~]){
  [~statements~]
}

et le curseur a selectionné "[~init~]" il suffit alors de taper ENTER pour se retrouver en mode insertion et taper "i=0" par exemple puis on refais SHIFT+ENTER et le curseur selectionne [~cond~] et on refais la même opération...

Seul problème, ça ne marque que avec gvim...

Hors ligne

#55 Le 16/02/2008, à 11:35

scholi

Re : Liste de Commandes/Fonctions utile sous VIM

abetsic a écrit :

... mais en plus on peut définir des marqueurs dans le code générique et en appuyant sur shift+enter, on saute de marqueur en marqueur.

Cela marche aussi si vous avez le plugin latexvim. Ensuite (même dans des documents non LaTeX) sauter vers les marqueur <++> ou <+key+> avec CTRL-J


S'il n'y a pas de solution, c'est qu'il n'y a pas de problème.

Hors ligne

#56 Le 21/02/2008, à 15:22

Luc Hermitte

Re : Liste de Commandes/Fonctions utile sous VIM

Sans partir sur du aussi lourd que vim-latex, il y a le système original [1] qui fut appauvri dans la première version de mu-template qui avait à son tour inspiré le imaps.vim de vim-latex.

Ceci dit, je trouvé étrange que code-snippet n'ait pas une option pour configurer la séquence de touches qui active son expansion -- car je ne vois pas ce qui pourrait limiter son fonctionnement à gvim.


Pour le tri, préférez :sort à :!sort. Plus léger, plus rapide normalement (on ne sort pas de vim), et plus portable. C'est pour les moutures v7+ de l'éditeur.

[1] Désolé il semble que je ne sois pas autorisé à divulguer l'adresse où est hébergé un plugin qui n'est pas maintenu par quelqu'un d'autre que moi -- d'ailleurs les modos, vous pourriez avoir la décence d'envoyer un mot pour signaler quand vous refusez une pub, en particulier quand elle répond à des problèmes soulevés juste avant. Enfin bon. :-/

#57 Le 21/02/2008, à 22:40

abetsic

Re : Liste de Commandes/Fonctions utile sous VIM

Quand je dis qu'il ne fonctionne pas avec vim c'est qu'il ne fonctionne pas complètement... La complétion est faite correctement, mais il ne saute pas sur le marqueur. Peut être parce que il passe en mode sélection sur le marqueur, je ne sais pas trop...

Je vais jeter un coup d'oeil à mu-template (j'ai pas vraiment compris pourquoi tu as enlevé le lien), j'avais longtemps cherché pour un plugin du genre de code-snippet et je ne suis pas tombé dessus, il doit être mal référencé ou pas sur les termes que j'ai utilisé pour mes recherches en tout cas.

Hors ligne

#58 Le 21/02/2008, à 23:47

Luc Hermitte

Re : Liste de Commandes/Fonctions utile sous VIM

Bonsoir,

abetsic a écrit :

a- Quand je dis qu'il ne fonctionne pas avec vim c'est qu'il ne fonctionne pas complètement... La complétion est faite correctement, mais il ne saute pas sur le marqueur. Peut être parce que il passe en mode sélection sur le marqueur, je ne sais pas trop...

Je vais jeter un coup d'oeil à mu-template (b- j'ai pas vraiment compris pourquoi tu as enlevé le lien),

c- j'avais longtemps cherché pour un plugin du genre de code-snippet et je ne suis pas tombé dessus, il doit être mal référencé ou pas sur les termes que j'ai utilisé pour mes recherches en tout cas.

a- D'accord, pour ça je ne peux pas dire relativement à code-snippet. J'ai mis du temps à résoudre les problèmes expansion + saut sur marker + folding, ce n'est pas un problème trivial. C'est au point depuis pas longtemps du tout -- au détail que j'ai foiré mes archives vimballs il y a 2 jours. Je vais régler tout ça maintenant.

b- Je n'y suis pour rien. Je soupçonne que quelqu'un a crié à la pub éhontée (ce qui n'est pas entièrement faux) et qu'un modo est ensuite passé par là.

c- Il est très mal référencé -- c'est pourtant un des plus vieux. Il faut dire que celui sur vim.org est l'original auquel il manque plein de choses. Il y a bien longtemps j'ai entrepris un fork, et n'en fait de la pub qu'occasionnellement : j'avais un bug pénible que je n'arrivais pas à résoudre (relatif aux inclusions de templates -- maintenant c'est bon, j'arrive même à faire des templates récursifs, même si je ne sais pas encore à quoi cela pourrait bien servir) ; il ne me reste plus que des petits détails avant d'en faire une annonce officielle sur la ML de vim.

Par contre, il a une philosophie assez différente de code-snippet. Avec mu-template, c'est un template par fichier. Ce qui permet d'aérer les choses, et de faire facilement des templates interactifs. L'aspect un millier de pseudo-abbréviations dans un même ftplugin, je ne l'ai gardé que pour les mots clés des structures de contrôle (if, for, while, ...) des divers langages (histoire de réaliser l'expansion automatiquement si on n'est pas dans un contexte de chaine ou de commentaire).

#59 Le 05/03/2008, à 18:15

Yannick_LM

Re : Liste de Commandes/Fonctions utile sous VIM

Un petit truc que j'avais vu sur vim.org : utiliser vim pour lire les pages de manuel.
J'ai mis ça dans mon .aliases :
(vous pouvez le mettre à la fin de votre .bashrc, ou de votre .zshrc, c'est pareil)

function man {
 /usr/bin/man $* | col -b | view -c 'set ft=man nomod nolist' -
}

Le | col -b, c'est pour transformer ce qui sort de man en un bête flux, qu'on envoie directement sur vi (view, c'est vi en lecture seule)

Je rappelle à toutes fins utiles qu'en appuyant sur K en mode normal, on ouvre la page de manuel associée au mot sous le curseur...

Seul souci : l'alias n'est pas interprété par vim, donc on ouvre pas la deuxième page de manuel avec vim, mais c'est déjà vachement mieux, je trouve cool

EDIT : voilà le lien original : http://www.vim.org/tips/tip.php?tip_id=167
vous verrez qu'il y a d'autres façons de faire, mais la méthode en passant par un export PAGER ne fonctionnait pas chez moi.

Dernière modification par Yannick_LM (Le 05/03/2008, à 18:27)


Trucs et astuces pour Vim
Ma web page  avec des trucs dessus ...

Hors ligne

#60 Le 05/03/2008, à 21:21

abetsic

Re : Liste de Commandes/Fonctions utile sous VIM

Merci pour ce tuyau !

Jusqu'à présent j'utilisais le pager most qui met un peu de couleur dans les pages de man, mais avoir les raccourcis vim dans les pages de man c'est encore mieux...

Par ailleurs j'ai moi même modifié la fonction pour qu'il utilise mon pager particulier qui est à base de vim bien entendu.

Pour faire un pager vim je vous conseille de jeter un oeil au dossier /usr/share/vim/vim71/macros/ et plus particulièrement au fichier less.vim, il est utilisé à travers le script less.sh. Personnellement je trouve le fichier less.vim trop fourni alors je l'ai arrangé pour ne laisser que le nécessaire :
~/.vim/macros/less.vim

" Vim script to work like "less"
" Maintainer:	Bram Moolenaar <Bram@vim.org>
" Last Change:	2006 Dec 05

" Avoid loading this file twice, allow the user to define his own script.
if exists("loaded_less")
  finish
endif
let loaded_less = 1

" If not reading from stdin, skip files that can't be read.
" Exit if there is no file at all.
if argc() > 0
  let s:i = 0
  while 1
    if filereadable(argv(s:i))
      if s:i != 0
	sleep 3
      endif
      break
    endif
    if isdirectory(argv(s:i))
      echomsg "Skipping directory " . argv(s:i)
    elseif getftime(argv(s:i)) < 0
      echomsg "Skipping non-existing file " . argv(s:i)
    else
      echomsg "Skipping unreadable file " . argv(s:i)
    endif
    echo "\n"
    let s:i = s:i + 1
    if s:i == argc()
      quit
    endif
    next
  endwhile
endif

set nocp
syntax on
set so=999
set hlsearch
set incsearch
nohlsearch
" Don't remember file names and positions
set viminfo=
set nows
" Inhibit screen updates while searching
let s:lz = &lz
set lz

" Used after each command: put cursor at end and display position
if &wrap
  noremap <SID>L L0:redraw<CR>:file<CR>
  au VimEnter * normal! L0
else
  noremap <SID>L Lg0:redraw<CR>:file<CR>
  au VimEnter * normal! Lg0
endif

" When reading from stdin don't consider the file modified.
au VimEnter * set nomod

" Can't modify the text
set noma

" Scroll one page forward
noremap <script> <Space> :call <SID>NextPage()<CR><SID>L
fun! s:NextPage()
  if line(".") == line("$")
    if argidx() + 1 >= argc()
      quit
    endif
    next
    1
  else
    exe "normal! \<C-F>"
  endif
endfun


" Quitting
noremap q :q<CR>

" Switch to editing (switch off less mode)
map v :silent call <SID>End()<CR>
fun! s:End()
  set ma
  if exists('s:lz')
    let &lz = s:lz
  endif
  unmap <Space>
  unmap q
endfun

" vim: sw=2

et on copie également le fichier less.sh dans ~/.vim/macros puis il suffit de faire un alias qui pointe vers ce script, et vous voilà avec un pager qui utilise vim.

Hors ligne

#61 Le 09/03/2008, à 10:11

abetsic

Re : Liste de Commandes/Fonctions utile sous VIM

Je remonte le post pour poser une petite question à propos de la coloration des pages de man avec vim.

Chez moi elle n'est pas faite correctement, sur la section 3 de printf (man 3 printf) avec le pager less (ou most), chaque occurence de printf est en gras, les arguments sont souligés et il y a d'autres petites choses comme ça.
Avec le pager view comme pager je n'ai que les noms des sections et le prototype de la fonction qui sont coloriés ainsi que quelques références vers d'autres pages de man, et divers petits trucs.

Est ce que vous avez le même comportement chez vous ?

J'ai essayé de voir d'où ça pouvait venir et visiblement, le texte passé à vim ne contient pas les séquences d'échappement qui indique où se situe le texte en gras, souligné etc... Et vim se base uniquement sur des expressions régulières pour colorier les titres, noms des fonctions, bref les quelques éléments qu'il arrive à colorier...

Si quelqu'un sait comment récupérer comment récupérer le texte des pages de man avec les séquences d'échappement, je suis preneur.

Hors ligne

#62 Le 16/03/2008, à 20:52

geenux

Re : Liste de Commandes/Fonctions utile sous VIM

Je viens de découvrir un truc sympa en faisant une faute de frappe : accéder à une manpage.
Par exemple, dans un script shell, vous avez sed d'écrit. Vous avez besoin d'aide, mettez vous au début du mot puis K, et hop le man s'affiche

[edit] Quelqu'un aurait des astuces pour le changement de buffer? parceque je trouve :edit, :next et :previous vraiment chiant.

Dernière modification par geenux (Le 16/03/2008, à 21:06)

Hors ligne

#63 Le 16/03/2008, à 22:28

abetsic

Re : Liste de Commandes/Fonctions utile sous VIM

pour le changement de buffer tu as :bN où N est le numéro de ton buffer, et tu as également :bn (buffer next). Sinon pour avoir la liste des buffers ouverts tu as :ls

Hors ligne

#64 Le 18/03/2008, à 01:03

Yannick_LM

Re : Liste de Commandes/Fonctions utile sous VIM

Hop, deux trucs découverts y a pas longtemps :

z+Enter vous amène le curseur en haut de la fenêtre.
(y a aussi zt : comme top, zb, comme bottom, et z. comme middle)

Dans le genre plugin "live-changing" : vim-taglist
http://vim-taglist.sourceforge.net/

Et puis aussi CTRL+U, CTRL+D, pour scroller vers le haut (up) ou vers le bas (down), d'une moitié d'écran.
(plus pratique que de scroller par écrans entiers)


Trucs et astuces pour Vim
Ma web page  avec des trucs dessus ...

Hors ligne

#65 Le 19/03/2008, à 00:44

Beta Pictoris

Re : Liste de Commandes/Fonctions utile sous VIM

On peut crypter un fichier avec vim via la commande :X.
Il faut ensuite le sauver.
A la prochaine ouverture du fichier, vim demande la clé de chiffrement.
En tout cas, cette fonction marche mieux que celle d'emacs qui nécessite l'installation du paquet gnupg et qui est plus lourde d'utilisation.

Dans vim, on peut changer de tampon sans le sauver (comme dans emacs) via la commande :set hidden

Par défaut, en mode normal, on ne peut pas se positionner après le dernier caractère d'une ligne. La commande :set ve=all remedie à ce problème et permet même de se déplacer sur les espaces virtuels et d'y coller du texte. Si le curseur se trouve en bout de ligne, on peut, par exemple, supprimer le dernier mot en faisant ldb
On peut bien sûr, aussi, utiliser diw pour faire cela ou c_w en mode insertion.

Dernière modification par Beta Pictoris (Le 19/03/2008, à 00:53)

Hors ligne

#66 Le 19/03/2008, à 13:01

Yannick_LM

Re : Liste de Commandes/Fonctions utile sous VIM

Au fait, si quelqu'un a des informations précises sur l'algorithme utilisé, ça m'intéresse.

Pour info, il est spécifique à vim, et il est dit dans la doc que l'algorithme en question est "cassable" :

:help :X a écrit :

The algorithm used is breakable.  A 4 character key in about one hour, a 6
  character key in one day (on a Pentium 133 PC).  This requires that you know
  some text that must appear in the file.  An expert can break it for any key.
  When the text has been decrypted, this also means that the key can be
  revealed, and other files encrypted with the same key can be decrypted.

C'est absolument pas le cas avec GPG, pour lequel aucune méthode de décryptage réalisable en un temps raisonnable n'est connue. (ou divulguée, suivant votre niveau de paranoïa)


EDIT : encore un truc sur lequel je suis tombé par hasard :
le plugin qui est dans /usr/share/vim/vim71/plugin/tohtml.vim
Pour convertir votre joli code tout coloré dans vim en un joli html:

:runtime tohtml.vim
:TOhtml

(vous pouvez bien sûr le runtime dans votre vimrc)

Dernière modification par Yannick_LM (Le 19/03/2008, à 14:18)


Trucs et astuces pour Vim
Ma web page  avec des trucs dessus ...

Hors ligne

#67 Le 19/03/2008, à 13:30

Beta Pictoris

Re : Liste de Commandes/Fonctions utile sous VIM

Vim utilise un chiffrage à clé symétrique.
On a donc intérêt à utiliser une clé assez longue si on veut protéger des informations assez longtemps.

Effectivement, emacs, avec gnupg, permet d'utiliser un chiffrage clé assymétrique ou à clé symétrique. Mais, dans le dernier cas, la clé n'est demandée qu'une fois quand on veut crypter un document...
On n'a donc pas le droit à l'erreur.

Dernière modification par Beta Pictoris (Le 20/03/2008, à 22:39)

Hors ligne

#68 Le 20/03/2008, à 22:19

Beta Pictoris

Re : Liste de Commandes/Fonctions utile sous VIM

A propos, je voudrais savoir si ça ne vous dérange pas trop le tic de vim à reculer d'un caractère quand on quitte le mode insertion ?

On peut, de toute façon, toujours mapper la touche Echap: imap <esc> <esc>l

Dernière modification par Beta Pictoris (Le 20/03/2008, à 22:20)

Hors ligne

#69 Le 21/03/2008, à 00:12

Luc Hermitte

Re : Liste de Commandes/Fonctions utile sous VIM

Beta Pictoris a écrit :

A propos, je voudrais savoir si ça ne vous dérange pas trop le tic de vim à reculer d'un caractère quand on quitte le mode insertion ?

Du tout -- enfin, cela m'avait géné dans certains de mes premiers mappings, mais il y a des contournements.

Beta Pictoris a écrit :

On peut, de toute façon, toujours mapper la touche Echap: imap <esc> <esc>l

Je te le déconseille fortement. C'est le coup à foutre en l'air quantité de plugins qui n'utilisent pas les nore-mapping (soit parce que cela ne colle pas avec le besoin, soit par manque d'expérience/recul/flemme de l'auteur du plugin).
Un conseil, apprends plutôt à te servir de 'a'(fter/ppend)

#70 Le 21/03/2008, à 13:50

Beta Pictoris

Re : Liste de Commandes/Fonctions utile sous VIM

Je me doutais déjà de la réponse que j'allais avoir.
Effectivement, modifier les commandes d'origine va perturber les autres commandes imap.
D'ailleurs, avec ce mapping, ce sont maintenant les commandes d'insertion "a","I",.. qui font avancer le curseur d'un caractère...
Mais bon, c'est un peu plus naturel puisqu'on a plus tendance à se déplacer et faire des modifications en allant vers la droite.
Cela dit, on peut aussi mapper la combinaison <esc>l à une autre touche.

Enfin, si on veut, quand-même, garder la touche <esc> pour quitter le mode insertion, on devrait, plutôt, mapper de cette façon:

:inoremap <esc> <right><esc>

Dernière modification par Beta Pictoris (Le 22/03/2008, à 02:27)

Hors ligne

#71 Le 25/03/2008, à 13:54

Yannick_LM

Re : Liste de Commandes/Fonctions utile sous VIM

Trouvé sur le fil des astuces emacs wink :

Pour remplacer le contenu entre deux parenthèses : ci)
ça marche aussi avec ci(, ci[, ci{ etc.

PS : merci geenux


Trucs et astuces pour Vim
Ma web page  avec des trucs dessus ...

Hors ligne

#72 Le 25/03/2008, à 16:28

Luc Hermitte

Re : Liste de Commandes/Fonctions utile sous VIM

Oui, le combotage action + motion est une vimmerie qui change la vie -- d'ailleurs, je me sers bien plus souvent de =a{ que de ci{.

Et pour attraper un paramètre: i, ou a,
-> http://code.google.com/p/lh-vim/source/browse/cpp/trunk/plugin/omap-param.vim (lh-vim-lib juste à côté est requis)

(Oui, c'est bien de la vile pub, je vais donc détailler le comment)
Pour sélectionner des zones de texte (et pas seulement jusqu'à une position), il faut définir un o(nore)mapping (comme pour les "jusqu'à"), mais cette fois il faut :
1- se positionner au début de la zone,
2- passer en mode visuel (:normal! v)
3- se positionner à la fin de la zone

Cela a l'air d'être un effet de bord d'un détournement des rouages internes de vim. En attendant, cela marchote (on peut faire un redo sur un "ci(toto<esc>", mais pas sur un "ci,toto<esc>" sad)

NB: Ce mécanisme a été évoqué dans le tutoriel sur la définition des mappings sur vim.wikia -> http://vim.wikia.com/wiki/Mapping_keys_in_Vim_-_Tutorial_%28Part_1%29

#73 Le 26/03/2008, à 17:56

scholi

Re : Liste de Commandes/Fonctions utile sous VIM

Avoir vim patout avec soit
Il vous suffit d'avoir une clef USB ou un HDD externe et d'aller télécharger: http://portablegvim.sourceforge.net/

(je fais encore quelques testes avec et je vous fais un feedback)

Dernière modification par scholi (Le 26/03/2008, à 17:57)


S'il n'y a pas de solution, c'est qu'il n'y a pas de problème.

Hors ligne

#74 Le 26/03/2008, à 23:19

Beta Pictoris

Re : Liste de Commandes/Fonctions utile sous VIM

scholi a écrit :

Avoir vim patout avec soit
Il vous suffit d'avoir une clef USB ou un HDD externe et d'aller télécharger: http://portablegvim.sourceforge.net/

(je fais encore quelques testes avec et je vous fais un feedback)

J'ai déjà la version actuelle (pour windows) sur une clé usb.
Je lance directement gvim de la clé: bon, c'est un peu lent mais ça fonctionne bien.

Qu'apporte donc cette version mobile ?

Hors ligne

#75 Le 08/04/2008, à 06:42

philpep-tlse

Re : Liste de Commandes/Fonctions utile sous VIM

Sympa l'utilisation de vim pour lire les man ! J'ai trop souvent le reflexe :wq pour quitter n'importe quel logiciel lol

Moi aussi j'ai une astuce sympa pour les gens qui (essayent big_smile ) de coder en C :
L'autocompletion comme avec C-n et C-p mais en utilisant la touche <tab> (comme  avec bash ou zsh)
En effet avec set cindent on à plus trop besoin de la touche <tab> quand on code...

Du coup j'ai trouvé ce code (qui vient d'ici : http://fr.gentoo-wiki.com/TIP_Compl%C3% … C_avec_vim )

à mettre dans ~/.vimrc

"Debut de Completion
function InsertTabWrapper(direction)
let col = col('.') - 1
if !col || getline('.')[col - 1] !~ '\k'
return "\<tab>"
elseif "backward" == a:direction
return "\<c-p>"
else
return "\<c-n>"
endif
endfunction
inoremap <tab> <c-r>=InsertTabWrapper("forward")<cr>
inoremap <s-tab> <c-r>=InsertTabWrapper("backward")<cr>
" Fin de Completion

EDIT : y'a de la lecture intéressante ici : http://www.docmirror.net/fr/linux/howto … WTO-5.html

Dernière modification par philpep-tlse (Le 08/04/2008, à 06:49)


le "lol" est aux boulets ce que le ";" est aux programmeurs
blog | Wiki Fvwm | Essayez le Window Manager From Scatch | Topic WMFS

Hors ligne