bug#30141: 26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes

classic Classic list List threaded Threaded
32 messages Options
12
Reply | Threaded
Open this post in threaded view
|

bug#30141: 26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes

Aaron Jensen

The code I introduced in 804b37ca63 to save and restore text-pixel dimensions appears
to be flaky because I do not always set the frame parameter
frameset--text-pixel-height, so it occasionally keeps the old value if
you size from a pixel size to a non-pixel size.

Is it better to set that to nil every time or is there some code that is
missing that is meant to clear that frame parameter after restoring the desktop?



In GNU Emacs 26.0.91 (build 1, x86_64-apple-darwin17.3.0, NS appkit-1561.20 Version 10.13.2 (Build 17C205))
 of 2018-01-13 built on aaron-mbt.local
Repository revision: 5dd0e5c54d29e81c07798a124295c8c3f016d621
Windowing system distributor 'Apple', version 10.3.1561
Recent messages:
Wrote /Users/aaronjensen/.emacs.d/.cache/work.org
Fetched data overwrote
/Users/aaronjensen/.emacs.d/.cache/work.org
Saving file /Users/aaronjensen/.emacs.d/.cache/personal.org...
Wrote /Users/aaronjensen/.emacs.d/.cache/personal.org
Fetched data overwrote
/Users/aaronjensen/.emacs.d/.cache/personal.org
Decrypting /Users/aaronjensen/Dropbox (Personal)/Notes/Layer.org.gpg...done
Decrypting /Users/aaronjensen/Dropbox (Personal)/Family Notes/Bernard.org.gpg...done
Added 5 events for today

Configured using:
 'configure --disable-dependency-tracking --disable-silent-rules
 --enable-locallisppath=/usr/local/share/emacs/site-lisp
 --infodir=/usr/local/Cellar/emacs-plus/HEAD-5dd0e5c/share/info/emacs
 --prefix=/usr/local/Cellar/emacs-plus/HEAD-5dd0e5c --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 LCMS2

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

Major mode: RJSX

Minor modes in effect:
  eslintd-fix-mode: t
  flow-js2-mode: t
  flow-minor-mode: t
  js2-imenu-extras-mode: t
  skewer-mode: t
  cursor-sensor-mode: t
  flycheck-popup-tip-mode: t
  eros-mode: t
  goto-address-prog-mode: t
  bug-reference-prog-mode: t
  auto-highlight-symbol-mode: t
  highlight-numbers-mode: t
  highlight-parentheses-mode: t
  rainbow-delimiters-mode: t
  emoji-cheat-sheet-plus-display-mode: t
  company-statistics-mode: t
  company-mode: t
  yas-global-mode: t
  yas-minor-mode: t
  magit-auto-revert-mode: t
  global-git-gutter+-mode: t
  git-gutter+-mode: t
  global-git-commit-mode: t
  async-bytecomp-package-mode: t
  recentf-mode: t
  auto-dim-other-buffers-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
  spaceline-info-mode: t
  spaceline-helm-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
  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
  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
  global-edit-server-edit-mode: t
  dtrt-indent-mode: t
  diff-auto-refine-mode: t
  counsel-mode: t
  ivy-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
  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
  auto-revert-mode: t
  shell-dirtrack-mode: t
  ido-vertical-mode: t
  global-page-break-lines-mode: t
  global-eldoc-mode: t
  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
  transient-mark-mode: t
  abbrev-mode: t
  hs-minor-mode: t

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

Features:
(shadow sort mail-extr emacsbug sendmail magit-bookmark bookmark
org-projectile org-category-capture org-capture hippie-exp
fill-column-indicator tabify network-stream starttls company-tng wgrep
magit-gitflow eslintd-fix flow-js2-mode flow-minor-mode company-flow
js-doc iswitchb js2-imenu-extras js2-refactor js2r-paredit
js2r-conveniences js2r-conditionals js2r-wrapping js2r-functions
js2r-vars multiple-cursors-core js2r-iife js2r-formatting js2r-helpers
skewer-mode cache-table simple-httpd add-node-modules-path cursor-sensor
rjsx-mode js2-mode smartparens-javascript js smartparens-html sgml-mode
dom cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align
cc-engine cc-vars cc-defs counsel-projectile flycheck-credo
flycheck-rust flycheck-popup-tip popup sh-script misearch multi-isearch
overseer pkg-info epl auto-compile packed elisp-slime-nav eros
flycheck-package package-lint finder lispyville lispy iedit iedit-lib
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 bug-reference
auto-highlight-symbol highlight-numbers parent-mode
highlight-parentheses hideshow rainbow-delimiters eieio-opt speedbar
sb-image ezimage dframe appt diary-lib diary-loaddefs org-duration
epa-file org-agenda executable pp emoji-cheat-sheet-plus helm
helm-source helm-multi-match helm-lib vc-git open-junk-file
company-statistics company-files company-keywords company-dabbrev-code
company-dabbrev company-capf company-emoji company-emoji-list
company-childframe company org-eldoc evil-org org-table ob-shell ob-ruby
org-bullets org-download toc-org yasnippet-snippets yasnippet elec-pair
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 editorconfig-core
editorconfig-core-handle editorconfig-fnmatch org-gcal org-archive
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 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 magit-obsolete
magit-blame magit-stash magit-bisect magit-remote magit-commit
magit-sequence magit-notes magit-worktree magit-branch magit-collab ghub
url-auth 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 request-deferred deferred request url url-proxy
url-privacy url-expand url-methods url-history url-cookie url-domsuf
url-util mailcap alert log4e notifications dbus xml gntp
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 colir smex recentf tree-widget desktop frameset face-remap
auto-dim-other-buffers 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
spacemacs-whitespace-cleanup ws-butler winum winner
spacemacs-purpose-popwin diminish window-purpose-x imenu-list imenu
window-purpose window-purpose-fixes window-purpose-prefix-overload
window-purpose-switch let-alist window-purpose-layout
window-purpose-core window-purpose-configuration window-purpose-utils
volatile-highlights vi-tilde-fringe unicode-fonts tmux string-inflection
spaceline-config spaceline-segments spaceline powerline
powerline-separators color powerline-themes smartparens-config
smartparens-text smartparens-ruby saveplace savehist ruby-test-mode
pcre2el rxt re-builder projectile-rails rake inflections inf-ruby
ruby-mode smie projectile grep ibuf-ext ibuffer ibuffer-loaddefs popwin
persp-mode osx-trash origami origami-parsers linum ivy-hydra info+
image-mode flycheck-pos-tip pos-tip flycheck-flow flycheck find-func
flx-ido eyebrowse evil-surround evil-search-highlight-persist
evil-numbers evil-lisp-state smartparens evil-lion evil-indent-plus
evil-exchange evil-escape evil-args evil-anzu anzu eval-sexp-fu
highlight font-lock+ frame-fns avoid eterm-256color f term ehelp
xterm-color editorconfig edit-server noutline outline dtrt-indent
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 gh-profile s
marshal dash rx docker-tramp tramp-cache hybrid-mode
exec-path-from-shell 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 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 evil-vars
bind-map info 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 finder-inf
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 1560653 1424924)
 (symbols 48 95227 3)
 (miscs 40 5390 23619)
 (strings 32 304822 192480)
 (string-bytes 1 10676174)
 (vectors 16 163287)
 (vector-slots 8 3617114 393274)
 (floats 8 825 5459)
 (intervals 56 43356 16735)
 (buffers 992 626))



Reply | Threaded
Open this post in threaded view
|

bug#30141: (26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes)

Aaron Jensen
This fixes the problem, but I’m not sure if it’s the proper way to go.
None of the other temporary frameset params are here. Could someone
take a look at this please and let me know if it seems right?

Thanks,

Aaron
Reply | Threaded
Open this post in threaded view
|

bug#30141: (26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes)

Robert Pluim
Aaron Jensen <[hidden email]> writes:

> This fixes the problem, but I’m not sure if it’s the proper way to go.
> None of the other temporary frameset params are here. Could someone
> take a look at this please and let me know if it seems right?
>

It would be easier to answer that question if your patch didn't have
lots of whitespace changes mixed in.

Robert



Reply | Threaded
Open this post in threaded view
|

bug#30141: 26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes

martin rudalics
In reply to this post by Aaron Jensen
 > The code I introduced in 804b37ca63 to save and restore text-pixel dimensions appears
 > to be flaky because I do not always set the frame parameter
 > frameset--text-pixel-height, so it occasionally keeps the old value if
 > you size from a pixel size to a non-pixel size.

Can you please give a more detailed scenario of what happens in
practice.  Is this prevalence of pixel sizes something which occurs
after the frameset was restored or already during restoration?

 > Is it better to set that to nil every time

It shouldn't harm to do that.

 > or is there some code that is
 > missing that is meant to clear that frame parameter after restoring the desktop?

We probably should add code to reset all frame parameters installed by
`frameset--record-relationships' after the frameset has been restored.

BTW I've never been able to understand why we don't have code to
remove frame and window parameters.  'frameset--' parameters are just
gruft for the following session IIUC.

martin



Reply | Threaded
Open this post in threaded view
|

bug#30141: (26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes)

martin rudalics
In reply to this post by Aaron Jensen
 > This fixes the problem, but I’m not sure if it’s the proper way to go.
 > None of the other temporary frameset params are here. Could someone
 > take a look at this please and let me know if it seems right?

Doesn't look wrong to me.  But if we use it we'd have to change the
comment below:

;; Values :save and :restore are not used in this package, because usually if
;; you don't want to save a parameter, you don't want to restore it either.
;; But they can be useful, for example, if you already have a saved frameset
;; created with some intent, and want to reuse it for a different objective
;; where the expected parameter list has different requirements.

martin




Reply | Threaded
Open this post in threaded view
|

bug#30141: (26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes)

Aaron Jensen
In reply to this post by Robert Pluim
From: Robert Pluim (mailto:[hidden email])
> It would be easier to answer that question if your patch didn't have
> lots of whitespace changes mixed in.

I agree, which is why I’m not a fan of alignment like this, but I was
following the style in the file. Here is the meat:

 (defvar frameset-persistent-filter-alist
   (nconc
    '((background-color   . frameset-filter-sanitize-color)
      ... elided ...
+     (frameset--text-pixel-height . :save)
+     (frameset--text-pixel-width  . :save)

Aaron



Reply | Threaded
Open this post in threaded view
|

bug#30141: (26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes)

Aaron Jensen
In reply to this post by martin rudalics
From: martin rudalics (mailto:[hidden email])
> Doesn't look wrong to me. But if we use it we'd have to change the
> comment below:

Updated patch attached.

I tried out a naive approach to filtering (filter out all frameset--
params when restoring) and it broke on the mini buffer restoring,
though I didn’t debug the exact issue.

Reading over the code makes me wonder if I put the text pixel
width/height saving code in the wrong place,
frameset--record-relationships, as it is named, seems to be more about
the relationships between frames. Tossing in pixel sizing in there is
a bit misplaced probably. Maybe it would be more appropriate to add a
custom width/height filter that would save the text pixel width/height
while filtering.

Either way, this patch fixes a bug so it is probably worth applying if
you’re good with it.

Thanks,

Aaron

patch2 (5K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

bug#30141: (26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes)

Aaron Jensen
Further improved patch attached. There was some additional
documentation needed for the newly filtered params.

Aaron

0001-Filter-out-text-pixel-height-when-restoring-Bug-3014.patch (6K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

bug#30141: (26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes)

martin rudalics
In reply to this post by Aaron Jensen
 > Either way, this patch fixes a bug so it is probably worth applying if
 > you’re good with it.

You haven't yet answered my earlier question:

   Can you please give a more detailed scenario of what happens in
   practice.  Is this prevalence of pixel sizes something which occurs
   after the frameset was restored or already during restoration?

Can you please try to do that?  How do these parameters get into the
way of things?

Thanks, martin




Reply | Threaded
Open this post in threaded view
|

bug#30141: (26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes)

Aaron Jensen
From: martin rudalics (mailto:[hidden email])
> Can you please give a more detailed scenario of what happens in
> practice. Is this prevalence of pixel sizes something which occurs
> after the frameset was restored or already during restoration?
>
> Can you please try to do that? How do these parameters get into the
> way of things?

Sorry, sure. The issue is when you have the frame sized to be a
non-multiple of the font-width (pixel sized), save the desktop, then
restart emacs and restore the desktop.

At this point you’ll have a pixel width in your frame parameters.

Then if you resize the frame to be a multiple of the font-width and
save the desktop, you end up writing the previous pixel widths because
they were in frame parameters and we do not reset them unless you are
using a non-multiple of the font width.

If that doesn’t make sense I can try and write up a repro when I get a chance.

Thanks,

Aaron



Reply | Threaded
Open this post in threaded view
|

bug#30141: (26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes)

martin rudalics
 > The issue is when you have the frame sized to be a
 > non-multiple of the font-width (pixel sized), save the desktop, then
 > restart emacs and restore the desktop.
 >
 > At this point you’ll have a pixel width in your frame parameters.
 >
 > Then if you resize the frame to be a multiple of the font-width and
 > save the desktop, you end up writing the previous pixel widths because
 > they were in frame parameters and we do not reset them unless you are
 > using a non-multiple of the font width.
 >
 > If that doesn’t make sense I can try and write up a repro when I get a chance.

Thanks, I understand now.  I'm afraid it's the implementation that
doesn't make sense but your patch does and should be applied.  I'm not
sure whether we still can do that on the release branch.  Eli?

Eventually, we should fix this in a more profound way, though I don't
know yet how.  When I wrote the code to allow pixelwise resizing of
frames, one major aim was to not interfere with existing behavior.  I
decided to use a global variable (`frame-resize-pixelwise') which was
intended for interfacing with the window manager: When nil, Emacs
should continue to work as before, when non-nil, the new pixelwise
behavior would be allowed to take over.

Mixing the two was not intended (at that time frameset.el didn't exist
yet).  Neither were pixel values for the 'width' and 'height' frame
parameters - 'text-pixels' was added later.  Whether an individual
frame would be resized pixelwise was decided by the PIXELWISE argument
of functions like `set-frame-size'.  And to make sure the latter would
succeed, on some systems making `frame-resize-pixelwise' non-nil was a
prerequisite.

This idea breaks when pixelwise and non-pixelwise behavior are mixed
in one and the same session either for one and the same frame or for
different frames.  It might be possible to fix that by adding a
'resize-pixelwise' frame parameter to override the global variable's
value.

But what's really needed are two different parameters for width and
height: One for the value that has been asked for by the user (to be
specified the way it is now now) and one for the value realized by the
windowing system (a simple pixel value).  Unfortunately, I have no
good idea how to keep these two apart.  Maybe we need three parameters
- the old 'width' say, a 'requested-width' and a 'realized-width'.
Which might be still insufficient - what would the 'realized-width' of
a maximized or fullscreen frame be?

martin




Reply | Threaded
Open this post in threaded view
|

bug#30141: (26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes)

Eli Zaretskii
> Date: Sat, 20 Jan 2018 11:35:09 +0100
> From: martin rudalics <[hidden email]>
>
>  > The issue is when you have the frame sized to be a
>  > non-multiple of the font-width (pixel sized), save the desktop, then
>  > restart emacs and restore the desktop.
>  >
>  > At this point you’ll have a pixel width in your frame parameters.
>  >
>  > Then if you resize the frame to be a multiple of the font-width and
>  > save the desktop, you end up writing the previous pixel widths because
>  > they were in frame parameters and we do not reset them unless you are
>  > using a non-multiple of the font width.
>  >
>  > If that doesn’t make sense I can try and write up a repro when I get a chance.
>
> Thanks, I understand now.  I'm afraid it's the implementation that
> doesn't make sense but your patch does and should be applied.  I'm not
> sure whether we still can do that on the release branch.  Eli?

Not sure about the release branch.  AFAIU, this problem existed since
Emacs 24.4, and it rears its ugly head only in the situation described
above, where the frame is restored with pixel size that's not a
multiple of the default font, and then resized to be an exact multiple
before saving it, is that right?  If so, it sounds obscure enough for
us to be able to live with it until Emacs 27, I think.



Reply | Threaded
Open this post in threaded view
|

bug#30141: (26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes)

martin rudalics
 > Not sure about the release branch.  AFAIU, this problem existed since
 > Emacs 24.4, and it rears its ugly head only in the situation described
 > above, where the frame is restored with pixel size that's not a
 > multiple of the default font, and then resized to be an exact multiple
 > before saving it, is that right?  If so, it sounds obscure enough for
 > us to be able to live with it until Emacs 27, I think.

The problem didn't exist before commit
804b37ca63ecd68c5359febbedbec120c06918af because there was no way to
store pixel sizes via the frameset mechanism.  So the current patch is
merely a fix for that commit and not for some earlier behavior.

martin



Reply | Threaded
Open this post in threaded view
|

bug#30141: (26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes)

Eli Zaretskii
> Date: Sat, 20 Jan 2018 15:07:18 +0100
> From: martin rudalics <[hidden email]>
> CC: [hidden email], [hidden email]
>
> The problem didn't exist before commit
> 804b37ca63ecd68c5359febbedbec120c06918af because there was no way to
> store pixel sizes via the frameset mechanism.  So the current patch is
> merely a fix for that commit and not for some earlier behavior.

Then this is okay for emacs-26.

Thanks.



Reply | Threaded
Open this post in threaded view
|

bug#30141: (26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes)

martin rudalics
> Then this is okay for emacs-26.

Pushed now.

Thanks, martin





Reply | Threaded
Open this post in threaded view
|

bug#30141: (26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes)

martin rudalics
>> Then this is okay for emacs-26.
>
> Pushed now.

Bug closed now, martin





Reply | Threaded
Open this post in threaded view
|

bug#30141: (26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes)

Aaron Jensen
In reply to this post by Aaron Jensen
On Fri, Jan 19, 2018 at 11:00 AM, Aaron Jensen <[hidden email]> wrote:

> From: martin rudalics (mailto:[hidden email])
>> Can you please give a more detailed scenario of what happens in
>> practice. Is this prevalence of pixel sizes something which occurs
>> after the frameset was restored or already during restoration?
>>
>> Can you please try to do that? How do these parameters get into the
>> way of things?
>
> Sorry, sure. The issue is when you have the frame sized to be a non-multiple of the font-width (pixel sized), save the desktop, then restart emacs and restore the desktop.
>
> At this point you’ll have a pixel width in your frame parameters.
>
> Then if you resize the frame to be a multiple of the font-width and save the desktop, you end up writing the previous pixel widths because they were in frame parameters and we do not reset them unless you are using a non-multiple of the font width.
>
> If that doesn’t make sense I can try and write up a repro when I get a chance.

Unfortunately, I still run into this bug from time to time. I do not
know what the circumstances are, but occasionally emacs will save the
non-pixel width. I wonder if this has to do with the fact that I use
different fonts in different buffers (with variable-pitch-mode).

I cannot find a consistent way to reproduce it, but I see it often.

If it's ok, I'd like to always save as pixels when
`frame-resize-pixelwise' is non-nil rather than skipping the save if
the pixel size happens to fall on a multiple of text pixel width. It
would theoretically be a breaking change, but I can't imagine it being
one that people would be upset about.



Reply | Threaded
Open this post in threaded view
|

bug#30141: (26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes)

martin rudalics
 > If it's ok, I'd like to always save as pixels when
 > `frame-resize-pixelwise' is non-nil rather than skipping the save if
 > the pixel size happens to fall on a multiple of text pixel width. It
 > would theoretically be a breaking change, but I can't imagine it being
 > one that people would be upset about.

We could provide a 'resize-pixelwise' frame parameter which would
assure that saving is done in pixels for the corresponding frame.
Would that help?

martin



Reply | Threaded
Open this post in threaded view
|

bug#30141: (26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes)

Aaron Jensen
On Tue, Mar 13, 2018 at 12:26 AM, martin rudalics <[hidden email]> wrote:
>> If it's ok, I'd like to always save as pixels when
>> `frame-resize-pixelwise' is non-nil rather than skipping the save if
>> the pixel size happens to fall on a multiple of text pixel width. It
>> would theoretically be a breaking change, but I can't imagine it being
>> one that people would be upset about.
>
> We could provide a 'resize-pixelwise' frame parameter which would
> assure that saving is done in pixels for the corresponding frame.
> Would that help?

Yes, that would work for me. So then setting that frame-parameter
would be manual and separate from setting `frame-resize-pixelwise'?



Reply | Threaded
Open this post in threaded view
|

bug#30141: (26.0.91; text-pixel dimensions not properly saved by desktop-save-mode sometimes)

martin rudalics
 >> We could provide a 'resize-pixelwise' frame parameter which would
 >> assure that saving is done in pixels for the corresponding frame.
 >> Would that help?
 >
 > Yes, that would work for me. So then setting that frame-parameter
 > would be manual and separate from setting `frame-resize-pixelwise'?

When creating a frame we could make the parameter inherit from the
current value of `frame-resize-pixelwise' unless the parameter has
been specified explicitly for the new frame.  But unless we can find a
sufficiently strong reason for implementing such a parameter, it might
be better to pursue your proposal first.  This would avoid that we
have to introduce a function like `frame-resize-pixelwise' which tells
for a specific frame whether it should be resized pixelwise or not.

martin



12