awesom's tips

awesom's tips

home | all | random | tags | add | login or register

Mettre une footnote dans un float
by acieroid on Apr 25th 2012
Plutôt que de faire quelque chose du genre:

    \caption{foo\footnote{bar}}
Il faut utiliser footnotemark et footnotetext, tout en utilisant l'argument optionel de caption pour éviter d'avoir la footnote dans la table des figures:

    \caption[foo]{foo\footnotemark}
Et après le float (la figure par exemple):

    \footnotetext{bar}

tex
booter sur une iso
by heaumer on Apr 1st 2012
avec grub1 et memdisk (syslinux), dans le menu.lst:

  title memdisk launcher
  root (hd0,5) # partition sur laquelle se trouve l'iso
  kernel /usr/share/syslinux/memdisk iso
  initrd /path/to/cdrom.iso

iso, grub, boot
changer l'user-agent sous firefox
by heaumer on Mar 8th 2012
ajouter une nouvelle clef

  general.useragent.override
de type string dans about:config; sa valeur est celle qui sera transmise en user-agent.
firefox, user-agent
popup windows
by heaumer on Feb 21st 2012
Pour ne plus afficher le popup de « disque dur presque plein », il faut ajouter une clef

  HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoLowDiskSpaceChecks
et la mettre à 1.

(démarrer->exécuter->regedit pour avoir l'éditeur de registre)
windows, registre, popup

récupérer des prototypes de fonction
by heaumer on Feb 16th 2012
on récupère avec sam les deux lignes déclarant les fonctions, eg:

  int
  main(int argc, char *argv[])
et on utilise sed pour transformer la déclaration en prototype:

  #!/bin/sh
  
  {
          sam -d $* &> /dev/stdout << EOF
                  ,x/^[a-z]+\(/-1,+- 
  EOF
  } | sed -e 1d -e 'N;s/\n/ /;s/\)/&;/' -e 's/([a-z]+) ([*]*)[a-z0-9]+([,)])/\1\2\3/g'
(XXX utiliser sam au lieu de sed)
C, sam, sed
Extraire plusieurs pages d'un .djvu
by acieroid on Jan 26th 2012
djvused permet d'extraire une page, mais pas plusieurs. djvm permet quant à lui d'assembler plusieurs documents djvu ensemble. Donc:

    for page in $(seq 170 185)
    do
        djvused big.djvu -e "select $page; save-page-with page-$page.djvu"
    done
    djvm -c small.djvu page-*.djvu

djvu
\WINDOWS\SYSTEM32 \CONFIG\SYSTEM manquant
by Izu on Jan 16th 2012

  mount -t ntfs-3g /dev/sda1 /mnt/windows
  cd /mnt/windows/WINDOWS/system32/config
  mv default default.old
  mv SAM SAM.old
  mv SECURITY SECURITY.old
  mv software software.old
  mv system system.old
  cd /mnt/windows/System\ Volume\ Information/_restore*
  cd RP
  cd snapshot
  cp _REGISTRY_MACHINE_SAM /mnt/windows/WINDOWS/system32/config/SAM
  cp _REGISTRY_MACHINE_SECURITY /mnt/windows/WINDOWS/system32/config/SECURITY
  cp _REGISTRY_MACHINE_SOFTWARE /mnt/windows/WINDOWS/system32/config/software
  cp _REGISTRY_MACHINE_SYSTEM /mnt/windows/WINDOWS/system32/config/system
  cp _REGISTRY_USER_.DEFAULT /mnt/windows/WINDOWS/system32/config/default
  cd ~
  umount /mnt/windows
  halt

windows, registre
titre du terminal
by heaumer on Jan 15th 2012
En utilisant les obscurs caractères d'échappements:

  $ echo -ne "\033]0;${PWD}/-${HOSTNAME}\007"
Et si l'on est dans screen(1), on peut utiliser la variable PROMPT_COMMAND pour changer le titre à chaque exécution de commandes:

  $ PROMPT_COMMAND='echo -ne "\033]0;${PWD}/-${HOSTNAME}\007"'

shell, unix, screen
Éviter les problèmes avec les espaces insécables
by acieroid on Jan 13rd 2012
Un espace insécable mal placé ça peut être très chiant, ça ne se distingue pas d'un espace normal a l'œuil nu, mais c'est bien différent. Pour éviter ces problèmes, on peut les mettre en évidence dans vim (~/.vimrc):

    highlight NbSp ctermbg=lightgray guibg=lightred
    match NbSp /\%xa0/
Et on peut automatiquement les remplacer par des espaces normaux dans zsh:

    function space {
      LBUFFER+=" "
      zle self-insert
    }
    zle -N space
    bindkey " " space

nbsp, vim, zsh
Vitesse d'une interface ethernet (linux)
by heaumer on Jan 13rd 2012

  # dmesg | grep -i eth0
  ...
  [   53.854565] tg3 0000:09:00.0: eth0: Link is up at 100 Mbps, full duplex
  ...
  # ethtool eth0 | grep Speed
          Speed: 100Mb/s
Pour changer la vitesse (10Mb/s), soit avec ethtool, ou mii-tool

  # ethtool -s eth0 speed 10
  # mii-tool -F 10baseT-FD eth0

ethernet, speed