unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#30815: 26.0.91; unicode right single quote mark with syntax entry of w not respected by forward-word
@ 2018-03-14  0:14 Aaron Jensen
  2018-03-14  1:11 ` Noam Postavsky
  0 siblings, 1 reply; 12+ messages in thread
From: Aaron Jensen @ 2018-03-14  0:14 UTC (permalink / raw)
  To: 30815


Perhaps I'm doing something wrong or there's some setting I'm missing,
but this doesn't appear to work as I'd expect.

1. emacs -Q
2. M-: (modify-syntax-entry ?’ "w" text-mode-syntax-table)
3. Type (note the unicode ’): doesn’t
4. Use M-b/M-f to get to the beginning of the line and back to the end

Actual behavior:

M-b and M-f stop at the ’ instead of bypassing it. Compare it to doing
the same thing with ?_.

Expected behavior:

’ is treated as part of the word and is skipped over by M-f and M-b


In GNU Emacs 26.0.91 (build 1, x86_64-apple-darwin17.4.0, NS appkit-1561.20 Version 10.13.3 (Build 17D102))
 of 2018-03-09 built on aaron-mbt.local
Repository revision: fbc7f9ae44a2a705e37cb7d1f9585cfaac8d13ee
Windowing system distributor 'Apple', version 10.3.1561
Recent messages:

mwheel-scroll: Beginning of buffer
evil-backward-char: Beginning of line
evil-line-move: Beginning of buffer [10 times]

evil-line-move: End of buffer [11 times]
evil-line-move: Beginning of buffer [24 times]
nil
evil-backward-char: Beginning of line [5 times]
(Inserted RIGHT SINGLE QUOTATION MARK; type ' for other options)

Configured using:
 'configure --disable-dependency-tracking --disable-silent-rules
 --enable-locallisppath=/usr/local/share/emacs/site-lisp
 --infodir=/usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/info/emacs
 --prefix=/usr/local/Cellar/emacs-plus/HEAD-fbc7f9a --with-xml2
 --without-dbus --with-gnutls --with-imagemagick --with-modules
 --with-rsvg --with-ns --disable-ns-self-contained'

Configured features:
JPEG RSVG IMAGEMAGICK NOTIFY ACL GNUTLS LIBXML2 ZLIB TOOLKIT_SCROLL_BARS
NS MODULES THREADS LCMS2

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Org

Minor modes in effect:
  auto-dim-other-buffers-mode: t
  eros-mode: t
  company-statistics-mode: t
  company-childframe-mode: t
  company-mode: t
  evil-org-mode: t
  org-bullets-mode: t
  typo-mode: t
  yas-global-mode: t
  yas-minor-mode: t
  buffer-face-mode: t
  org-indent-mode: t
  magit-auto-revert-mode: t
  global-git-gutter+-mode: t
  global-git-commit-mode: t
  async-bytecomp-package-mode: t
  recentf-mode: t
  desktop-save-mode: t
  global-wakatime-mode: t
  wakatime-mode: t
  evil-mc-mode: t
  hl-todo-mode: t
  global-spacemacs-whitespace-cleanup-mode: t
  spacemacs-whitespace-cleanup-mode: t
  ws-butler-global-mode: t
  ws-butler-mode: t
  winum-mode: t
  winner-mode: t
  pupo-mode: t
  purpose-mode: t
  volatile-highlights-mode: t
  global-vi-tilde-fringe-mode: t
  vi-tilde-fringe-mode: t
  save-place-mode: t
  savehist-mode: t
  projectile-rails-global-mode: t
  projectile-mode: t
  persp-mode: t
  global-origami-mode: t
  origami-mode: t
  Info-breadcrumbs-in-mode-line-mode: t
  flycheck-pos-tip-mode: t
  global-flycheck-mode: t
  flx-ido-mode: t
  eyebrowse-mode: t
  global-evil-surround-mode: t
  evil-surround-mode: t
  global-evil-search-highlight-persist: t
  evil-search-highlight-persist: t
  show-smartparens-global-mode: t
  show-smartparens-mode: t
  evil-lion-mode: t
  evil-escape-mode: t
  global-anzu-mode: t
  anzu-mode: t
  eval-sexp-fu-flash-mode: t
  editorconfig-mode: t
  diff-auto-refine-mode: t
  counsel-mode: t
  ivy-mode: t
  delete-selection-mode: t
  clean-aindent-mode: t
  hybrid-mode: t
  which-key-mode: t
  override-global-mode: t
  global-undo-tree-mode: t
  undo-tree-mode: t
  flyspell-mode: t
  evil-mode: t
  evil-local-mode: t
  spacemacs-leader-override-mode: t
  global-spacemacs-leader-override-mode: t
  global-hl-line-mode: t
  xterm-mouse-mode: t
  global-auto-revert-mode: t
  shell-dirtrack-mode: t
  ido-vertical-mode: t
  global-page-break-lines-mode: t
  page-break-lines-mode: t
  global-eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  auto-fill-function: yas--auto-fill
  transient-mark-mode: t
  abbrev-mode: t

Load-path shadows:
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/ht-20180129.1434/ht hides /Users/aaronjensen/.emacs.d/core/libs/ht
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/inf-ruby-20180309.433/inf-ruby hides /usr/local/share/emacs/site-lisp/ruby/inf-ruby
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-stan hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-stan
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-exp hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-exp
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-J hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-J
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-eshell hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-eshell
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-emacs-lisp hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-emacs-lisp
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-gnus hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-gnus
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-css hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-css
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-lob hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-lob
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-forth hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-forth
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-macs hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-macs
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-version hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-version
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-scheme hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-scheme
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ox hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ox
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-abc hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-abc
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-C hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-C
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-capture hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-capture
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-ref hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-ref
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-clojure hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-clojure
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-mouse hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-mouse
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-ledger hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-ledger
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-ctags hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-ctags
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-entities hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-entities
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-archive hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-archive
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-screen hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-screen
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-haskell hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-haskell
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-asymptote hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-asymptote
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-mhe hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-mhe
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-table hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-table
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-keys hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-keys
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ox-org hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ox-org
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-plot hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-plot
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-awk hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-awk
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-groovy hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-groovy
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-octave hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-octave
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-faces hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-faces
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-colview hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-colview
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-R hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-R
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-timer hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-timer
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-ebnf hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-ebnf
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-mobile hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-mobile
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-fortran hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-fortran
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-shell hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-shell
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-perl hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-perl
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-sqlite hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-sqlite
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-sed hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-sed
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-list hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-list
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-ruby hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-ruby
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-eval hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-eval
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-habit hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-habit
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-clock hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-clock
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ox-html hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ox-html
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-src hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-src
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-lisp hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-lisp
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-ditaa hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-ditaa
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-pcomplete hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-pcomplete
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-lint hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-lint
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-rmail hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-rmail
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ox-latex hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ox-latex
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-sass hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-sass
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-io hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-io
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-tangle hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-tangle
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-calc hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-calc
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-java hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-java
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ox-icalendar hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ox-icalendar
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-eww hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-eww
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ox-md hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ox-md
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ox-beamer hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ox-beamer
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-element hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-element
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-protocol hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-protocol
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-mscgen hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-mscgen
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-gnuplot hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-gnuplot
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-latex hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-latex
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-id hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-id
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-vala hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-vala
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ox-man hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ox-man
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-feed hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-feed
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-lua hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-lua
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-table hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-table
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-ocaml hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-ocaml
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-coq hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-coq
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-picolisp hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-picolisp
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-indent hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-indent
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-lilypond hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-lilypond
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-matlab hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-matlab
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-datetree hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-datetree
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-python hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-python
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-bbdb hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-bbdb
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-makefile hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-makefile
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-duration hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-duration
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-agenda hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-agenda
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-dot hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-dot
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-js hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-js
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ox-publish hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ox-publish
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-inlinetask hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-inlinetask
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-org hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-org
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-core hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-core
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-compat hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-compat
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-docview hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-docview
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ox-odt hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ox-odt
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-plantuml hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-plantuml
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ox-ascii hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ox-ascii
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-loaddefs hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-loaddefs
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-w3m hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-w3m
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-bibtex hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-bibtex
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-info hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-info
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-hledger hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-hledger
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-maxima hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-maxima
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-macro hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-macro
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-sql hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-sql
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-attach hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-attach
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-processing hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-processing
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ox-texinfo hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ox-texinfo
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-irc hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-irc
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-crypt hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-crypt
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-footnote hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-footnote
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/org-install hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/org-install
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-comint hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-comint
/Users/aaronjensen/.emacs.d/elpa/26.0/develop/org-plus-contrib-20180312/ob-shen hides /usr/local/Cellar/emacs-plus/HEAD-fbc7f9a/share/emacs/26.0.91/lisp/org/ob-shen

Features:
(descr-text thai-util thai-word org-clock browse-url company-lua
smartparens-lua lua-mode sh-script network-stream starttls mailalias
smtpmail mwim shadow sort mail-extr emacsbug sendmail cal-iso
company-tng flatui-theme magit-bookmark bookmark appt diary-lib
diary-loaddefs org-duration epa-file org-agenda org-gcal org-archive
request-deferred deferred request alert log4e notifications dbus xml
gntp executable magithub-completion fill-column-indicator magit-gitflow
two-column iso-transl eieio-opt speedbar sb-image ezimage dframe
auto-dim-other-buffers pp cl-print shrink-path vc-git open-junk-file
overseer pkg-info epl auto-compile packed elisp-slime-nav eros
flycheck-package package-lint finder lispyville lispy iedit iedit-lib
multiple-cursors-core lispy-inline avy semantic/db semantic/util-modes
semantic/util semantic semantic/tag semantic/lex semantic/fw mode-local
cedet evil-ediff ediff-merg ediff-wind ediff-diff ediff-mult ediff-help
ediff-init ediff-util ediff edebug lispy-tags nameless goto-addr
auto-highlight-symbol dtrt-indent highlight-numbers parent-mode
highlight-parentheses hideshow rainbow-delimiters editorconfig-core
editorconfig-core-handle editorconfig-fnmatch company-statistics
company-files company-keywords company-dabbrev-code company-dabbrev
company-capf company-emoji company-emoji-list company-childframe
posframe company org-eldoc evil-org org-table ob-shell ob-ruby
org-bullets org-download toc-org typo yasnippet-snippets yasnippet
elec-pair face-remap org-indent image-file org-rmail org-mhe org-irc
org-info org-gnus nnir gnus-sum gnus-group gnus-undo gnus-start
gnus-cloud nnimap nnmail mail-source utf7 netrc nnoo gnus-spec gnus-int
gnus-range gnus-win gnus nnheader org-docview doc-view jka-compr
org-bibtex bibtex org-bbdb org-w3m org-checklist org-inlinetask
smartparens-org ob-elixir ob-http ob-http-mode ob-restclient restclient
ox-gfm ox-md ox-reveal ox-odt rng-loc rng-uri rng-parse rng-match rng-dt
rng-util rng-pttrn nxml-parse nxml-ns nxml-enc xmltok nxml-util ox-latex
ox-icalendar ox-html table ox-ascii ox-publish ox orgit org-element
avl-tree generator magithub magithub-dash magithub-notification
magithub-issue-view magithub-comment magithub-repo magithub-orgs
magithub-issue-tricks magithub-issue-post magithub-edit-mode magithub-ci
magithub-issue magithub-label magithub-user magithub-core magithub-faces
magithub-settings smartparens-markdown markdown-mode bug-reference ghub+
apiwrap apropos evil-magit git-rebase magit-gh-pulls gh gh-users
gh-issues gh-pulls gh-repos gh-comments gh-gist gh-oauth gh-api logito
gh-cache gh-auth gh-url url-http tls gnutls url-gw nsm gh-profile
magit-obsolete magit-blame magit-stash magit-bisect magit-remote
magit-commit magit-sequence magit-notes magit-worktree magit-tag
magit-merge magit-branch magit-reset magit-collab ghub url-auth url
url-proxy url-privacy url-expand url-methods url-history url-cookie
url-domsuf url-util mailcap magit-files magit-refs magit-status magit
magit-repos magit-apply magit-wip magit-log magit-diff smerge-mode
magit-core magit-autorevert magit-process magit-margin magit-mode org
org-macro org-footnote org-pcomplete org-list org-faces org-entities
org-version ob-emacs-lisp ob ob-tangle org-src ob-ref ob-lob ob-table
ob-keys ob-exp ob-comint ob-core ob-eval org-compat org-macs
org-loaddefs cal-menu calendar cal-loaddefs colir smex
git-gutter-fringe+ fringe-helper git-gutter+ git-commit with-editor
magit-git magit-section magit-utils crm magit-popup async-bytecomp async
log-edit message rmc puny rfc822 mml mml-sec epa gnus-util rmail
rmail-loaddefs mailabbrev mail-utils gmm-utils mailheader pcvs-util
add-log recentf tree-widget desktop frameset wakatime-mode
contextual-menubar quiet-emacs fill-or-unfill
init-macos-terminal-copy-paste init-flyspell init-terminal-cursor
evil-terminal-cursor-changer init-org init-magit evil-mc
evil-mc-command-execute evil-mc-command-record evil-mc-cursor-make
evil-mc-region evil-mc-cursor-state evil-mc-undo evil-mc-vars
evil-mc-known-commands evil-mc-common hl-todo persistent-soft list-utils
pcache eieio-base font-utils server zone xterm-color
spacemacs-whitespace-cleanup ws-butler winum winner
spacemacs-purpose-popwin window-purpose-x imenu-list imenu
window-purpose window-purpose-fixes window-purpose-prefix-overload
window-purpose-switch window-purpose-layout window-purpose-core
window-purpose-configuration window-purpose-utils volatile-highlights
vi-tilde-fringe unicode-fonts tmux string-inflection smartparens-config
smartparens-text smartparens-ruby saveplace savehist ruby-test-mode
pcre2el rxt re-builder projectile-rails rake f inflections inf-ruby
ruby-mode smie projectile grep ibuf-ext ibuffer ibuffer-loaddefs popwin
persp-mode osx-trash origami origami-parsers s linum ivy-hydra info+
image-mode google-c-style flycheck-pos-tip pos-tip flycheck find-func
flx-ido eyebrowse evil-surround evil-search-highlight-persist
evil-numbers evil-lisp-state smartparens dash evil-lion evil-indent-plus
evil-exchange evil-escape evil-args evil-anzu anzu eval-sexp-fu
highlight font-lock+ frame-fns avoid editorconfig noutline outline
doom-modeline let-alist powerline-separators color all-the-icons
all-the-icons-faces data-material data-weathericons data-octicons
data-fileicons data-faicons data-alltheicons memoize diff-hl vc-dir ewoc
vc vc-dispatcher diff-mode counsel dired dired-loaddefs compile esh-util
etags xref project swiper ivy flx delsel ivy-overlay ffap
clean-aindent-mode adaptive-wrap gh-common marshal rx docker-tramp
tramp-cache hybrid-mode evil-evilified-state which-key use-package
use-package-ensure use-package-delight use-package-diminish
use-package-bind-key bind-key use-package-core hydra lv
exec-path-from-shell cus-edit cus-start cus-load evil evil-integration
undo-tree diff evil-maps evil-commands reveal flyspell ispell evil-jumps
evil-command-window evil-types evil-search evil-ex evil-macros
evil-repeat evil-states evil-core evil-common windmove thingatpt rect
evil-digraphs diminish evil-vars bind-map quelpa help-fns radix-tree
package-build mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047
rfc2045 mm-util ietf-drums mail-prsvr json map lisp-mnt hl-line xt-mouse
autorevert filenotify cl-extra disp-table wid-edit monokai-theme info
finder-inf patch-server init-sass init-php init-html init-evil tramp
tramp-compat tramp-loaddefs trampver shell pcomplete comint ansi-color
ring parse-time format-spec ido-vertical-mode ido core-spacemacs
core-use-package-ext core-transient-state core-micro-state core-toggle
core-keybindings core-fonts-support core-themes-support
core-display-init core-jump core-release-management core-custom-settings
core-configuration-layer eieio-compat core-spacemacs-buffer core-funcs
core-dotspacemacs ht cl help-mode warnings package url-handlers
url-parse auth-source cl-seq password-cache url-vars seq eieio byte-opt
bytecomp byte-compile cconv eieio-core eieio-loaddefs epg epg-config
core-command-line pcase core-debug edmacro kmacro derived cl-macs gv
advice profiler easymenu cl-loaddefs cl-lib page-break-lines easy-mmode
core-emacs-backports subr-x time-date tooltip eldoc electric uniquify
ediff-hook vc-hooks lisp-float-type mwheel term/ns-win ns-win
ucs-normalize mule-util term/common-win tool-bar dnd fontset image
regexp-opt fringe tabulated-list replace newcomment text-mode elisp-mode
lisp-mode prog-mode register page menu-bar rfn-eshadow isearch timer
select scroll-bar mouse jit-lock font-lock syntax facemenu font-core
term/tty-colors frame cl-generic cham georgian utf-8-lang misc-lang
vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932
hebrew greek romanian slovak czech european ethiopic indian cyrillic
chinese composite charscript charprop case-table epa-hook jka-cmpr-hook
help simple abbrev obarray minibuffer cl-preloaded nadvice loaddefs
button faces cus-face macroexp files text-properties overlay sha1 md5
base64 format env code-pages mule custom widget hashtable-print-readable
backquote kqueue cocoa ns lcms2 multi-tty make-network-process emacs)

Memory information:
((conses 16 1897448 368387)
 (symbols 48 97951 1)
 (miscs 40 5330 6660)
 (strings 32 407685 7312)
 (string-bytes 1 12929152)
 (vectors 16 157277)
 (vector-slots 8 3971513 227166)
 (floats 8 1084 1161)
 (intervals 56 67810 2086)
 (buffers 992 91))





^ permalink raw reply	[flat|nested] 12+ messages in thread

* bug#30815: 26.0.91; unicode right single quote mark with syntax entry of w not respected by forward-word
  2018-03-14  0:14 bug#30815: 26.0.91; unicode right single quote mark with syntax entry of w not respected by forward-word Aaron Jensen
@ 2018-03-14  1:11 ` Noam Postavsky
  2018-03-14  2:07   ` Aaron Jensen
  0 siblings, 1 reply; 12+ messages in thread
From: Noam Postavsky @ 2018-03-14  1:11 UTC (permalink / raw)
  To: Aaron Jensen; +Cc: 30815

unarchive 10494
close 30815
merge 30815 10494
quit

Aaron Jensen <aaronjensen@gmail.com> writes:

> Perhaps I'm doing something wrong or there's some setting I'm missing,
> but this doesn't appear to work as I'd expect.
>
> 1. emacs -Q
> 2. M-: (modify-syntax-entry ?’ "w" text-mode-syntax-table)
> 3. Type (note the unicode ’): doesn’t
> 4. Use M-b/M-f to get to the beginning of the line and back to the end
>
> Actual behavior:
>
> M-b and M-f stop at the ’ instead of bypassing it. Compare it to doing
> the same thing with ?_.
>
> Expected behavior:
>
> ’ is treated as part of the word and is skipped over by M-f and M-b

See `(elisp) Word Motion':

     Characters that belong to different scripts (as defined by
     `char-syntax-table'), also define a word boundary

and discussion in Bug#10494 which prompted the update of that section.

Hmm, I think I meant `char-script-table', as `char-syntax-table' doesn't
seem to exist...







^ permalink raw reply	[flat|nested] 12+ messages in thread

* bug#30815: 26.0.91; unicode right single quote mark with syntax entry of w not respected by forward-word
  2018-03-14  1:11 ` Noam Postavsky
@ 2018-03-14  2:07   ` Aaron Jensen
  2018-03-14  2:24     ` Noam Postavsky
  0 siblings, 1 reply; 12+ messages in thread
From: Aaron Jensen @ 2018-03-14  2:07 UTC (permalink / raw)
  To: Noam Postavsky; +Cc: 30815

On Tue, Mar 13, 2018 at 6:11 PM, Noam Postavsky <npostavs@gmail.com> wrote:
> See `(elisp) Word Motion':
>
>      Characters that belong to different scripts (as defined by
>      `char-syntax-table'), also define a word boundary
>
> and discussion in Bug#10494 which prompted the update of that section.
>
> Hmm, I think I meant `char-script-table', as `char-syntax-table' doesn't
> seem to exist...

Thank you for the pointer. FWIW, I checked the docs of forward-word
which only talks about buffer syntax tables. Perhaps that should
either reference the Word Motion docs or it should also describe the
whole picture.

Also, as I understand the thread it seems like this is "by design" and
there's no good/accepted way to get it to behave as I want without
risking breaking unknown things.





^ permalink raw reply	[flat|nested] 12+ messages in thread

* bug#30815: 26.0.91; unicode right single quote mark with syntax entry of w not respected by forward-word
  2018-03-14  2:07   ` Aaron Jensen
@ 2018-03-14  2:24     ` Noam Postavsky
  2018-03-14  2:43       ` Aaron Jensen
  2018-03-14 15:59       ` Eli Zaretskii
  0 siblings, 2 replies; 12+ messages in thread
From: Noam Postavsky @ 2018-03-14  2:24 UTC (permalink / raw)
  To: Aaron Jensen; +Cc: 30815

[-- Attachment #1: Type: text/plain, Size: 339 bytes --]

Aaron Jensen <aaronjensen@gmail.com> writes:

> Thank you for the pointer. FWIW, I checked the docs of forward-word
> which only talks about buffer syntax tables. Perhaps that should
> either reference the Word Motion docs or it should also describe the
> whole picture.

I think leaving the whole picture to the manual makes more sense.


[-- Attachment #2: patch --]
[-- Type: text/plain, Size: 1773 bytes --]

From 4c0a6f91b72aae7f43a93f2d286731fcd939fecd Mon Sep 17 00:00:00 2001
From: Noam Postavsky <npostavs@gmail.com>
Date: Tue, 13 Mar 2018 22:17:43 -0400
Subject: [PATCH] Improve word motion docs (Bug#30815)

* doc/lispref/positions.texi (Word Motion): Fix reference to
`char-script-table'.
* src/syntax.c (forward-word): Add link to 'Word Motion' manual
section.
---
 doc/lispref/positions.texi | 2 +-
 src/syntax.c               | 3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/doc/lispref/positions.texi b/doc/lispref/positions.texi
index 0a03e246c0..fdc8bb96ae 100644
--- a/doc/lispref/positions.texi
+++ b/doc/lispref/positions.texi
@@ -210,7 +210,7 @@ Word Motion
 modes can override that by setting up a suitable
 @code{find-word-boundary-function-table}, described below.  Characters
 that belong to different scripts (as defined by
-@code{char-syntax-table}), also define a word boundary
+@code{char-script-table}), also define a word boundary
 (@pxref{Character Properties}).  In any case, this function cannot
 move point past the boundary of the accessible portion of the buffer,
 or across a field boundary (@pxref{Fields}).  The most common case of
diff --git a/src/syntax.c b/src/syntax.c
index 378064611c..d3dd79229a 100644
--- a/src/syntax.c
+++ b/src/syntax.c
@@ -1555,7 +1555,8 @@ DEFUN ("forward-word", Fforward_word, Sforward_word, 0, 1, "^p",
 table, but `find-word-boundary-function-table', such as set up
 by `subword-mode', can change that.  If a Lisp program needs to
 move by words determined strictly by the syntax table, it should
-use `forward-word-strictly' instead.  */)
+use `forward-word-strictly' instead.  See Info node `(elisp) Word
+Motion' for details.  */)
   (Lisp_Object arg)
 {
   Lisp_Object tmp;
-- 
2.11.0


[-- Attachment #3: Type: text/plain, Size: 417 bytes --]


> Also, as I understand the thread it seems like this is "by design" and
> there's no good/accepted way to get it to behave as I want without
> risking breaking unknown things.

Well, just taking the syntax entry as the sole source of truth and
ignoring the character script is probably the wrong thing.  

Maybe there is some other way to get the wanted behaviour though.  I
also found Bug#13129 asking about this.

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* bug#30815: 26.0.91; unicode right single quote mark with syntax entry of w not respected by forward-word
  2018-03-14  2:24     ` Noam Postavsky
@ 2018-03-14  2:43       ` Aaron Jensen
  2018-03-14 16:09         ` Eli Zaretskii
  2018-03-14 15:59       ` Eli Zaretskii
  1 sibling, 1 reply; 12+ messages in thread
From: Aaron Jensen @ 2018-03-14  2:43 UTC (permalink / raw)
  To: Noam Postavsky; +Cc: 30815

On Tue, Mar 13, 2018 at 7:24 PM, Noam Postavsky <npostavs@gmail.com> wrote:
> I think leaving the whole picture to the manual makes more sense.

Works for me. I think that patch will help. Would it be worth updating
`backward-word' as well, it has essentially the same docstring.

> Well, just taking the syntax entry as the sole source of truth and
> ignoring the character script is probably the wrong thing.

Is the case for this when two words of different scripts are next to
each other? I suppose that'd make sense if they also didn't have a
space between them for some reason (probably possible with some
languages)

> Maybe there is some other way to get the wanted behaviour though.  I
> also found Bug#13129 asking about this.

Since the right quote is part of the General Punctuation script
(afaict), what if some scripts, like that one, were treated neutrally?
That is, they derived their behavior solely from the syntax entry.
This is probably a bad idea for a number of reasons I don't even know
I don't know.





^ permalink raw reply	[flat|nested] 12+ messages in thread

* bug#30815: 26.0.91; unicode right single quote mark with syntax entry of w not respected by forward-word
  2018-03-14  2:24     ` Noam Postavsky
  2018-03-14  2:43       ` Aaron Jensen
@ 2018-03-14 15:59       ` Eli Zaretskii
  2018-03-14 23:19         ` Noam Postavsky
  1 sibling, 1 reply; 12+ messages in thread
From: Eli Zaretskii @ 2018-03-14 15:59 UTC (permalink / raw)
  To: Noam Postavsky; +Cc: 30815, aaronjensen

> From: Noam Postavsky <npostavs@gmail.com>
> Date: Tue, 13 Mar 2018 22:24:46 -0400
> Cc: 30815@debbugs.gnu.org
> 
> diff --git a/src/syntax.c b/src/syntax.c
> index 378064611c..d3dd79229a 100644
> --- a/src/syntax.c
> +++ b/src/syntax.c
> @@ -1555,7 +1555,8 @@ DEFUN ("forward-word", Fforward_word, Sforward_word, 0, 1, "^p",
>  table, but `find-word-boundary-function-table', such as set up
>  by `subword-mode', can change that.  If a Lisp program needs to
>  move by words determined strictly by the syntax table, it should
> -use `forward-word-strictly' instead.  */)
> +use `forward-word-strictly' instead.  See Info node `(elisp) Word
> +Motion' for details.  */)

I think we should at least mention char-script-table before sending
the reader to the manual.  Currently we mention the syntax table, but
keep complete silence regarding the script differences.

Thanks.





^ permalink raw reply	[flat|nested] 12+ messages in thread

* bug#30815: 26.0.91; unicode right single quote mark with syntax entry of w not respected by forward-word
  2018-03-14  2:43       ` Aaron Jensen
@ 2018-03-14 16:09         ` Eli Zaretskii
  2018-03-14 17:43           ` Aaron Jensen
  0 siblings, 1 reply; 12+ messages in thread
From: Eli Zaretskii @ 2018-03-14 16:09 UTC (permalink / raw)
  To: Aaron Jensen; +Cc: 30815, npostavs

> From: Aaron Jensen <aaronjensen@gmail.com>
> Date: Tue, 13 Mar 2018 19:43:03 -0700
> Cc: 30815@debbugs.gnu.org
> 
> Is the case for this when two words of different scripts are next to
> each other? I suppose that'd make sense if they also didn't have a
> space between them for some reason (probably possible with some
> languages)
> 
> > Maybe there is some other way to get the wanted behaviour though.  I
> > also found Bug#13129 asking about this.
> 
> Since the right quote is part of the General Punctuation script
> (afaict), what if some scripts, like that one, were treated neutrally?
> That is, they derived their behavior solely from the syntax entry.
> This is probably a bad idea for a number of reasons I don't even know
> I don't know.

We could introduce a new script, say, 'punctuation', and treat that
specially.  Doing that with all the characters of the 'symbol' script
is probably not what users will expect, I invite you to look in
charscript.el where you will see what Unicode blocks belong to
'symbol'.  So we will have to decide which characters to assign to
that new script.

But before we discuss this issue more, I think we need to talk about
the goals.  E.g., is this only for text-derived modes, or also for
programming modes?  More generally, why did you want to change the
syntax entry of ’ ?

The next question is what other characters need this special handling,
and how many of them are there?

Armed with answers to these questions, we could then decide how to
implement the requested feature, if at all.

Btw, you should know that in some quarters using ’ as an apostrophe is
anathema: they maintain one should use u+02B7 MODIFIER LETTER
APOSTROPHE instead, in particular because it doesn't have the script
disparity issue in this context.  See, for example, this URL:

  https://tedclancy.wordpress.com/2015/06/03/which-unicode-character-should-represent-the-english-apostrophe-and-why-the-unicode-committee-is-very-wrong/





^ permalink raw reply	[flat|nested] 12+ messages in thread

* bug#30815: 26.0.91; unicode right single quote mark with syntax entry of w not respected by forward-word
  2018-03-14 16:09         ` Eli Zaretskii
@ 2018-03-14 17:43           ` Aaron Jensen
  2018-03-14 17:51             ` Eli Zaretskii
  0 siblings, 1 reply; 12+ messages in thread
From: Aaron Jensen @ 2018-03-14 17:43 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 30815, Noam Postavsky

On Wed, Mar 14, 2018 at 9:09 AM, Eli Zaretskii <eliz@gnu.org> wrote:
> But before we discuss this issue more, I think we need to talk about
> the goals.  E.g., is this only for text-derived modes, or also for
> programming modes?  More generally, why did you want to change the
> syntax entry of ’ ?

I wanted to change it because I started to use typo-mode:
https://github.com/jorgenschaefer/typoel which automatically turned
apostrophes I typed into right quotes in my org-mode files (which is
where I had it enabled). I was ok with this, but I wanted them to
behave like apostrophes did (not being word boundaries and all) so I
went down this path.

I have since unbound ' in that mode, so it just inserts a normal
apostrophe. I'm aware of the "controversy" surrounding the different
characters and, to be honest, I can't be bothered. Filing this bug was
a light weight attempt to see if I was missing something and/or if
this was unexpected.

For right quote in particular, it's probably even more nuanced. One
could use right quotes to close a single quoted piece of text. In
which case, that right quote probably shouldn't be a "word" in the
syntax table.

Because of all of that, I'm totally happy just using ' like a normal
person. I'm not an author writing manuscripts.

> The next question is what other characters need this special handling,
> and how many of them are there?

I do not know. None others that I know of, but that doesn't mean much.

> Btw, you should know that in some quarters using ’ as an apostrophe is
> anathema: they maintain one should use u+02B7 MODIFIER LETTER
> APOSTROPHE instead, in particular because it doesn't have the script
> disparity issue in this context.  See, for example, this URL:
>
>   https://tedclancy.wordpress.com/2015/06/03/which-unicode-character-should-represent-the-english-apostrophe-and-why-the-unicode-committee-is-very-wrong/

This is convincing enough for me and I didn't actually know about
U+02BC. That appears to work as it should out of the box. I'll open an
issue on typo-mode to see if they can add support for that.

I'm happy to consider this issue resolved (I know it's closed and was
merged into 10494) if everyone else is after the doc changes have been
merged in.

Thanks.





^ permalink raw reply	[flat|nested] 12+ messages in thread

* bug#30815: 26.0.91; unicode right single quote mark with syntax entry of w not respected by forward-word
  2018-03-14 17:43           ` Aaron Jensen
@ 2018-03-14 17:51             ` Eli Zaretskii
  0 siblings, 0 replies; 12+ messages in thread
From: Eli Zaretskii @ 2018-03-14 17:51 UTC (permalink / raw)
  To: Aaron Jensen; +Cc: 30815, npostavs

> From: Aaron Jensen <aaronjensen@gmail.com>
> Date: Wed, 14 Mar 2018 10:43:08 -0700
> Cc: Noam Postavsky <npostavs@gmail.com>, 30815@debbugs.gnu.org
> 
> I wanted to change it because I started to use typo-mode:
> https://github.com/jorgenschaefer/typoel which automatically turned
> apostrophes I typed into right quotes in my org-mode files (which is
> where I had it enabled). I was ok with this, but I wanted them to
> behave like apostrophes did (not being word boundaries and all) so I
> went down this path.
> 
> I have since unbound ' in that mode, so it just inserts a normal
> apostrophe. I'm aware of the "controversy" surrounding the different
> characters and, to be honest, I can't be bothered. Filing this bug was
> a light weight attempt to see if I was missing something and/or if
> this was unexpected.
> 
> For right quote in particular, it's probably even more nuanced. One
> could use right quotes to close a single quoted piece of text. In
> which case, that right quote probably shouldn't be a "word" in the
> syntax table.
> 
> Because of all of that, I'm totally happy just using ' like a normal
> person. I'm not an author writing manuscripts.
> 
> > The next question is what other characters need this special handling,
> > and how many of them are there?
> 
> I do not know. None others that I know of, but that doesn't mean much.

Well, if this is just about ’ , then we could simply change its script
to be 'latin'.  But, as you say, that would get in the way with quoted
text.

> I'm happy to consider this issue resolved (I know it's closed and was
> merged into 10494) if everyone else is after the doc changes have been
> merged in.

OK, let's wait for other comments, and consider this resolved if none
come up.

Thanks.





^ permalink raw reply	[flat|nested] 12+ messages in thread

* bug#30815: 26.0.91; unicode right single quote mark with syntax entry of w not respected by forward-word
  2018-03-14 15:59       ` Eli Zaretskii
@ 2018-03-14 23:19         ` Noam Postavsky
  2018-03-15  6:39           ` Eli Zaretskii
  0 siblings, 1 reply; 12+ messages in thread
From: Noam Postavsky @ 2018-03-14 23:19 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 30815, aaronjensen

[-- Attachment #1: Type: text/plain, Size: 321 bytes --]

Eli Zaretskii <eliz@gnu.org> writes:

> I think we should at least mention char-script-table before sending
> the reader to the manual.  Currently we mention the syntax table, but
> keep complete silence regarding the script differences.

But if we give away everything in the doc string, nobody will read the
manual ;)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: patch --]
[-- Type: text/x-diff, Size: 3311 bytes --]

From a37a09873b962e4fc273c690b34ed9aa43d17dd6 Mon Sep 17 00:00:00 2001
From: Noam Postavsky <npostavs@gmail.com>
Date: Tue, 13 Mar 2018 22:17:43 -0400
Subject: [PATCH] Improve word motion docs (Bug#30815)

* doc/lispref/positions.texi (Word Motion): Fix reference to
`char-script-table'.
* lisp/simple.el (backward-word):
* src/syntax.c (forward-word): Mention `char-script-table' and add
link to the 'Word Motion' manual section.
---
 doc/lispref/positions.texi |  2 +-
 lisp/simple.el             | 12 +++++++-----
 src/syntax.c               |  9 +++++----
 3 files changed, 13 insertions(+), 10 deletions(-)

diff --git a/doc/lispref/positions.texi b/doc/lispref/positions.texi
index 0a03e246c0..fdc8bb96ae 100644
--- a/doc/lispref/positions.texi
+++ b/doc/lispref/positions.texi
@@ -210,7 +210,7 @@ Word Motion
 modes can override that by setting up a suitable
 @code{find-word-boundary-function-table}, described below.  Characters
 that belong to different scripts (as defined by
-@code{char-syntax-table}), also define a word boundary
+@code{char-script-table}), also define a word boundary
 (@pxref{Character Properties}).  In any case, this function cannot
 move point past the boundary of the accessible portion of the buffer,
 or across a field boundary (@pxref{Fields}).  The most common case of
diff --git a/lisp/simple.el b/lisp/simple.el
index b7ad6ebd79..d8abeb3000 100644
--- a/lisp/simple.el
+++ b/lisp/simple.el
@@ -7027,11 +7027,13 @@ backward-word
 With argument ARG, do this that many times.
 If ARG is omitted or nil, move point backward one word.
 
-The word boundaries are normally determined by the buffer's syntax
-table, but `find-word-boundary-function-table', such as set up
-by `subword-mode', can change that.  If a Lisp program needs to
-move by words determined strictly by the syntax table, it should
-use `backward-word-strictly' instead."
+The word boundaries are normally determined by the buffer's
+syntax table and character script (according to
+`char-script-table'), but `find-word-boundary-function-table',
+such as set up by `subword-mode', can change that.  If a Lisp
+program needs to move by words determined strictly by the syntax
+table, it should use `backward-word-strictly' instead.  See Info
+node `(elisp) Word Motion' for details."
   (interactive "^p")
   (forward-word (- (or arg 1))))
 
diff --git a/src/syntax.c b/src/syntax.c
index 378064611c..e54325589f 100644
--- a/src/syntax.c
+++ b/src/syntax.c
@@ -1552,10 +1552,11 @@ DEFUN ("forward-word", Fforward_word, Sforward_word, 0, 1, "^p",
 noticed if `inhibit-field-text-motion' is non-nil.
 
 The word boundaries are normally determined by the buffer's syntax
-table, but `find-word-boundary-function-table', such as set up
-by `subword-mode', can change that.  If a Lisp program needs to
-move by words determined strictly by the syntax table, it should
-use `forward-word-strictly' instead.  */)
+table and character script (according to `char-script-table'), but
+`find-word-boundary-function-table', such as set up by `subword-mode',
+can change that.  If a Lisp program needs to move by words determined
+strictly by the syntax table, it should use `forward-word-strictly'
+instead.  See Info node `(elisp) Word Motion' for details.  */)
   (Lisp_Object arg)
 {
   Lisp_Object tmp;
-- 
2.11.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* bug#30815: 26.0.91; unicode right single quote mark with syntax entry of w not respected by forward-word
  2018-03-14 23:19         ` Noam Postavsky
@ 2018-03-15  6:39           ` Eli Zaretskii
  2018-03-17  0:03             ` Noam Postavsky
  0 siblings, 1 reply; 12+ messages in thread
From: Eli Zaretskii @ 2018-03-15  6:39 UTC (permalink / raw)
  To: Noam Postavsky; +Cc: 30815, aaronjensen

> From: Noam Postavsky <npostavs@gmail.com>
> Cc: 30815@debbugs.gnu.org,  aaronjensen@gmail.com
> Date: Wed, 14 Mar 2018 19:19:22 -0400
> 
> But if we give away everything in the doc string, nobody will read the
> manual ;)

Right.

> >From a37a09873b962e4fc273c690b34ed9aa43d17dd6 Mon Sep 17 00:00:00 2001
> From: Noam Postavsky <npostavs@gmail.com>
> Date: Tue, 13 Mar 2018 22:17:43 -0400
> Subject: [PATCH] Improve word motion docs (Bug#30815)
> 
> * doc/lispref/positions.texi (Word Motion): Fix reference to
> `char-script-table'.
> * lisp/simple.el (backward-word):
> * src/syntax.c (forward-word): Mention `char-script-table' and add
> link to the 'Word Motion' manual section.

LGTM, thanks.





^ permalink raw reply	[flat|nested] 12+ messages in thread

* bug#30815: 26.0.91; unicode right single quote mark with syntax entry of w not respected by forward-word
  2018-03-15  6:39           ` Eli Zaretskii
@ 2018-03-17  0:03             ` Noam Postavsky
  0 siblings, 0 replies; 12+ messages in thread
From: Noam Postavsky @ 2018-03-17  0:03 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 30815, aaronjensen

close 13129
merge 30815 13129
quit

Eli Zaretskii <eliz@gnu.org> writes:

>> Subject: [PATCH] Improve word motion docs (Bug#30815)

> LGTM, thanks.

Pushed to emacs-26.

[1: 10bd3b3af8]: 2018-03-16 19:51:28 -0400
  Improve word motion docs (Bug#30815)
  https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=10bd3b3af8acfc226acadc654298865cffc19cc9





^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2018-03-17  0:03 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-03-14  0:14 bug#30815: 26.0.91; unicode right single quote mark with syntax entry of w not respected by forward-word Aaron Jensen
2018-03-14  1:11 ` Noam Postavsky
2018-03-14  2:07   ` Aaron Jensen
2018-03-14  2:24     ` Noam Postavsky
2018-03-14  2:43       ` Aaron Jensen
2018-03-14 16:09         ` Eli Zaretskii
2018-03-14 17:43           ` Aaron Jensen
2018-03-14 17:51             ` Eli Zaretskii
2018-03-14 15:59       ` Eli Zaretskii
2018-03-14 23:19         ` Noam Postavsky
2018-03-15  6:39           ` Eli Zaretskii
2018-03-17  0:03             ` Noam Postavsky

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).