Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problème de mise en page pour mon CV après version 1.2.5042 #317

Open
AlexGSL36 opened this issue Sep 2, 2023 · 15 comments
Open

Problème de mise en page pour mon CV après version 1.2.5042 #317

AlexGSL36 opened this issue Sep 2, 2023 · 15 comments
Labels
bug an unexpected problem or unintended behavior

Comments

@AlexGSL36
Copy link

Bonjour,
Je me permets de vous écrire pour vous signaler un problème entre le package pagedown et l'application R Studio après la version 1.2.5042;
Comme vous le verrez sur mon CV , sur la version 1.2.5042, les mises en pages sont corrects et tout semble bien se passer
Par contre, passé cette version, des choses se cassent (sur la 2ème page du 2eme fichier PDF nommé CV R_2023.06.02, vous pourrez voir ce dont je parle) et je n'arrive pas à améliorer le script R..
Vous pouvez également trouver mon code (CV V.10) en fichier ZIP*

Si bien sûr, la solution existe sur le forum GitHub, je veux bien que vous me partagiez le lien en réponse à mon sujet :)

Dans l'attente de votre retour,
Cordialement,
*CV_avec_R.zip

AlexGSL36

@cderv
Copy link
Collaborator

cderv commented Sep 4, 2023

Bonjour Alex,

Même si c'est ok de tenter le français dans ce dépôt, il est généralement préférable de privilégier l'anglais si possible.

Cela étant dit,

un problème entre le package pagedown et l'application R Studio après la version 1.2.5042;

Est ce que pagedown fonctionne tjs en dehors de RStudio ? Juste avec la console R ?

Est ce que le problème est uniquement avec le PDF après chrome_print() ou bien aussi dans le HTML dans le viewer ou le browser ?

L'IDE RStudio ne devrait pas avoir d'impact sur le PDF qui est généré avec Chrome. As tu Chrome d'installer ? Est ce que ouvrir le HTML et faire une impression manuellement depuis chrome fonctionne ?

  • avec servr::httd(".") dans le working directory. Cela va ouvrir une fenetre de navigateur (ou afficher une url et un port) et il sera possible de voir le document en ligne pour imprimer.

Il y a peut être eu une mise à jour des composants avec la mise à jour RStudio, mais nous n'avons pas eu d'autre rapport d'erreur sur les dernières versions de RStudio.

@AlexGSL36
Copy link
Author

Bonjour, ça marche, je vous remercie pour les informations apportées.

Alors, pour répondre point par point.
Le pagedown fonctionne dans la console R, tout à fait.

Le problème semble bien être à la fois dans la visionneuse HTML dans le viewer, dans le broswer et dans la visionneuse PDF

Je n'ai pas Chrome d'installer en ce moment. Toutefois, je l'ai eu, et le problème était également présent !
Pour la fonction servr::httd("."), où dans le codage, dois-je l'insérer svp ?

Oui cela est possible que les composants de Rstudio, mais, du coup, PageDown, ne peut-il pas être mise à jour dans ce sens ?

@cderv
Copy link
Collaborator

cderv commented Sep 8, 2023

Le pagedown fonctionne dans la console R, tout à fait.

Qu'est ce qui fonctionne précisément ? Si cela marche, cela veut dire que tu peux produire un HTML que tu peux visionner dans un navigateur ou publier, et un pdf via pagedown::chrome_print() depuis la console R ?

Le problème semble bien être à la fois dans la visionneuse HTML dans le viewer, dans le browser et dans la visionneuse PDF

Rstudio n'intervient pas normalement si tu produit le PDF avec chrome_print(). ça va produire un pdf depuis une impression avec Chrome. c'est tout

Pour la fonction servr::httd("."), où dans le codage, dois-je l'insérer svp ?

C'est pas dans le codage exactement. C'est une fonction R qui permet de servir un document HTML avec serveur web local R. C'est nécessaire pour ouvrir le HTML produit avec pagedown afin que les CSS et JS de paged.js

Oui cela est possible que les composants de Rstudio, mais, du coup, PageDown, ne peut-il pas être mise à jour dans ce sens ?

Si c'est dans RStudio IDE, on ne peut pas trop adapter.

Mais reprenons depuis le début

(sur la 2ème page du 2eme fichier PDF nommé CV R_2023.06.02, vous pourrez voir ce dont je parle)

Quel est le problème exact ? Une capture d'écran ?

je n'arrive pas à améliorer le script R..

quel script R ? Le fichier Rmd ?

Peux tu aussi partager ce qui suit:

  • rmarkdown::render() dans ta console R
  • puis xfun::session_info() à coller ici.

Peut être une version de paquet qui va pas.

Merci

@cderv
Copy link
Collaborator

cderv commented Sep 8, 2023

Possible que ça soit lié à cet issue

Je pense que aside avec deux pages à un problème. 🤔 Pas sur duquel par contre...

@cderv cderv added the bug an unexpected problem or unintended behavior label Sep 8, 2023
@cderv
Copy link
Collaborator

cderv commented Sep 8, 2023

Ok c'est un problème avec Pandoc 2.8. Avec pandoc 2.7.3 ça fonctionne.

L'update de RStudio a mis à jour Pandoc du coup.

@AlexGSL36
Copy link
Author

AlexGSL36 commented Sep 9, 2023

Le pagedown fonctionne dans la console R, tout à fait.

Qu'est ce qui fonctionne précisément ? Si cela marche, cela veut dire que tu peux produire un HTML que tu peux visionner dans un navigateur ou publier, et un pdf via pagedown::chrome_print() depuis la console R ?
Oui c'est cela.

Le problème semble bien être à la fois dans la visionneuse HTML dans le viewer, dans le browser et dans la visionneuse PDF

Rstudio n'intervient pas normalement si tu produit le PDF avec chrome_print(). ça va produire un pdf depuis une impression avec Chrome. c'est tout
D'accord. A savoir que j'utilise Microsoft Edge depuis toujours, et qu'il est basé sur Chrome...

Pour la fonction servr::httd("."), où dans le codage, dois-je l'insérer svp ?

C'est pas dans le codage exactement. C'est une fonction R qui permet de servir un document HTML avec serveur web local R. C'est nécessaire pour ouvrir le HTML produit avec pagedown afin que les CSS et JS de paged.js
D'accord

Oui cela est possible que les composants de Rstudio, mais, du coup, PageDown, ne peut-il pas être mise à jour dans ce sens ?

Si c'est dans RStudio IDE, on ne peut pas trop adapter.
D'accord
Mais reprenons depuis le début

(sur la 2ème page du 2eme fichier PDF nommé CV R_2023.06.02, vous pourrez voir ce dont je parle)

Quel est le problème exact ? Une capture d'écran ?
Le problème exact est directement trouvable sur le fichier en question, c'est le décalage du ::aside:: sur la droite. et la présence de NA du coup, en lien avec ce décalage du ::aside::. si vous comparez le premier PDF avec le deuxième, vous verrez la différence. Le 1er est ce que je souhaite obtenir en tout temps.

je n'arrive pas à améliorer le script R..

quel script R ? Le fichier Rmd ?
Oui, le fichier RMD, les élements que l'on ajoute ou supprime dans la partie gauche de RStudio une fois ouvert.
Peux tu aussi partager ce qui suit:

  • rmarkdown::render() dans ta console R
  • puis xfun::session_info() à coller ici.
    **Pour X fun, j'ai ça : > xfun::session_info()
    R version 4.3.1 (2023-06-16 ucrt)
    Platform: x86_64-w64-mingw32/x64 (64-bit)
    Running under: Windows 11 x64 (build 22621)

Locale:
LC_COLLATE=French_France.1252 LC_CTYPE=French_France.1252 LC_MONETARY=French_France.1252
LC_NUMERIC=C LC_TIME=French_France.1252

time zone: Europe/Berlin
tzcode source: internal

Package version:
base64enc_0.1.3 bslib_0.5.1 cachem_1.0.8 cli_3.6.1 compiler_4.3.1
digest_0.6.33 ellipsis_0.3.2 evaluate_0.21 fastmap_1.1.1 fontawesome_0.5.2
fs_1.6.3 glue_1.6.2 graphics_4.3.1 grDevices_4.3.1 highr_0.10
htmltools_0.5.6 jquerylib_0.1.4 jsonlite_1.8.7 knitr_1.43 lifecycle_1.0.3
magrittr_2.0.3 memoise_2.0.1 methods_4.3.1 mime_0.12 R6_2.5.1
rappdirs_0.3.3 rlang_1.1.1 rmarkdown_2.24 sass_0.4.7 stats_4.3.1
stringi_1.7.12 stringr_1.5.0 tinytex_0.46 tools_4.3.1 utils_4.3.1
vctrs_0.6.3 xfun_0.40 yaml_2.3.7**

Pour rmarkdown::render(), j'ai ça : Erreur dans rmarkdown::render() :
l'argument "input" est manquant, avec aucune valeur par défaut
De plus : Message d'avis :
R graphics engine version 16 is not supported by this version of RStudio. The Plots tab will be disabled until a newer version of RStudio is installed.

Peut être une version de paquet qui va pas.

Merci

@AlexGSL36
Copy link
Author

Ok c'est un problème avec Pandoc 2.8. Avec pandoc 2.7.3 ça fonctionne.

L'update de RStudio a mis à jour Pandoc du coup.

D'accord, c'est donc ce logiciel de conversion qui pose problème. Par quel moyen peut-on y remédier ?

@cderv
Copy link
Collaborator

cderv commented Sep 11, 2023

Par quel moyen peut-on y remédier ?

Installer une ancienne version de Pandoc qui fonctionne (la version 2.7.3 dispo à https://github.com/jgm/pandoc/releases/tag/2.7.3) et l'utiliser avec R Markdown (variable d'environnement RSTUDIO_PANDOC qui pointe vers cette version), ou bien attendre une résolution dans ce package pour que ça fonctionne (mais ça sera plus long car il faut trouver le problème exacte, et ensuite une solution).

@AlexGSL36
Copy link
Author

AlexGSL36 commented Sep 11, 2023

Par quel moyen peut-on y remédier ?

Installer une ancienne version de Pandoc qui fonctionne (la version 2.7.3 dispo à https://github.com/jgm/pandoc/releases/tag/2.7.3) et l'utiliser avec R Markdown (variable d'environnement RSTUDIO_PANDOC qui pointe vers cette version), ou bien attendre une résolution dans ce package pour que ça fonctionne (mais ça sera plus long car il faut trouver le problème exacte, et ensuite une solution).

Actuellement, le problème est toujours présent malgré le fait que R Studio ait Pandoc 2.7.3 ! Comment puis-je indiquer à R Studio de pointer vers cette version, avec votre variable d'environnement que vous citez ? J'ai installer le fichier pandoc 2.3.7 .msi sur mon ordinateur. et j'ai également essayer cette commande >
library(pandoc)

Install version

pandoc_install("2.7.3")
✔ Pandoc 2.7.3 already installed.
Use 'force = TRUE' to overwrite.

Autre problème avec la nouvelle version de RStudio 2023.06.2 Construire 561, j'ai une erreur dans le runtime lors de l'exécution, je n'ai plus de page de prévisualisation comme avant, le PDF est bien généré toutefois.

A runtime exception has occured while executing JavaScript
Runtime exception message:
TypeError: Cannot read properties of undefined (reading 'innerText')

@cderv
Copy link
Collaborator

cderv commented Sep 11, 2023

Il y a plusieurs façon:

  • Ajouter manuellement une variable d'environment système utilisateur pointant vers le dossier d'installation de Pandoc.
  • Ajouter manuellement via .Renviron qui est un fichier de variable d'environnement pour R
  • Ajouter via .Rprofile en utilisant le package pandoc. Exemple:
if (requireNamespace("pandoc") && pandoc::pandoc_is_installed("2.7.3")) { 
    Sys.setenv(RSTUDIO_PANDOC = dirname(pandoc::pandoc_bin("2.7.3")))
}

ou via

if (requireNamespace("pandoc") && pandoc::pandoc_is_installed("2.7.3")) { 
    pandoc::pandoc_activate("2.7.3", rmarkdown  = TRUE)
}

ça devrait fonctionner.

Normalement, via le package Pandoc, il y a une façon proche de cela: https://bookdown.org/yihui/rmarkdown-cookbook/install-pandoc.html pour faire depuis le document directement.

Mais pour le moment, il y a un bug:

ça sera corrigé prochainement. Ce qui devrait permettre de faire

```{r setup, echo = FALSE}
pandoc::pandoc_activate("2.7.3", rmarkdown  = TRUE)
```

directement dans le document.

Bref, voilà plusieurs solutions

@AlexGSL36
Copy link
Author

AlexGSL36 commented Sep 11, 2023

if (requireNamespace("pandoc") && pandoc::pandoc_is_installed("2.7.3")) {
Sys.setenv(RSTUDIO_PANDOC = dirname(pandoc::pandoc_bin("2.7.3")))
}

En prenant cette formule, après insertion, il m'a indiqué >
Le chargement a nécessité le package : pandoc

Et ça a fonctionné ! Enfin
Bon, un bug ceci étant, est apparu, c'est celui ci : Receiving PDF from a stream
stream chunk received
stream chunk received
No more stream chunk to read
closing stream

Output created: CV.10.pdf
Closing websocket connection
Closing browser
Cleaning browser working directory
Closing local webserver

En d'autre terme, j'ai bien mon fichier PDF, là où il faut, mais je n'ai plus le rendu de prévisualisation directement qui se superposait à RStudio, comme c'était le cas avant... Bon, c'est peut être voulu avec cette version de pandoc ?!

@cderv
Copy link
Collaborator

cderv commented Sep 11, 2023

Receiving PDF from a stream

C'est un message de log de pagedown

if (verbose >= 1) message('Receiving PDF from a stream')

Et on active les log par défault quand on knit depuis RStudio
https://github.com/rstudio/pagedown/blame/466c1c1e8fc4a679aeff25bdd19fd834c0b78bbd/R/chrome.R#L71-L74

Donc c'est pas censé être nouveau quand tu as dans ton yaml

knit: pagedown::chrome_print

ça date d'il y a 4 ans comme comportement e242027

je n'ai plus le rendu de prévisualisation directement qui se superposait à RStudio

Est ce que ça ouvre le PDF à l'exterieur de RStudio ? de mon coté ça le fait toujours

@AlexGSL36
Copy link
Author

AlexGSL36 commented Sep 11, 2023

Receiving PDF from a stream

C'est un message de log de pagedown

ah oui, oui, je suis d’accord.

if (verbose >= 1) message('Receiving PDF from a stream')

Et on active les log par défault quand on knit depuis RStudio https://github.com/rstudio/pagedown/blame/466c1c1e8fc4a679aeff25bdd19fd834c0b78bbd/R/chrome.R#L71-L74
je n’ai pas compris ? C’est une question ou bien quelque chose à faire sur ma machine ?
Donc c'est pas censé être nouveau quand tu as dans ton yaml

knit: pagedown::chrome_print

ça date d'il y a 4 ans comme comportement e242027
d’accord c’est Noté.

je n'ai plus le rendu de prévisualisation directement qui se superposait à RStudio

Est ce que ça ouvre le PDF à l'exterieur de RStudio ? de mon coté ça le fait toujours
Alors ça le génère dans le dossier là où il doit être et c’est tout. Pas de d’ouverture à l’extérieur de Rstudio. Avant, il y avait bien une ouverture (que je nomme previsualisation du rendu)
Bon au pire, du moment que le PDF soit ok, on va dire que ce n’est pas gênant. Juste bon à savoir …

@cderv
Copy link
Collaborator

cderv commented Sep 12, 2023

Je ne sais pas dire pourquoi ça s'ouvre pas. ça devrait normalement. ça le fait chez moi en tout cas, donc peut être que ça va revenir avec un prochain update ou autre.

Bref, corriger l'issue dans pagedown maintenant pour les pandoc récents. c'est la next step

@AlexGSL36
Copy link
Author

AlexGSL36 commented Sep 16, 2023 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug an unexpected problem or unintended behavior
Projects
None yet
Development

No branches or pull requests

2 participants