228 private links
From the tips read in the source code in the wiki of sebsauvage
<span style="direction: rtl; unicode-bidi: bidi-override">moc.liamnotorp@xulokoyl</span>
Reverse the tag content (only for humans). Need to insert the email address in reversed order in source code.
La rédaction, le worflow pratiqué, et la publication
Penser à AsciiDoctor.
Il s’agit d’une syntaxe qui apporte des fonctionnalités supplémentaires au Markdown comme la gestion de différents fichiers, les notes de bas de page, les notes internes, les commentaires et j’en passe. Bref, c’est la syntaxe Markdown avec la puissance de LaTeX. Cela m’a aussi permis d’exporter mon livre en PDF, EPUB et MOBI facilement et de personnaliser le thème de mon livre.
Renommer plusieurs fichier d'une seule commande bash.
Les commandes citées sont :
- mmv : multi move
- rename : même syntaxe que la commande substitution de vim
- renameutils : qui contient une série de petits programmes
- qmv : quick move
- qcp : quick copy
- imv : interactive move
- icp : interactive copy
- deurlname -> renomme les URLs encodéses avec le bon caractères
logicielle :
- vimv
- emacs
- thunar
J'ai toujours eu des soucis avec la commande "substitution/déletion" de plusieurs lignes avec vim. J'ai maintenant compris :)
De la newsletter de "Mastering Vim Quickly" :
For most Vim commands, the default range is the current line.
This means that action performed by a command will affect only the current line.
However, you can control ranges, and in that way execute commands over the custom ranges of lines or characters in the current buffer.
For example:• :s/bad/good/g - changes all words bad to good in the current line.
• :6,11s/bad/good/g - makes the same change, but in lines 6 to 11, including 6 and 11.
• :%s/bad/good/g - makes the same change in entire file.
If line range is not specified, the substitute command will operate on the current line only, by default. As already mentioned, for most commands, the default range is . (the current line).
However, for :g (global) and :w (write) commands the default is % (all lines).Let's see a few more examples of defining range with substitute command:
range
28 description
line 28 example
:28s/bad/good/g
1 first line :1s/bad/good/g
$ last line :$s/bad/good/g
.,$ current line to end of the file :.,$s/bad/good/gThat's all for today. Next week we'll get to advanced stuff with ranges and some useful commands.
Retrouvable au besoin.
Même si python3 -m http.server
couvre mes besoins pour le moment en localhost, et que j'ai un Raspberry Pi pour jouer le rôle de serveur de fichier, ça peut toujours être utile
Rendre son code Rust plus idiomatique <3
- returning values
unimplemented!()
/unreachable!()
option.as_ref().unwrap()
map.entry(key).or_insert_with(Vec::new).push(val);
let numbers: Vec<_> = (0..10).collect();
elements.iter().cloned()
list.iter().enumerate()
(like python)_
for unused variables
Sous le coude : comment utiliser systemd pour faire tourner un service tournant en espace utilisateur.
via Sebsauvage
-
On peut ouvrir, éditer, sauvegarder des archives dirositionectement (tar.gz, tgz, zip, jar, etc.)
vim archive.tar.gz
-
On peut éditer des fichiers à distance
vim scp://user@myserver[:port]//path/to/file.txt
-
On peut ouvrir le dernier fichier édité sur la machine avec le curseur mis sur la dernière position.
^o^o
ou bien^o
un nombre fois fois égal au précédent fichier modifié.
(dans vim --version, vérifier que il y a bien +jumplist et pas -jumplist)
Excellent sujet sur les registres dans Vim.
Tip :
le système de copier-coller sous Linux est divisé en deux.
In X11, "* and "+ are even cooler: "+ pastes the last text copied with ctrl+c (copy buffer), or what ever shortcut you use (or right-click>copy). "* pastes the last text highlighted with the mouse (selection buffer).
If it doesn't work, it means that vim --version
, you will get -X11 and/or -clipboard in the response.
Under Ubuntu/Debian, install the package vim-gtk
and restart vim, it will work fine
Résumé à connaître pour utiliser du SVG pour le web.
Sous vim, je ne sais pas aligner les colonnes selon un séparateur et ça donne ça :
the heil : talon
the noose : noeud coulant
the graveyard: cimetière
the staff : canne, crosse, bâton
the woe : malheur, chagrin
the fellow : type, homme
the stew : ragoût
Petite bidouille et j'obtiens ceci sans éditer manuellement aucune ligne :
the heil : talon
the noose : noeud coulant
the graveyard: cimetière
the staff : canne, crosse, bâton
the woe : malheur, chagrin
the fellow : type, homme
the stew : ragoût
Avant de trouver l'astuce (parce que cela doit bien se faire avec vim), la compatibilité avec bash de vim aide beaucoup.
Dans vim, :w
puis !subl %
- on enregistre le fichier puis on l'ouvre dans sublime text.
Sous sublime text, le plugin AutoAlignement était déjà installé - selection des lignes concernées puis Ctrl+Alt+a
puis ^s
. ^w
pour quitter sublime text. Enter pour retourner dans vim puis :e
pour charger le fichier actuel (avec les modifications effectuées).
Et voilà c'est aligné :)
Il me reste maintenant à trouver comment effectuer tout cela dans vim sans installer un plugin.
VINAIIIIGRE !!!
Les alias magiques.
lsetc_helper() {
ls -l "$@"
cd "$originaldir"
unset originaldir
}
alias lsetc='originaldir="$PWD"; cd /etc; lsetc_helper'
DON'T :D