This page is for recording (or discussion) of current apparent Problems with the EmacsWiki Web site. The purpose is to point out problems to the site maintainers.
This page is not for questions or problems about Emacs – see OpenQuestions for that.
Suggestions: If you have suggestions (not problems) for the Emacs Wiki (not Emacs), please contribute them at EmacsWikiSuggestions.
Note that this page is not about EmacsWikiMode.
Add your problem descriptions below this line (ie, newest on top, oldest on bottom)
This can be seen for example on the page [1]. The token \& is displayed as \& amp; in the last line figuring in the grey box under the header Find files listed in a buffer.
I have updated the file at https://www.emacswiki.org/emacs/orgfold-separate-file.el. And the page correctly shows the latest code (e.g. it does not include `(require cl)`. However, when I try to download the file by clicking the `Download` button, then it shows the older (incorrect) version of the file (which does include `(require cl)`.
I’m running Chrome with the #force-major-version-to-100 flag enabled, which causes emacswiki.org to fail with “Forbidden”.
Please see https://developer.chrome.com/blog/force-major-version-to-100/ for more details on the experiment.
Thanks for reporting this. I’ve removed the offending lines from my banned user agent config. See my blog for more info. – Alex
Some buttons on the bottom of all pages have the wrong translation on the Swedish version of the site. For example the “Talk” button is labeld with “Ságastallan” which seems to be in the Sami language. I saw some other button with incorrect translation, but I can’t remember which page it was. Is there some page where I can fix the translation of the buttons?
– tfendin
The easiest solution for me would be for you to make changes to this file via git and send the patch via mail to alex@gnu.org:
git clone https://alexschroeder.ch/cgit/oddmuse
Alternatively, editing on GitHub should also work.
Or just download the plain text from swedish-utf8.pl, edit it, and send it to me via mail.
Optionally also add your name and email address to the file header so that you also get credit.
A few words are also from the config file; the German translations, for example, are in config-de, where as the Swedish ones are in config-se. To changes these, just send me an email.
In any case, thanks! 😊
– Alex
I can’t make links using the ircs://
protocol, though the irc://
protocol does work.
So, something like ircs://irc.libera.chat:6697/#emacs
and [ircs://irc.libera.chat:6697/#emacs #emacs]
doesn’t work; while irc://irc.libera.chat/#emacs and #emacs do.
Fixed: ircs://irc.libera.chat:6697/#emacs – Alex
I wanted to try icicles and followed the instructions from icicles-install.el. icicle-download-wizard downloads several files but eventually fails:
Download the Icicle files? (y or n) y Contacting host: www.emacswiki.org:80 Saving file ~/icicles/col-highlight.el... Wrote /home/erik/icicles/col-highlight.el ... Downloaded ‘icicles-cmd1.el’ Contacting host: www.emacswiki.org:80 error in process sentinel: open-network-stream: make client process failed: Connection refused, :name, www.emacswiki.org, :buffer, #<killed buffer>, :host, www.emacswiki.org, :service, 80, :nowait, nil, :tls-parameters, nil error in process sentinel: make client process failed: Connection refused, :name, www.emacswiki.org, :buffer, #<killed buffer>, :host, www.emacswiki.org, :service, 80, :nowait, nil, :tls-parameters, nil
Afterwards, www.emacswiki.org refuses connections.
Running on: GNU Emacs 27.1 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.5)
The site runs on a very small virtual machine and I’m using fail2ban to monitor regular connections. If there are more than 20 connections in 40s, you get banned for 10min at the firewall level. If this happens three times, you get banned for a week. The problem is that icicles-install.el waits for exactly 2s, but if you visit Emacs Wiki in another window, or otherwise prod the installer, it will trigger these protective measures. I’ve simply edited the icicles-install.el page and changed the sleeper from 2s to 5s. Perhaps that helps more people from banning themselves. – Alex Schroeder
Thanks, Alex! – DrewAdams
Thanks for the help, it solved my problem! Feel free to remove the entry. — AnonymousCoward
Source code blocks I, and others, have edited in recent days are not being syntax highlighted. This is affecting the ElispArea too, see e.g. Lisp:bookmark+.el by DrewAdams, or Lisp:undecodify.el, also the “Make fullscreen work with posframe.el” section on the EmacsForMacOS page. I have tried <pre>
tags as well as the three curly braces {{{
, both on their own lines before, and after the code block, but neither appear to be working at the moment.
There is a 2000 character limit, unfortunately. If you check the config file and search for “elisp_formatting” you’ll find the code in question. – Alex
Oh, that makes sense, thanks, and thank you for all you do for the wiki and the community.
—AnonymousCoward
Text of error response to “package-list-packages” follows -
Failed to verify signature archive-contents.sig: No public key for 066DAFCB81E42C40 created at 2020-09-23T16:05:02-0500 using RSA Command output: gpg: Signature made Wed 23 Sep 2020 04:05:02 PM CDT gpg: using RSA key C433554766D3DDC64221BFAA066DAFCB81E42C40 gpg: Can’t check signature: No public key
Question: is this a problem at the melpa site or do I have to have gpg installed and operational to use melpa?
I have no idea. This doesn’t look like a problem with the site (Emacs Wiki) but like a problem with how your package manager is set up. – Alex Schroeder
The navigation menus on the left of the site overflow into the page content in some languages such as a Russian. This can probably be fixed with a minor change in css. – Thanks for your attention -- 2017-04-25
Can we shorten the text? Perhaps just use ЕмаксЛиспа? Or Территория Е. Л.? – Alex Schroeder
I tried yet again to get emacs-w3m to work as described above. I edited. It didn’t work. I edited the page with Safari. It worked. Then I followed the instructions again in emacs-w3m. The Safari edit did not show up in the compose edit box, even though the page did show it. Therefore, the text that the user edits is not the same as the text that is shown. Is this a cache issue? Thanks.
I don’t think I’ve ever run into this. Anybody else? – AlexSchroeder
I just edited and saved a reply someone posted at DrewsElispLibraries. I refrefreshed RecentChanges (with rollbacks and minor changes included), but my edit does not appear. That wiki page is listed, but still at the time and user of the previous edit. However, after clicking List only major changes it was listed. I had previously cleared my cache, so I don’t think that was the problem. I’m guessing it was a cache problem nevertheless, but thought I’d mention it, in case it’s not. – DrewAdams
For example, on GetHelp, I count at least 4, slightly differing syntaxes used to markup keyboard input.
It would be helpful if there were one official syntax.
And it would be helpful if it rendered in HTML using <kbd></kbd>
tags, which tend to look distinct in current browsers.
What do you suggest we do? Some regular expression to specify how to recognise the markup would be great. Perhaps simply highlight any sequence of (<[A-Z]>|\b[SMF]-(\S|f[0-9]))\b)
and don’t rely on weird quotes? – Alex Schroeder
I’d suggest a dedicated syntax for keyboard input, probably <kbd></kbd>
. Simple, explicit, already an HTML tag. No magic or edge cases.
This question has also been raised on emacs.StackExchange.
I disagree with a proposal to use something like <kbd>
for Emacs key sequences. (I said the same thing in that emacs.SE thread.)
<kbd>
(e.g. as rendered on Stack Exchange) is OK for indicating physical keyboard keys, such as ‘Alt’
, ‘Ctrl’
(or ‘Control’
) and ‘Enter’
(or ‘Return’
).
It is not great for indicating Emacs key sequences, which are logical.
In the printed versions, the Emacs manuals make a similar distinction (physical vs logical keys).
We should generally use the same notation that Emacs itself uses for key sequences: ‘C-x’
.
I say “we should generally use…”, but more importantly, we should let people use whatever they prefer, as long as it gets the message across clearly.
I think the distinction between physical keys and logical key sequences isn’t important enough, in the context of EmacsWiki, to discard the idea of using <kbd></kbd>
syntax in wiki pages, because there are very few instances of writing out a full key name (like ‘Control’
)--almost every case is a key sequence. The benefit, of having a consistent syntax to represent input, would remain.
As Alex has written in the MissionStatement, etc, EmacsWiki is not the Emacs manual, and it serves a different purpose, so it need not match the same standards, especially when doing so would have a significant drawback.
In this case, I think the drawback is indeed significant. As someone who has used Emacs for years but not contributed to this wiki often, when I wanted to make some contributions recently, it was a chore to do something that ought to be very straightforward: look up the correct syntax to represent keyboard input. Looking at, e.g. the source of GetHelp, as I mentioned, there were 4 different syntaxes used within the space of a few paragraphs, and it was not clear which one was correct or preferred. Looking at TextFormattingRules, it was also not helpful at all (no hits searching for ‘keyboard’
or ‘input’
).
From a reader’s perspective, having several different syntaxes used to represent input makes it difficult to learn. How is the reader to know if there is a meaningful distinction between these syntaxes?
C-h C-h
`‘C-h C-h’
‘C-h C-h’
C-h C-h
I can easily imagine a new user wondering if some of those quotes around the key sequences are also supposed to be input, because why else would they be displayed sometimes and not others?
And as a contributor, which syntax should I use? Why are some so much more cumbersome to type?
Fundamentally, what is the point of not having a canonical syntax for this? All it does it make the task harder for readers and contributors. Marking up keyboard input/key sequences/whatever is a fundamental part of writing Emacs documentation, and there is currently far too much friction to doing so here. Issues like this definitely deter potential contributors. It’s one of the reasons I’ve preferred publishing my own documentation, like this, rather than contributing here.
So, FWIW, I request that a simple, consistent syntax be designated for marking up keyboard input, one that renders nicely and is easy to read and input as markup. Whether it’s <kbd></kbd>
or something else, what matters most is that there is one syntax that is designated as correct, documented clearly as such, and renders cleanly. I can only speak for myself, but I will be much more interested in contributing here if this issue is solved.
Sounds reasonable to me. I see no harm in adding it: <kbd>C-x C-s</kbd>
→ C-x C-s – Alex Schroeder
Thanks, Alex. Based on your addition, I added this mention to TextFormattingRules:
- To represent keyboard input, use
<kbd></kbd>
tags, like:
<kbd>C-x C-s</kbd>
→ C-x C-s
However, Drew then changed it, advocating a different syntax:
- To represent keyboard input, you can wrap the key sequence with
<kbd></kbd>
tags or with backquote and apostrophe, like this (You can also use just ##…##):
<kbd>C-x C-s</kbd>
→ C-x C-s`C-x C-s'
→‘C-x C-s’
So instead of one recommended syntax, three different ones are presented, with no guidance to users, and no apparent benefit to using one over the other.
Now I’m not a zealous practitioner of the Zen of Python, but neither am I an uncritical follower of TMTOWTDI. Even if multiple syntaxes are allowed, for historical reasons if nothing else, there is no reason to recommend three different ways of doing it. There’s no reason to make users, who are searching for simple reference information about how to do the simple task of marking up keyboard input, wonder about which of 3 apparently equally valid choices to use.
Of course, this is your wiki, and Drew’s put a lot of work into this over the years as well, so I’m not trying to disrespect either of you or usurp your authority.
What I am trying to do is reach a consensus about a consistent syntax, for all of the reasons I already stated. What benefit is there to advocating two slightly different syntaxes that are intended to mean the same thing? It doesn’t help readers or writers.
So I request that the two of you pick one syntax and document it as the recommended one, without also recommending unnecessary alternatives on the TextFormattingRules page, which is already very complicated. This may seem like a small issue, but I think it contributes to “death by a thousand papercuts” here.
I disagree that there is a Need for canonical syntax for keyboard input. I disagree that what matters most is that there is one syntax that is designated as correct. This yearning for one correct way sounds a bit OCD, to me. Why is it necessary?
The complaint is that I changed the Use this directive to You can use. The complaint is that now we’re recommending two, not one, syntax. I disagree that we’re recommending anything, here; we’re just saying what editing syntaxes you can use, to get what effects. It’s just a description of what the rendering system does.
I don’t have a problem with (Anonymous?) preferring <kbd>
. I have a problem with our seeming to impose a single editing syntax – as opposed to just telling users how different syntaxes get rendered, and then letting them do whatever they want to get whatever effect they want. But I’ve said all of this before.
And it’s not just key bindings. The same goes for representation of input and output, file names, and other things. And in fact a single editing syntax is not sufficient here for all uses. Consider, for instance, a linked file name, such as apu.el. For that, I need to use <tt>
.
Let users use what they want to do what they want. The argument that newbies will wonder whether they should input the quotes too, as part of a key sequence (or file name or command name or…) when they see ‘C-x e’
is hardly convincing.
Users see ‘C-x e’
when they interact with Emacs help. Are they thus confused also by Emacs help? Even if they were, we’re better off with a representation that reflects what users see in Emacs help. After all, we’re also teaching Emacs here.
And ideally, editing to produce such rendering should be just as easy as with Emacs - just type quote marks.
And there’s a reason that Emacs itself uses quotes, even beyond the obvious one that the default font is typically the same one used for key sequences and the like (a fixed-width font): When you have a key sequence such as C-x n a a
a reader can mistake the sequence limits. Quotes set the thing that is quoted off from the surrounding text.
Typing quote marks doesn’t suffice on the wiki, however, for some key sequences and other fixed-width font renderings. Which means that we resort to something slightly different (usually involving using both (1) quote marks, to get the quote-mark representation, and (2) `##’, to get the code font.
Let me be more clear. I’m not a fan of inventing N different ways to get rendering that looks more or less like Emacs help. And I do think it’s a bit unfortunate that in some cases (e.g. some key sequences) the only thing we can get, that approximates Emacs help, involves a different form of single-quote chars.
On emacs.StackExchange there is a single editing syntax for getting a code font: wrapping with backquote chars. And that suffices for 99.9% of our needs for Emacs. It’s only a bit hairy when it comes to embedding/rendering backquote chars themselves.
(The main drawback to using that SE convention with Emacs stuff is that it’s not sufficient to just paste text from Emacs, e.g. Emacs help. If you want quoted stuff, e.g., ‘something’
, to be rendered in a code font then you have to change the apostrophe to a backquote char.)
Unfortunately, we don’t have such a simple, single editing syntax here (AFAIK). Hence the resort to multiple ones. It’s not as if people wanted to invent multiple such. It’s that the simple ones of using ##
, or backquote followed by apostrophe (like Emacs), or <code>
or <tt>
each have their drawbacks in some contexts (including for some key sequences).
If you haven’t actually tried to represent lots of different keys or code sequences here then it might be easy to suppose that a single editing syntax is an obvious approach.
AFAIK, we don’t have such a thing. I first try `…’ everywhere (often I copy+paste from commentary in Lisp files). Then I preview, to see which things didn’t render well. Then I fix those up using quote chars plus `##’, or whatever. Yes, it’s a bit of a pain, and somewhat error prone (you need to check well), but that’s what it takes. I certainly don’t use a combination of different editing syntaxes gratuitously – I do so only when I see that I have to.
And even if <kbd>
were now such a cure-all thing (which I doubt, but haven’t tested), it’s certainly a verbose way of editing (a minor pain). And it means that when copy+pasting from Emacs itself, you need to change `something'
to <kbd>something</kbd>
everywhere – a royal pain. And the editing syntax is less readable. And the rendered result doesn’t show the quote marks that users see in Emacs help.
No one here disagrees with Occam’s razor: Don’t multiply things unnecessarily. I much prefer the simple approach used at emacs.SE, even if it means I have to change apostrophes in pasted code to backquotes. It’s a rare exception when I have to fiddle there (embedded backquote chars). It is uncommon, but not rare, that I have to fiddle here.
Another consideration is the zillions of existing occurrences here. I’d disagree with an attempt to, e.g., change existing pages to substitute <kbd>
.
I’m pretty sure, based on what’s happened with other blanket editing-syntax changes made here, that doing that systematically would break rendering here & there, and I wouldn’t even discover that things had broken until much later. (Five consecutive apostrophes used to produce bold italic, for example. Now it can sometimes do crazy things, depending on where it occurs.)
Drew, I appreciate your taking the time to write that response, but it doesn’t address the arguments I’ve made since I started this discussion. I explained them clearly in my comments above.
My points remain, as does my request: That there be a single recommended keyboard-input markup; that it be clearly presented in TextFormattingRules as the recommended markup; that alternative markup not be equally recommended. Note that I have not requested that support for alternative markups be eliminated, nor that uses of them be replaced across the wiki.
The bottom line is that having four different markups to represent the same thing is unhelpful for readers and contributors. Choice overload and ambiguity have real costs. It may be technically impractical to enforce a single markup now, but we can at least recommend consistency and simplify the documentation, to start inching toward improvements.
I read TextFormattingRules again and it seems pretty good to me. Of all the thousands of words on that page, the point of contention is that the sentence «To represent keyboard input, you can wrap the key sequence with tags or with backquote and apostrophe, like this (You can also use just …
)» should be shortened to «To represent keyboard input, you can wrap the key sequence with tags» – that sounds like a simple change to make. All the other formatting rules are still explained on the page, after all. – AlexSchroeder
I disagree that we should recommend that users use <kbd>
to represent key sequences. Just one opinion.
And if all <kbd>
does is exactly what ## does (dunno whether that’s the case) then it’s a lot easier for users to use the latter. If they’re the same then why recommend the one that’s much harder to type?
A user can usually just copy+paste key sequences from Emacs Help, which uses backquote+apostrophe, or from Info, which uses curly quotes. In most cases that works fine for the wiki. But now we’re telling them that they should convert each such quoted key sequence (obtained from Emacs) to <kbd>
-embedded sequences (for the wiki). What’s gained by such a recommendation?
I think that if people are reading through that page, that’s not the message they’re getting. They’ll see multiple ways to do things, and if they want to specifically highlight keypresses, then they can do it. If they don’t actually care about markup, then they can stop reading as soon as they’re happy. And if it turns out that nobody ever uses the kbd element, then we can remove it again. – Alex
This: <tt>"<2>"</tt>
gets rendered with two closing curly double-quotes, not with straight double-quotes: ”<2>”. But ##"<2>"## renders correctly: "<2>"
.
Yeah, tt simply changes the font to teletype, it doesn’t mean “code” and thus I think the result is correct. <code>"<2>"</code>
might do what you want: "<2>"
. – Alex Schroeder
See UnicodeEncoding#ucs-cmds.el. No matter how many colons are used for the last paragraph, it does not indent more. We should be able to have ::
align more or less with **
etc. This is a regression. – DrewAdams
I think the problem is that the HTML being generated right now is invalid: <dl class="quote"><dl class="quote"><dt /><dd>indent 2</dd></dl></dl>
– I don’t think this ever worked as you intended it to. Right now you need to use :
before you can use ::
. – AlexSchroeder
I’m pretty sure it used to work. I guess you’re saying that a workaround is to do this?
* A bullet entry : :: Some text indented to be under the bullet.
That does seem to work. (You need to put some spaces after the `:’.)
I guess I’m OK with the workaround, though it indents too far and adds too much vertical whitespace. You can remove this problem unless you want to keep it as a reminder to look for a better solution.
I guess if the following two don’t line up exactly, we can use some CSS fix it:
I’m assuming that the exact indentation is determined by the browser defaults. On my iPad it looks as follows:
normal text • bullet indent
The variant you prefer would be this, correct?
normal text • bullet indent
– Alex
Is this documented somewhere?
Use-case: putting a category-tag like CategoryNeedsAttention
into a header, without actually invoking it.
Interestingly, the markup in this particular header renders properly in the TOC
Markup cannot be nested by default. Very few markup elements can in fact be nested. This is not document anywhere, I think. Common sense stuff like list items and inline markup can be nested (bold list items, for example). Emphasis markup using apostrophes is the online inline markup that can be nested: ''italic '''bold''' and italic''
→ italic bold and italic. – AlexSchroeder
The irony being that markup in headers is rendered in the (javascript-built) TOC – MichaelPaulukonis
ain't -- it -- "nice"
⇒ ain’t – it – “nice”[EmacsWikiProblems ain't -- it -- "nice"]
⇒ ain't -- it -- "nice"The link text retains its crude ASCII formatting. – VegardOye
(let ((url-user-agent 'default)) (with-current-buffer (url-retrieve-synchronously "https://www.emacswiki.org/emacs/eww") (buffer-substring 1 13))) => "HTTP/1.1 403"
(let (url-user-agent) (with-current-buffer (url-retrieve-synchronously "https://www.emacswiki.org/emacs/eww") (buffer-substring 1 13))) => "HTTP/1.1 200"
Hm, eww works for me, and my url-user-agent is set to default. When I evaluate the first code snippet, I get “HTTP/1.1 200”. There are several hundred regular expressions banning user agents of various sorts, so what you’re saying could definitely happen. I’m just surprised that I cannot reproduce it. Now, the doc string explains: ‘default’
(to compute a value according to ‘url-privacy-level’
). I wonder what that means, exactly. Apparently our url-privacy-level differs? The value of that is (email) for me. What about you?
I just tried the following:
(let* ((url-privacy-level 'paranoid) (url-user-agent 'default)) (with-current-buffer (url-retrieve-synchronously "https://www.emacswiki.org/emacs/eww") (buffer-substring 1 13)))
Still works…
– Alex
Thanks. Knowing about the server regular expressions allowed me to narrow this down further. My default user agent string (as returned by (url-http--user-agent-default-string)) is “URL/Emacs Emacs/27.1.90 (X11; powerpc64le-unknown-linux-gnu)”. The “unknown” manufacturer field in the canonical system name is what the server is rejecting. If I change any character in “unknown”, I get a 200 response. Could the regular expressions checking for “unknown” be made more precise? Anyway, good to have an explanation.
Done! I simply removed that line. A copy for the curious is on this blog post of mine: 2020-12-22 Apache config file to block user agents – Alex
That’s quite a list. I just retested and now loading emacswiki.org in EWW works with url-user-agent at its default value, ‘default. Thanks!
I just got this error when trying to save a page after some simple (trivial) editing. No idea what caused it or what the problem is. I then clicked the browser ‘Back’
button and tried, successfully, to save again. – DrewAdams
Anybody else? I’ve never seen this before. – AlexSchroeder
Just an FYI that this problem has not disappeared, even if it is less frequent. – DrewAdams
In some cases the server might actually be at fault - still makes sense to group them like this.
This might be the same problem as EditingGetsOldPageText, below, but since that speaks specifically about emacs-w3m, I’m not sure.
This problem started several months ago. The browser cache does not get refreshed when pages are edited and saved. This happens for different browsers.
This problem has bitten several people, and the only workaround seems to be to remember to manually force a cache refresh when, say, you are looking at the editable page. And even that doesn’t work if you use the Download link.
This causes people to download the wrong version of a page (e.g. an Emacs Lisp library, using the Download link). And it causes people to accidentally overwrite a previous edit by someone else (since it doesn’t appear in the editable text unless they refresh that text).
I know that some people have thought that the problem was that pages were not being locked properly for edits, so that two people editing at the same time could accidentally overwrite each other’s edits. I don’t know if that problem also exists, but I do know that this cache problem has caused people to think there is a locking problem for edits. The cache problem occurs however, even for an edit that is long after (days after) the last edit has been saved, so it is not a lock problem.
Thanks for looking into this. – DrewAdams
This is still happening, but I still cannot give a recipe for why or when it happens – it happens sometimes. It just happened now. In the same browser session, I updated page DoReMi and saved. Then opened that page again from the link at RecentChanges, using browser’s Open Link in New Window. Then clicked Edit the page and got the old page source, before my edit and save. HTH – DrewAdams
Some more info on this, in case it helps. I was just bitten by this again – I had to redo a bunch of edits as a result.
If you look at the revisions of BookmarkPlus between Revision 53 and Revision 58, you’ll see that Revision 54 was a major edit, then 55 was a minor edit. Well, 55 did not use 54 as its starting point – it used 53 instead. So I ended up doing 55, 56, 57, and 58, before I realized that the major edit for 54 had been undone (i.e. lost).
I used to think this problem had something to do with the browser cache, but now I’m thinking it has something to do with major and minor edits. HTH. – DrewAdams
Dunno if this is strictly related to the browser cache problem that I’ve been assuming exists, but there is a fine example of losing page updates that just occurred. See the revisions of this very page, EmacsWikiProblems, today.
You’ll see that this sequence of events took place:
Vegard’s update wiped out my previous update. – DrewAdams
Hm, maybe this is unrelated. Possibly it just took him more than nine minutes to edit the page before he saved it? Perhaps diff3 will sometimes merge things and drop changes without marking them as a conflict? Or he used a raw client that interacts with the wiki text directly, didn’t post back the last modification date, thus diff3 was unable to determine the ancestor for conflict resolution, and he ended up overwriting what you had done. I think the caching problem you reported earlier is something else (and much trickier, apparently). – AlexSchroeder
The SSL certificate was expired for most of this weekend? Someone fixed - new one in place now. Root cause addressed? – Lee 21Nov21.
No idea. The certs are installed from Let’s Encrypt automatically. – AlexSchroeder