577YKK45TPNCUC7YGJDGKWTAR4H6WZMIE7EBAODLBEDLHHKGE2BQC
NYVNCQBOFVVGMADGLIF2AHIZBZDWB45EJVGBBJBTFV4UTNOC2PUQC
KVTDFHZ3QKPWGPMHX6SVJQ7DJD76XR3MKOYKOPNVMQOTER3TYRCQC
RUPKCDDFWKIVFSSAXYEIW3WKSEQD422O4RXEJZWWE6FGB2IB7GSAC
JIURDTJWZVONBBESXWAVKJRHM4QHKNACPS5YV7TWW7WMNM7HYN6QC
B6APD6LRE4UWIIZNSB5AIUCFY4GTG73LSCDOGNBLZCZMGSJCB5BQC
YD4GFMPPNL6WI3IOVHFKIYQ7VNBYOTHJKO3IDDFH6BVAECSCEIYAC
2QF7HCG5CLNOBSZUKSHRI2MR4FHHXWY22ZP7JMWD52ZSO2LO2DLAC
KFLC4I2NGCBQBKP52BGLJWATUBZTXA3NAFD4R4T7V3VBPRWCY7AQC
MM4QBST4S53WTDHRGFCTRZKGPRXD4OACY6DI6534ACSOMLFQWXLAC
***** WAIT [[file:~/code/nixpkgs/pkgs/by-name/ti/tiddit/package.nix::{][Package nix Tiddit]] : [[https://github.com/NixOS/nixpkgs/pull/312995][PR]]
***** DONE [[file:~/code/nixpkgs/pkgs/by-name/ti/tiddit/package.nix::{][Package nix Tiddit]]
***** TODO [[https://github.com/NixOS/nixpkgs/pull/312995][PR]] package nix tiddit
SCHEDULED: <2024-05-20 Mon>
Corrections
****** DONE Package nix Fermi2
/Entered on/ [2024-05-18 Sat 20:48]
****** DONE Package nix bwt2
/Entered on/ [2024-05-18 Sat 20:49]
***** WAIT Package nix vep : PR
***** WAIT Package nix multiqc : PR
***** DONE Package nix vep
***** WAIT PR Package nix vep
***** DONE Package nix multiqc
***** WAIT PR Package nix multiqc
:PROPERTIES:
:CUSTOM_ID: intégration
:END:
** Emacs et tramp
:PROPERTIES:
:CUSTOM_ID: emacs-et-tramp
:END:
Pour forcer tramp à utiliser bash
#+begin_example
** Doom emacs et tramp
Si on configure doom-emacs depuis nushell, il va le définir comme SHELL par défaut (ce qui rend sudo inutilisable)
Le plus simple est de change SHELL en /usr/bin/bash dans le fichier ~/.config/emacs/.local/env
#+begin_src nu
ls excel = (ls S:genetique\commun\Centogene_variants\excel | get name | path basename | path parse | get stem | parse "{id}_{s}" | get id)
ls excel = (ls /home/alex/excel | get name | path basename | path parse | get stem | parse "{id}_{s}" | get id)
Note: on utilise maintenant papis en ligne de commande. Sauvegardé pour
raisons historiques.
On utilise citar. Exemple
#+begin_src org
\* Research1
- [cite:@saffari2001] Best review
- [cite:@adang200] First review
#+end_src
Inconvénient: pour chercher les notes, il faut un fichier org qui
regroupe les citations par catégories.
(setq citar-library-paths \'(\"\~/papers/bisonex\"))
(after! citar
(setq! citar-bibliography '("~/roam/research/biblio.bib" "~/roam/research/bisonex/thesis/biblio.bib")
citar-library-paths '("~/papers/bisonex")
citar-notes-paths '("~/roam/research/references")
citar-org-roam-subdir "~/roam/research/references/")))
Pour annotater la bibliographie, on a testé un seul fichier org-mode,
[[http://www.cachestocaches.com/2020/3/org-mode-annotated-bibliography/][comme
ceci]] Le fichier .bib est généré avec =org-tangle=
Pour annotater la bibliographie, on a testé un seul fichier org-mode.]] Le fichier .bib est généré avec =org-tangle=
Avec org-roam =SPC m @= permetl
- de créer une note org-roam
- d'ouvrir le pdf (s'il est dans citar-library-paths et nommé $key.pdf)
* Autres possibilités (abandonnées)
** Org-mode tangle
Voir
[[https://cachestocaches.com/2020/3/org-mode-annotated-bibliography/]]
** Org-mode directement avec org-bibtex
On récupère le bibtex avec notre function. Puis il faut couper le bloc
bibtex (d% avec evil) et le transformer en entrée "org-mode" avec
org-bibtex-yank Il faut exporter le tout en bibtex avec org-bibtex
Il faut un fichier bibtex contenant les citations. Lorsqu'on insère une
citation, on peut créer une note (dans citar-notes-paths) pour cet
article avec "entrée" S'il y a un asticle correspondant dans
citar-library-paths, on peut également l'ouvrir. Exemple
#+title: Org-mode
#+filetags: emacs
Inconvénient: pour chercher les notes, il faut un fichier org qui
regroupe les citations par catégories.
Glossaries: Avec latexmk, il faut une configuration spéciale dans .latexmkrc
#+begin_src sh
add_cus_dep( 'acn', 'acr', 0, 'makeglossaries' );
add_cus_dep( 'glo', 'gls', 0, 'makeglossaries' );
$clean_ext .= " acr acn alg glo gls glg";
Configuration
#+begin_src lisp
(after! citar
(setq! citar-bibliography '("~/roam/research/biblio.bib" "~/roam/research/bisonex/thesis/biblio.bib")
citar-library-paths '("~/papers/bisonex")
citar-notes-paths '("~/roam/research/references")
citar-org-roam-subdir "~/roam/research/references/")))
sub makeglossaries {
my ($base_name, $path) = fileparse( $_[0] );
my @args = ( "-q", "-d", $path, $base_name );
if ($silent) { unshift @args, "-q"; }
return system "makeglossaries", "-d", $path, $base_name;
}
** Org-mode tangle
:PROPERTIES:
:CUSTOM_ID: org-mode-tangle
:END:
Voir
[[https://cachestocaches.com/2020/3/org-mode-annotated-bibliography/]]
** Org-mode directement avec org-bibtex
:PROPERTIES:
:CUSTOM_ID: org-mode-directement-avec-org-bibtex
:END:
On récupère le bibtex avec notre function. Puis il faut couper le bloc
bibtex (d% avec evil) et le transformer en entrée "org-mode" avec
org-bibtex-yank Il faut exporter le tout en bibtex avec org-bibtex
+: formattage org-mode
* Dired
:PROPERTIES:
:CUSTOM_ID: dired
:END:
( pour voir les détails ) pour voir les infos git
* Latex export
:PROPERTIES:
:CUSTOM_ID: latex-export
:END:
Utiliser :booktabs t pour avoir des jolies tableaux. Apparement, il
suffit de rajouter le package dans les header
** Latex export
Utiliser :booktabs t pour avoir des jolies tableaux. Apparement, il suffit de rajouter le package dans les header
* Org-roam
** Importer
SPC m I pour ajouter un identifiant au fichier (org-id-create)
SPC n r s Puis synchroniser la base de donnée (org-roam-db-sync)
:PROPERTIES:
:CUSTOM_ID: nix
:END:
[[file:Environnement%20Haskell%20avec%20Nix.md][Environnement Haskell
avec Nix]] ## Script en un seul fichier (cabal)
[[file:Environnement%20Haskell%20avec%20Nix.md][Environnement Haskell avec Nix]]
** Script en un seul fichier (cabal)
* Éditeur
** Emacs
:PROPERTIES:
:ID: 2e84138f-7559-4933-8e8b-345c5a03fe8b
:END:
Mode mal documenté (avec lsp)
C-c C-l pour charger code dans ghci
C-c C-z si on perd le popup
:PROPERTIES:
:CUSTOM_ID: jump-to-and-from-function-definition
:END:
M-. (xref-pop-marker-stack): jump to definition M-?
(xref-find-references): find all occurences M-, (xref-find-definitions):
q
M-. (xref-pop-marker-stack): jump to definition
M-? (xref-find-references): find all occurences
M-, (xref-find-definitions): q
** With fish shell
:PROPERTIES:
:CUSTOM_ID: with-fish-shell
:END:
ssh can hang so I follewed
[[https://github.com/oh-my-fish/theme-bobthefish/issues/148][this
advice]] ) and set in ~/.config/fish/fish.config
#+begin_example
if test "$TERM" = "dumb"
exec sh
end
#+end_example
For faster access, set a bookmark to the folder <3 Otherwise it's a bit
annoying to type
* Eshell
:PROPERTIES:
:CUSTOM_ID: eshell
:END:
C-c M-b pour completer un buffer (utile pour redirection)
:PROPERTIES:
:CUSTOM_ID: grep-sed
:END:
Search and edit with ripgrep directly in the result !
1. search with ripgrep, for example with `SPC s p`
2. Put the results in a buffer with `C-c C-o` (`ivy-occur`)
3. Edit the buffer with `i` (`ivy-wgrep-change-to-wgrep`)
Chercher et éditer directement le résultats
1. chercher avec ripgrep =SPC s p=
2. Mettre le résultat dans un buffer `C-c C-o` (`ivy-occur`)
3. Editer le buffer avec `i` (`ivy-wgrep-change-to-wgrep`)
* Mail with mbsync
:PROPERTIES:
:CUSTOM_ID: mail-with-mbsync
:END:
! Got several "duplicate ID" after using a systemd service. It's due to
moving files (my version of archiving) and the naming scheme. We must
use the "alternate" naming scheme to avoid duplicates. Seems to work NB:
we should explain with gmail
Mbsync is really faster when fetching mails the first time.Afterwards,
I'm not sure the gain is worth it
* Écrire en japonais
:PROPERTIES:
:CUSTOM_ID: post-config-en-jap-sur-emacs
:END:
mozc is too slow in doom emacs => activate japanese instead
* Org mode
:PROPERTIES:
:CUSTOM_ID: org-mode
:END:
** Wrap selection into an org-block
:PROPERTIES:
:CUSTOM_ID: wrap-selection-into-an-org-block
:END:
org-insert-structure-template C-c C-, s
** Latex :
:PROPERTIES:
:CUSTOM_ID: latex
:END:
Bibliography: Ajouter dans le header
#+begin_src org
,#+bibliography: memoire.bib
#+end_src
Glossaries: Avec latexmk, il faut une configuration spéciale dans
.latexmkrc
#+begin_src sh
add_cus_dep( 'acn', 'acr', 0, 'makeglossaries' );
add_cus_dep( 'glo', 'gls', 0, 'makeglossaries' );
$clean_ext .= " acr acn alg glo gls glg";
sub makeglossaries {
my ($base_name, $path) = fileparse( $_[0] );
my @args = ( "-q", "-d", $path, $base_name );
if ($silent) { unshift @args, "-q"; }
return system "makeglossaries", "-d", $path, $base_name;
}
#+end_src
** lulatex
:PROPERTIES:
:CUSTOM_ID: utiliser-lulatex
:END:
; lualatex preview (setq org-latex-pdf-process '("lualatex -shell-escape
-interaction nonstopmode %f" "lualatex -shell-escape -interaction
nonstopmode %f")) (Attention à l'ordrer)
* [[id:9b1e90c5-4614-40b6-ae6c-5e9c89c4488e][Org-mode]]
* Langages
** [[id:2e84138f-7559-4933-8e8b-345c5a03fe8b][Haskell]]
Gérer plusieurs dossiers (privé + public)
1. Plusieurs dossier avec .dirs.el (cf documentation officielle)
2. Faire des liens symbolique dans un dossier =roam= et utiliser des
tags + des capture pour chaque
* Haskell
:PROPERTIES:
:CUSTOM_ID: haskell
:END:
Mode mal documenté (avec lsp) C-c C-l pour charger code dans ghci C-c
C-z si on perd le popup
* Misc
:PROPERTIES:
:CUSTOM_ID: misc
:END:
yas-describe-tables to see snippets
* Useful shortcut (vanilla emacs )
:PROPERTIES:
:CUSTOM_ID: useful-shortcut-vanilla-emacs
:END:
- C-x z to repeat last command, then z (like vim ".")
Not so useful
- C-x right/left arrow to switch buffer (I'm not really using it)
* Post sur facebook messenger inside emacs
:PROPERTIES:
:CUSTOM_ID: post-sur-facebook-messenger-inside-emacs
:END:
Requirements
- bitlbee
- erc
- bitlbee-facebook
Config
#+begin_src lisp
;; ---- ERC
;; A helper function to auto-start bitlbee
(defun bitlbee-start ()
(interactive)
(erc :server "localhost" :port 6667 :nick "alex" :password "sharingan"))
;; Here we start ERC at boot, with the password here for minimal coding
(use-package! erc
;; Bitlbee by default
:commands (bitlbee-start)
:config
;; Autojoin must be done inside bitlbee directly
(setq erc-hide-list '("JOIN" "PART" "QUIT" "NICK"))
)
#+end_src
LISP
Result
M-x bitlbee-start start bitlbee. You need to follow these instuctions
[[https://wiki.bitlbee.org/HowtoFacebookMQTT]] > account add facebook
<email> <password> > account facebook on > fbjoin facebook <index>
<channel> The index is given either by fbchats facebook or must be
copying manually from facebook
If you want to autojoin a channel, it must be done in bitlbee direcly
channel blabla set auto_{join} true NB the config file are most likely
in /var/lib/bitlbee/$USER.xml
* DONE Package nix Fermi2
:PROPERTIES:
:ARCHIVE_TIME: 2024-05-20 Mon 10:43
:ARCHIVE_FILE: ~/org/projects.org
:ARCHIVE_OLPATH: Recherche/Bisonex/Articles/Dépendences Sarek/PR package nix tiddit
:ARCHIVE_CATEGORY: bisonex
:ARCHIVE_TODO: DONE
:ARCHIVE_ITAGS: article
:END:
/Entered on/ [2024-05-18 Sat 20:48]
* DONE Package nix bwt2
:PROPERTIES:
:ARCHIVE_TIME: 2024-05-20 Mon 10:43
:ARCHIVE_FILE: ~/org/projects.org
:ARCHIVE_OLPATH: Recherche/Bisonex/Articles/Dépendences Sarek/PR package nix tiddit
:ARCHIVE_CATEGORY: bisonex
:ARCHIVE_TODO: DONE
:ARCHIVE_ITAGS: article
:END:
/Entered on/ [2024-05-18 Sat 20:49]