On 18/06/2017 5:57 AM, Andrie de Vries wrote:
Hi, Duncan

i have forwarded this thread to Nathan, who promised to look into it.

Any progress on this?

Duncan Murdoch


Andrie

On 17 Jun 2017 17:26, "Duncan Murdoch" <murdoch.dun...@gmail.com
<mailto:murdoch.dun...@gmail.com>> wrote:

    On 17/06/2017 9:13 AM, Ben Marwick wrote:

        Hi Duncan,

        Thanks for your reply. Yes, it does seem to be specific to the CTYPE
        setting to Chinese on Windows. If I set it to English using
        Sys.setlocale() there is no problem, then back to Chinese and the
        authors disappear:

        Sys.setlocale("LC_ALL","English")
        citation("readr")


    Thanks, that makes the problem reproducible.  I'll submit it as a
    bug report.  Maybe someone from Microsoft will fix it.

    Duncan Murdoch


        #' To cite package ‘readr’ in publications use:
        #'
        #'   Hadley Wickham, Jim Hester and Romain Francois (2017).
        readr: Read
        #' Rectangular Text Data. R package version 1.1.1.
        #' https://CRAN.R-project.org/package=readr
        <https://CRAN.R-project.org/package=readr>
        #'
        #' A BibTeX entry for LaTeX users is
        #'
        #' @Manual{,
        #'   title = {readr: Read Rectangular Text Data},
        #'   author = {Hadley Wickham and Jim Hester and Romain Francois},
        #'   year = {2017},
        #'   note = {R package version 1.1.1},
        #'   url = {https://CRAN.R-project.org/package=readr
        <https://CRAN.R-project.org/package=readr>},
        #' }


        Sys.setlocale("LC_CTYPE", "Chinese")
        citation("readr")

        #'
        #' To cite package ‘readr’ in publications use:
        #'
        #'   (2017). readr: Read Rectangular Text Data. R package
        version 1.1.1.
        #' https://CRAN.R-project.org/package=readr
        <https://CRAN.R-project.org/package=readr>
        #'
        #' A BibTeX entry for LaTeX users is
        #'
        #' @Manual{,
        #'   title = {readr: Read Rectangular Text Data},
        #'   year = {2017},
        #'   note = {R package version 1.1.1},
        #'   url = {https://CRAN.R-project.org/package=readr
        <https://CRAN.R-project.org/package=readr>},
        #' }
        #'
        #' ATTENTION: This citation information has been auto-generated
        from the
        #' package DESCRIPTION file and may need manual editing, see
        #' ‘help("citation")’.

        Where do we go from here? I do want to use the Chinese locale
        with R on
        Windows (and perhaps others do too), so switching the locale
        isn't a fix.

        Thanks,

        Ben

        On 17/06/2017 10:36 PM, Duncan Murdoch wrote:

            On 17/06/2017 7:10 AM, Ben Marwick wrote:

                Recently I was trying to cite a package where the
                authors have ä
                and ø in their names. I found that on Windows the
                citation() function
                did not return the authors' names at all, but on Linux
                there was no
                problem (sessionInfos at the bottom):

                On Windows, no author names are returned:


            I'm not seeing this.  You have fairly strange localization
            settings; see
            comments below.


                #---------------

                 > citation("readr")

                To cite package ‘readr’ in publications use:

                   (2017). readr: Read Rectangular Text Data. R package
                version 1.1.1.
                   https://CRAN.R-project.org/package=readr
                <https://CRAN.R-project.org/package=readr>

                A BibTeX entry for LaTeX users is

                   @Manual{,
                     title = {readr: Read Rectangular Text Data},
                     year = {2017},
                     note = {R package version 1.1.1},
                     url = {https://CRAN.R-project.org/package=readr
                <https://CRAN.R-project.org/package=readr>},
                   }

                ATTENTION: This citation information has been
                auto-generated from the
                package DESCRIPTION file and may need manual editing, see
                ‘help("citation")’.
                #---------------

                On Linux we do see the author names:

                #---------------
                 > citation("readr")

                To cite package ‘readr’ in publications use:

                   Hadley Wickham, Jim Hester and Romain Francois
                (2017). readr:
                   Read Rectangular Text Data. R package version 1.1.1.
                   https://CRAN.R-project.org/package=readr
                <https://CRAN.R-project.org/package=readr>

                A BibTeX entry for LaTeX users is

                   @Manual{,
                     title = {readr: Read Rectangular Text Data},
                     author = {Hadley Wickham and Jim Hester and Romain
                Francois},
                     year = {2017},
                     note = {R package version 1.1.1},
                     url = {https://CRAN.R-project.org/package=readr
                <https://CRAN.R-project.org/package=readr>},
                   }
                #---------------

                This appears to be an OS-dependent encoding issue. The
                citation function
                does not take an encoding argument, so it's not possible
                to set the
                encoding at the point where that function is used. The
                citation function
                working with the packageDescription function, which does
                have an
                encoding argument, but the default is not useful for
                Windows when there
                is an encoding set in the DESCRIPTION of the package (in
                this case
                UTF-8).

                We can set the encoding argument in packageDescription
                so it works in
                Windows to give the authors as expected, but it is very
                inconvenient to
                generate citations directly from the output of this
                function. So I'd
                like to propose a solution this problem by changing one
                line in the
                packageDescription function, like so, from:

                #---------------
                if (missing(encoding) && Sys.getlocale("LC_CTYPE") == "C")
                #---------------

                to:

                #---------------
                if ((missing(encoding) && Sys.getlocale("LC_CTYPE") ==
                "C") |
                unname(Sys.info()['sysname']) == "Windows")
                #---------------

                If I understand correctly, that will force
                ASCII//TRANSLIT encoding when
                DESCRIPTION files are read by packageDescription() on
                Windows machines.
                The upside is that Windows users will get the authors in
                the package
                citation, unlike the current situation. The downside is
                that the exotic
                symbols in the authors' names are replaced with common
                ones that are
                similar.

                I think getting the citations to easily include the
                authors' names is
                pretty important, even if their names have exotic
                characters, so this is
                worth fixing. Is this edit to packageDescription the
                best way to solve
                this problem of exotic characters preventing the
                authors' names from
                showing on Windows?

                thanks,

                Ben




                Windows sessionInfo

                #---------------
                 > sessionInfo()
                R version 3.4.0 Patched (2017-05-10 r72670)
                Platform: x86_64-w64-mingw32/x64 (64-bit)
                Running under: Windows 7 x64 (build 7601) Service Pack 1

                Matrix products: default

                locale:
                [1] LC_COLLATE=English_Australia.1252
                [2] LC_CTYPE=Chinese (Simplified)_People's Republic of
                China.936
                [3] LC_MONETARY=English_Australia.1252
                [4] LC_NUMERIC=C
                [5] LC_TIME=English_Australia.1252


            I don't know what English_Australia.1252 does that's
            different from what
            I use (English_Canada.1252), but the Chinese locale setting
            could cause
            trouble.  Could you try setting this (presumably in the
            Windows control
            panel) to be consistent?  You're using a much simpler
            setting on Linux.

            Duncan Murdoch


                attached base packages:
                [1] stats     graphics  grDevices utils     datasets
                methods   base

                loaded via a namespace (and not attached):
                  [1] readr_1.1.1    compiler_3.4.0 R6_2.2.1       hms_0.3
                tools_3.4.0
                  [6] tibble_1.3.3   yaml_2.1.14    Rcpp_0.12.11
                 knitr_1.16
                rlang_0.1.1
                [11] fortunes_1.5-4
                #---------------

                Linux sessionInfo:

                #---------------
                 > sessionInfo()
                R version 3.3.1 (2016-06-21)
                Platform: x86_64-pc-linux-gnu (64-bit)
                Running under: Ubuntu 16.10

                locale:
                  [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C
                  [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8
                  [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8
                  [7] LC_PAPER=en_US.UTF-8       LC_NAME=C
                  [9] LC_ADDRESS=C               LC_TELEPHONE=C
                [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C

                attached base packages:
                [1] stats     graphics  grDevices utils     datasets
                methods   base

                loaded via a namespace (and not attached):
                [1] tools_3.3.1 yaml_2.1.14 knitr_1.16
                #---------------

                ______________________________________________
                R-devel@r-project.org <mailto:R-devel@r-project.org>
                mailing list
                https://stat.ethz.ch/mailman/listinfo/r-devel
                <https://stat.ethz.ch/mailman/listinfo/r-devel>



        ______________________________________________
        R-devel@r-project.org <mailto:R-devel@r-project.org> mailing list
        https://stat.ethz.ch/mailman/listinfo/r-devel
        <https://stat.ethz.ch/mailman/listinfo/r-devel>



______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to