summaryrefslogtreecommitdiff
path: root/itches/emacs
diff options
context:
space:
mode:
Diffstat (limited to 'itches/emacs')
-rw-r--r--itches/emacs/language-support.org3
-rw-r--r--itches/emacs/tracker.org61
2 files changed, 63 insertions, 1 deletions
diff --git a/itches/emacs/language-support.org b/itches/emacs/language-support.org
index 145786e..d784f2b 100644
--- a/itches/emacs/language-support.org
+++ b/itches/emacs/language-support.org
@@ -1,12 +1,13 @@
* Python
** Fix builtin/keyword fontification for Python 3
E.g. =print= became a builtin.
+Cf. [[https://debbugs.gnu.org/43298][bug#43298]].
*** TODO add fontification tests
*** TODO have dedicated font-lock styles for Python 2, 3 and "mixed"
Default to "mixed" (rely on tests to ensure user-visible change).
**** TODO create font-lock styles
**** TODO create variable to choose style
-Users could customize it or set it wiht directory-local variables.
+Users could customize it or set it with directory-local variables.
*** TODO add heuristic to pick the "right" style
** Fontify f-strings
E.g. =f'an {expression} that should be highlighted'=.
diff --git a/itches/emacs/tracker.org b/itches/emacs/tracker.org
index 220f549..599e176 100644
--- a/itches/emacs/tracker.org
+++ b/itches/emacs/tracker.org
@@ -42,6 +42,47 @@ Fixed by Eli.
:Role: author
:END:
First reported as [[https://github.com/dgutov/diff-hl/issues/142][dgutov/diff-hl#142]]. Fixed by Eli.
+*** TODO Translate unshifted keys to shifted if no bindings are found
+To make =C-x [0-9]= more accessible on AZERTY. Firefox does this, cf
+[[https://hg.mozilla.org/mozilla-unified/file/FIREFOX_80_0_1_RELEASE/widget/gtk/nsGtkKeyUtils.cpp#l1207][here]]:
+
+#+begin_src c++
+ // Retry with shifted keycode.
+ guint shiftState = (baseState | keymapWrapper->GetModifierMask(SHIFT));
+ uint32_t shiftedChar = keymapWrapper->GetCharCodeFor(aGdkKeyEvent, shiftState,
+ aGdkKeyEvent->group);
+ if (IsBasicLatinLetterOrNumeral(shiftedChar)) {
+ // A shifted character can be an ASCII alphabet on Hebrew keyboard
+ // layout. And also shifted character can be an ASCII numeric on
+ // AZERTY keyboad layout. Then, it's a good hint for deciding our
+ // keyCode.
+ return WidgetUtils::ComputeKeyCodeFromChar(shiftedChar);
+ }
+#+end_src
+
+and [[https://hg.mozilla.org/mozilla-unified/file/FIREFOX_80_0_1_RELEASE/widget/gtk/nsGtkKeyUtils.cpp#l1896][there]]:
+
+#+begin_src c++
+uint32_t KeymapWrapper::GetCharCodeFor(const GdkEventKey* aGdkKeyEvent,
+ guint aModifierState, gint aGroup) {
+ guint keyval;
+ if (!gdk_keymap_translate_keyboard_state(
+ mGdkKeymap, aGdkKeyEvent->hardware_keycode,
+ GdkModifierType(aModifierState), aGroup, &keyval, nullptr, nullptr,
+ nullptr)) {
+ return 0;
+ }
+ GdkEventKey tmpEvent = *aGdkKeyEvent;
+ tmpEvent.state = aModifierState;
+ tmpEvent.keyval = keyval;
+ tmpEvent.group = aGroup;
+ return GetCharCodeFor(&tmpEvent);
+}
+#+end_src
+
+Maybe look at ~lookup-key~ in ~src/keymap.c~? Although
+~src/gtkutil.c~ seems to be the place making the most calls to ~gdk_~
+functions.
** Elisp
*** DONE [[bug:30008]] Subdirectory vs major mode in .dir-locals.el
:PROPERTIES:
@@ -174,7 +215,9 @@ ACKed by Bastien; bump once 9.4 is released.
**** TODO [[bug:42184]] org-fontify-whole-heading-line does not work in emacs 27
:PROPERTIES:
:Role: watcher
+:PatchApplied: t
:END:
+All that remains is merging Org 9.3.8 into emacs-27 (cf. [[bug:43268]]).
**** TODO [[orgmode:87mu3ze52c.fsf@gmail.com]] Default description for abbreviated links
:PROPERTIES:
:Role: author
@@ -241,6 +284,8 @@ Fixed by Andrea (see update 9 on his [[https://akrl.sdf.org/gccemacs.html][progr
:Role: author
:PatchApplied: t
:END:
+*** TODO autoload debbugs-gnu-emacs-release-blocking-reports
+I prefer this over the Org variant, which is autoloaded.
** diff-hl
*** DONE [[https://github.com/dgutov/diff-hl/issues/142][#142]] Weird interaction between diff-hl-flydiff-mode and org-indent-mode
Eventually reported back to Emacs core in [[bug:41584]] and fixed by Eli.
@@ -267,6 +312,22 @@ Eventually reported back to Emacs core in [[bug:41584]] and fixed by Eli.
:Role: author
:PatchApplied: t
:END:
+*** TODO Autoload magit-file-mode-map correctly
+The current state of affairs:
+
+- ~global-magit-file-mode~ says ~:init-value t~, but that has no
+ effect.
+- We need to move ~magit-file-mode~ (and ~magit-blob-mode~ while we're
+ at it) to a new, dedicated library, and either
+ - let users customize ~global-magit-file-mode~ to t, which will
+ DTRT,
+ - autoload the form that enables the mode if the variable is set.
+
+It's already possible to do either, but it slows down startup
+considerably. Hopefully moving the mode to a file that does not
+~(require 'magit)~ will mitigate this?
+
+[[https://lists.gnu.org/archive/html/help-gnu-emacs/2020-09/msg00130.html][For context.]]
** markdown-mode
*** DONE [[https://github.com/jrblevin/markdown-mode/pull/124][jrblevin/markdown-mode#124]] Prevent spurious bold fontification
:PROPERTIES: