Welcome to Randal Douc's wiki

A collaborative site on maths but not only!

User Tools

Site Tools


world:raccourcis

List of useful shortcuts and tricks

Brave

  • Ctrl shift O: liste des favoris…

Python

  • Pour séparer les cellules, insérer
     #%% 
  • a.shape: pour avoir la dimension du tableau a
  • plt.clf(): effacer figure
  • plt.savefig(): sauver une figure
  • plt.close(): fermer une figure.

Python et Emacs

  • M-x imenu: pour avoir la liste des fonctions définies.
  • M-x occur: pour chercher facilement les occurences…
  • M-o: indentation.
  • Ctrl-c Ctrl-d: documentation (aide)
  • Ctrl-c Ctrl-z: switcher interpreteur-file (commencer par ca pour lancer l'interpreteur python)
  • Ctrl-e: apres avoir sélectionné du texte, l'envoie dans l'interpreteur.
  • Apres avoir fait un remplacement dans une partie selectionnée, on perd la sélection. Pour la retrouver, il suffit d'écrire M x exchange-point-and-mark

Jupyter et Emacs

  • M-x indent-rigidly: puis fleche a gauche ou droite.
  • Execute Cell: C-c C-c
  • Execute Cell & Go to Next: M-RET
  • New Cell Above: C-c C-a
  • New Cell Below: C-c C-b
  • Merge Cell: C-c Enter
  • Split Cell: C-c C-s
  • Kill Cell: C-c C-k
  • Toggle Cell Type: C-c C-t
  • Change Cell Type: C-c C-u
  • Save Workbook: C-x C-s
  • Discard Cell Output: C-c C-l
  • Start Jupyter Server: M-x ein:jupyter-server-start
  • Stop Jupyter Server: M-x ein:jupyter-server-stop

Latex

  • Pour avoir un argmax avec un $\theta \in \Theta$ bien en dessous, il suffit d'ecrire
    1. \let\argmax\relax
    2. \DeclareMathOperator*{\argmax}{arg\,max}
  • Ou bien \argmax\limits{\theta \in \Theta}
  • Package enumitem:
    • \begin{enumerate}[resume] pour reprendre la numérotation là où on l'avait laissé.
    • \begin{enumerate}[label=(\roman*)]
    • on peut remplacer \roman*(i,ii) par \alph*(a,b) ou \arabic* (1,2)

Vs Code

  • Ctrl K S: affiche tous les raccourcis.
  • Ctrk K Q: va à la dernière édition.
  • Ctrl <: va à la dernière modif
  • Ctrl >: va à la modif suivante
  • Ctrl H Alt L: remplacer dans une selection.
  • Ctrl Espace: afficher suggestions.
  • Ctrl B : afficher/cacher le panneau latéral

Installer l'extension bookmarks puis

  • Ctrl alt k: mettre un bookmark
  • Ctrl alt l: aller au bookmark suivant
  • Ctrl alt j: aller au bookmark precedent

Sumatra

  • Ctrl B: pour bookmarker
  • Dans option pour reverse search avec VS code, écrire: “C:\Users\douc_ran\AppData\Local\Programs\Microsoft VS Code\Code.exe” -g “%f:%l”

Dokuwiki

  • Titre de meme niveau: alt + shift + 8
  • Titre de niveau inférieur: alt + shift + 9
  • Ctrl+enter: pour sauver.

Git et Notebook

Pour utiliser Git et Notebook, il faut d'abord s'assurer qu'au moment Git push on n'inclue pas les outputs, ce qui permet d'eviter les conflits… Il y a le module nbstripout qui permet de faire ca automatiquement. Si on a pas encore installé nbstripout, faire le 1. Sinon, on passe directement à l'étape 2.

  1. Installation de nbstripout. Pour installer module nbstripout
    • dans python,
      python3.10 -m pip install --upgrade nbstripout 
    • si on a conda: conda install -c conda-forge nbstripout
  2. Une fois nbstripout installé. Ouvrir Anaconda prompt. A partir d'Anaconda Prompt, se placer dans le répertoire Git où figure le notebook et taper
nbstripout --install --attributes .gitattributes 
  • 3. En cas de conflits. Pour gérer les conflits (qui peuvent apparaitre dans les cellules markdowns ou dans les cellules de code), le mieux est d'utiliser: jupyter lab pour qui permet de gérer les conflits dans les notebooks. Pour plus d'infos pour gérer Git dans les notebooks, cliquer ici

Git

  • Voir les branches locales: git branch
  • Voir toutes les branches locales et distantes: git branch -a
  • Passer d'une branche a l autre: git checkout nom-de-la-branche
  • Pour créer une branche: git branch nomDeBranche
  • Pour detruire une branche locale: git branch -d branchADetruire
  • Si une branche est crée a distance et qu'on veut la recuperer…
    • git checkout nom-branche

Chrome

  • Pour revenir sur une page dans chrome: alt+fleche gauche (page precedente) ou droite (page suivante)
  • Sur vi, pour faire la touche esc, faire Alt+espace

Termux

  • Pour installer un package latex: tlmgr install nom_package
  • Pour chercher dans quel package se trouve bidule.sty
    • tlmgr search –global –file bidule.sty
  • texhash: reconstruire tout l index avec les nouveaux package installés
  • fmtutil-sys –all: reconstruire tous les fmt
  • sudo apt-get install texlive- : si on veut tout installer
  • tmux pour appeler tmux
  • Pour changer de panel sous tmux: C-b right or left arrow.
  • C-b x pour killer un panel
  • C-b % pour ouvrir un panel vertical
  • C-b `` pour ouvrir un panel horizontal
  • cd - pour aller a un repertoire precedent
  • En cas de pb avec OpenSSL (mismatch): pkg install openssh
  • Pour mettre tmux par defaut

if command -v tmux &> /dev/null && [ -z "$TMUX" ]; then tmux attach -t default || tmux new -s default fi fi

Emacs

Convention de notation: C pour Ctrl et M pour Alt

  • C-x h: tout sélectionner
  • C-x 0: tuer la mini-fenetre courante
  • C-x 1: tuer les autres minifenetre et garder la fenetre courange
  • C-x 2: creer une mini fenetre
  • C-x o: switcher d'une mini-fenetre à l'autre.
  • C-_: undo
  • C-u C-x=: permet de voir la font et de la changer de couleur
  • M-X customize-face: est plus direct pour voir la font et la changer…
  • C-space C-space: pose une marque invisible
  • C-u C-space: pour y revenir
  • pour poser la marque M s ou bien C space. Pour echanger la marque C x C x.
  • Pour selectionner tout le paragraphe, M h.
  • pour aller au tout debut du fichier M < et pour aller a la toute fin du fichier M >
  • pour effacer de la position courante jusqu au caractere 'x', il faut ecrire M z 'x'
  • pour commencer un environnment C-c C-e
  • pour commenter et decommenter: M-;
  • pour aller a la table des matieres C-c =
  • Pour ouvrir et fermer les accolades, M-espace
  • Pour ouvrir et fermer une equation, on fait M-p
  • Pour ouvrir et fermer crochets, on fait M-n
  • Pour voir la liste des fichiers recents, on fait C-z
  • Pour vérifier les accolades, on fait F12 ou C-)
  • C-c ( pour insérer un label
  • C-c ) + Enter + Space pour inserer une reference
  • C-c [ pour entrer une citation
  • C-c _ pour entrer le nom d un master file
  • C-c = pour aller a la table des matieres
  • C-t: aller a la fin du fichier
  • C-i: aller au debut du fichier
  • M-*: accolade apres avoir selectionne le texte

Elpy (Python in Emacs)

Sur Emacs

  • C-d: pour voir les help des fonctions.
  • C-c C-z: pour aller dans le python et inversement.
  • M-.: on se place sur une fonction, on ecrit le raccourci clavier et ca va sur la définition de la fonction.

Dans le shell interpreter

  • M-p: move backward (derniere opération)
  • M_n: move forward

Code python

  • Programme pour changer les dollars et doubles dollars en antislash parenthese ou crochet
format.py
import re
 
def replace_symbols(source_file, destination_file):
    try:
        with open(source_file, 'r') as source:
            with open(destination_file, 'w') as destination:
                content = source.read()
 
              # Remplacer les parties entre double dollars (comme $$...$$) par leurs équivalents \[...\]
                content = re.sub(r'\$\$(.*?)\$\$', r'\\[\1\\]', content, flags=re.DOTALL)
              # Remplacer les parties entre dollars (comme $...$) par leurs équivalents \(...\)
                content = re.sub(r'\$(.*?)\$', r'\\(\1\\)', content, flags=re.DOTALL)
 
 
                destination.write(content)
 
    except FileNotFoundError:
        print("Fichier source non trouvé.")
    except Exception as e:
        print("Une erreur est survenue :", str(e))
    else:
        print("Remplacement terminé avec succès!")
 
# Exemple d'utilisation
source_file = "exos.tex"
destination_file = "sortie.tex"
replace_symbols(source_file, destination_file)

settings.json pour VsCode

settings.json
{
    "latex-workshop.synctex.synctexjs.enabled": true,
    "latex-workshop.synctex.afterBuild.enabled": true,
    "latex-workshop.view.pdf.viewer": "tab",
    "latex-workshop.view.pdf.internal.synctex.keybinding": "double-click",
    "security.workspace.trust.untrustedFiles": "open",
    "latex-workshop.view.pdf.zoom": "page-width",
    "editor.wordWrap": "on",
    "latex-workshop.view.pdf.tab.editorGroup": "below",
    "editor.bracketPairColorization.enabled": true,
    "latex-workshop.message.update.show": false,
    "latex-workshop.message.warning.show": false,
    "latex-workshop.message.error.show": false,
    "latex-workshop.message.information.show": false,
    "git.confirmSync": false,
    "git.untrackedChanges": "hidden",
    "editor.suggestSelection": "first",
    "vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
    "workbench.editorAssociations": {
        "*.ipynb": "jupyter-notebook"
    },
    "notebook.cellToolbarLocation": {
        "default": "right",
        "jupyter-notebook": "left"
    },
    "python.defaultInterpreterPath": "C:\\Users\\douc_ran\\Anaconda3\\python.exe",
    "mdmath.macroFile": "C:\\Users\\douc_ran\\OneDrive\\mymacros.json",
    "editor.fontSize": 12,
    "editor.suggest.showStatusBar": true,
    "editor.suggest.insertMode": "insert",
    "markdown.extension.katex.macros": {
    "\\PP": "\\mathbb{P}"
    },
    "window.zoomLevel": 1,
    "latex-workshop.view.pdf.external.synctex": {
        "command": "C:\\Users\\douc_ran\\AppData\\Local\\SumatraPDF",
        "args": [
            "-forward-search",
            "%TEX%",
        "%LINE%",
        "-reuse-instance",
        "-inverse-search",
            "code \"C:\\Users\\douc_ran\\AppData\\Local\\Programs\\Microsoft VS Code\\resources\\app\\outcli.js\" -r -g \"%f:%l\"",
        "%PDF%",
        ]
    },
    "jupyter.interactiveWindowMode": "perFile",
    "[python]": {
        "editor.formatOnType": true
    },
    "files.autoSave": "afterDelay",
    "git.openRepositoryInParentFolders": "always",
    "lightrun.certificatePinningList": [
        "515a630cfd1fb908e30087bcc20b7413ad146b9bf2b23d3aaa72c28e45b24fb2",
        "ee80811b38e7e6c2dc4cc372cbea86bd86b446b012e427f2e19bf094afba5d12"
    ],
    "lightrun.serverURL": "https://app.lightrun.com",
    "lightrun.sendSourceFullPath": true,
    "git-graph.maxDepthOfRepoSearch": 1,
    "git.autofetch": true,
}
world/raccourcis.txt · Last modified: 2024/02/16 12:06 by rdouc