* Emacs Mac port @ 2012-06-10 9:29 YAMAMOTO Mitsuharu 2012-06-11 0:36 ` Paul Michael Reilly ` (2 more replies) 0 siblings, 3 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2012-06-10 9:29 UTC (permalink / raw) To: emacs-devel Emacs 24 Mac port 3.0 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.1-mac-3.0.tar.gz This version is based on Emacs 24.1. ** Fixed bugs *** The `page-curl' transition does not look right on Mac OS X 10.5. *** Wrong display of the backside image for the `page-curl-with-shadow' transition on Mac OS X 10.7 with HiDPI mode. *** Wrong display of animations on Mac OS X 10.5 and 10.6 when resolution independence is in effect. *** Incomplete input area (aka "active input area", "marked text", or "preedit area") does not respect buffer text scaling. Apply Chong Yidong's fix for Bug#2066. The first update of Emacs 23 Mac port 2.x is also available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-23.4-mac-2.1.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-06-10 9:29 Emacs Mac port YAMAMOTO Mitsuharu @ 2012-06-11 0:36 ` Paul Michael Reilly 2012-06-11 7:29 ` YAMAMOTO Mitsuharu 2012-07-26 9:45 ` YAMAMOTO Mitsuharu 2 siblings, 0 replies; 320+ messages in thread From: Paul Michael Reilly @ 2012-06-11 0:36 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel [-- Attachment #1: Type: text/plain, Size: 1467 bytes --] This looks like a nice piece of work so first let me thank you for your efforts. I will try it out shortly. I would also like to understand if there is any reason your work cannot or should not be installed into the bazaar source tree. I have been building my Mac binaries directly from bazaar with no ill effects yet but I am probably not stressing some of the features or encountering some of the bugs for which you have provided fixes. Thanks, -pmr On Sun, Jun 10, 2012 at 5:29 AM, YAMAMOTO Mitsuharu < mituharu@math.s.chiba-u.ac.jp> wrote: > Emacs 24 Mac port 3.0 is now available from > > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.1-mac-3.0.tar.gz > > This version is based on Emacs 24.1. > > ** Fixed bugs > > *** The `page-curl' transition does not look right on Mac OS X 10.5. > > *** Wrong display of the backside image for the > `page-curl-with-shadow' transition on Mac OS X 10.7 with HiDPI mode. > > *** Wrong display of animations on Mac OS X 10.5 and 10.6 when > resolution independence is in effect. > > *** Incomplete input area (aka "active input area", "marked text", or > "preedit area") does not respect buffer text scaling. > Apply Chong Yidong's fix for Bug#2066. > > > The first update of Emacs 23 Mac port 2.x is also available from > > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-23.4-mac-2.1.tar.gz > > YAMAMOTO Mitsuharu > mituharu@math.s.chiba-u.ac.jp > > [-- Attachment #2: Type: text/html, Size: 2221 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-06-10 9:29 Emacs Mac port YAMAMOTO Mitsuharu 2012-06-11 0:36 ` Paul Michael Reilly @ 2012-06-11 7:29 ` YAMAMOTO Mitsuharu 2012-07-07 18:10 ` Donald Curtis 2012-07-26 9:45 ` YAMAMOTO Mitsuharu 2 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2012-06-11 7:29 UTC (permalink / raw) To: emacs-devel >>>>> On Sun, 10 Jun 2012 18:29:26 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > Emacs 24 Mac port 3.0 is now available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.1-mac-3.0.tar.gz > This version is based on Emacs 24.1. It turned out that the pixel-based mouse wheel smooth scroll had a problem: scrolling up the contents of a buffer with a header line is sometimes jumpy. Please apply the patch below. Sorry for the inconvenience. (This is due to some incompatibility between Emacs 23 and 24 I overlooked, so do not apply it to Emacs 23 Mac port 2.1 .) YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp === modified file 'lisp/term/mac-win.el' *** lisp/term/mac-win.el 2012-06-01 11:45:25 +0000 --- lisp/term/mac-win.el 2012-06-11 07:14:04 +0000 *************** *** 1977,1982 **** --- 1977,1987 ---- (cadr (pos-visible-in-window-p (posn-point target-posn) nil t))) (scrolled-pixel-height (- target-y first-y))) + ;; Emacs 23 -> 24 incompatibility: the + ;; actual row part of POSITION now counts + ;; the header line. + (if header-line-height + (setq target-row (1- target-row))) (scroll-up (if (= delta-y scrolled-pixel-height) target-row (1+ target-row))) ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-06-11 7:29 ` YAMAMOTO Mitsuharu @ 2012-07-07 18:10 ` Donald Curtis 2012-07-07 18:13 ` Donald Curtis 0 siblings, 1 reply; 320+ messages in thread From: Donald Curtis @ 2012-07-07 18:10 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel In try to patch the latest version, I do, patch < ../emacs-24.1-mac-3.0/patch-mac and i get an error, patching file Makefile.in patching file configure.in patching file Makefile.in Hunk #1 FAILED at 102. 1 out of 1 hunk FAILED -- saving rejects to file Makefile.in.rej can't find file to patch at input line 372 Perhaps you should have used the -p or --strip option? The text leading up to this was: -------------------------- | |=== modified file 'doc/emacs/anti.texi' |*** doc/emacs/anti.texi 2012-01-23 06:52:18 +0000 |--- doc/emacs/anti.texi 2012-02-27 23:43:09 +0000 -------------------------- File to patch: And so I'm not sure what is happening as I've never had this happen before. and the file is there… it just seems to be angry. anyways, I thought you may have encountered this before and I didn't want to clog the mailing list. On Jun 11, 2012, at 2:29 AM, YAMAMOTO Mitsuharu wrote: >>>>>> On Sun, 10 Jun 2012 18:29:26 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > >> Emacs 24 Mac port 3.0 is now available from > >> ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.1-mac-3.0.tar.gz > >> This version is based on Emacs 24.1. > > It turned out that the pixel-based mouse wheel smooth scroll had a > problem: scrolling up the contents of a buffer with a header line is > sometimes jumpy. Please apply the patch below. Sorry for the > inconvenience. > > (This is due to some incompatibility between Emacs 23 and 24 I > overlooked, so do not apply it to Emacs 23 Mac port 2.1 .) > > YAMAMOTO Mitsuharu > mituharu@math.s.chiba-u.ac.jp > > === modified file 'lisp/term/mac-win.el' > *** lisp/term/mac-win.el 2012-06-01 11:45:25 +0000 > --- lisp/term/mac-win.el 2012-06-11 07:14:04 +0000 > *************** > *** 1977,1982 **** > --- 1977,1987 ---- > (cadr (pos-visible-in-window-p > (posn-point target-posn) nil t))) > (scrolled-pixel-height (- target-y first-y))) > + ;; Emacs 23 -> 24 incompatibility: the > + ;; actual row part of POSITION now counts > + ;; the header line. > + (if header-line-height > + (setq target-row (1- target-row))) > (scroll-up (if (= delta-y scrolled-pixel-height) > target-row > (1+ target-row))) > > ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-07-07 18:10 ` Donald Curtis @ 2012-07-07 18:13 ` Donald Curtis 2012-07-08 11:15 ` Richard Stallman 0 siblings, 1 reply; 320+ messages in thread From: Donald Curtis @ 2012-07-07 18:13 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel IGNORE! DUH... -p0 seems so obvious that it should be applied automatically but i guess i need to brush up on my linux skills. Sorry for the extra emails. DC On Jul 7, 2012, at 1:10 PM, Donald Curtis wrote: > In try to patch the latest version, I do, > > patch < ../emacs-24.1-mac-3.0/patch-mac > > and i get an error, > > patching file Makefile.in > patching file configure.in > patching file Makefile.in > Hunk #1 FAILED at 102. > 1 out of 1 hunk FAILED -- saving rejects to file Makefile.in.rej > can't find file to patch at input line 372 > Perhaps you should have used the -p or --strip option? > The text leading up to this was: > -------------------------- > | > |=== modified file 'doc/emacs/anti.texi' > |*** doc/emacs/anti.texi 2012-01-23 06:52:18 +0000 > |--- doc/emacs/anti.texi 2012-02-27 23:43:09 +0000 > -------------------------- > File to patch: > > > And so I'm not sure what is happening as I've never had this happen before. and the file is there… it just seems to be angry. anyways, I thought you may have encountered this before and I didn't want to clog the mailing list. > > On Jun 11, 2012, at 2:29 AM, YAMAMOTO Mitsuharu wrote: > >>>>>>> On Sun, 10 Jun 2012 18:29:26 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: >> >>> Emacs 24 Mac port 3.0 is now available from >> >>> ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.1-mac-3.0.tar.gz >> >>> This version is based on Emacs 24.1. >> >> It turned out that the pixel-based mouse wheel smooth scroll had a >> problem: scrolling up the contents of a buffer with a header line is >> sometimes jumpy. Please apply the patch below. Sorry for the >> inconvenience. >> >> (This is due to some incompatibility between Emacs 23 and 24 I >> overlooked, so do not apply it to Emacs 23 Mac port 2.1 .) >> >> YAMAMOTO Mitsuharu >> mituharu@math.s.chiba-u.ac.jp >> >> === modified file 'lisp/term/mac-win.el' >> *** lisp/term/mac-win.el 2012-06-01 11:45:25 +0000 >> --- lisp/term/mac-win.el 2012-06-11 07:14:04 +0000 >> *************** >> *** 1977,1982 **** >> --- 1977,1987 ---- >> (cadr (pos-visible-in-window-p >> (posn-point target-posn) nil t))) >> (scrolled-pixel-height (- target-y first-y))) >> + ;; Emacs 23 -> 24 incompatibility: the >> + ;; actual row part of POSITION now counts >> + ;; the header line. >> + (if header-line-height >> + (setq target-row (1- target-row))) >> (scroll-up (if (= delta-y scrolled-pixel-height) >> target-row >> (1+ target-row))) >> >> > ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-07-07 18:13 ` Donald Curtis @ 2012-07-08 11:15 ` Richard Stallman 2012-07-08 14:16 ` Samuel Bronson 0 siblings, 1 reply; 320+ messages in thread From: Richard Stallman @ 2012-07-08 11:15 UTC (permalink / raw) To: Donald Curtis; +Cc: mituharu, emacs-devel seems so obvious that it should be applied automatically but i guess i need to brush up on my linux skills. patch is not part of Linux. None of the commands you type are part of Linux -- it is a kernel. So you probably mean your GNU skills, right? See http://www.gnu.org/gnu/gnu-linux-faq.html for more explanation. -- Dr Richard Stallman President, Free Software Foundation 51 Franklin St Boston MA 02110 USA www.fsf.org www.gnu.org Skype: No way! That's nonfree (freedom-denying) software. Use Ekiga or an ordinary phone call ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-07-08 11:15 ` Richard Stallman @ 2012-07-08 14:16 ` Samuel Bronson 2012-07-08 14:54 ` Stefan Monnier 0 siblings, 1 reply; 320+ messages in thread From: Samuel Bronson @ 2012-07-08 14:16 UTC (permalink / raw) To: rms; +Cc: Donald Curtis, mituharu, emacs-devel On Jul 8, 2012, at 7:15 AM, Richard Stallman wrote: > seems so obvious that it should be applied automatically but i > guess i need to brush up on my linux skills. > > patch is not part of Linux. None of the commands you type are part of > Linux -- it is a kernel. So you probably mean your GNU skills, right? > > See http://www.gnu.org/gnu/gnu-linux-faq.html for more explanation. Oh, hush! Nobody really cares in everyday conversation... ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-07-08 14:16 ` Samuel Bronson @ 2012-07-08 14:54 ` Stefan Monnier 2012-07-08 14:58 ` Donald Curtis 0 siblings, 1 reply; 320+ messages in thread From: Stefan Monnier @ 2012-07-08 14:54 UTC (permalink / raw) To: Samuel Bronson; +Cc: Donald Curtis, rms, mituharu, emacs-devel > Oh, hush! Nobody really cares in everyday conversation... We do here, Stefan ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-07-08 14:54 ` Stefan Monnier @ 2012-07-08 14:58 ` Donald Curtis 0 siblings, 0 replies; 320+ messages in thread From: Donald Curtis @ 2012-07-08 14:58 UTC (permalink / raw) To: Stefan Monnier Cc: Samuel Bronson, rms@gnu.org, mituharu@math.s.chiba-u.ac.jp, emacs-devel@gnu.org Let it be known I'm just happy to receive an email from RMS. August 7 is my birthday if he wants to correct me again on that day. And yes, GNU is what I meant. DC On Jul 8, 2012, at 9:54, Stefan Monnier <monnier@iro.umontreal.ca> wrote: >> Oh, hush! Nobody really cares in everyday conversation... > > We do here, > > > Stefan ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-06-10 9:29 Emacs Mac port YAMAMOTO Mitsuharu 2012-06-11 0:36 ` Paul Michael Reilly 2012-06-11 7:29 ` YAMAMOTO Mitsuharu @ 2012-07-26 9:45 ` YAMAMOTO Mitsuharu 2012-07-26 21:50 ` YAMAMOTO Mitsuharu 2012-08-27 7:40 ` YAMAMOTO Mitsuharu 2 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2012-07-26 9:45 UTC (permalink / raw) To: emacs-devel The first update of Emacs 24 Mac port 3.x is available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.1-mac-3.1.tar.gz This version is based on Emacs 24.1. ** Fixed bugs *** Scrolling up the contents of a buffer with a header line by mouse wheel is sometimes jumpy. *** Several glitches on PowerPC (such as not displaying fringe bitmaps) due to overlooked WORDS_BIG_ENDIAN -> WORDS_BIGENDIAN change. *** SVG image (rendered via WebKit) might be clipped if width or height is unspecified. Reported by Leo. Now use max X or Y value of the bounding box if width or height is specified as a percentage value or unspecified. *** Double-tapping either a touch-sensitive mouse with one finger or a trackpad with two fingers on Mac OS X 10.8 64-bit build is ignored. ** Improvements *** Double-tapping either a touch-sensitive mouse with one finger or a trackpad with two fingers on Mac OS X 10.7 and later now scales the text to 150% if previously unscaled and the pointer lies between the indentation and end of line. *** Text scaling by gestures now tries to keep the vertical position of the text under the pointer. *** Support automatic selection of high resolution versions of images. All supported image types respect the "@2x" file name convention. SVG images (via WebKit or librsvg) are rendered according to the backing scale factor. An appropriate image is selected from a multiimage TIFF containing both 1x and 2x images if the image spec does not contain an explicit `:index' property. *** Prefer the integrated GPU to the discrete one for saving battery. This requires Mac OS X 10.7 and Early 2011 MacBook Pro. The second update of Emacs 23 Mac port 2.x is also available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-23.4-mac-2.2.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-07-26 9:45 ` YAMAMOTO Mitsuharu @ 2012-07-26 21:50 ` YAMAMOTO Mitsuharu 2012-08-08 6:01 ` YAMAMOTO Mitsuharu 2012-08-27 7:40 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2012-07-26 21:50 UTC (permalink / raw) To: emacs-devel >>>>> On Thu, 26 Jul 2012 18:45:11 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > The first update of Emacs 24 Mac port 3.x is available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.1-mac-3.1.tar.gz > The second update of Emacs 23 Mac port 2.x is also available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-23.4-mac-2.2.tar.gz I found that the preferred font family selection mechanism in the mac-ct font backend driver did not work on OS X 10.8 Mountain Lion. Please apply the patch below. This is not required for 10.7 and earlier, though it also works on these versions. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp === modified file 'src/macfont.c' *** src/macfont.c 2012-04-28 03:42:42 +0000 --- src/macfont.c 2012-07-26 21:39:20 +0000 *************** *** 2814,2840 **** if (charset_string && (length = CFStringGetLength (charset_string)) > 0) { ! CTFontRef last_resort = ! CTFontCreateWithName (CFSTR ("LastResort"), 0, NULL); ! if (last_resort) { ! CTFontRef font = CTFontCreateForString (last_resort, charset_string, ! CFRangeMake (0, length)); ! if (font) { ! result = CTFontCopyAttribute (font, kCTFontFamilyNameAttribute); ! ! if (CFStringCompare (result, CFSTR ("LastResort"), 0) ! == kCFCompareEqualTo) ! { ! CFRelease (result); ! result = NULL; ! } ! CFRelease (font); } ! CFRelease (last_resort); } } --- 2814,2862 ---- if (charset_string && (length = CFStringGetLength (charset_string)) > 0) { ! CFAttributedStringRef attr_string = NULL; ! CTLineRef ctline = NULL; ! CFDictionaryRef attrs = ! CFDictionaryCreate (NULL, NULL, NULL, 0, ! &kCFTypeDictionaryKeyCallBacks, ! &kCFTypeDictionaryValueCallBacks); ! if (attrs) { ! attr_string = CFAttributedStringCreate (NULL, charset_string, attrs); ! CFRelease (attrs); ! } ! if (attr_string) ! { ! ctline = CTLineCreateWithAttributedString (attr_string); ! CFRelease (attr_string); ! } ! if (ctline) ! { ! CFArrayRef runs = CTLineGetGlyphRuns (ctline); ! CFIndex i, nruns = CFArrayGetCount (runs); ! CTFontRef font; ! for (i = 0; i < nruns; i++) { ! CTRunRef run = CFArrayGetValueAtIndex (runs, i); ! CFDictionaryRef attributes = CTRunGetAttributes (run); ! CTFontRef font_in_run; ! ! if (attributes == NULL) ! break; ! font_in_run = ! CFDictionaryGetValue (attributes, kCTFontAttributeName); ! if (font_in_run == NULL) ! break; ! if (i == 0) ! font = font_in_run; ! else if (!mac_ctfont_equal_in_postscript_name (font, font_in_run)) ! break; } ! if (nruns > 0 && i == nruns) ! result = CTFontCopyAttribute (font, kCTFontFamilyNameAttribute); ! CFRelease (ctline); } } ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-07-26 21:50 ` YAMAMOTO Mitsuharu @ 2012-08-08 6:01 ` YAMAMOTO Mitsuharu 0 siblings, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2012-08-08 6:01 UTC (permalink / raw) To: emacs-devel >>>>> On Thu, 26 Jul 2012 18:45:11 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > The first update of Emacs 24 Mac port 3.x is available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.1-mac-3.1.tar.gz > The second update of Emacs 23 Mac port 2.x is also available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-23.4-mac-2.2.tar.gz If you build the Mac port with ARC (Automatic Reference Counting) enabled using the latest Command Line Tools (OS X Lion) for Xcode - August 2012 that has just released, then you will need to apply a couple of patches for src/unexmacosx.c I installed into the emacs-24 branch: http://bzr.savannah.gnu.org/lh/emacs/emacs-24/revision/108091 http://bzr.savannah.gnu.org/lh/emacs/emacs-24/revision/108094 YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-07-26 9:45 ` YAMAMOTO Mitsuharu 2012-07-26 21:50 ` YAMAMOTO Mitsuharu @ 2012-08-27 7:40 ` YAMAMOTO Mitsuharu 2012-09-06 1:35 ` YAMAMOTO Mitsuharu 2012-10-27 4:57 ` YAMAMOTO Mitsuharu 1 sibling, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2012-08-27 7:40 UTC (permalink / raw) To: emacs-devel The second update of Emacs 24 Mac port 3.x is available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.2-mac-3.2.tar.gz This version is based on Emacs 24.2. ** Fixed bugs *** Preferred font family selection does not work on OS X 10.8. ** Improvements *** If Emacs.app is launched from Finder or via Resume on OS X 10.8, then it inherits environment variable settings of user's login shell regardless of the existence of ~/.MacOSX/environment.plist, which is ignored on OS X 10.8 anyway. *** Use sRGB color space instead of device RGB. This does not change the appearance on OS X 10.8 which regards device RGB as sRGB. The third update of Emacs 23 Mac port 2.x is also available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-23.4-mac-2.3.tar.gz In addition to the bug fixes and improvements mentioned above, it contains the following fixes included in the original Emacs 24.2: ** Fixed bugs *** CVE-2012-3479: Security flaw in enable-local-eval. (See http://lists.gnu.org/archive/html/emacs-devel/2012-08/msg00396.html) *** The `nm' command reports src/emacs as a malformed object if built on OS X 10.8. *** Cannot build with ARC enabled using Command Line Tools (OS X Lion) for Xcode - August 2012. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-08-27 7:40 ` YAMAMOTO Mitsuharu @ 2012-09-06 1:35 ` YAMAMOTO Mitsuharu 2012-09-18 9:37 ` YAMAMOTO Mitsuharu 2012-10-27 4:57 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2012-09-06 1:35 UTC (permalink / raw) To: emacs-devel >>>>> On Mon, 27 Aug 2012 16:40:10 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > The second update of Emacs 24 Mac port 3.x is available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.2-mac-3.2.tar.gz > This version is based on Emacs 24.2. > The third update of Emacs 23 Mac port 2.x is also available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-23.4-mac-2.3.tar.gz I found a bug in text shaping with Arabic text examples given in http://lists.gnu.org/archive/html/bug-gnu-emacs/2012-09/msg00076.html (especially for the Sheen-Kasratan case) and the Arial font setting as (set-fontset-font t 'arabic (font-spec :family "arial" :size 30)) . Please try the following patch if you see strangeness in complex text layout. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp === modified file 'src/macfont.c' *** src/macfont.c 2012-08-27 08:21:38 +0000 --- src/macfont.c 2012-09-06 01:16:53 +0000 *************** *** 2419,2431 **** to -= j; LGLYPH_SET_TO (lglyph, to - 1); ! if (unichars[gl->string_index] >= 0xD800 ! && unichars[gl->string_index] < 0xDC00) ! LGLYPH_SET_CHAR (lglyph, (((unichars[gl->string_index] - 0xD800) << 10) ! + (unichars[gl->string_index + 1] - 0xDC00) ! + 0x10000)); ! else ! LGLYPH_SET_CHAR (lglyph, unichars[gl->string_index]); LGLYPH_SET_CODE (lglyph, gl->glyph_id); --- 2419,2439 ---- to -= j; LGLYPH_SET_TO (lglyph, to - 1); ! /* LGLYPH_CHAR is used in `describe-char' for checking whether ! the composition is trivial. */ ! { ! UTF32Char c; ! ! if (unichars[gl->string_index] >= 0xD800 ! && unichars[gl->string_index] < 0xDC00) ! c = (((unichars[gl->string_index] - 0xD800) << 10) ! + (unichars[gl->string_index + 1] - 0xDC00) + 0x10000); ! else ! c = unichars[gl->string_index]; ! if (macfont_get_glyph_for_character (font, c) != gl->glyph_id) ! c = 0; ! LGLYPH_SET_CHAR (lglyph, c); ! } LGLYPH_SET_CODE (lglyph, gl->glyph_id); *************** *** 3212,3219 **** CTRunGetPositions (ctrun, range, &position); gl->advance_delta = position.x - total_advance; gl->baseline_delta = position.y; ! gl->advance = CTRunGetTypographicBounds (ctrun, range, ! NULL, NULL, NULL); total_advance += gl->advance; } --- 3220,3228 ---- CTRunGetPositions (ctrun, range, &position); gl->advance_delta = position.x - total_advance; gl->baseline_delta = position.y; ! gl->advance = (gl->advance_delta ! + CTRunGetTypographicBounds (ctrun, range, ! NULL, NULL, NULL)); total_advance += gl->advance; } ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-09-06 1:35 ` YAMAMOTO Mitsuharu @ 2012-09-18 9:37 ` YAMAMOTO Mitsuharu 2012-09-20 8:51 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2012-09-18 9:37 UTC (permalink / raw) To: emacs-devel >>>>> On Mon, 27 Aug 2012 16:40:10 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > The second update of Emacs 24 Mac port 3.x is available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.2-mac-3.2.tar.gz > This version is based on Emacs 24.2. > The third update of Emacs 23 Mac port 2.x is also available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-23.4-mac-2.3.tar.gz Custom full screen transition animations were not shown as intended on OS X 10.8. That's not fatal, but kind of ugly. If you use this feature frequently on 10.8, you may want to apply the following patch. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp === modified file 'src/macappkit.m' *** src/macappkit.m 2012-08-16 05:06:02 +0000 --- src/macappkit.m 2012-09-18 05:20:09 +0000 *************** *** 3255,3262 **** - (NSArray *)customWindowsToEnterFullScreenForWindow:(NSWindow *)window { [self setupFullScreenTransitionWindow]; ! return [NSArray arrayWithObjects:window, fullScreenTransitionWindow, nil]; } - (void)window:(NSWindow *)window --- 3255,3265 ---- - (NSArray *)customWindowsToEnterFullScreenForWindow:(NSWindow *)window { [self setupFullScreenTransitionWindow]; + /* Custom windows for full screen transition must be on-screen on OS + X 10.8. */ + [fullScreenTransitionWindow orderFront:nil]; ! return [NSArray arrayWithObjects:fullScreenTransitionWindow, window, nil]; } - (void)window:(NSWindow *)window *************** *** 3274,3280 **** } frameRect = [self preprocessWindowManagerStateChange:fullScreenTargetState]; - [fullScreenTransitionWindow orderFront:nil]; [window setAlphaValue:0]; [window setStyleMask:([window styleMask] | NSFullScreenWindowMask)]; --- 3277,3282 ---- *************** *** 3312,3319 **** - (NSArray *)customWindowsToExitFullScreenForWindow:(NSWindow *)window { [self setupFullScreenTransitionWindow]; ! return [NSArray arrayWithObjects:window, fullScreenTransitionWindow, nil]; } - (void)window:(NSWindow *)window --- 3314,3324 ---- - (NSArray *)customWindowsToExitFullScreenForWindow:(NSWindow *)window { [self setupFullScreenTransitionWindow]; + /* Custom windows for full screen transition must be on-screen on OS + X 10.8. */ + [fullScreenTransitionWindow orderFront:nil]; ! return [NSArray arrayWithObjects:fullScreenTransitionWindow, window, nil]; } - (void)window:(NSWindow *)window *************** *** 3329,3335 **** } destRect = [self preprocessWindowManagerStateChange:fullScreenTargetState]; - [fullScreenTransitionWindow orderFront:nil]; [window setAlphaValue:1]; [window setStyleMask:([window styleMask] & ~NSFullScreenWindowMask)]; --- 3334,3339 ---- ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-09-18 9:37 ` YAMAMOTO Mitsuharu @ 2012-09-20 8:51 ` YAMAMOTO Mitsuharu 0 siblings, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2012-09-20 8:51 UTC (permalink / raw) To: emacs-devel >>>>> On Mon, 27 Aug 2012 16:40:10 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > The second update of Emacs 24 Mac port 3.x is available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.2-mac-3.2.tar.gz > This version is based on Emacs 24.2. > The third update of Emacs 23 Mac port 2.x is also available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-23.4-mac-2.3.tar.gz If you build them with the Command Line Tools for Xcode 4.5 (on both Lion and Mountain Lion) that has just been released, then it might be better to apply the following patch that I've just installed to the emacs-24 branch. I don't know if there's a real problem without this patch, but just in case... YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp === modified file 'src/unexmacosx.c' *** src/unexmacosx.c 2012-08-27 08:21:38 +0000 --- src/unexmacosx.c 2012-09-20 08:32:27 +0000 *************** *** 117,122 **** --- 117,129 ---- #include <assert.h> + /* LC_DATA_IN_CODE is not defined in mach-o/loader.h on OS X 10.7. + But it is used if we build with "Command Line Tools for Xcode 4.5 + (OS X Lion) - Septemper 2012". */ + #ifndef LC_DATA_IN_CODE + #define LC_DATA_IN_CODE 0x29 /* table of non-instructions in __text */ + #endif + #ifdef _LP64 #define mach_header mach_header_64 #define segment_command segment_command_64 *************** *** 614,619 **** --- 621,631 ---- printf ("LC_MAIN "); break; #endif + #ifdef LC_DATA_IN_CODE + case LC_DATA_IN_CODE: + printf ("LC_DATA_IN_CODE "); + break; + #endif #ifdef LC_SOURCE_VERSION case LC_SOURCE_VERSION: printf ("LC_SOURCE_VERSION"); *************** *** 1217,1225 **** #endif #ifdef LC_FUNCTION_STARTS ! /* Copy a LC_FUNCTION_STARTS/LC_DYLIB_CODE_SIGN_DRS load command from ! the input file to the output file, adjusting the data offset ! field. */ static void copy_linkedit_data (struct load_command *lc, long delta) { --- 1229,1237 ---- #endif #ifdef LC_FUNCTION_STARTS ! /* Copy a LC_FUNCTION_STARTS/LC_DATA_IN_CODE/LC_DYLIB_CODE_SIGN_DRS ! load command from the input file to the output file, adjusting the ! data offset field. */ static void copy_linkedit_data (struct load_command *lc, long delta) { *************** *** 1317,1322 **** --- 1329,1337 ---- #endif #ifdef LC_FUNCTION_STARTS case LC_FUNCTION_STARTS: + #ifdef LC_DATA_IN_CODE + case LC_DATA_IN_CODE: + #endif #ifdef LC_DYLIB_CODE_SIGN_DRS case LC_DYLIB_CODE_SIGN_DRS: #endif ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-08-27 7:40 ` YAMAMOTO Mitsuharu 2012-09-06 1:35 ` YAMAMOTO Mitsuharu @ 2012-10-27 4:57 ` YAMAMOTO Mitsuharu 2012-11-25 7:26 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2012-10-27 4:57 UTC (permalink / raw) To: emacs-devel The third update of Emacs 24 Mac port 3.x is available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.2-mac-3.3.tar.gz This version is based on Emacs 24.2. ** Fixed bugs *** Wrong glyph advancement calculation in text shaping for non-zero advance delta cases. *** Full screen transition animations are not correct on OS X 10.8. *** XBM foreground and background are not in sRGB color space. *** mac-file-alias-p returns t for symbolic links on Mac OS X 10.6 and later. Reported by Leo. *** Scroll bar thumb dragging is not right on Mac OS X 10.6 and earlier (regression by the previous fix for Mac OS X 10.7 and later.) ** Improvements *** Help key no longer activates "context help mode" (question-mark mouse pointer). *** Popup menu shown by C-mouse-down-1 now includes contextual menu on Mac OS X 10.6 and later. Other popup menus remain quiet. *** Some combinations of regional indicator symbols such as U+1F1EF followed by U+1F1F5 now display national flags in color emoji on Mac OS X 10.7 and later. The fourth update of Emacs 23 Mac port 2.x is also available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-23.4-mac-2.4.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-10-27 4:57 ` YAMAMOTO Mitsuharu @ 2012-11-25 7:26 ` YAMAMOTO Mitsuharu 2012-11-25 10:39 ` Leo ` (2 more replies) 0 siblings, 3 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2012-11-25 7:26 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 24.2.90 pretest is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.2.90-mac-3.90.tar.gz This version (3.9X) should be regarded as experimental/hackers-only. Things are subject to change/removal in an incompatible way. Please refrain from distributing this in any different form, including for (binary) distribution basis, until the version gets to 4.0. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-11-25 7:26 ` YAMAMOTO Mitsuharu @ 2012-11-25 10:39 ` Leo 2012-11-25 10:59 ` chad 2012-11-26 3:26 ` YAMAMOTO Mitsuharu 2012-11-25 19:05 ` Glenn Morris 2012-12-16 5:07 ` YAMAMOTO Mitsuharu 2 siblings, 2 replies; 320+ messages in thread From: Leo @ 2012-11-25 10:39 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel On 2012-11-25 15:26 +0800, YAMAMOTO Mitsuharu wrote: > This version (3.9X) should be regarded as experimental/hackers-only. > Things are subject to change/removal in an incompatible way. Please > refrain from distributing this in any different form, including for > (binary) distribution basis, until the version gets to 4.0. Built and running now. One thing that is changed: The toolbar started on even though it is turned off in org.gnu.Emacs.plist like this: <key>Emacs.ToolBar</key> <string>off</string> which works with previous version. Leo ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-11-25 10:39 ` Leo @ 2012-11-25 10:59 ` chad 2012-11-25 12:05 ` Leo 2012-11-26 3:26 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: chad @ 2012-11-25 10:59 UTC (permalink / raw) To: Leo; +Cc: emacs-devel@gnu.org devel On 25 Nov 2012, at 02:39, Leo <sdl.web@gmail.com> wrote: > Built and running now. > > One thing that is changed: > > The toolbar started on even though it is turned off in > org.gnu.Emacs.plist like this: > > <key>Emacs.ToolBar</key> > <string>off</string> > > which works with previous version. Separate from whether or not it stopped working in this revision, I think that you want that key to be Boolean `NO', not string `off'. Hope that helps, ~Chad ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-11-25 10:59 ` chad @ 2012-11-25 12:05 ` Leo 0 siblings, 0 replies; 320+ messages in thread From: Leo @ 2012-11-25 12:05 UTC (permalink / raw) To: emacs-devel On 2012-11-25 18:59 +0800, chad wrote: > Separate from whether or not it stopped working in this revision, I > think that you want that key to be Boolean `NO', not string `off'. The emacs manual says it accepts three values: no, off, 0. Leo ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-11-25 10:39 ` Leo 2012-11-25 10:59 ` chad @ 2012-11-26 3:26 ` YAMAMOTO Mitsuharu 1 sibling, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2012-11-26 3:26 UTC (permalink / raw) To: Leo; +Cc: emacs-devel >>>>> On Sun, 25 Nov 2012 18:39:59 +0800, Leo <sdl.web@gmail.com> said: > On 2012-11-25 15:26 +0800, YAMAMOTO Mitsuharu wrote: >> This version (3.9X) should be regarded as experimental/hackers-only. >> Things are subject to change/removal in an incompatible way. Please >> refrain from distributing this in any different form, including for >> (binary) distribution basis, until the version gets to 4.0. > Built and running now. > One thing that is changed: > The toolbar started on even though it is turned off in > org.gnu.Emacs.plist like this: > <key>Emacs.ToolBar</key> > <string>off</string> > which works with previous version. Sorry, I overlooked a change in lisp/term/x-win.el. Please apply the patch below. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp === modified file 'lisp/term/mac-win.el' *** lisp/term/mac-win.el 2012-11-25 07:28:13 +0000 --- lisp/term/mac-win.el 2012-11-26 03:17:45 +0000 *************** *** 2398,2403 **** --- 2398,2404 ---- (if (eq (lookup-key global-map [C-down-mouse-1]) 'mouse-buffer-menu) (global-set-key [C-down-mouse-1] 'mac-mouse-buffer-menu)) + (x-apply-session-resources) (setq mac-initialized t)) (add-to-list 'display-format-alist '("\\`Mac\\'" . mac)) ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-11-25 7:26 ` YAMAMOTO Mitsuharu 2012-11-25 10:39 ` Leo @ 2012-11-25 19:05 ` Glenn Morris 2012-11-26 2:14 ` Leo 2012-12-16 5:07 ` YAMAMOTO Mitsuharu 2 siblings, 1 reply; 320+ messages in thread From: Glenn Morris @ 2012-11-25 19:05 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel YAMAMOTO Mitsuharu wrote: > The Mac port based on Emacs 24.2.90 pretest is now available from > > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.2.90-mac-3.90.tar.gz No offence meant, but since this has nothing to do with GNU Emacs really, maybe you could direct replies about this somewhere other than emacs-devel. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-11-25 19:05 ` Glenn Morris @ 2012-11-26 2:14 ` Leo 2012-11-26 2:46 ` John Wiegley 2012-11-26 20:38 ` Stefan Monnier 0 siblings, 2 replies; 320+ messages in thread From: Leo @ 2012-11-26 2:14 UTC (permalink / raw) To: emacs-devel On 2012-11-26 03:05 +0800, Glenn Morris wrote: > No offence meant, but since this has nothing to do with GNU Emacs > really, maybe you could direct replies about this somewhere other than > emacs-devel. I hope we can tolerate a few messages once in a few months. The MacPort is used by many people and is the only way some of us can start using emacs 24.2.90 in our work, find bugs and occasionally help to fix them. HTH, Leo ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-11-26 2:14 ` Leo @ 2012-11-26 2:46 ` John Wiegley 2012-11-26 20:38 ` Stefan Monnier 1 sibling, 0 replies; 320+ messages in thread From: John Wiegley @ 2012-11-26 2:46 UTC (permalink / raw) To: emacs-devel >>>>> Leo <sdl.web@gmail.com> writes: > I hope we can tolerate a few messages once in a few months. The MacPort is > used by many people and is the only way some of us can start using emacs > 24.2.90 in our work, find bugs and occasionally help to fix them. +1 John ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-11-26 2:14 ` Leo 2012-11-26 2:46 ` John Wiegley @ 2012-11-26 20:38 ` Stefan Monnier 2012-11-26 21:46 ` chad 2012-11-27 2:34 ` Leo 1 sibling, 2 replies; 320+ messages in thread From: Stefan Monnier @ 2012-11-26 20:38 UTC (permalink / raw) To: Leo; +Cc: emacs-devel >> No offence meant, but since this has nothing to do with GNU Emacs >> really, maybe you could direct replies about this somewhere other than >> emacs-devel. > I hope we can tolerate a few messages once in a few months. You seem to have misunderstood Glenn's request. He's not opposed to seeing the announcements here, he's only asking for subsequent replies to go elsewhere. > The MacPort is used by many people and is the only way some of us can > start using emacs 24.2.90 in our work, find bugs and occasionally help > to fix them. I know some people prefer the MacPort over our NS port (and vice-versa), but I don't know that the difference can be such that the NS port is not even an option. Of course, maybe I just forgot about it. Do we have a bug-number(s) for the corresponding problem(s)? Stefan ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-11-26 20:38 ` Stefan Monnier @ 2012-11-26 21:46 ` chad 2012-11-27 2:35 ` Leo 2012-11-27 4:32 ` Jan Djärv 2012-11-27 2:34 ` Leo 1 sibling, 2 replies; 320+ messages in thread From: chad @ 2012-11-26 21:46 UTC (permalink / raw) To: emacs-devel@gnu.org devel [-- Attachment #1: Type: text/plain, Size: 1348 bytes --] On 26 Nov 2012, at 12:38, Stefan Monnier <monnier@iro.umontreal.ca> wrote: > I know some people prefer the MacPort over our NS port (and vice-versa), > but I don't know that the difference can be such that the NS port is not > even an option. > Of course, maybe I just forgot about it. Do we have a bug-number(s) for > the corresponding problem(s)? I had hoped to try to merge some of the mac port changes after the last round of discussion indicated that merging was, let's say unlikely. Aside from reliability issues in both ports (which I assume are bugs to be hunted and killed as normal), I think the biggest issue is the color space and font handling. Whether or not this bothers you depends on your personal settings, in my experience - when I first started looking into this, I used a set of colors and fonts that really didn't show any important (to me) differences between the two, but I have since started using a zenburn theme that really highlights the issue. I'm including a clipping that I hope illustrates the issue, with the mac port on the left and the ns port on the right. I'm hoping to take another shot at merging display approaches when the ports line up again for 24.3, but I wouldn't wait anyone to rely on me - I'm not familiar with the subsystems involved, and my free time is sporadic. I hope this helps, ~Chad [-- Attachment #2.1: Type: text/html, Size: 2127 bytes --] [-- Attachment #2.2: emacs-diff.png --] [-- Type: image/png, Size: 70635 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-11-26 21:46 ` chad @ 2012-11-27 2:35 ` Leo 2012-11-27 4:32 ` Jan Djärv 1 sibling, 0 replies; 320+ messages in thread From: Leo @ 2012-11-27 2:35 UTC (permalink / raw) To: emacs-devel On 2012-11-27 05:46 +0800, chad wrote: > I'm hoping to take another shot at merging display approaches > when the ports line up again for 24.3, but I wouldn't wait anyone > to rely on me - I'm not familiar with the subsystems involved, > and my free time is sporadic. Thank you in advance for taking the time to look into this ;) Leo ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-11-26 21:46 ` chad 2012-11-27 2:35 ` Leo @ 2012-11-27 4:32 ` Jan Djärv 2012-11-27 19:33 ` chad 1 sibling, 1 reply; 320+ messages in thread From: Jan Djärv @ 2012-11-27 4:32 UTC (permalink / raw) To: chad; +Cc: emacs-devel@gnu.org devel [-- Attachment #1: Type: text/plain, Size: 1671 bytes --] Hello. It would help if you specified the colors used in the screenshot exactly. Then we could at least compare colors for X11 and Nextstep. Jan D. 26 nov 2012 kl. 22:46 skrev chad <yandros@MIT.EDU>: > On 26 Nov 2012, at 12:38, Stefan Monnier <monnier@iro.umontreal.ca> wrote: >> I know some people prefer the MacPort over our NS port (and vice-versa), >> but I don't know that the difference can be such that the NS port is not >> even an option. >> Of course, maybe I just forgot about it. Do we have a bug-number(s) for >> the corresponding problem(s)? > > I had hoped to try to merge some of the mac port changes after > the last round of discussion indicated that merging was, let's > say unlikely. Aside from reliability issues in both ports (which > I assume are bugs to be hunted and killed as normal), I think the > biggest issue is the color space and font handling. Whether or > not this bothers you depends on your personal settings, in my > experience - when I first started looking into this, I used a set > of colors and fonts that really didn't show any important (to me) > differences between the two, but I have since started using a > zenburn theme that really highlights the issue. I'm including a > clipping that I hope illustrates the issue, with the mac port on > the left and the ns port on the right. > > I'm hoping to take another shot at merging display approaches > when the ports line up again for 24.3, but I wouldn't wait anyone > to rely on me - I'm not familiar with the subsystems involved, > and my free time is sporadic. > > I hope this helps, > ~Chad > > > <emacs-diff.png> > > [-- Attachment #2: Type: text/html, Size: 2333 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-11-27 4:32 ` Jan Djärv @ 2012-11-27 19:33 ` chad 2012-12-01 14:04 ` Donald Curtis 0 siblings, 1 reply; 320+ messages in thread From: chad @ 2012-11-27 19:33 UTC (permalink / raw) To: Jan Djärv; +Cc: chad, emacs-devel@gnu.org devel On 26 Nov 2012, at 20:32, Jan Djärv <jan.h.d@swipnet.se> skrev: > It would help if you specified the colors used in the screenshot exactly. Then we could at least compare colors for X11 and Nextstep. Ah, good point; just giving the name isn't entirely clear. I'm using the zenburn theme from: https://github.com/bbatsov/zenburn-emacs.git A bigger comparison shot of the zenburn theme (with rainbow-mode) between the mac port and bzr head this morning is here: http://www.mit.edu/~yandros/emacs-mac-ns-ports.png Thanks! ~Chad ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-11-27 19:33 ` chad @ 2012-12-01 14:04 ` Donald Curtis 2012-12-03 18:58 ` Jan Djärv 0 siblings, 1 reply; 320+ messages in thread From: Donald Curtis @ 2012-12-01 14:04 UTC (permalink / raw) To: chad; +Cc: Jan Djärv, emacs-devel@gnu.org devel I don't know specifics, but in the home-brew (https://github.com/mxcl/homebrew) build script for emacs, there is an option `srgb` which does some color fixes in the NS version, Specifically, in nsterm, replace, "*col = [NSColor colorWithCalibratedRed: r green: g blue: b alpha: 1.0];", with, "*col = [NSColor colorWithDeviceRed: r green: g blue: b alpha: 1.0];" There is something about the calibrated version that made colors look different than in other versions of emacs, specifically X11. Well, I should say, they would look different than other programs generating the same color. And you can test this in OS X by using "DigitalColor Meter", 1. Set a background color in hex, 2. Use "DigitalColor Meter" to get the color from the window. And you'll see that the color being generated is *not* the color you specified, well, at least it wasn't on Mac, but maybe this is not an issue on NS. However this may be related to some of your struggles with color differences. Here is the Homebrew bug report: https://github.com/mxcl/homebrew/pull/5194 And here is the corresponding GNU bug report: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=8402 I'm definitely more on the side of doing what the user *expects* (which is to use colorWithDeviceRed) over what is technically correct (the current way of using colorWithCalibratedRed). But it hasn't been an issue for me since I use home-brew and just specify the --srgb compile option. Donald On Nov 27, 2012, at 1:33 PM, chad <yandros@MIT.EDU> wrote: > On 26 Nov 2012, at 20:32, Jan Djärv <jan.h.d@swipnet.se> skrev: > >> It would help if you specified the colors used in the screenshot exactly. Then we could at least compare colors for X11 and Nextstep. > > Ah, good point; just giving the name isn't entirely clear. I'm using the zenburn theme from: https://github.com/bbatsov/zenburn-emacs.git > > A bigger comparison shot of the zenburn theme (with rainbow-mode) between the mac port and bzr head this morning is here: > > http://www.mit.edu/~yandros/emacs-mac-ns-ports.png > > Thanks! > ~Chad ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-12-01 14:04 ` Donald Curtis @ 2012-12-03 18:58 ` Jan Djärv 0 siblings, 0 replies; 320+ messages in thread From: Jan Djärv @ 2012-12-03 18:58 UTC (permalink / raw) To: Donald Curtis; +Cc: chad, emacs-devel@gnu.org devel Hello. 1 dec 2012 kl. 15:04 skrev Donald Curtis <dcurtis@gmail.com>: > I don't know specifics, but in the home-brew (https://github.com/mxcl/homebrew) build script for emacs, there is an option `srgb` which does some color fixes in the NS version, > > Specifically, in nsterm, > > replace, > "*col = [NSColor colorWithCalibratedRed: r green: g blue: b alpha: 1.0];", > > with, > "*col = [NSColor colorWithDeviceRed: r green: g blue: b alpha: 1.0];" This is "The Wrong Thing To Do" (TM) according to all documentation. FWIW, it makes no difference on the two Macs I tried. Are you running 10.6 or earlier? > > There is something about the calibrated version that made colors look different than in other versions of emacs, specifically X11. Well, I should say, they would look different than other programs generating the same color. And you can test this in OS X by using "DigitalColor Meter", > > 1. Set a background color in hex, > 2. Use "DigitalColor Meter" to get the color from the window. > > And you'll see that the color being generated is *not* the color you specified, well, at least it wasn't on Mac, but maybe this is not an issue on NS. However this may be related to some of your struggles with color differences. It is indeed the color I specified if I choose "Generic RGB". I'm not sure which is the correct one to use, but you can choose between "Original values", "sRGB", "Generic RGB" and "Adobe RGB". > Here is the Homebrew bug report: > https://github.com/mxcl/homebrew/pull/5194 > > And here is the corresponding GNU bug report: > http://debbugs.gnu.org/cgi/bugreport.cgi?bug=8402 > > I'm definitely more on the side of doing what the user *expects* (which is to use colorWithDeviceRed) over what is technically correct (the current way of using colorWithCalibratedRed). But it hasn't been an issue for me since I use home-brew and just specify the --srgb compile option. --srgb sounds like the wrong name for this option, if it just enables the use of device colors. Is "the user" all users, ot just a subset of users using a particular OSX version? We could have an option for using srgb color space or device color space, but I think calibrated is the right default. Jan D. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-11-26 20:38 ` Stefan Monnier 2012-11-26 21:46 ` chad @ 2012-11-27 2:34 ` Leo 1 sibling, 0 replies; 320+ messages in thread From: Leo @ 2012-11-27 2:34 UTC (permalink / raw) To: emacs-devel On 2012-11-27 04:38 +0800, Stefan Monnier wrote: > You seem to have misunderstood Glenn's request. He's not opposed to > seeing the announcements here, he's only asking for subsequent replies > to go elsewhere. Yes, this is what I understood. Normally there is not much discussion about issues in MacPort, so I hope they can live in this ML for now. [snipped 4 lines] > I know some people prefer the MacPort over our NS port (and vice-versa), > but I don't know that the difference can be such that the NS port is not > even an option. > Of course, maybe I just forgot about it. Do we have a bug-number(s) for > the corresponding problem(s)? I have used the NS port for more than one year if I remember correctly. During that time there was little response to any bug report in the NS port so I moved on. Things might have changed given all these years so I have little idea what it is like these days. In the two years that I have been using MacPort, I have reported via private emails to its author a dozen bugs, all of which were fixed within a day or two with detailed explanation of what was going on. I highly appreciate such a quality support and feel safer and happier using MacPort. Having said that, I encourage new comers to use NS port whenever/wherever I can. Leo ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-11-25 7:26 ` YAMAMOTO Mitsuharu 2012-11-25 10:39 ` Leo 2012-11-25 19:05 ` Glenn Morris @ 2012-12-16 5:07 ` YAMAMOTO Mitsuharu 2013-01-11 7:28 ` YAMAMOTO Mitsuharu 2 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2012-12-16 5:07 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 24.2.91 pretest is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.2.91-mac-3.91.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Disabling tool bar mode via the Preference system (X resources emulation) does not work. Reported by Leo. *** Tool bar visibility is not preserved when entering/exiting full screen on Mac OS X 10.7 and later (actually this is a bug in AppKit). *** Background color is not in sRGB color space for image types GIF, PNG, TIFF, and IMAGE-IO. ** Improvements *** You can run the executable from the build directory (via `open mac/Emacs.app') without doing `make install'. Forgot to mention in the previous release. *** Support alpha channel masks for image types GIF, PNG, TIFF, and IMAGE-IO with keeping the postprocessing functionality (`:conversion' and `:mask'). Not for SVG images rendered with WebKit because proper text smoothing requires opaque background. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2012-12-16 5:07 ` YAMAMOTO Mitsuharu @ 2013-01-11 7:28 ` YAMAMOTO Mitsuharu 2013-02-09 7:26 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-01-11 7:28 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 24.2.92 pretest is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.2.92-mac-3.92.tar.gz On Mac OS X 10.7 and later, you can test some composition features for emoji characters by: ;;;; Emoji composition tests ;;; Regional indicators (#x1F1E6 - #x1F1FF) (insert (mapconcat (lambda (s) (mapcar (lambda (c) (+ c (- #x1F1FF ?Z))) s)) '("CN" "DE" "ES" "FR" "GB" "IT" "JP" "KR" "RU" "US") " ")) ;;; Variation Selectors 15 (text-style) and 16 (emoji-style) (insert (mapconcat (lambda (c) (format "#x%04x:\t%c\uFE0E\u20E3 %c\uFE0F\u20E3" c c c)) (cdr (assq 'keycap mac-emoji-variation-characters-alist)) "\n") ?\n (mapconcat (lambda (c) (format "#x%04x:\t%c\uFE0E %c\uFE0F" c c c)) (mapconcat 'cdr mac-emoji-variation-characters-alist "") "\n")) YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Two-finger click with a trackpad on the mode-line causes errors on OS X 10.8. *** Key events are discarded while AppleScript is executed. ** Improvements *** Add an info node for images and colors to the Mac port section. *** Support Variation Selectors 15 (text-style) and 16 (emoji-style). ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-01-11 7:28 ` YAMAMOTO Mitsuharu @ 2013-02-09 7:26 ` YAMAMOTO Mitsuharu 2013-02-11 12:53 ` Piotr Kalinowski ` (2 more replies) 0 siblings, 3 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-02-09 7:26 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 24.2.93 pretest is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.2.93-mac-3.93.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Rare crash in mac_get_selected_range. *** Breakage of `--with-wide-int' on other builds. Reported by Peter Dyballa. Note: the option `--with-wide-int' is not eagerly tested on the Mac port. Use it at your own risk. *** `emacsclient -c' does not work. Reported by Piotr Kalinowski. ** Improvements *** Work around the problem that scrolling may leave some spots when LCD text smoothing is enabled. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-02-09 7:26 ` YAMAMOTO Mitsuharu @ 2013-02-11 12:53 ` Piotr Kalinowski 2013-02-14 12:02 ` Pavlo Martynenko 2013-03-05 6:02 ` YAMAMOTO Mitsuharu 2 siblings, 0 replies; 320+ messages in thread From: Piotr Kalinowski @ 2013-02-11 12:53 UTC (permalink / raw) To: emacs-devel YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes: > The Mac port based on Emacs 24.2.93 pretest is now available from > > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.2.93-mac-3.93.tar.gz > > YAMAMOTO Mitsuharu > mituharu@math.s.chiba-u.ac.jp > > ** Fixed bugs [snip...] > *** `emacsclient -c' does not work. > Reported by Piotr Kalinowski. Yes, thank you very much. Regards, Piotr Kalinowski ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-02-09 7:26 ` YAMAMOTO Mitsuharu 2013-02-11 12:53 ` Piotr Kalinowski @ 2013-02-14 12:02 ` Pavlo Martynenko 2013-02-15 15:48 ` Piotr Kalinowski 2013-02-16 6:46 ` YAMAMOTO Mitsuharu 2013-03-05 6:02 ` YAMAMOTO Mitsuharu 2 siblings, 2 replies; 320+ messages in thread From: Pavlo Martynenko @ 2013-02-14 12:02 UTC (permalink / raw) To: emacs-devel@gnu.org developers; +Cc: YAMAMOTO Mitsuharu On 9 Feb 2013, at 09:26, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> wrote: > The Mac port based on Emacs 24.2.93 pretest is now available from > > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.2.93-mac-3.93.tar.gz > > YAMAMOTO Mitsuharu > mituharu@math.s.chiba-u.ac.jp > > ** Fixed bugs > > *** Rare crash in mac_get_selected_range. > > *** Breakage of `--with-wide-int' on other builds. > Reported by Peter Dyballa. > Note: the option `--with-wide-int' is not eagerly tested on the Mac > port. Use it at your own risk. > > *** `emacsclient -c' does not work. > Reported by Piotr Kalinowski. "emacsclient -c" works fine when server was started from normally running emacs by (server-start). But when the server was started with --daemon option. The first time when emacsclient connects emacs eats 100% of cpu in main thread. And after client disconnects and connects again the server crashes on EXC_BAD_ACCESS in check_x_display_info. "emacsclient -t" terminates just after connect with exit code 1. Also I noticed increased cpu usage from 0.3 up to 4.0% when emacs frame minimised in the Dock. The same can not be said about the NS port. > ** Improvements > > *** Work around the problem that scrolling may leave some spots when > LCD text smoothing is enabled. > ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-02-14 12:02 ` Pavlo Martynenko @ 2013-02-15 15:48 ` Piotr Kalinowski 2013-02-15 16:03 ` Dmitry Antipov 2013-02-16 6:46 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: Piotr Kalinowski @ 2013-02-15 15:48 UTC (permalink / raw) To: emacs-devel Pavlo Martynenko <pavelmart@gmail.com> writes: > Also I noticed increased cpu usage from 0.3 up to 4.0% when emacs > frame minimised in the Dock. The same can not be said about the NS > port. The exact numbers are different for me, but I can as well observe order of magnitude increase in CPU usage for minimised frame. Regards, Piotr Kalinowski -- Intelligence is like a river: the deeper it is, the less noise it makes. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-02-15 15:48 ` Piotr Kalinowski @ 2013-02-15 16:03 ` Dmitry Antipov 2013-02-15 18:16 ` Eli Zaretskii 2013-02-15 19:27 ` Glenn Morris 0 siblings, 2 replies; 320+ messages in thread From: Dmitry Antipov @ 2013-02-15 16:03 UTC (permalink / raw) To: Piotr Kalinowski; +Cc: pavelmart, emacs-devel On 02/15/2013 07:48 PM, Piotr Kalinowski wrote: > Pavlo Martynenko <pavelmart@gmail.com> writes: > >> Also I noticed increased cpu usage from 0.3 up to 4.0% when emacs >> frame minimised in the Dock. The same can not be said about the NS >> port. > > The exact numbers are different for me, but I can as well observe order > of magnitude increase in CPU usage for minimised frame. Hm... can someone try bzr revision before r111594? This change was not really tested on W32/NS. My minimized 'emacs -Q' now eats 0.4% CPU on GNU/Linux, BTW. Dmitry ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-02-15 16:03 ` Dmitry Antipov @ 2013-02-15 18:16 ` Eli Zaretskii 2013-02-15 19:27 ` Glenn Morris 1 sibling, 0 replies; 320+ messages in thread From: Eli Zaretskii @ 2013-02-15 18:16 UTC (permalink / raw) To: Dmitry Antipov; +Cc: pavelmart, pitkali, emacs-devel > Date: Fri, 15 Feb 2013 20:03:20 +0400 > From: Dmitry Antipov <dmantipov@yandex.ru> > Cc: pavelmart@gmail.com, emacs-devel@gnu.org > > Hm... can someone try bzr revision before r111594? This change was not > really tested on W32/NS. No change in CPU usage on w32, when a frame is minimized. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-02-15 16:03 ` Dmitry Antipov 2013-02-15 18:16 ` Eli Zaretskii @ 2013-02-15 19:27 ` Glenn Morris 1 sibling, 0 replies; 320+ messages in thread From: Glenn Morris @ 2013-02-15 19:27 UTC (permalink / raw) To: Emacs developers >>> Also I noticed increased cpu usage from 0.3 up to 4.0% when emacs >>> frame minimised in the Dock. The same can not be said about the NS port. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Note that the OP is reporting an issue that does not occur in GNU Emacs. Once again, I don't know why this is being discussed on emacs-devel. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-02-14 12:02 ` Pavlo Martynenko 2013-02-15 15:48 ` Piotr Kalinowski @ 2013-02-16 6:46 ` YAMAMOTO Mitsuharu 2013-02-16 8:21 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-02-16 6:46 UTC (permalink / raw) To: Pavlo Martynenko; +Cc: emacs-devel@gnu.org developers >>>>> On Thu, 14 Feb 2013 14:02:08 +0200, Pavlo Martynenko <pavelmart@gmail.com> said: > "emacsclient -c" works fine when server was started from normally > running emacs by (server-start). > But when the server was started with --daemon option. The first time > when emacsclient connects emacs eats 100% of cpu in main thread. And > after client disconnects and connects again the server crashes on > EXC_BAD_ACCESS in check_x_display_info. > "emacsclient -t" terminates just after connect with exit code 1. The Mac port is supposed to provide TTY-only sessions if invoked with the --deamon option. I'll look into this problem later so as to avoid the crash at least. > Also I noticed increased cpu usage from 0.3 up to 4.0% when emacs > frame minimised in the Dock. The same can not be said about the NS > port. This is a serious problem and specific to the Mac port. Please try the following patch and send a report to me (not to the list) if you find some problem with this patch. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp === modified file 'src/mac.c' *** src/mac.c 2013-01-11 07:33:09 +0000 --- src/mac.c 2013-02-16 03:41:22 +0000 *************** *** 3117,3122 **** --- 3117,3131 ---- return event; } + static bool + mac_has_non_cgs_events_p (void) + { + ItemCount count = GetNumEventsInQueue (GetCurrentEventQueue ()); + + return (count > 1 + || (count == 1 && GetEventClass (mac_peek_next_event ()) != 'cgs ')); + } + #if !SELECT_USE_GCD static struct { *************** *** 3272,3283 **** mac_run_loop_run_once again so as to avoid wasting CPU time caused by vacuous reactivation of delayed visible toolbar item validation via window update events issued ! in the application event loop. */ do { timeoutval = mac_run_loop_run_once (timeoutval); } ! while (timeoutval && !mac_peek_next_event () && !detect_input_pending ()); if (timeoutval == 0) timedout_p = 1; --- 3281,3297 ---- mac_run_loop_run_once again so as to avoid wasting CPU time caused by vacuous reactivation of delayed visible toolbar item validation via window update events issued ! in the application event loop. ! ! Also, on Mac OS X 10.5 or later, the application receives ! an event 'cgs '/15 if there is a miniaturized window. We ! don't want to break the loop in this case for a similar ! reason. */ do { timeoutval = mac_run_loop_run_once (timeoutval); } ! while (timeoutval && !mac_has_non_cgs_events_p () && !detect_input_pending ()); if (timeoutval == 0) timedout_p = 1; *************** *** 3394,3400 **** timeoutval = mac_run_loop_run_once (timeoutval); } while (timeoutval && !wokeup_from_run_loop_run_once_p ! && !mac_peek_next_event () && !detect_input_pending ()); if (timeoutval == 0) timedout_p = 1; --- 3408,3414 ---- timeoutval = mac_run_loop_run_once (timeoutval); } while (timeoutval && !wokeup_from_run_loop_run_once_p ! && !mac_has_non_cgs_events_p () && !detect_input_pending ()); if (timeoutval == 0) timedout_p = 1; *************** *** 3416,3422 **** timeoutval = mac_run_loop_run_once (timeoutval); } while (timeoutval && !wokeup_from_run_loop_run_once_p ! && !mac_peek_next_event () && !detect_input_pending ()); if (timeoutval == 0) timedout_p = 1; --- 3430,3436 ---- timeoutval = mac_run_loop_run_once (timeoutval); } while (timeoutval && !wokeup_from_run_loop_run_once_p ! && !mac_has_non_cgs_events_p () && !detect_input_pending ()); if (timeoutval == 0) timedout_p = 1; ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-02-16 6:46 ` YAMAMOTO Mitsuharu @ 2013-02-16 8:21 ` YAMAMOTO Mitsuharu 2013-02-16 11:08 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-02-16 8:21 UTC (permalink / raw) To: Pavlo Martynenko; +Cc: emacs-devel@gnu.org developers >>>>> On Sat, 16 Feb 2013 15:46:00 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: >> Also I noticed increased cpu usage from 0.3 up to 4.0% when emacs >> frame minimised in the Dock. The same can not be said about the NS >> port. > This is a serious problem and specific to the Mac port. Please try > the following patch and send a report to me (not to the list) if you > find some problem with this patch. Sorry, I found that key event handling became sluggish when there are both iconified and uniconified frames. It may take some time to solve this problem. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-02-16 8:21 ` YAMAMOTO Mitsuharu @ 2013-02-16 11:08 ` YAMAMOTO Mitsuharu 0 siblings, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-02-16 11:08 UTC (permalink / raw) To: Pavlo Martynenko; +Cc: emacs-devel@gnu.org developers >>>>> On Sat, 16 Feb 2013 17:21:35 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: >>> Also I noticed increased cpu usage from 0.3 up to 4.0% when emacs >>> frame minimised in the Dock. The same can not be said about the NS >>> port. >> This is a serious problem and specific to the Mac port. Please try >> the following patch and send a report to me (not to the list) if >> you find some problem with this patch. > Sorry, I found that key event handling became sluggish when there > are both iconified and uniconified frames. It may take some time to > solve this problem. For the moment, please cancel the previous patch and apply the following one. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp === modified file 'src/macappkit.m' *** src/macappkit.m 2013-02-09 07:26:28 +0000 --- src/macappkit.m 2013-02-16 11:01:41 +0000 *************** *** 6970,6981 **** EmacsWindow *window = FRAME_MAC_WINDOW_OBJECT (f); x_flush (f); ! #if MAC_OS_X_VERSION_MIN_REQUIRED < 1050 ! /* Mac OS X 10.4 seems not to reset the flag ! `viewsNeedDisplay' on autodisplay. */ ! if (floor (NSAppKitVersionNumber) <= NSAppKitVersionNumber10_4) ! [window setViewsNeedDisplay:NO]; ! #endif /* Check which frames are still visible. We do this here because there doesn't seem to be any direct notification that the visibility of a window has --- 6970,6976 ---- EmacsWindow *window = FRAME_MAC_WINDOW_OBJECT (f); x_flush (f); ! [window setViewsNeedDisplay:NO]; /* Check which frames are still visible. We do this here because there doesn't seem to be any direct notification that the visibility of a window has ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-02-09 7:26 ` YAMAMOTO Mitsuharu 2013-02-11 12:53 ` Piotr Kalinowski 2013-02-14 12:02 ` Pavlo Martynenko @ 2013-03-05 6:02 ` YAMAMOTO Mitsuharu 2013-03-11 3:41 ` YAMAMOTO Mitsuharu 2013-03-11 18:58 ` Current HEAD doesn't build on OSX Randal L. Schwartz 2 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-03-05 6:02 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 24.3 release candidate 1 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3-rc1-mac-3.94.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp Remove mac-system-locale. When the locale setting is derived from the Preferences AppleLocale or AppleLanguages (i.e., none of "LC_ALL", "LC_CTYPE" or "LANG" is set), encoding is assumed to be UTF-8. ** Fixed bugs *** Daemon mode crashes when connected from `emacsclient -c'. Reported by Pavlo Martynenko. *** Waste CPU time when there is an iconified frame. Reported by Pavlo Martynenko. *** Frame display is not updated immediately when deiconified. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-03-05 6:02 ` YAMAMOTO Mitsuharu @ 2013-03-11 3:41 ` YAMAMOTO Mitsuharu 2013-04-11 9:22 ` YAMAMOTO Mitsuharu 2013-03-11 18:58 ` Current HEAD doesn't build on OSX Randal L. Schwartz 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-03-11 3:41 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 24.3 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3-mac-4.0.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Smooth scrolling down the fancy splash screen causes an error. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-03-11 3:41 ` YAMAMOTO Mitsuharu @ 2013-04-11 9:22 ` YAMAMOTO Mitsuharu 2013-04-14 6:31 ` YAMAMOTO Mitsuharu 2013-05-11 6:43 ` YAMAMOTO Mitsuharu 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-04-11 9:22 UTC (permalink / raw) To: emacs-devel The first update of Emacs 24.3 Mac port 4.x is available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3-mac-4.1.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Crash if an unknown font/fontset is set to default-frame-alist. *** Invoking Service producing output does not replace the selected text. Reported by Nicholas Riley. *** Invoking Service via C-mouse-down-1 may not insert the output correctly. ** Improvements *** Add sound support. Like on other platforms, it is synchronous and you cannot quit it with C-g. *** Round frame bottom corners on OS X 10.7 and later, even when internal-border-width is 0. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-11 9:22 ` YAMAMOTO Mitsuharu @ 2013-04-14 6:31 ` YAMAMOTO Mitsuharu 2013-04-14 11:49 ` Eli Zaretskii 2013-05-11 6:43 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-04-14 6:31 UTC (permalink / raw) To: emacs-devel >>>>> On Thu, 11 Apr 2013 18:22:54 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > The first update of Emacs 24.3 Mac port 4.x is available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3-mac-4.1.tar.gz > ** Improvements > *** Round frame bottom corners on OS X 10.7 and later, even when > internal-border-width is 0. This change seems to trigger a *platform-independent* display bug. The symptom is that the upper part of the cursor in the echo area is sometimes unerased, especially during isearch in a large buffer. It is due to inconsistency of the values of `cursor_in_echo_area' between the update-time (i.e., drawing accompanied by the current matrix construction) and the expose-time (drawing in response to the Expose event). Both cases may call the function `get_window_cursor_type', which refers to the global variable `cursor_in_echo_area'. But its value might have been changed between the two timings by a typical let-binding of the Lisp variable `cursor-in-echo-area'. The fix should be done in the platform-independent part of course, but unfortunately that seems to become a nontrivial change. For the moment, please use the following workaround that is specific to the Mac port if this bug is annoying for you. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp === modified file 'src/macappkit.h' *** src/macappkit.h 2013-04-11 09:28:06 +0000 --- src/macappkit.h 2013-04-14 05:52:02 +0000 *************** *** 358,363 **** --- 358,367 ---- /* Whether scrollRect:by: has copied rounded bottom corner area. */ BOOL roundedBottomCornersCopied; + /* XXX: workaround for inconsistency of cursor_in_echo_area values + between update-time and expose-time. */ + BOOL cursorInEchoAreaSaved, savedCursorInEchoArea; + /* Raw key event that is interpreted by intepretKeyEvents:. */ NSEvent *rawKeyEvent; *************** *** 380,385 **** --- 384,390 ---- - (NSRect)firstRectForCharacterRange:(NSRange)aRange actualRange:(NSRangePointer)actualRange; - (void)viewFrameDidChange:(NSNotification *)notification; + - (void)saveCursorInEchoArea; @end /* Class for view in the overlay window of an Emacs frame window. */ === modified file 'src/macappkit.m' *** src/macappkit.m 2013-04-11 09:28:06 +0000 --- src/macappkit.m 2013-04-14 05:52:02 +0000 *************** *** 2784,2789 **** --- 2784,2791 ---- { rect = [emacsView convertRect:rect fromView:nil]; [emacsView setNeedsDisplayInRect:rect]; + if ([emacsView isKindOfClass:[EmacsMainView class]]) + [(EmacsMainView *)emacsView saveCursorInEchoArea]; } } } *************** *** 3864,3870 **** --- 3866,3884 ---- - (void)drawRect:(NSRect)aRect { + BOOL origCursorInEchoArea; + + if (cursorInEchoAreaSaved) + { + origCursorInEchoArea = cursor_in_echo_area; + cursor_in_echo_area = savedCursorInEchoArea; + } [super drawRect:aRect]; + if (cursorInEchoAreaSaved) + { + cursor_in_echo_area = origCursorInEchoArea; + cursorInEchoAreaSaved = NO; + } roundedBottomCornersCopied = NO; } *************** *** 3894,3899 **** --- 3908,3919 ---- } } + - (void)saveCursorInEchoArea + { + cursorInEchoAreaSaved = YES; + savedCursorInEchoArea = cursor_in_echo_area; + } + - (void)setMarkedText:(id)aString { if (markedText == aString) ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-14 6:31 ` YAMAMOTO Mitsuharu @ 2013-04-14 11:49 ` Eli Zaretskii 2013-04-15 2:17 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: Eli Zaretskii @ 2013-04-14 11:49 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel > Date: Sun, 14 Apr 2013 15:31:05 +0900 > From: YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> > > This change seems to trigger a *platform-independent* display bug. > The symptom is that the upper part of the cursor in the echo area is > sometimes unerased, especially during isearch in a large buffer. > > It is due to inconsistency of the values of `cursor_in_echo_area' > between the update-time (i.e., drawing accompanied by the current > matrix construction) and the expose-time (drawing in response to the > Expose event). Both cases may call the function > `get_window_cursor_type', which refers to the global variable > `cursor_in_echo_area'. But its value might have been changed between > the two timings by a typical let-binding of the Lisp variable > `cursor-in-echo-area'. Sorry, I don't understand: why would an expose event trigger erasing of a cursor in the minibuffer window? Could you possibly describe in detail the sequence of events that leads to this problem, and perhaps also give a reproducible recipe? And how is this related to the size of the buffer and isearch? Better make all that a bug report. Thanks. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-14 11:49 ` Eli Zaretskii @ 2013-04-15 2:17 ` YAMAMOTO Mitsuharu 2013-04-15 5:44 ` Eli Zaretskii 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-04-15 2:17 UTC (permalink / raw) To: Eli Zaretskii; +Cc: emacs-devel >>>>> On Sun, 14 Apr 2013 14:49:56 +0300, Eli Zaretskii <eliz@gnu.org> said: > Sorry, I don't understand: why would an expose event trigger erasing > of a cursor in the minibuffer window? > Could you possibly describe in detail the sequence of events that > leads to this problem, and perhaps also give a reproducible recipe? > And how is this related to the size of the buffer and isearch? > Better make all that a bug report. The actual scenario is rather complicated and mostly specific to the newest version of the Mac port, and difficult to reproduce on the other platforms (or earlier versions of the Mac port), because it is difficult to predict when expose events happen. I'll explain the scenario at the end of this mail, but you can just skip it. The point is, the cursor shape depends on the *current value* of `cursor-in-echo-area' and it may be different between the last redisplay and the subsequent expose_frame. Simply recording the value of `cursor-in-echo-area' seems to work and need only a small change. Recording the calculated cursor shape would be more efficient, but would require nontrivial changes. === modified file 'src/dispextern.h' *** src/dispextern.h 2013-03-28 14:04:49 +0000 --- src/dispextern.h 2013-04-15 01:48:51 +0000 *************** *** 665,670 **** --- 665,674 ---- line. */ unsigned header_line_p : 1; + /* Value of cursor_in_echo_area as of last window update. Set in + set_window_cursor_after_update. */ + unsigned cursor_in_echo_area_p : 1; + #ifdef GLYPH_DEBUG /* A string identifying the method used to display the matrix. */ char method[512]; === modified file 'src/dispnew.c' *** src/dispnew.c 2013-04-02 01:54:56 +0000 --- src/dispnew.c 2013-04-15 01:48:51 +0000 *************** *** 3860,3865 **** --- 3860,3866 ---- /* Not intended for frame matrix updates. */ eassert (FRAME_WINDOW_P (f)); + w->current_matrix->cursor_in_echo_area_p = cursor_in_echo_area; if (cursor_in_echo_area && !NILP (echo_area_buffer[0]) /* If we are showing a message instead of the mini-buffer, === modified file 'src/xdisp.c' *** src/xdisp.c 2013-04-02 01:54:56 +0000 --- src/xdisp.c 2013-04-15 01:48:51 +0000 *************** *** 25481,25487 **** *active_cursor = 1; /* Echo area */ ! if (cursor_in_echo_area && FRAME_HAS_MINIBUF_P (f) && EQ (FRAME_MINIBUF_WINDOW (f), echo_area_window)) { --- 25481,25487 ---- *active_cursor = 1; /* Echo area */ ! if (w->current_matrix && w->current_matrix->cursor_in_echo_area_p && FRAME_HAS_MINIBUF_P (f) && EQ (FRAME_MINIBUF_WINDOW (f), echo_area_window)) { The actual scenario on the latest version of the Mac port: (you can skip it) First of all, on OS X 10.7 and later, the bottom corners of an ordinary window are rounded if every drawing happens in response to an "expose" (in X11 terminology) event. This does not apply to Emacs, and the previous versions of the Mac port (and also the current NS port) show square frame bottom corner(s) if internal-border-width is 0. The newest version of the Mac port implements rounded bottom corners by invalidating the bottom area (containing echo area partly) when drawing operations outside "expose" events might have drawn into one of the bottom corners. This invalidation triggers an "expose" event at the next event. 1. A Lisp program (e.g. isearch) shows a message with temporarily setting `cursor-in-echo-area' by let-binding. 2. Emacs performs redisplay. At this moment, the cursor is drawn in the echo area because `cursor-in-echo-area' is set. 3. At the end of update, the invalidation explained above happens. The height of the invalidated area is 4 (~ the radius of the rounded corner) and it partially overlaps with the echo area. 4. At the next event loop, expose_frame is called, and the echo area is redrawn with setting the clipping area to the invalidated area. But at this moment, `cursor-in-echo-area' is already cleared. So the cursor is not drawn and the lower half of the cursor is cleared and upper half remains displayed because of clipping. 5. The Lisp program shows the same message again, but `cursor-in-echo-area' is nil this time. 6. Redisplay happens again. The display engine considers the cursor has already been cleared (at the last expose) and do not clear or draw the cursor. As a result, the upper half of the cursor remains displayed and lower half looks cleared. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-15 2:17 ` YAMAMOTO Mitsuharu @ 2013-04-15 5:44 ` Eli Zaretskii 2013-04-15 7:59 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: Eli Zaretskii @ 2013-04-15 5:44 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel > Date: Mon, 15 Apr 2013 11:17:20 +0900 > From: YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> > Cc: emacs-devel@gnu.org > > Simply recording the value of `cursor-in-echo-area' seems to work and > need only a small change. Recording the calculated cursor shape would > be more efficient, but would require nontrivial changes. > > === modified file 'src/dispextern.h' > *** src/dispextern.h 2013-03-28 14:04:49 +0000 > --- src/dispextern.h 2013-04-15 01:48:51 +0000 > *************** > *** 665,670 **** > --- 665,674 ---- > line. */ > unsigned header_line_p : 1; > > + /* Value of cursor_in_echo_area as of last window update. Set in > + set_window_cursor_after_update. */ > + unsigned cursor_in_echo_area_p : 1; > + > #ifdef GLYPH_DEBUG > /* A string identifying the method used to display the matrix. */ > char method[512]; > > === modified file 'src/dispnew.c' > *** src/dispnew.c 2013-04-02 01:54:56 +0000 > --- src/dispnew.c 2013-04-15 01:48:51 +0000 > *************** > *** 3860,3865 **** > --- 3860,3866 ---- > /* Not intended for frame matrix updates. */ > eassert (FRAME_WINDOW_P (f)); > > + w->current_matrix->cursor_in_echo_area_p = cursor_in_echo_area; > if (cursor_in_echo_area > && !NILP (echo_area_buffer[0]) > /* If we are showing a message instead of the mini-buffer, > > === modified file 'src/xdisp.c' > *** src/xdisp.c 2013-04-02 01:54:56 +0000 > --- src/xdisp.c 2013-04-15 01:48:51 +0000 > *************** > *** 25481,25487 **** > *active_cursor = 1; > > /* Echo area */ > ! if (cursor_in_echo_area > && FRAME_HAS_MINIBUF_P (f) > && EQ (FRAME_MINIBUF_WINDOW (f), echo_area_window)) > { > --- 25481,25487 ---- > *active_cursor = 1; > > /* Echo area */ > ! if (w->current_matrix && w->current_matrix->cursor_in_echo_area_p > && FRAME_HAS_MINIBUF_P (f) > && EQ (FRAME_MINIBUF_WINDOW (f), echo_area_window)) > { > > > The actual scenario on the latest version of the Mac port: (you can > skip it) > > First of all, on OS X 10.7 and later, the bottom corners of an > ordinary window are rounded if every drawing happens in response to an > "expose" (in X11 terminology) event. This does not apply to Emacs, > and the previous versions of the Mac port (and also the current NS > port) show square frame bottom corner(s) if internal-border-width is > 0. > > The newest version of the Mac port implements rounded bottom corners > by invalidating the bottom area (containing echo area partly) when > drawing operations outside "expose" events might have drawn into one > of the bottom corners. This invalidation triggers an "expose" event > at the next event. > > 1. A Lisp program (e.g. isearch) shows a message with temporarily > setting `cursor-in-echo-area' by let-binding. > > 2. Emacs performs redisplay. At this moment, the cursor is drawn in > the echo area because `cursor-in-echo-area' is set. > > 3. At the end of update, the invalidation explained above happens. > The height of the invalidated area is 4 (~ the radius of the > rounded corner) and it partially overlaps with the echo area. > > 4. At the next event loop, expose_frame is called, and the echo area > is redrawn with setting the clipping area to the invalidated area. > But at this moment, `cursor-in-echo-area' is already cleared. So > the cursor is not drawn and the lower half of the cursor is cleared > and upper half remains displayed because of clipping. > > 5. The Lisp program shows the same message again, but > `cursor-in-echo-area' is nil this time. > > 6. Redisplay happens again. The display engine considers the cursor > has already been cleared (at the last expose) and do not clear or > draw the cursor. As a result, the upper half of the cursor remains > displayed and lower half looks cleared. Thanks. I wish that platform-specific display tricks would not abuse platform-independent display mechanisms in this way. I mean, making the window edges round by triggering expose events as result of previous redisplay. Can't this be done in the Mac display back-end instead? While adding a flag to the glyph matrix looks like a no-brainer at first sight, doing so for a benefit of a single platform is something that at the very least should be heavily commented (including the above sequence). Otherwise, a few years from now, when this issue is no longer relevant, how can we even start thinking whether this flag is still needed or not? Also, there are several details that need to be figured out: . what about the same flag of the desired_matrix -- should it be cleared explicitly, and if so, where? . should this flag of the current_matrix be cleared after the cursor is displayed? If not, how can we be sure that during the next redisplay cycle, optimizations that bypass most of glyph matrix construction will not use a stale value? . what if redisplay was preempted? in that case, set_window_cursor_after_update is not called, and the flag keeps its previous value even if cursor_in_echo_area has changed. etc., etc. IOW, I'm unhappy with this change, and would like much better a solution that doesn't affect every platform out there (including text-mode display, btw). ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-15 5:44 ` Eli Zaretskii @ 2013-04-15 7:59 ` YAMAMOTO Mitsuharu 2013-04-15 8:55 ` Eli Zaretskii 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-04-15 7:59 UTC (permalink / raw) To: Eli Zaretskii; +Cc: emacs-devel >>>>> On Mon, 15 Apr 2013 08:44:04 +0300, Eli Zaretskii <eliz@gnu.org> said: > I wish that platform-specific display tricks would not abuse > platform-independent display mechanisms in this way. I mean, making > the window edges round by triggering expose events as result of > previous redisplay. Can't this be done in the Mac display back-end > instead? No, it's not an abuse at all. Invalidating the area that needs to be updated and let the "expose" handler draw is a very standard (sometimes only) way of drawing even on GTK+. The similar inconsistency in Emacs display can also happen on other platforms in principle, depending on the timing of the "expose" event. The only difference is the invalidation happens internally/actively or externally/passively. That's why the latter is difficult to reproduce. > While adding a flag to the glyph matrix looks like a no-brainer at > first sight, doing so for a benefit of a single platform is > something that at the very least should be heavily commented > (including the above sequence). Otherwise, a few years from now, > when this issue is no longer relevant, how can we even start > thinking whether this flag is still needed or not? The reason is simple: the expose handler should recover the contents of the previous redisplay with respect to the requested rectangle. I think it is natural and the expected behavior actually. The current code uses wrong information (i.e., the value of `cursor-in-echo-area' as of "expose") in this respect. Again, the bug itself is not specific to a single platform. > Also, there are several details that need to be figured out: > . what about the same flag of the desired_matrix -- should it be > cleared explicitly, and if so, where? The same question probably applies to the existing `begv' and 'zv' members of `struct glyph_matrix': they are meaningful/used only for the current matrix and never cleared. > . should this flag of the current_matrix be cleared after the > cursor is displayed? If not, how can we be sure that during the > next redisplay cycle, optimizations that bypass most of glyph matrix > construction will not use a stale value? > . what if redisplay was preempted? in that case, > set_window_cursor_after_update is not called, and the flag keeps its > previous value even if cursor_in_echo_area has changed. > etc., etc. > IOW, I'm unhappy with this change, and would like much better a > solution that doesn't affect every platform out there (including > text-mode display, btw). If someone proposes more appropriate way and/or place to record the status of the cursor so that the subsequent "expose" handler call can recover the result of previous redisplay, I would really appreciate it. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-15 7:59 ` YAMAMOTO Mitsuharu @ 2013-04-15 8:55 ` Eli Zaretskii 2013-04-15 9:48 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: Eli Zaretskii @ 2013-04-15 8:55 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel > Date: Mon, 15 Apr 2013 16:59:31 +0900 > From: YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> > Cc: emacs-devel@gnu.org > > >>>>> On Mon, 15 Apr 2013 08:44:04 +0300, Eli Zaretskii <eliz@gnu.org> said: > > > I wish that platform-specific display tricks would not abuse > > platform-independent display mechanisms in this way. I mean, making > > the window edges round by triggering expose events as result of > > previous redisplay. Can't this be done in the Mac display back-end > > instead? > > No, it's not an abuse at all. Invalidating the area that needs to be > updated and let the "expose" handler draw is a very standard > (sometimes only) way of drawing even on GTK+. I was talking specifically about invalidating fractions of screen lines (a.k.a. "glyph rows"). I'm still interested to know why this cannot be done entirely in the display back-end. > The similar inconsistency in Emacs display can also happen on other > platforms in principle, depending on the timing of the "expose" event. > The only difference is the invalidation happens internally/actively or > externally/passively. That's why the latter is difficult to > reproduce. I suspect that triggering the event internally is the only situation where this can happen, because it might cause the expose event be delivered between two successive redisplay cycles that would normally take care of the change in the value of cursor_in_echo_area. > > While adding a flag to the glyph matrix looks like a no-brainer at > > first sight, doing so for a benefit of a single platform is > > something that at the very least should be heavily commented > > (including the above sequence). Otherwise, a few years from now, > > when this issue is no longer relevant, how can we even start > > thinking whether this flag is still needed or not? > > The reason is simple: the expose handler should recover the contents > of the previous redisplay with respect to the requested rectangle. And yet we don't see the result on any other platform. > > . what about the same flag of the desired_matrix -- should it be > > cleared explicitly, and if so, where? > > The same question probably applies to the existing `begv' and 'zv' > members of `struct glyph_matrix': they are meaningful/used only for > the current matrix and never cleared. Those members are only tested to see whether the last redisplay cycle ran to completion, and whether the displayed buffer changed behind redisplay's back. A stale value here can at worst cause redundant redisplays. By contrast, the flag you are suggesting, if stale, will cause the cursor be redrawn incorrectly, IIUC. > If someone proposes more appropriate way and/or place to record the > status of the cursor so that the subsequent "expose" handler call can > recover the result of previous redisplay, I would really appreciate > it. I'm still interested to know why this cannot be handled in the Mac specific display back-end code. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-15 8:55 ` Eli Zaretskii @ 2013-04-15 9:48 ` YAMAMOTO Mitsuharu 2013-04-15 10:57 ` Eli Zaretskii 2013-04-17 1:09 ` YAMAMOTO Mitsuharu 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-04-15 9:48 UTC (permalink / raw) To: Eli Zaretskii; +Cc: emacs-devel >>>>> On Mon, 15 Apr 2013 11:55:34 +0300, Eli Zaretskii <eliz@gnu.org> said: >> No, it's not an abuse at all. Invalidating the area that needs to >> be updated and let the "expose" handler draw is a very standard >> (sometimes only) way of drawing even on GTK+. > I was talking specifically about invalidating fractions of screen > lines (a.k.a. "glyph rows"). > I'm still interested to know why this cannot be done entirely in the > display back-end. I'm using the "expose" handler for recovering the display contents through invalidation, because that is really what it is for. On Mac, the "expose" handler is called in many situations than you might expect including outside the control of application code: e.g., creating a snapshot of the window image for icons or "Exposé" (http://support.apple.com/kb/HT2503). I'm not sure about other platforms/toolkits, but I wouldn't be surprised if similar things happen there for providing some fancy features. Nowadays, drawing outside the "expose" handler is exceptional and subject to several restrictions. >> The similar inconsistency in Emacs display can also happen on other >> platforms in principle, depending on the timing of the "expose" >> event. The only difference is the invalidation happens >> internally/actively or externally/passively. That's why the latter >> is difficult to reproduce. > I suspect that triggering the event internally is the only situation > where this can happen, because it might cause the expose event be > delivered between two successive redisplay cycles that would > normally take care of the change in the value of > cursor_in_echo_area. What about this example? (progn (let ((cursor-in-echo-area t)) (message "foo") (sit-for 0)) (sleep-for 10)) If the "expose" event happen for the echo area during the execution of sleep-for, would the cursor be correctly recovered? >> The reason is simple: the expose handler should recover the >> contents of the previous redisplay with respect to the requested >> rectangle. > And yet we don't see the result on any other platform. You don't agree the principle for the "expose" handler above (i.e., it should recover the contents of the previous redisplay)? Then what is your expected behavior of the "expose" handler? I don't insist my patch is correct. But I'd say the current behavior is wrong and the fix should be done in the platform-independent part rather than in the code for a particular platform where the problem happens to easily emerge. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-15 9:48 ` YAMAMOTO Mitsuharu @ 2013-04-15 10:57 ` Eli Zaretskii 2013-04-16 0:17 ` YAMAMOTO Mitsuharu 2013-04-17 1:09 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: Eli Zaretskii @ 2013-04-15 10:57 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel > Date: Mon, 15 Apr 2013 18:48:29 +0900 > From: YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> > Cc: emacs-devel@gnu.org > > > I'm still interested to know why this cannot be done entirely in the > > display back-end. > > I'm using the "expose" handler for recovering the display contents > through invalidation, because that is really what it is for. > > On Mac, the "expose" handler is called in many situations than you > might expect including outside the control of application code: e.g., > creating a snapshot of the window image for icons or "Exposé" > (http://support.apple.com/kb/HT2503). I'm not sure about other > platforms/toolkits, but I wouldn't be surprised if similar things > happen there for providing some fancy features. Nowadays, drawing > outside the "expose" handler is exceptional and subject to several > restrictions. Sorry, I don't understand. I was asking why the code that makes the corners of the window round cannot be run directly from the GUI drawing code of the Mac display back-end, e.g., from the update_end method. Why does it _have_ to be run from the expose handler? > (progn > (let ((cursor-in-echo-area t)) > (message "foo") > (sit-for 0)) > (sleep-for 10)) > > If the "expose" event happen for the echo area during the execution of > sleep-for, would the cursor be correctly recovered? I cannot make it produce an incorrect cursor, but maybe I don't generate the expose event as you intended. How did you do it? Does the expose event on the Mac interrupt sleep-for? > >> The reason is simple: the expose handler should recover the > >> contents of the previous redisplay with respect to the requested > >> rectangle. > > > And yet we don't see the result on any other platform. > > You don't agree the principle for the "expose" handler above (i.e., it > should recover the contents of the previous redisplay)? Then what is > your expected behavior of the "expose" handler? I don't like the expose event being used for this purpose in the first place. Platform-specific pixel-level drawing shouldn't IMO be exposed to the device-independent portions of the display engine. And second, I don't think I understand what needs to be recovered except what the glyph matrix describes. The redisplay that happens in response to the expose event needs to know where to draw the cursor and how to draw it _at_the_moment_of_redisplay_; why is it important where the cursor was during previous redisplay cycle, if it is no longer there and shouldn't be there? > I don't insist my patch is correct. But I'd say the current behavior > is wrong and the fix should be done in the platform-independent part > rather than in the code for a particular platform where the problem > happens to easily emerge. I asked you to describe a series of events that could reproduce such a problem, and your description was about a Mac-specific feature. If this is a platform-independent problem, there should be a way of reproducing it on other platforms as well. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-15 10:57 ` Eli Zaretskii @ 2013-04-16 0:17 ` YAMAMOTO Mitsuharu 2013-04-16 2:11 ` YAMAMOTO Mitsuharu 2013-04-16 6:49 ` Eli Zaretskii 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-04-16 0:17 UTC (permalink / raw) To: Eli Zaretskii; +Cc: emacs-devel >>>>> On Mon, 15 Apr 2013 13:57:14 +0300, Eli Zaretskii <eliz@gnu.org> said: >> I'm using the "expose" handler for recovering the display contents >> through invalidation, because that is really what it is for. >> >> On Mac, the "expose" handler is called in many situations than you >> might expect including outside the control of application code: >> e.g., creating a snapshot of the window image for icons or "Exposé" >> (http://support.apple.com/kb/HT2503). I'm not sure about other >> platforms/toolkits, but I wouldn't be surprised if similar things >> happen there for providing some fancy features. Nowadays, drawing >> outside the "expose" handler is exceptional and subject to several >> restrictions. > Sorry, I don't understand. I was asking why the code that makes the > corners of the window round cannot be run directly from the GUI > drawing code of the Mac display back-end, e.g., from the update_end > method. Why does it _have_ to be run from the expose handler? I actually tried to round the bottom corners by calling some undocumented API from update_end_hook in the very first trial. Repeated rounding made the corner shaper because of anti-aliasing there. Again, invalidating an area to let the "expose" handler draw afterwards is a very standard, primary, canonical, and sometimes only way of drawing nowadays. (If you call it is an abuse or trick, you'll be laughed.) Application frameworks also treat it as primary, so the other unusual drawing methods (i.e., outside the "expose" handler) are not the primary target, and some newer features are not available if you use "nonstandard" ways of drawing. Bottom corner rounding is just an example of such cases. >> (progn (let ((cursor-in-echo-area t)) (message "foo") (sit-for 0)) >> (sleep-for 10)) >> >> If the "expose" event happen for the echo area during the execution >> of sleep-for, would the cursor be correctly recovered? > I cannot make it produce an incorrect cursor, but maybe I don't > generate the expose event as you intended. How did you do it? If you use a window system implementation that uses "backing store" to avoid frequent "expose", then it is difficult to produce the "expose" event intentionally by uncovering the window. > Does the expose event on the Mac interrupt sleep-for? sleep-for is usually blocking at `select' (or its emulation) call, which is supposed to return when some window system event (such as C-g or expose) becomes available. The "expose" handler is called there. >> You don't agree the principle for the "expose" handler above (i.e., >> it should recover the contents of the previous redisplay)? Then >> what is your expected behavior of the "expose" handler? > I don't like the expose event being used for this purpose in the > first place. Platform-specific pixel-level drawing shouldn't IMO be > exposed to the device-independent portions of the display engine. You can't tell how "expose" events are used from Application frameworks or toolkits. Whether you like it or not, contemporary ones (such as GTK+ and Cocoa) treat the "expose" handler as the primary drawing method and use it accordingly, regardless of the internal use from the application code. > And second, I don't think I understand what needs to be recovered > except what the glyph matrix describes. The redisplay that happens > in response to the expose event needs to know where to draw the > cursor and how to draw it _at_the_moment_of_redisplay_; why is it > important where the cursor was during previous redisplay cycle, if > it is no longer there and shouldn't be there? What's displayed is assumed to be unchanged until the next redisplay in the first place, even if several "expose" events happen in between. Otherwise, you can't use several optimizations in redisplay that reuse the existing contents. >> I don't insist my patch is correct. But I'd say the current >> behavior is wrong and the fix should be done in the >> platform-independent part rather than in the code for a particular >> platform where the problem happens to easily emerge. > I asked you to describe a series of events that could reproduce such > a problem, and your description was about a Mac-specific feature. > If this is a platform-independent problem, there should be a way of > reproducing it on other platforms as well. As I said above, you'll need a window system implementation that doesn't use "backing store" in order to reproduce the phenomena reliably. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-16 0:17 ` YAMAMOTO Mitsuharu @ 2013-04-16 2:11 ` YAMAMOTO Mitsuharu 2013-04-16 6:49 ` Eli Zaretskii 1 sibling, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-04-16 2:11 UTC (permalink / raw) To: Eli Zaretskii; +Cc: emacs-devel [-- Attachment #1: Type: text/plain, Size: 645 bytes --] >>>>> On Tue, 16 Apr 2013 09:17:33 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: >> Sorry, I don't understand. I was asking why the code that makes >> the corners of the window round cannot be run directly from the GUI >> drawing code of the Mac display back-end, e.g., from the update_end >> method. Why does it _have_ to be run from the expose handler? > I actually tried to round the bottom corners by calling some > undocumented API from update_end_hook in the very first trial. > Repeated rounding made the corner shaper because of anti-aliasing > there. s/shaper/sharper/ The attached images shows the difference. [-- Attachment #2: normal.png --] [-- Type: image/png, Size: 1720 bytes --] [-- Attachment #3: sharper.png --] [-- Type: image/png, Size: 1765 bytes --] [-- Attachment #4: Type: text/plain, Size: 2625 bytes --] Below is the patch of the first trial that I finally rejected myself, against the previous version (emacs-24.3-mac-4.0) of the Mac port. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp === modified file 'src/macappkit.h' *** src/macappkit.h 2013-03-19 06:08:36 +0000 --- src/macappkit.h 2013-04-03 00:24:59 +0000 *************** *** 807,812 **** --- 807,816 ---- @end #endif + @interface NSWindow (Undocumented) + - (void)_maskRoundedBottomCorners:(NSRect)clipRect; + @end + #if MAC_OS_X_VERSION_MAX_ALLOWED < 1060 @interface NSMenu (AvailableOn1060AndLater) - (BOOL)popUpMenuPositioningItem:(NSMenuItem *)item === modified file 'src/macappkit.m' *** src/macappkit.m 2013-04-03 00:08:55 +0000 --- src/macappkit.m 2013-04-03 00:24:59 +0000 *************** *** 3610,3615 **** --- 3610,3616 ---- unset_global_focus_view_frame (); [frameController unlockFocusOnEmacsView]; + mac_mask_rounded_bottom_corners (f); [window enableFlushWindow]; } *************** *** 3715,3720 **** --- 3716,3736 ---- [frameController invalidateCursorRectsForEmacsView]; } + void + mac_mask_rounded_bottom_corners (struct frame *f) + { + NSWindow *window = FRAME_MAC_WINDOW_OBJECT (f); + + if ([window respondsToSelector:@selector(_maskRoundedBottomCorners:)]) + { + NSView *contentView = [window contentView]; + NSRect rect = [contentView visibleRect]; + + rect = [contentView convertRect:rect toView:nil]; + [window _maskRoundedBottomCorners:rect]; + } + } + \f /************************************************************************ View and Drawing === modified file 'src/macterm.c' *** src/macterm.c 2013-01-12 05:16:32 +0000 --- src/macterm.c 2013-04-03 00:24:59 +0000 *************** *** 2836,2841 **** --- 2836,2842 ---- block_input (); mac_invert_rectangles (f, rects, nrects); + mac_mask_rounded_bottom_corners (f); x_flush (f); *************** *** 2863,2868 **** --- 2864,2870 ---- } mac_invert_rectangles (f, rects, nrects); + mac_mask_rounded_bottom_corners (f); x_flush (f); === modified file 'src/macterm.h' *** src/macterm.h 2013-03-18 02:33:51 +0000 --- src/macterm.h 2013-04-03 00:24:59 +0000 *************** *** 651,656 **** --- 651,657 ---- extern int mac_tracking_area_works_with_cursor_rects_invalidation_p (void); extern void mac_invalidate_frame_cursor_rects (struct frame *f); + extern void mac_mask_rounded_bottom_corners (struct frame *); extern int mac_webkit_supports_svg_p (void); extern CFTypeRef mac_sound_create (Lisp_Object, Lisp_Object); ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-16 0:17 ` YAMAMOTO Mitsuharu 2013-04-16 2:11 ` YAMAMOTO Mitsuharu @ 2013-04-16 6:49 ` Eli Zaretskii 2013-04-16 10:15 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: Eli Zaretskii @ 2013-04-16 6:49 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel > Date: Tue, 16 Apr 2013 09:17:33 +0900 > From: YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> > Cc: emacs-devel@gnu.org > > I actually tried to round the bottom corners by calling some > undocumented API from update_end_hook in the very first trial. > Repeated rounding made the corner shaper because of anti-aliasing > there. So how delegating this to the time expose event is handled overcomes that problem? IOW, what code handles the rounding in response to the expose event, and why can't you call or trigger the same code from update_end_hook? > Again, invalidating an area to let the "expose" handler draw > afterwards is a very standard, primary, canonical, and sometimes only > way of drawing nowadays. (If you call it is an abuse or trick, you'll > be laughed.) You can laugh, if you want, but I still think it's abuse, and won't be convinced by being laughed at. > If you use a window system implementation that uses "backing store" to > avoid frequent "expose", then it is difficult to produce the "expose" > event intentionally by uncovering the window. Which window systems we support don't use "backing store"? > > I don't like the expose event being used for this purpose in the > > first place. Platform-specific pixel-level drawing shouldn't IMO be > > exposed to the device-independent portions of the display engine. > > You can't tell how "expose" events are used from Application > frameworks or toolkits. Whether you like it or not, contemporary ones > (such as GTK+ and Cocoa) treat the "expose" handler as the primary > drawing method and use it accordingly, regardless of the internal use > from the application code. We have no control on how other software is written. We only have control on how Emacs is designed and implemented. Look, I'm wearing here the hat of an Emacs maintainer who is concerned about the maintainability of the Emacs display code in the long run. Witness the amount of discussions lately that involve flags and options for which no one remembers their purpose or intended use any longer. Witness the amount of changes done recently on the trunk to rightfully remove ancient crud, which sometimes later turns out to be needed, for reasons no one at the time cared to document clearly enough. You are suggesting to add one more such flag, don't you see? Who will remember a few years from now why it was needed, which problem on what platform(s) it fixed, and how that problem could be reproduced? I'll tell you: NO ONE WILL REMEMBER!! So arguments that describe how other software works are of no value here, because the size and activity of the maintenance teams of these other projects are most probably very different from the "team" that maintains the Emacs display code. IOW, by telling time and again how these techniques are used elsewhere, you are wasting your time. > > And second, I don't think I understand what needs to be recovered > > except what the glyph matrix describes. The redisplay that happens > > in response to the expose event needs to know where to draw the > > cursor and how to draw it _at_the_moment_of_redisplay_; why is it > > important where the cursor was during previous redisplay cycle, if > > it is no longer there and shouldn't be there? > > What's displayed is assumed to be unchanged until the next redisplay > in the first place, even if several "expose" events happen in between. > Otherwise, you can't use several optimizations in redisplay that > reuse the existing contents. Sorry, you lost me here. An expose event just triggers another redisplay, so what's that "unchanged until the next redisplay" about? > >> I don't insist my patch is correct. But I'd say the current > >> behavior is wrong and the fix should be done in the > >> platform-independent part rather than in the code for a particular > >> platform where the problem happens to easily emerge. > > > I asked you to describe a series of events that could reproduce such > > a problem, and your description was about a Mac-specific feature. > > If this is a platform-independent problem, there should be a way of > > reproducing it on other platforms as well. > > As I said above, you'll need a window system implementation that > doesn't use "backing store" in order to reproduce the phenomena > reliably. If there are no such systems except the Mac, then in practice this still is a problem specific to that single platform. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-16 6:49 ` Eli Zaretskii @ 2013-04-16 10:15 ` YAMAMOTO Mitsuharu 2013-04-16 10:48 ` YAMAMOTO Mitsuharu ` (2 more replies) 0 siblings, 3 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-04-16 10:15 UTC (permalink / raw) To: Eli Zaretskii; +Cc: emacs-devel >>>>> On Tue, 16 Apr 2013 09:49:17 +0300, Eli Zaretskii <eliz@gnu.org> said: >> I actually tried to round the bottom corners by calling some >> undocumented API from update_end_hook in the very first trial. >> Repeated rounding made the corner shaper because of anti-aliasing >> there. > So how delegating this to the time expose event is handled overcomes > that problem? IOW, what code handles the rounding in response to > the expose event, and why can't you call or trigger the same code > from update_end_hook? The problem due to anti-aliasing happens if you round the corners multiple times. Exposing the bottom part can make sure that the corners are freshly redrawn and rounding is always done exactly once. That shows a typical reason why recent toolkits treat the "expose" handler as the primary drawing method. By freshly redrawing invalidated area in a rear-to-front way, it can provide some fancy appearances such as overlapped/translucent widgets in a correct way. (Another problem with drawing outside the "expose" handler can be observed with the NS port on Mac OS X 10.6 and earlier: the resize handle at the right bottom corner gets overwritten.) >> If you use a window system implementation that uses "backing store" >> to avoid frequent "expose", then it is difficult to produce the >> "expose" event intentionally by uncovering the window. > Which window systems we support don't use "backing store"? Some implementations of Xservers. According to the manual, -bs option seems to turn off the backing store support. >> You can't tell how "expose" events are used from Application >> frameworks or toolkits. Whether you like it or not, contemporary >> ones (such as GTK+ and Cocoa) treat the "expose" handler as the >> primary drawing method and use it accordingly, regardless of the >> internal use from the application code. > We have no control on how other software is written. We only have > control on how Emacs is designed and implemented. > Look, I'm wearing here the hat of an Emacs maintainer who is > concerned about the maintainability of the Emacs display code in the > long run. Witness the amount of discussions lately that involve > flags and options for which no one remembers their purpose or > intended use any longer. Witness the amount of changes done > recently on the trunk to rightfully remove ancient crud, which > sometimes later turns out to be needed, for reasons no one at the > time cared to document clearly enough. You are suggesting to add > one more such flag, don't you see? Who will remember a few years > from now why it was needed, which problem on what platform(s) it > fixed, and how that problem could be reproduced? I'll tell you: NO > ONE WILL REMEMBER!! > So arguments that describe how other software works are of no value > here, because the size and activity of the maintenance teams of > these other projects are most probably very different from the > "team" that maintains the Emacs display code. IOW, by telling time > and again how these techniques are used elsewhere, you are wasting > your time. I'm just saying that the current "expose" handler has a bug in the platform-independent part with respect to cursor drawing. It would be true that the "expose" hander is used to be considered subsidiary drawing method and used in a limited situation traditionally, but that is no longer true. >> What's displayed is assumed to be unchanged until the next >> redisplay in the first place, even if several "expose" events >> happen in between. Otherwise, you can't use several optimizations >> in redisplay that reuse the existing contents. > Sorry, you lost me here. An expose event just triggers another > redisplay, so what's that "unchanged until the next redisplay" > about? No. Redisplay involves Lisp evaluation, which is prohibited in the context of read_socket_hook where the "expose" handler is called. >> As I said above, you'll need a window system implementation that >> doesn't use "backing store" in order to reproduce the phenomena >> reliably. > If there are no such systems except the Mac, then in practice this > still is a problem specific to that single platform. Mac does have "backing store". I meant Xserver implementation without "backing store". I vaguely remember Xvnc didn't have one and issued "expose" events every time a window is uncovered, but I'm not sure about the recent situation of Xservers. YAMAMOTO Mituharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-16 10:15 ` YAMAMOTO Mitsuharu @ 2013-04-16 10:48 ` YAMAMOTO Mitsuharu 2013-04-16 13:20 ` Stefan Monnier 2013-04-22 8:54 ` Nix 2 siblings, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-04-16 10:48 UTC (permalink / raw) To: Eli Zaretskii; +Cc: emacs-devel >>>>> On Tue, 16 Apr 2013 19:15:45 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > (Another problem with drawing outside the "expose" handler can be > observed with the NS port on Mac OS X 10.6 and earlier: the resize > handle at the right bottom corner gets overwritten.) The resize handle can be recovered by invalidating the right bottom corner at update_end_hook, just as in the case of the rounded bottom corners in the latest version of the Mac port. That's another example where intentional invalidation is useful (arguably in another platform). YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-16 10:15 ` YAMAMOTO Mitsuharu 2013-04-16 10:48 ` YAMAMOTO Mitsuharu @ 2013-04-16 13:20 ` Stefan Monnier 2013-04-16 14:38 ` Eli Zaretskii 2013-04-16 23:52 ` YAMAMOTO Mitsuharu 2013-04-22 8:54 ` Nix 2 siblings, 2 replies; 320+ messages in thread From: Stefan Monnier @ 2013-04-16 13:20 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: Eli Zaretskii, emacs-devel > That shows a typical reason why recent toolkits treat the "expose" > handler as the primary drawing method. By freshly redrawing > invalidated area in a rear-to-front way, it can provide some fancy > appearances such as overlapped/translucent widgets in a correct way. So IIUC, the "new normal" way you describe goes something like: - redisplay builds glyph matrices from Lisp data and invalidates the parts of the display that might need to be redrawn but does not draw. - expose handlers use the glyph matrices to draw on the screen when/where needed. That makes a lot of sense. Stefan ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-16 13:20 ` Stefan Monnier @ 2013-04-16 14:38 ` Eli Zaretskii 2013-04-16 23:52 ` YAMAMOTO Mitsuharu 1 sibling, 0 replies; 320+ messages in thread From: Eli Zaretskii @ 2013-04-16 14:38 UTC (permalink / raw) To: Stefan Monnier; +Cc: mituharu, emacs-devel > From: Stefan Monnier <monnier@iro.umontreal.ca> > Cc: Eli Zaretskii <eliz@gnu.org>, emacs-devel@gnu.org > Date: Tue, 16 Apr 2013 09:20:15 -0400 > > > That shows a typical reason why recent toolkits treat the "expose" > > handler as the primary drawing method. By freshly redrawing > > invalidated area in a rear-to-front way, it can provide some fancy > > appearances such as overlapped/translucent widgets in a correct way. > > So IIUC, the "new normal" way you describe goes something like: > - redisplay builds glyph matrices from Lisp data and invalidates the > parts of the display that might need to be redrawn but does not draw. > - expose handlers use the glyph matrices to draw on the screen > when/where needed. > That makes a lot of sense. Maybe I misunderstood, but I don't think the first item is accurate. (And I don't think you can build glyph matrices, but not draw.) I think the first step both draws _and_ invalidates, and then the expose event redraws some small portion of the display. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-16 13:20 ` Stefan Monnier 2013-04-16 14:38 ` Eli Zaretskii @ 2013-04-16 23:52 ` YAMAMOTO Mitsuharu 2013-04-17 5:08 ` Jan Djärv 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-04-16 23:52 UTC (permalink / raw) To: Stefan Monnier; +Cc: Eli Zaretskii, emacs-devel >>>>> On Tue, 16 Apr 2013 09:20:15 -0400, Stefan Monnier <monnier@iro.umontreal.ca> said: >> That shows a typical reason why recent toolkits treat the "expose" >> handler as the primary drawing method. By freshly redrawing >> invalidated area in a rear-to-front way, it can provide some fancy >> appearances such as overlapped/translucent widgets in a correct way. > So IIUC, the "new normal" way you describe goes something like: > - redisplay builds glyph matrices from Lisp data and invalidates the > parts of the display that might need to be redrawn but does not draw. > - expose handlers use the glyph matrices to draw on the screen > when/where needed. > That makes a lot of sense. Yes. See also this post: http://lists.gnu.org/archive/html/emacs-devel/2010-07/msg00821.html (copied to the end of this mail.) Currently, I don't think it is practical to prohibit the actual drawing in redisplay time completely, at least in a short term, mainly because of the item 4 in the above post. But it makes sense to make expose_frame more efficient (and correct). YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp >>>>> On Thu, 15 Jul 2010 12:00:05 -0400, Chong Yidong <address@hidden> said: > A more promising route is the one that Yamamoto Mitsuharu has > explored, mentioned earlier in this thread, which (IIUC) treats > Cairo as a graphical terminal to render onto, on the same footing as > the tty/X/Windows/NS terminals. Here, I can see a reasonable path > to real improvement. For example, it might allow us to use the GTK > printing infrastructure, which operates on Cairo contexts. If you > are interested in redisplay development, that is the direction I'd > suggest looking into. My proof-of-concept cairo port was primarily intended for the printing support, not for screen drawing (though it does both). http://lists.gnu.org/archive/html/emacs-devel/2009-04/msg00390.html Screen drawing in the cairo port is not so efficient for several reasons. To make it more efficient, one would need some modest modifications to the current drawing model in Emacs. 1. Don't draw during redisplay, but mark the updated area dirty so the upcoming exposure event can trigger the actual redraw for the area to be updated. 2. Restrict the actual drawings to those in response to exposure events. This is the standard way in GTK+ and Cocoa. That would make double-buffering straightforward in GTK+ builds. 3. Make expose_window etc. more efficient. For example, the foreground of same row might currently be redrawn three times for some cases in order to handle overlaps between rows with minimal flickering. This can be eliminated if double-buffering is introduced and whole the background is drawn at once and then whole the foreground is drawn afterwards. 4. Scrolling in redisplay (x_shift_glyphs_for_insert and x_scroll_run) might require special treatment because copied area might be marked dirty at the time of scrolling. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-16 23:52 ` YAMAMOTO Mitsuharu @ 2013-04-17 5:08 ` Jan Djärv 2013-04-17 5:46 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: Jan Djärv @ 2013-04-17 5:08 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: Eli Zaretskii, Stefan Monnier, emacs-devel 17 apr 2013 kl. 01:52 skrev YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>: > > My proof-of-concept cairo port was primarily intended for the printing > support, not for screen drawing (though it does both). > > http://lists.gnu.org/archive/html/emacs-devel/2009-04/msg00390.html > > Screen drawing in the cairo port is not so efficient for several > reasons. To make it more efficient, one would need some modest > modifications to the current drawing model in Emacs. > > 1. Don't draw during redisplay, but mark the updated area dirty so > the upcoming exposure event can trigger the actual redraw for the > area to be updated. > 2. Restrict the actual drawings to those in response to exposure > events. This is the standard way in GTK+ and Cocoa. That would > make double-buffering straightforward in GTK+ builds. Double buffering in the Gtk+ is not turned off because of the expose handler, but because Gtk+ can not double buffer text/images not drawn with Gtk/Gdk primitives, and Emacs uses X primitives. So changing the way expose handler works does absolutely nothing to make Gtk+ double buffering easier. Jan D. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-17 5:08 ` Jan Djärv @ 2013-04-17 5:46 ` YAMAMOTO Mitsuharu 2013-04-17 6:36 ` Jan Djärv 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-04-17 5:46 UTC (permalink / raw) To: Jan Djärv; +Cc: Eli Zaretskii, Stefan Monnier, emacs-devel >>>>> On Wed, 17 Apr 2013 07:08:25 +0200, Jan Djärv <jan.h.d@swipnet.se> said: > 17 apr 2013 kl. 01:52 skrev YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>: >> >> My proof-of-concept cairo port was primarily intended for the printing >> support, not for screen drawing (though it does both). >> >> http://lists.gnu.org/archive/html/emacs-devel/2009-04/msg00390.html >> >> Screen drawing in the cairo port is not so efficient for several >> reasons. To make it more efficient, one would need some modest >> modifications to the current drawing model in Emacs. >> >> 1. Don't draw during redisplay, but mark the updated area dirty so >> the upcoming exposure event can trigger the actual redraw for the >> area to be updated. >> 2. Restrict the actual drawings to those in response to exposure >> events. This is the standard way in GTK+ and Cocoa. That would >> make double-buffering straightforward in GTK+ builds. > Double buffering in the Gtk+ is not turned off because of the expose > handler, but because Gtk+ can not double buffer text/images not > drawn with Gtk/Gdk primitives, and Emacs uses X primitives. So > changing the way expose handler works does absolutely nothing to > make Gtk+ double buffering easier. That would be correct in itself. But my description above is in the context of cairo. The cairo context passed via the expose handler is automatically double-buffered. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-17 5:46 ` YAMAMOTO Mitsuharu @ 2013-04-17 6:36 ` Jan Djärv 2013-04-19 3:58 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: Jan Djärv @ 2013-04-17 6:36 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: Eli Zaretskii, Stefan Monnier, emacs-devel@gnu.org Hello. 17 apr 2013 kl. 07:46 skrev YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>: >>>>>> On Wed, 17 Apr 2013 07:08:25 +0200, Jan Djärv <jan.h.d@swipnet.se> said: > >> 17 apr 2013 kl. 01:52 skrev YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>: >>> >>> My proof-of-concept cairo port was primarily intended for the printing >>> support, not for screen drawing (though it does both). >>> >>> http://lists.gnu.org/archive/html/emacs-devel/2009-04/msg00390.html >>> >>> Screen drawing in the cairo port is not so efficient for several >>> reasons. To make it more efficient, one would need some modest >>> modifications to the current drawing model in Emacs. >>> >>> 1. Don't draw during redisplay, but mark the updated area dirty so >>> the upcoming exposure event can trigger the actual redraw for the >>> area to be updated. >>> 2. Restrict the actual drawings to those in response to exposure >>> events. This is the standard way in GTK+ and Cocoa. That would >>> make double-buffering straightforward in GTK+ builds. > >> Double buffering in the Gtk+ is not turned off because of the expose >> handler, but because Gtk+ can not double buffer text/images not >> drawn with Gtk/Gdk primitives, and Emacs uses X primitives. So >> changing the way expose handler works does absolutely nothing to >> make Gtk+ double buffering easier. > > That would be correct in itself. But my description above is in the > context of cairo. The cairo context passed via the expose handler is > automatically double-buffered. > This is not just for cairo. Gtk+ double buffers anything drawn with Gtk in the expose handler. For example, menus and toolbar in a Gtk Emacs are double buffered. If moving things to the expose handler is considered, one must take into account non-Gtk X11 builds. X11 does not have a mechanism for invalidating regions for the purpose of generating an expose event. Gtk+ generates syntetic (internal) expose events. I guess we could do the same, but it is work to be done by someone(tm). I also suspect the synchronous nature of Elisp would make this complicated. For example, if Lisp code adds text or image to a buffer, the text or image would be visible to the user at some point in the future, not when the Lisp code is done. Unless some synchronization is added between Lisp code and the expose handler. Jan D. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-17 6:36 ` Jan Djärv @ 2013-04-19 3:58 ` YAMAMOTO Mitsuharu 2013-04-19 7:08 ` Jan Djärv 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-04-19 3:58 UTC (permalink / raw) To: Jan Djärv; +Cc: Eli Zaretskii, Stefan Monnier, emacs-devel@gnu.org >>>>> On Wed, 17 Apr 2013 08:36:25 +0200, Jan Djärv <jan.h.d@swipnet.se> said: >>> Double buffering in the Gtk+ is not turned off because of the >>> expose handler, but because Gtk+ can not double buffer text/images >>> not drawn with Gtk/Gdk primitives, and Emacs uses X primitives. >>> So changing the way expose handler works does absolutely nothing >>> to make Gtk+ double buffering easier. >> >> That would be correct in itself. But my description above is in >> the context of cairo. The cairo context passed via the expose >> handler is automatically double-buffered. > This is not just for cairo. Gtk+ double buffers anything drawn with > Gtk in the expose handler. For example, menus and toolbar in a Gtk > Emacs are double buffered. According to the document (*), (standard) drawing seems to be eventually done via cairo on GTK+ 3. *: https://developer.gnome.org/gtk3/3.0/gtk-migrating-2-to-3.html#id1526151 In GTK+ 3, the GDK drawing API (which closely mimics the X drawing API, which is itself modeled after PostScript) has been removed. All drawing in GTK+ 3 is done via cairo. > If moving things to the expose handler is considered, one must take > into account non-Gtk X11 builds. X11 does not have a mechanism for > invalidating regions for the purpose of generating an expose > event. Gtk+ generates syntetic (internal) expose events. I guess we > could do the same, but it is work to be done by someone(tm). Right. Probably invalidated region management at the application level is also meaningful/necessary for Cocoa, because scrolling or pixel copying in AppKit, which will be used in x_scroll_run, does not take account of the invalidated region managed by the framework. > I also suspect the synchronous nature of Elisp would make this > complicated. For example, if Lisp code adds text or image to a > buffer, the text or image would be visible to the user at some point > in the future, not when the Lisp code is done. Unless some > synchronization is added between Lisp code and the expose handler. The expose handler will be called when Emacs tries to read some input from the window system. If display is not updated for a long time because of deferring, that means C-g is not handled for a long time either. If immediate update after redisplay is really necessary for some cases, gdk_window_process_all_updates or something could be used (after making sure that the current matrix is ready and clearing f->garbaged). YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-19 3:58 ` YAMAMOTO Mitsuharu @ 2013-04-19 7:08 ` Jan Djärv 0 siblings, 0 replies; 320+ messages in thread From: Jan Djärv @ 2013-04-19 7:08 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: Eli Zaretskii, Stefan Monnier, emacs-devel@gnu.org Hello. 19 apr 2013 kl. 05:58 skrev YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>: > According to the document (*), (standard) drawing seems to be > eventually done via cairo on GTK+ 3. > > *: https://developer.gnome.org/gtk3/3.0/gtk-migrating-2-to-3.html#id1526151 > > In GTK+ 3, the GDK drawing API (which closely mimics the X drawing > API, which is itself modeled after PostScript) has been removed. All > drawing in GTK+ 3 is done via cairo. Correct, but Emacs supports Gtk+ version 2.10 and upwards. Jan D. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-16 10:15 ` YAMAMOTO Mitsuharu 2013-04-16 10:48 ` YAMAMOTO Mitsuharu 2013-04-16 13:20 ` Stefan Monnier @ 2013-04-22 8:54 ` Nix 2013-04-23 3:18 ` YAMAMOTO Mitsuharu 2 siblings, 1 reply; 320+ messages in thread From: Nix @ 2013-04-22 8:54 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: Eli Zaretskii, emacs-devel On 16 Apr 2013, YAMAMOTO Mitsuharu stated: >>>>>> On Tue, 16 Apr 2013 09:49:17 +0300, Eli Zaretskii <eliz@gnu.org> said: >>> If you use a window system implementation that uses "backing store" >>> to avoid frequent "expose", then it is difficult to produce the >>> "expose" event intentionally by uncovering the window. > >> Which window systems we support don't use "backing store"? > > Some implementations of Xservers. According to the manual, -bs option > seems to turn off the backing store support. This option does nothing nowadays, because backing store was entirely removed from the X.org X server implementation before X server 1.5, in 2007. The idea now is that if you want the same effect you have to use a compositing manager, which naturally provides double-buffering of everything anyway. > Mac does have "backing store". I meant Xserver implementation without > "backing store". I vaguely remember Xvnc didn't have one and issued > "expose" events every time a window is uncovered, but I'm not sure > about the recent situation of Xservers. Just use X.org and make sure your compositing manager is turned off :) -- NULL && (void) ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-22 8:54 ` Nix @ 2013-04-23 3:18 ` YAMAMOTO Mitsuharu 0 siblings, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-04-23 3:18 UTC (permalink / raw) To: Nix; +Cc: Eli Zaretskii, emacs-devel >>>>> On Mon, 22 Apr 2013 09:54:33 +0100, Nix <nix@esperi.org.uk> said: >>> Which window systems we support don't use "backing store"? >> >> Some implementations of Xservers. According to the manual, -bs >> option seems to turn off the backing store support. > This option does nothing nowadays, because backing store was > entirely removed from the X.org X server implementation before X > server 1.5, in 2007. The idea now is that if you want the same > effect you have to use a compositing manager, which naturally > provides double-buffering of everything anyway. >> Mac does have "backing store". I meant Xserver implementation >> without "backing store". I vaguely remember Xvnc didn't have one >> and issued "expose" events every time a window is uncovered, but >> I'm not sure about the recent situation of Xservers. > Just use X.org and make sure your compositing manager is turned off > :) Thanks for the info. With these hints, I could reproduce the problem on CentOS 5.9, where no compositing manager seems to be used by default and expose events are issued when a window is being uncovered. 1. Execute "emacs -Q -D &" from the terminal window. 2. Evaluate the following expression in the *scratch* buffer: (progn (sleep-for 5) (let ((cursor-in-echo-area t)) (message "foo") (sit-for 0)) (sleep-for 30)) 3. Switch focus to the terminal window and wait 5 seconds for the message "foo" followed by the cursor to be displayed in the echo area. 4. Move the terminal window so it goes across the echo area. Then the cursor in the echo area disappears. If I try the same experiment on Ubuntu 12.04 LTS, which has a compositing manager, then the cursor does not disappear. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-15 9:48 ` YAMAMOTO Mitsuharu 2013-04-15 10:57 ` Eli Zaretskii @ 2013-04-17 1:09 ` YAMAMOTO Mitsuharu 1 sibling, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-04-17 1:09 UTC (permalink / raw) To: emacs-devel [-- Attachment #1: Type: text/plain, Size: 726 bytes --] >>>>> On Mon, 15 Apr 2013 18:48:29 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > On Mac, the "expose" handler is called in many situations than you > might expect including outside the control of application code: > e.g., creating a snapshot of the window image for icons or "Exposé" > (http://support.apple.com/kb/HT2503). Taking a snapshot inside the application itself is also useful. The Mac port uses it for animation effects such as fullscreen transition and buffer switching triggered by touch-sensitive pointing devices, for example. It calls the "expose" handler behind the scenes when creating the snapshot image. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp [-- Attachment #2: page-curl.png --] [-- Type: image/png, Size: 100621 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-04-11 9:22 ` YAMAMOTO Mitsuharu 2013-04-14 6:31 ` YAMAMOTO Mitsuharu @ 2013-05-11 6:43 ` YAMAMOTO Mitsuharu 2013-09-21 9:23 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-05-11 6:43 UTC (permalink / raw) To: emacs-devel The second update of Emacs 24.3 Mac port 4.x is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3-mac-4.2.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Cursor in the echo area is sometimes partially unerased on OS X 10.7 and later, notably on isearch in a large buffer. ** Improvements *** Add multi-monitor support functions `frame-monitor-attributes' and `display-monitor-attributes-list' (to appear in Emacs 24.4). ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-05-11 6:43 ` YAMAMOTO Mitsuharu @ 2013-09-21 9:23 ` YAMAMOTO Mitsuharu 2013-10-24 8:40 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-09-21 9:23 UTC (permalink / raw) To: emacs-devel The third update of Emacs 24.3 Mac port 4.x is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3-mac-4.3.tar.gz As far as I tested, compilation with "clang -O4", which includes link-time optimization, seems to work again for x86_64 with the latest version of clang that can be installed by Xcode 5.0 on OS X 10.8. You can optionally try ARC (Automatic Reference Counting) by specifying CC='clang -fobjc-arc' on configure. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Invocation via "Login Items" or "Resume" does not respect PATH setting in ~/.MacOSX/environment.plist on OS X 10.7 and earlier. Note: OS X 10.8 does not use ~/.MacOSX/environment.plist anyway. *** Spotlight in Help menu is not installed on Mac OS X 10.5 if language setting is other than English. *** Closing a window causes crash if compiled with ARC. This primarily happens with the latest clang Apple LLVM version 5.0, but also with earlier versions if the memory leak below is fixed. *** Memory leaks with ARC on clang Apple LLVM version 4.2 (possibly compiler bug). ** Improvements *** Try built-in libxml2 on OS X 10.8 as a fallback. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-09-21 9:23 ` YAMAMOTO Mitsuharu @ 2013-10-24 8:40 ` YAMAMOTO Mitsuharu 2013-10-24 9:47 ` Leo Liu ` (2 more replies) 0 siblings, 3 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-10-24 8:40 UTC (permalink / raw) To: emacs-devel The fourth update of Emacs 24.3 Mac port 4.x is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3-mac-4.4.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Default directory is set to `/' on OS X 10.9. *** Some animation effects cause crash on OS X 10.9. *** SVG images (via WebKit) cannot be loaded on OS X 10.9. *** Clicking a menu bar in an inactive appearance shows bogus menus on OS X 10.9. *** Switching full screen state on multi-monitor environment may cause exception on OS X 10.9. *** Focusing on a `fullboth' frame in a non-primary monitor does not hide the menu bars on OS X 10.9. Note: the menu bar hidden by a `fullboth' frame in a non-primary monitor does not appear automatically by moving the mouse to the place where the menu bar was. I suspect this is a bug in AppKit. *** Battery status is not shown correctly on OS X 10.9. Apply a fix for bug#15694 by Masashi Fujimoto and Glenn Morris. ** Improvements *** Double clicking an emoji character in the Character Viewer now complements the Variation Selector 16 if the character is sensitive to the selector. *** The image type `image-io' can now additionally rasterize data in several document formats. The list of supported formats can be obtained by `(image-io-types)'. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-10-24 8:40 ` YAMAMOTO Mitsuharu @ 2013-10-24 9:47 ` Leo Liu 2013-10-24 10:18 ` YAMAMOTO Mitsuharu 2013-10-27 6:42 ` YAMAMOTO Mitsuharu 2013-11-06 8:18 ` YAMAMOTO Mitsuharu 2 siblings, 1 reply; 320+ messages in thread From: Leo Liu @ 2013-10-24 9:47 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel On 2013-10-24 16:40 +0800, YAMAMOTO Mitsuharu wrote: > The fourth update of Emacs 24.3 Mac port 4.x is now available from > > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3-mac-4.4.tar.gz > > YAMAMOTO Mitsuharu > mituharu@math.s.chiba-u.ac.jp Everything went well except it no longer linked to libxml2. Any idea how to make it work again? Without libxml2 shr.el is pretty useless. Thanks in advance. Leo ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-10-24 9:47 ` Leo Liu @ 2013-10-24 10:18 ` YAMAMOTO Mitsuharu 2013-10-25 0:56 ` YAMAMOTO Mitsuharu 2013-10-25 4:38 ` YAMAMOTO Mitsuharu 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-10-24 10:18 UTC (permalink / raw) To: Leo Liu; +Cc: emacs-devel >>>>> On Thu, 24 Oct 2013 17:47:13 +0800, Leo Liu <sdl.web@gmail.com> said: > Everything went well except it no longer linked to libxml2. Any idea > how to make it work again? Without libxml2 shr.el is pretty > useless. Thanks in advance. I didn't notice that. Thanks for spotting this. It seems that the standard include files are no longer in the /usr/include directory on OS X 10.9. An immediate workaround would be to run the configure script as: CPPFLAGS=-I"`xcrun --show-sdk-path`"/usr/include/libxml2 ./configure --with-mac YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-10-24 10:18 ` YAMAMOTO Mitsuharu @ 2013-10-25 0:56 ` YAMAMOTO Mitsuharu 2013-10-25 4:38 ` YAMAMOTO Mitsuharu 1 sibling, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-10-25 0:56 UTC (permalink / raw) To: Leo Liu; +Cc: emacs-devel >>>>> On Thu, 24 Oct 2013 19:18:57 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: >> Everything went well except it no longer linked to libxml2. Any >> idea how to make it work again? Without libxml2 shr.el is pretty >> useless. Thanks in advance. > I didn't notice that. Thanks for spotting this. > It seems that the standard include files are no longer in the > /usr/include directory on OS X 10.9. An immediate workaround would > be to run the configure script as: > CPPFLAGS=-I"`xcrun --show-sdk-path`"/usr/include/libxml2 ./configure --with-mac Below is the patch for configure{.ac,}. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp === modified file 'configure.ac' *** configure.ac 2013-09-21 09:48:19 +0000 --- configure.ac 2013-10-25 00:25:37 +0000 *************** *** 2820,2833 **** # Built-in libxml2 on OS X 10.8 lacks libxml-2.0.pc. if test "${HAVE_LIBXML2}" != "yes" -a "$opsys" = "darwin"; then SAVE_CPPFLAGS="$CPPFLAGS" ! CPPFLAGS="$CPPFLAGS -I/usr/include/libxml2" AC_CHECK_HEADER(libxml/HTMLparser.h, [AC_CHECK_DECL(HTML_PARSE_RECOVER, HAVE_LIBXML2=yes, , [#include <libxml/HTMLparser.h>])]) CPPFLAGS="$SAVE_CPPFLAGS" if test "${HAVE_LIBXML2}" = "yes"; then LIBXML2_LIBS="-lxml2" ! LIBXML2_CFLAGS="-I/usr/include/libxml2" fi fi if test "${HAVE_LIBXML2}" = "yes"; then --- 2820,2834 ---- # Built-in libxml2 on OS X 10.8 lacks libxml-2.0.pc. if test "${HAVE_LIBXML2}" != "yes" -a "$opsys" = "darwin"; then SAVE_CPPFLAGS="$CPPFLAGS" ! sdkdir="`xcrun --show-sdk-path 2> /dev/null`" ! CPPFLAGS="$CPPFLAGS -I${sdkdir}/usr/include/libxml2" AC_CHECK_HEADER(libxml/HTMLparser.h, [AC_CHECK_DECL(HTML_PARSE_RECOVER, HAVE_LIBXML2=yes, , [#include <libxml/HTMLparser.h>])]) CPPFLAGS="$SAVE_CPPFLAGS" if test "${HAVE_LIBXML2}" = "yes"; then LIBXML2_LIBS="-lxml2" ! LIBXML2_CFLAGS="-I${sdkdir}/usr/include/libxml2" fi fi if test "${HAVE_LIBXML2}" = "yes"; then === modified file 'configure' *** configure 2013-09-21 09:48:19 +0000 --- configure 2013-10-25 00:31:48 +0000 *************** *** 13238,13244 **** # Built-in libxml2 on OS X 10.8 lacks libxml-2.0.pc. if test "${HAVE_LIBXML2}" != "yes" -a "$opsys" = "darwin"; then SAVE_CPPFLAGS="$CPPFLAGS" ! CPPFLAGS="$CPPFLAGS -I/usr/include/libxml2" ac_fn_c_check_header_mongrel "$LINENO" "libxml/HTMLparser.h" "ac_cv_header_libxml_HTMLparser_h" "$ac_includes_default" if test "x$ac_cv_header_libxml_HTMLparser_h" = xyes; then : ac_fn_c_check_decl "$LINENO" "HTML_PARSE_RECOVER" "ac_cv_have_decl_HTML_PARSE_RECOVER" "#include <libxml/HTMLparser.h> --- 13238,13245 ---- # Built-in libxml2 on OS X 10.8 lacks libxml-2.0.pc. if test "${HAVE_LIBXML2}" != "yes" -a "$opsys" = "darwin"; then SAVE_CPPFLAGS="$CPPFLAGS" ! sdkdir="`xcrun --show-sdk-path 2> /dev/null`" ! CPPFLAGS="$CPPFLAGS -I${sdkdir}/usr/include/libxml2" ac_fn_c_check_header_mongrel "$LINENO" "libxml/HTMLparser.h" "ac_cv_header_libxml_HTMLparser_h" "$ac_includes_default" if test "x$ac_cv_header_libxml_HTMLparser_h" = xyes; then : ac_fn_c_check_decl "$LINENO" "HTML_PARSE_RECOVER" "ac_cv_have_decl_HTML_PARSE_RECOVER" "#include <libxml/HTMLparser.h> *************** *** 13253,13259 **** CPPFLAGS="$SAVE_CPPFLAGS" if test "${HAVE_LIBXML2}" = "yes"; then LIBXML2_LIBS="-lxml2" ! LIBXML2_CFLAGS="-I/usr/include/libxml2" fi fi if test "${HAVE_LIBXML2}" = "yes"; then --- 13254,13260 ---- CPPFLAGS="$SAVE_CPPFLAGS" if test "${HAVE_LIBXML2}" = "yes"; then LIBXML2_LIBS="-lxml2" ! LIBXML2_CFLAGS="-I${sdkdir}/usr/include/libxml2" fi fi if test "${HAVE_LIBXML2}" = "yes"; then ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-10-24 10:18 ` YAMAMOTO Mitsuharu 2013-10-25 0:56 ` YAMAMOTO Mitsuharu @ 2013-10-25 4:38 ` YAMAMOTO Mitsuharu 1 sibling, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-10-25 4:38 UTC (permalink / raw) To: Leo Liu; +Cc: emacs-devel >>>>> On Thu, 24 Oct 2013 19:18:57 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: >> Everything went well except it no longer linked to libxml2. Any >> idea how to make it work again? Without libxml2 shr.el is pretty >> useless. Thanks in advance. > I didn't notice that. Thanks for spotting this. > It seems that the standard include files are no longer in the > /usr/include directory on OS X 10.9. An immediate workaround would > be to run the configure script as: > CPPFLAGS=-I"`xcrun --show-sdk-path`"/usr/include/libxml2 ./configure --with-mac Another way is to install the Command Line Developer Tools by $ xcode-select --install YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-10-24 8:40 ` YAMAMOTO Mitsuharu 2013-10-24 9:47 ` Leo Liu @ 2013-10-27 6:42 ` YAMAMOTO Mitsuharu 2013-11-06 8:18 ` YAMAMOTO Mitsuharu 2 siblings, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-10-27 6:42 UTC (permalink / raw) To: emacs-devel >>>>> On Thu, 24 Oct 2013 17:40:09 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > The fourth update of Emacs 24.3 Mac port 4.x is now available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3-mac-4.4.tar.gz > *** The image type `image-io' can now additionally rasterize data in > several document formats. The list of supported formats can be > obtained by `(image-io-types)'. The supported document formats include RTF, HTML, WEBARCHIVE, DOC (and SXW, ODT, DOCX on newer versions of OS X), etc., but not for PDF. Actually, PDF support could be added easily and the patch is available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3-mac-4.4-pdf.patch.gz Images for these document formats are automatically re-rasterized when you move a frame between Retina and non-Retina monitors. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-10-24 8:40 ` YAMAMOTO Mitsuharu 2013-10-24 9:47 ` Leo Liu 2013-10-27 6:42 ` YAMAMOTO Mitsuharu @ 2013-11-06 8:18 ` YAMAMOTO Mitsuharu 2013-12-27 8:29 ` YAMAMOTO Mitsuharu 2 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-11-06 8:18 UTC (permalink / raw) To: emacs-devel The fifth update of Emacs 24.3 Mac port 4.x is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3-mac-4.5.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Resizing a frame from its top or left edge flaps on OS X 10.9. *** Animation effects become invisible after exiting from full screen on OS X 10.9. *** Memory leaks by multiple installations of memory pressure/status dispatch sources on OS X 10.9, caused by repeated start/stop of the main event loop. I think this is a bug in AppKit. A workaround is added. *** (insert-image (create-image "" 'image-io t)) causes crash. *** Info directory in the application bundle is not respected. Reported by Dave Abrahams. ** Improvements *** Suppress confusing "Tags:" field in the "New File" dialog on OS X 10.9. *** The image type `image-io' can now additionally rasterize data in PDF format. *** Document rasterization (including PDF) in the image type `image-io' now caches the loaded documents for a while so as to avoid loading a multi-page document several times when successively rasterizing multiple pages of the document. *** Respect the "Swipe between pages" setting for touch-sensitive mice/trackpads. *** Fonts used in the "CJK variety" line in the etc/HELLO file are selected consistently regardless of the system language setting. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-11-06 8:18 ` YAMAMOTO Mitsuharu @ 2013-12-27 8:29 ` YAMAMOTO Mitsuharu 2014-02-27 10:03 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2013-12-27 8:29 UTC (permalink / raw) To: emacs-devel The sixth update of Emacs 24.3 Mac port 4.x is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3-mac-4.6.tar.gz This time there are not so many changes from the previous version. If you still have a build tree for the previous one, then you only need to update macappkit.m, macfns.c, and macfont.c in the src directory. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** 64-bit binary does not run if compiled on Mac OS X 10.5. *** Typing Command-H while a tooltip is shown makes it unerasable. Reported by Peter Dyballa. *** Crash when a tooltip is shown in a non-primary monitor with explicit geometry specified. Reported by Robert Dallas Gray. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2013-12-27 8:29 ` YAMAMOTO Mitsuharu @ 2014-02-27 10:03 ` YAMAMOTO Mitsuharu 2014-04-01 1:10 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2014-02-27 10:03 UTC (permalink / raw) To: emacs-devel The seventh update of Emacs 24.3 Mac port 4.x is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3-mac-4.7.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Crash if a fullscreen frame is closed by C-x 5 0. This is a regression introduced in 4.5 as the fix for invisible animation effects on OS X 10.9. *** M-x menu-bar-open RET always activates the menu bar in the primary monitor on OS X 10.9 where a non-primary monitor can also have a menu bar. *** Command-Shift-/ does not activate the help menu for a fullscreen frame on OS X 10.8 and later. ** Improvements *** Moving focus to the menu bar by Control-F2 behaves much like other applications. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-02-27 10:03 ` YAMAMOTO Mitsuharu @ 2014-04-01 1:10 ` YAMAMOTO Mitsuharu 2014-04-03 15:12 ` David Reitter 2014-04-14 3:00 ` YAMAMOTO Mitsuharu 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2014-04-01 1:10 UTC (permalink / raw) To: emacs-devel The eighth update of Emacs 24.3 Mac port 4.x is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3-mac-4.8.tar.gz This time there are not so many changes from the previous version. If you still have a build tree for the previous one, then you only need to update src/macappkit.m, src/macterm.c, and optionally mac/templates/Info.plist.in . YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Fringe does not get correctly updated under very specific circumstances (Bug#16932). *** In full screen mode, clicking the menu bar hides it on OS X 10.7. *** Image background is not correctly drawn when it has a box (Bug#17115). *** While resizing a frame with mouse dragging, display is updated only on pauses in motion. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-04-01 1:10 ` YAMAMOTO Mitsuharu @ 2014-04-03 15:12 ` David Reitter 2014-04-03 17:30 ` Leo Liu 2014-04-04 0:07 ` YAMAMOTO Mitsuharu 2014-04-14 3:00 ` YAMAMOTO Mitsuharu 1 sibling, 2 replies; 320+ messages in thread From: David Reitter @ 2014-04-03 15:12 UTC (permalink / raw) To: emacs-devel@gnu.org developers Mitsuharu, Do you keep a git repository for your port somewhere out there? On Mar 31, 2014, at 9:10 PM, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> wrote: > The eighth update of Emacs 24.3 Mac port 4.x is now available from > > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3-mac-4.8.tar.gz > > This time there are not so many changes from the previous version. If > you still have a build tree for the previous one, then you only need > to update src/macappkit.m, src/macterm.c, and optionally > mac/templates/Info.plist.in . > > YAMAMOTO Mitsuharu > mituharu@math.s.chiba-u.ac.jp > > ** Fixed bugs > > *** Fringe does not get correctly updated under very specific > circumstances (Bug#16932). > > *** In full screen mode, clicking the menu bar hides it on OS X 10.7. > > *** Image background is not correctly drawn when it has a box > (Bug#17115). > > *** While resizing a frame with mouse dragging, display is updated > only on pauses in motion. > ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-04-03 15:12 ` David Reitter @ 2014-04-03 17:30 ` Leo Liu 2014-04-04 0:44 ` Chris Van Dusen 2014-04-04 0:07 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: Leo Liu @ 2014-04-03 17:30 UTC (permalink / raw) To: emacs-devel On 2014-04-03 23:12 +0800, David Reitter wrote: > Mitsuharu, > > Do you keep a git repository for your port somewhere out there? I am also very interested in having access to the git repository if available. It is absolutely a pleasure to use macport on OSX except cannot use emacs trunk. Leo ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-04-03 17:30 ` Leo Liu @ 2014-04-04 0:44 ` Chris Van Dusen 2014-04-04 1:24 ` Xu Xin 0 siblings, 1 reply; 320+ messages in thread From: Chris Van Dusen @ 2014-04-04 0:44 UTC (permalink / raw) To: Leo Liu; +Cc: emacs-devel On Apr 3, 2014, at 12:30 PM, Leo Liu <sdl.web@gmail.com> wrote: > On 2014-04-03 23:12 +0800, David Reitter wrote: >> Mitsuharu, >> >> Do you keep a git repository for your port somewhere out there? > > I am also very interested in having access to the git repository if > available. It is absolutely a pleasure to use macport on OSX except > cannot use emacs trunk. > > Leo > I’ve been using the following for over a year, and have been pleased: https://github.com/railwaycat/emacs-mac-port Chris. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-04-04 0:44 ` Chris Van Dusen @ 2014-04-04 1:24 ` Xu Xin 2014-04-04 1:59 ` Chris Van Dusen 0 siblings, 1 reply; 320+ messages in thread From: Xu Xin @ 2014-04-04 1:24 UTC (permalink / raw) To: Chris Van Dusen; +Cc: Leo Liu, emacs-devel On Thu, Apr 3, 2014 at 8:44 PM, Chris Van Dusen <cavandusen@gmail.com> wrote: > On Apr 3, 2014, at 12:30 PM, Leo Liu <sdl.web@gmail.com> wrote: > >> On 2014-04-03 23:12 +0800, David Reitter wrote: >>> Mitsuharu, >>> >>> Do you keep a git repository for your port somewhere out there? >> >> I am also very interested in having access to the git repository if >> available. It is absolutely a pleasure to use macport on OSX except >> cannot use emacs trunk. >> >> Leo >> > > I’ve been using the following for over a year, and have been pleased: > > https://github.com/railwaycat/emacs-mac-port > > Chris. Sorry Chris, this is not the developing git repo. This is a repo based on every patches from here and to make the Homebrew script simpler. - Xin ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-04-04 1:24 ` Xu Xin @ 2014-04-04 1:59 ` Chris Van Dusen 0 siblings, 0 replies; 320+ messages in thread From: Chris Van Dusen @ 2014-04-04 1:59 UTC (permalink / raw) To: Xu Xin; +Cc: Leo Liu, emacs-devel On Apr 3, 2014, at 8:24 PM, Xu Xin <railwaycat@gmail.com> wrote: > > Sorry Chris, this is not the developing git repo. This is a repo based on > every patches from here and to make the Homebrew script simpler. > > - Xin Ah, yes. I had forgotten. Sorry for the confusion, Chris. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-04-03 15:12 ` David Reitter 2014-04-03 17:30 ` Leo Liu @ 2014-04-04 0:07 ` YAMAMOTO Mitsuharu 1 sibling, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2014-04-04 0:07 UTC (permalink / raw) To: emacs-devel >>>>> On Thu, 3 Apr 2014 11:12:23 -0400, David Reitter <david.reitter@gmail.com> said: > Mitsuharu, > Do you keep a git repository for your port somewhere out there? I'm not maintaining any (private or public) git repositories for the Mac port myself. Actually I don't have enough experience with git yet. Probably I'll start practicing it after the upstream repository has switched to git. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-04-01 1:10 ` YAMAMOTO Mitsuharu 2014-04-03 15:12 ` David Reitter @ 2014-04-14 3:00 ` YAMAMOTO Mitsuharu 2014-04-14 8:16 ` YAMAMOTO Mitsuharu 2014-05-12 8:42 ` YAMAMOTO Mitsuharu 1 sibling, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2014-04-14 3:00 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 24.3.90 pretest is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3.90-mac-4.90.tar.gz ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-hires-icons-1.0.tar.gz This version (4.9X) should be regarded as experimental/hackers-only. Things are subject to change/removal in an incompatible way. Please refrain from distributing this in any different form, including for (binary) distribution basis, until the version gets to 5.0. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp * emacs-24.3.90-mac-4.90 [experimental/hackers-only] (2014-04-14) Based on Emacs 24.3.90. High-resolution icons are now distributed as a separate package. File notification is supported via GLib (you'll also need `pkg-config' when running the configure command). The `image-io' image type supports `:max-width', `:max-height', and `:format' keywords just as in `imagemagick'. Now that Image mode supports multi-frame image navigation (`f', 'b', and `F'), you can browse multi-page documents in several formats that `image-io' supports (e.g., PDF and DOC) with the setting like this: (when (and (image-type-available-p 'image-io) (not (boundp 'imagemagick-render-type))) ;; Image I/O is used as a fallback of ImageMagick. (setq imagemagick-enabled-types t) (setq imagemagick-types-inhibit (cons 'XML (delq 'PDF imagemagick-types-inhibit))) (imagemagick-register-types)) Note: if you have ImageMagick installed, you need to build the Mac port executable without the genuine ImageMagick support so `image-io' can be used as a fallback of `imagemagick'. ** Improvements *** Graphical drawing operations might be performed in non-main threads via GCD (Grand Central Dispatch) on Mac OS X 10.6 and later. You can turn this off by setting `mac-drawing-use-gcd' to nil. *** DocView mode generates pixel-doubled "@2x" bitmap image files in addition to normal ones on high-resolution environments such as Retina display or HiDPI mode. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-04-14 3:00 ` YAMAMOTO Mitsuharu @ 2014-04-14 8:16 ` YAMAMOTO Mitsuharu 2014-05-12 8:42 ` YAMAMOTO Mitsuharu 1 sibling, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2014-04-14 8:16 UTC (permalink / raw) To: emacs-devel >>>>> On Mon, 14 Apr 2014 12:00:01 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > The Mac port based on Emacs 24.3.90 pretest is now available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3.90-mac-4.90.tar.gz > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-hires-icons-1.0.tar.gz Please apply the following patch, too. This fixes wrong return value of display-monitor-attributes-list (reported by Leo Liu). Sorry for the inconvenience. ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3.90-mac-4.90-monitor-attributes.patch.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-04-14 3:00 ` YAMAMOTO Mitsuharu 2014-04-14 8:16 ` YAMAMOTO Mitsuharu @ 2014-05-12 8:42 ` YAMAMOTO Mitsuharu 2014-06-27 8:24 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2014-05-12 8:42 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 24.3.91 pretest is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3.91-mac-4.91.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Wrong return value of display-monitor-attributes-list. Reported by Leo. *** If you point to the left "%", which has both left and right overhangs for Monaco 12pt, of "%%" in the mode line, then the right one is also drawn with upper and lower box. ** Improvements *** New variables mac-right-control-modifier, mac-right-command-modifier, and mac-right-option-modifier. Note: the left and right versions cannot be distinguished on some environments such as Screen Sharing. Also, certain combinations of a key with both versions of the same modifier do not emit events at the system level. *** A single physical modifier key can be mapped to different Emacs modifiers depending on its input type (ordinary keys, function keys, or mouse operations) using the property list format `(:ordinary SYMBOL :function SYMBOL :mouse SYMBOL)'. By default, the option key works as the normal Mac option key for the ordinary keys, and as the Alt modifier for the function keys and the mouse operations. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-05-12 8:42 ` YAMAMOTO Mitsuharu @ 2014-06-27 8:24 ` YAMAMOTO Mitsuharu 2014-08-15 6:19 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2014-06-27 8:24 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 24.3.92 pretest is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3.92-mac-4.92.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp Carbon version in mac-carbon-version-string now uses the bundle version rather than what's obtained by Gestalt. ** Fixed bugs *** Left scroll bar was not included in the window animation area. ** Improvements o *** New full screen transition animation. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-06-27 8:24 ` YAMAMOTO Mitsuharu @ 2014-08-15 6:19 ` YAMAMOTO Mitsuharu 2014-10-02 3:54 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2014-08-15 6:19 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 24.3.93 pretest is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3.93-mac-4.93.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp Remove mac-ts-script-language-on-focus, which hasn't had any effect on 64-bit executables. ** Fixed bugs *** Several glitches in pixel-based smooth scrolling. *** Crash when closing a fullscreen frame on OS X 10.10 Beta. *** Full screen transition animation is broken on OS X 10.10 Beta. *** Title bar buttons are misplaced if we toggle the tool bar on a fullscreen frame on OS X 10.10 Beta. I think this is a bug in AppKit. A workaround is added. ** Improvements *** Blend and blur fringe background of the focused frame with the contents behind it on OS X 10.10 Beta. This is currently experimental, hard-coded, and subject to change. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-08-15 6:19 ` YAMAMOTO Mitsuharu @ 2014-10-02 3:54 ` YAMAMOTO Mitsuharu 2014-10-03 14:27 ` Angelo Graziosi ` (3 more replies) 0 siblings, 4 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2014-10-02 3:54 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 24.3.94 pretest is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3.94-mac-4.94.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Right fringe on the row containing a hollow cursor at the tab character in a non-selected window sometimes gets erased on wheel scrolling. *** M-x toggle-frame-fullscreen RET -> M-x tool-bar-mode RET -> M-x toggle-frame-fullscreen RET does not preserve tool bar visibility on OS X 10.7 - 10.9. ** Improvements *** Add mouse pointer color support. *** Animation-related properties of animated GIF are added to metadata of images in the `image-io' image type. Likewise for animated PNG on OS X 10.10. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port @ 2014-10-03 14:27 ` Angelo Graziosi 2014-10-03 21:25 ` Xin Xu 0 siblings, 1 reply; 320+ messages in thread From: Angelo Graziosi @ 2014-10-03 14:27 UTC (permalink / raw) To: mituharu, Emacs developers YAMAMOTO Mitsuharu wrote: > The Mac port based on Emacs 24.3.94 pretest is now available from It is the first time I build Emacs Mac port (I build OB the nextstep version following nextstep/INSTALL) but, maybe, I am missing something.. I have tried to follow the README-mac.. Downloaded the tarballs: wget ftp://alpha.gnu.org/gnu/emacs/pretest/emacs-24.3.94.tar.xz ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3.94-mac-4.94.tar.gz Unpacked: tar -xf emacs-24.3.94.tar.xz tar -xf emacs-24.3.94-mac-4.94.tar.gz as suggested in 'a.' of README-mac Then, README-mac says: b. Apply the patch `patch-mac' to the source tree. and I did this: cd emacs-24.3.94 patch < ../emacs-24.3.94-mac-4.94/patch-mac patching file Makefile.in patching file configure.ac patching file Makefile.in Hunk #1 FAILED at 135. Hunk #2 FAILED at 165. 2 out of 2 hunks FAILED -- saving rejects to file Makefile.in.rej can't find file to patch at input line 425 Perhaps you should have used the -p or --strip option? The text leading up to this was: -------------------------- | |=== modified file 'doc/emacs/emacs.texi' |*** doc/emacs/emacs.texi 2014-07-21 03:31:36 +0000 |--- doc/emacs/emacs.texi 2014-08-15 04:42:44 +0000 -------------------------- File to patch: It seems something is wrong or I haven't understood something... Ciao, Angelo. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-10-03 14:27 ` Angelo Graziosi @ 2014-10-03 21:25 ` Xin Xu 2014-10-03 23:20 ` Angelo Graziosi 0 siblings, 1 reply; 320+ messages in thread From: Xin Xu @ 2014-10-03 21:25 UTC (permalink / raw) To: Angelo Graziosi; +Cc: mituharu, Emacs developers Hi Angelo, Try: patch -p0 < ../emacs-24.3.94-mac-4.94/patch-mac Thanks, - Xin > On Oct 3, 2014, at 10:27, Angelo Graziosi <angelo.graziosi@alice.it> wrote: > > YAMAMOTO Mitsuharu wrote: >> The Mac port based on Emacs 24.3.94 pretest is now available from > > It is the first time I build Emacs Mac port (I build OB the nextstep version following nextstep/INSTALL) but, maybe, I am missing something.. > > I have tried to follow the README-mac.. > > Downloaded the tarballs: > > wget ftp://alpha.gnu.org/gnu/emacs/pretest/emacs-24.3.94.tar.xz ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3.94-mac-4.94.tar.gz > > Unpacked: > > tar -xf emacs-24.3.94.tar.xz > tar -xf emacs-24.3.94-mac-4.94.tar.gz > > as suggested in 'a.' of README-mac > > Then, README-mac says: > > b. Apply the patch `patch-mac' to the source tree. > > > and I did this: > > cd emacs-24.3.94 > > patch < ../emacs-24.3.94-mac-4.94/patch-mac > patching file Makefile.in > patching file configure.ac > patching file Makefile.in > Hunk #1 FAILED at 135. > Hunk #2 FAILED at 165. > 2 out of 2 hunks FAILED -- saving rejects to file Makefile.in.rej > can't find file to patch at input line 425 > Perhaps you should have used the -p or --strip option? > The text leading up to this was: > -------------------------- > | > |=== modified file 'doc/emacs/emacs.texi' > |*** doc/emacs/emacs.texi 2014-07-21 03:31:36 +0000 > |--- doc/emacs/emacs.texi 2014-08-15 04:42:44 +0000 > -------------------------- > File to patch: > > > It seems something is wrong or I haven't understood something... > > > Ciao, > Angelo. > > ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-10-03 21:25 ` Xin Xu @ 2014-10-03 23:20 ` Angelo Graziosi 2014-10-04 8:28 ` Angelo Graziosi 0 siblings, 1 reply; 320+ messages in thread From: Angelo Graziosi @ 2014-10-03 23:20 UTC (permalink / raw) To: Xin Xu; +Cc: mituharu, Emacs developers Il 03/10/2014 23:25, Xin Xu ha scritto: > Hi Angelo, > > Try: > > patch -p0 < ../emacs-24.3.94-mac-4.94/patch-mac Argh... obviously! OK, now I have build the Emacs Mac port pretest.. And if I want to build trunk? Thanks, Angelo. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-10-03 23:20 ` Angelo Graziosi @ 2014-10-04 8:28 ` Angelo Graziosi 0 siblings, 0 replies; 320+ messages in thread From: Angelo Graziosi @ 2014-10-04 8:28 UTC (permalink / raw) To: Xin Xu; +Cc: mituharu, Emacs developers Il 04/10/2014 01:20, Angelo Graziosi ha scritto: > > OK, now I have build the Emacs Mac port pretest.. Comparing to nextstep (NS) build, I notice the following. 1. The M- key seems be realized by COMMAND-key. For example, to execute the M-x delete-trailing-whitespace on NS (as on other systems), I type Alt_Option-x delete-trailing-whitespace instead on Emacs Mac Port (EMP) I have to type COMMAND-x delete-trailing-whitespace 2. To copy/paste on NS one uses COMMAND-C (copy) COMMAND-V (paste) but on EMP, COMMAND-W C-Y (C for CTRL) which looks a little asymmetric. 3. The tool-bar icons have their name... Is the above to be expected in EMP? Ciao, Angelo. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-10-02 3:54 ` YAMAMOTO Mitsuharu 2014-10-03 14:27 ` Angelo Graziosi @ 2014-10-06 4:21 ` Kazu Yamamoto 2014-10-06 8:21 ` YAMAMOTO Mitsuharu 2014-10-17 23:30 ` YAMAMOTO Mitsuharu 2014-10-21 4:44 ` YAMAMOTO Mitsuharu 3 siblings, 1 reply; 320+ messages in thread From: Kazu Yamamoto @ 2014-10-06 4:21 UTC (permalink / raw) To: mituharu; +Cc: emacs-devel Yamamoto-san, > The Mac port based on Emacs 24.3.94 pretest is now available from > > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3.94-mac-4.94.tar.gz Thank you for emacs-24.3.94-mac-4.94! This makes Emacs much stabler on Mavericks. Pure Emacs often gets segfaults but I have not experienced a segfault with emacs-24.3.94-mac in normal usage. However, I noticed two bugs so far. I would like to report one of them here. I'm using two Mavericks. emacs-24.3.94-mac-4.94 gets a segfault if it is operated through Mac's *screen share*. I can reproduce this bug 100%. And I confirmed that this bug does not exist in pure emacs-24.3.94. --Kazu ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-10-06 4:21 ` Kazu Yamamoto @ 2014-10-06 8:21 ` YAMAMOTO Mitsuharu 2014-10-08 2:51 ` Kazu Yamamoto 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2014-10-06 8:21 UTC (permalink / raw) To: Kazu Yamamoto; +Cc: emacs-devel >>>>> On Mon, 06 Oct 2014 13:21:10 +0900 (JST), Kazu Yamamoto (山本和彦) <kazu@iij.ad.jp> said: > However, I noticed two bugs so far. I would like to report one of > them here. I'm using two Mavericks. emacs-24.3.94-mac-4.94 gets a > segfault if it is operated through Mac's *screen share*. > I can reproduce this bug 100%. And I confirmed that this bug does > not exist in pure emacs-24.3.94. I could reproduce the bug, and it is a regression introduced in emacs-24.3.91-mac-4.91 . Please try the patch below. Thanks for reporting this. Next time, please report Mac port specific bugs to mituharu+bug-gnu-emacs-mac@math.s.chiba-u.ac.jp as guided with M-x report-emacs-bug RET. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp === modified file 'src/macappkit.h' *** src/macappkit.h 2014-10-02 03:58:26 +0000 --- src/macappkit.h 2014-10-06 08:14:09 +0000 *************** *** 975,980 **** --- 975,981 ---- #if MAC_OS_X_VERSION_MAX_ALLOWED < 1050 @interface NSEvent (AvailableOn1050AndLater) - (CGEventRef)CGEvent; + - (const void * /* EventRef */)eventRef; @end #endif === modified file 'src/macappkit.m' *** src/macappkit.m 2014-10-02 03:58:26 +0000 --- src/macappkit.m 2014-10-06 08:14:09 +0000 *************** *** 318,323 **** --- 318,342 ---- pressure:[self pressure]]; } + static void + mac_cgevent_set_unicode_string_from_event_ref (CGEventRef cgevent, + EventRef eventRef) + { + ByteCount size; + + if (GetEventParameter (eventRef, kEventParamKeyUnicodes, + typeUnicodeText, NULL, 0, &size, NULL) == noErr) + { + UniChar *text = alloca (size); + + if (GetEventParameter (eventRef, kEventParamKeyUnicodes, + typeUnicodeText, NULL, size, NULL, + text) == noErr) + CGEventKeyboardSetUnicodeString (cgevent, size / sizeof (UniChar), + text); + } + } + - (CGEventRef)coreGraphicsEvent { CGEventRef event; *************** *** 328,334 **** { event = [self CGEvent]; if (event) ! return event; } /* Workaround for a bug on Mac OS X 10.4. */ --- 347,370 ---- { event = [self CGEvent]; if (event) ! { ! /* Unicode string is not set if the keyboard event comes ! from Screen Sharing on Mac OS X 10.6 and later. */ ! if (NSEventMaskFromType ([self type]) & (NSKeyDownMask | NSKeyUpMask)) ! { ! UniCharCount length; ! ! CGEventKeyboardGetUnicodeString (event, 0, &length, NULL); ! if (length == 0) ! { ! EventRef eventRef = (EventRef) [self eventRef]; ! ! mac_cgevent_set_unicode_string_from_event_ref (event, ! eventRef); ! } ! } ! return event; ! } } /* Workaround for a bug on Mac OS X 10.4. */ *************** *** 369,389 **** #if __LP64__ /* This seems to be unnecessary for 32-bit executables. */ { - ByteCount size; UInt32 keyboard_type; EventRef eventRef = (EventRef) [self eventRef]; ! if (GetEventParameter (eventRef, kEventParamKeyUnicodes, ! typeUnicodeText, NULL, 0, &size, NULL) == noErr) ! { ! UniChar *text = alloca (size); ! ! if (GetEventParameter (eventRef, kEventParamKeyUnicodes, ! typeUnicodeText, NULL, size, NULL, ! text) == noErr) ! CGEventKeyboardSetUnicodeString (event, size / sizeof (UniChar), ! text); ! } if (GetEventParameter (eventRef, kEventParamKeyboardType, typeUInt32, NULL, sizeof (UInt32), NULL, &keyboard_type) == noErr) --- 405,414 ---- #if __LP64__ /* This seems to be unnecessary for 32-bit executables. */ { UInt32 keyboard_type; EventRef eventRef = (EventRef) [self eventRef]; ! mac_cgevent_set_unicode_string_from_event_ref (event, eventRef); if (GetEventParameter (eventRef, kEventParamKeyboardType, typeUInt32, NULL, sizeof (UInt32), NULL, &keyboard_type) == noErr) ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-10-06 8:21 ` YAMAMOTO Mitsuharu @ 2014-10-08 2:51 ` Kazu Yamamoto 0 siblings, 0 replies; 320+ messages in thread From: Kazu Yamamoto @ 2014-10-08 2:51 UTC (permalink / raw) To: mituharu; +Cc: emacs-devel Hi Yamamoto-san, > I could reproduce the bug, and it is a regression introduced in > emacs-24.3.91-mac-4.91 . Please try the patch below. Fixed with this patch. Great. Thanks. > Thanks for reporting this. Next time, please report Mac port specific > bugs to mituharu+bug-gnu-emacs-mac@math.s.chiba-u.ac.jp as guided with > M-x report-emacs-bug RET. OK. I will send another bug report according to the procedure above. --Kazu ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-10-02 3:54 ` YAMAMOTO Mitsuharu 2014-10-03 14:27 ` Angelo Graziosi 2014-10-06 4:21 ` Kazu Yamamoto @ 2014-10-17 23:30 ` YAMAMOTO Mitsuharu 2014-10-21 4:44 ` YAMAMOTO Mitsuharu 3 siblings, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2014-10-17 23:30 UTC (permalink / raw) To: emacs-devel >>>>> On Thu, 02 Oct 2014 12:54:42 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > The Mac port based on Emacs 24.3.94 pretest is now available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.3.94-mac-4.94.tar.gz I'll skip the Mac port release for Emacs 24.4 release candidate 1, because our site becomes unreachable this weekend. Fortunately, the previous version above seems to be applicable to the rc1 tarball. If you are using Screen Sharing.app, then also apply the patch in http://lists.gnu.org/archive/html/emacs-devel/2014-10/msg00110.html . YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-10-02 3:54 ` YAMAMOTO Mitsuharu ` (2 preceding siblings ...) 2014-10-17 23:30 ` YAMAMOTO Mitsuharu @ 2014-10-21 4:44 ` YAMAMOTO Mitsuharu 2014-10-21 5:18 ` YAMAMOTO Mitsuharu 2014-11-03 7:08 ` YAMAMOTO Mitsuharu 3 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2014-10-21 4:44 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 24.4 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.4-mac-5.0.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Keyboard input via Screen Sharing causes crash. Reported by Kazu Yamamoto. ** Changes from emacs-24.3-mac-4.8 *** High-resolution icons are now distributed as a separate package, which is available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-hires-icons-1.0.tar.gz *** File notification is supported via GLib (you'll also need `pkg-config' when running the configure command). *** The `image-io' image type supports `:max-width', `:max-height', and `:format' keywords just as in `imagemagick'. *** Now that Image mode supports multi-frame image navigation (`f', 'b', and `F'), you can browse multi-page documents in several formats that `image-io' supports (e.g., PDF and DOC) with the setting like this: (when (and (image-type-available-p 'image-io) (not (boundp 'imagemagick-render-type))) ;; Image I/O is used as a fallback of ImageMagick. (setq imagemagick-enabled-types t) (setq imagemagick-types-inhibit (cons 'XML (delq 'PDF imagemagick-types-inhibit))) (imagemagick-register-types)) Note: if you have ImageMagick installed, you need to build the Mac port executable without the genuine ImageMagick support so `image-io' can be used as a fallback of `imagemagick'. *** New variables mac-right-control-modifier, mac-right-command-modifier, and mac-right-option-modifier. Note: the left and right versions cannot be distinguished on some environments such as Screen Sharing. Also, certain combinations of a key with both versions of the same modifier do not emit events at the system level. *** A single physical modifier key can be mapped to different Emacs modifiers depending on its input type (ordinary keys, function keys, or mouse operations) using the property list format `(:ordinary SYMBOL :function SYMBOL :mouse SYMBOL)'. By default, the option key works as the normal Mac option key for the ordinary keys, and as the Alt modifier for the function keys and the mouse operations. *** Remove mac-ts-script-language-on-focus, which hasn't had any effect on 64-bit executables. *** Blend and blur fringe background of the focused frame with the contents behind it on OS X 10.10. This is currently experimental, hard-coded, and subject to change. *** Add mouse pointer color support. *** Animation-related properties of animated GIF are added to metadata of images in the `image-io' image type. Likewise for animated PNG on OS X 10.10. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-10-21 4:44 ` YAMAMOTO Mitsuharu @ 2014-10-21 5:18 ` YAMAMOTO Mitsuharu 2014-11-03 7:08 ` YAMAMOTO Mitsuharu 1 sibling, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2014-10-21 5:18 UTC (permalink / raw) To: emacs-devel >>>>> On Tue, 21 Oct 2014 13:44:44 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > The Mac port based on Emacs 24.4 is now available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.4-mac-5.0.tar.gz > ** Changes from emacs-24.3-mac-4.8 I forgot to add two items: *** Graphical drawing operations might be performed in non-main threads via GCD (Grand Central Dispatch) on Mac OS X 10.6 and later. You can turn this off by setting `mac-drawing-use-gcd' to nil. *** DocView mode generates pixel-doubled "@2x" bitmap image files in addition to normal ones on high-resolution environments such as Retina display or HiDPI mode. Also, the previous version (emacs-24.3.94-mac-4.94.tar.gz) seems to be missing in the server during the last week. The contents were inadvertently rolled back on server update. Sorry for inconvenience. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-10-21 4:44 ` YAMAMOTO Mitsuharu 2014-10-21 5:18 ` YAMAMOTO Mitsuharu @ 2014-11-03 7:08 ` YAMAMOTO Mitsuharu 2014-11-03 12:56 ` YAMAMOTO Mitsuharu 2014-11-21 4:36 ` YAMAMOTO Mitsuharu 1 sibling, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2014-11-03 7:08 UTC (permalink / raw) To: emacs-devel The first update of Emacs 24.4 Mac port 5.x is available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.4-mac-5.1.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** "C-_" on JIS keyboard is recognized as "_". Reported by OHKAWA Yuichi. *** Checking "Reduce translucency" in the Accessibility pane in the System Preferences on OS X 10.10 makes fringe areas translucent. Reported by Nicholas Riley. ** Improvements *** Blend-and-blur of fringe background on OS X 10.10 is no longer hard-coded. It can be customized per face by specifying a special name `alpha:ALPHA' as a value of the background stipple attribute. For example, (set-face-stipple 'fringe "alpha:50%") or defaults write org.gnu.Emacs Emacs.fringe.attributeStipple alpha:.5 will (mostly) recover the appearance of the previous release. Note: Setting stipple for the default face may not work as you expect. This is the same limitation as the standard stipple feature on X11. Also, blend-and-blur is temporarily turned off during animations. *** New experimental functions `mac-osa-language-list' and `mac-osa-script'. The latter is like `do-applescript', but can execute JavaScript as well as AppleScript on OS X 10.10. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-11-03 7:08 ` YAMAMOTO Mitsuharu @ 2014-11-03 12:56 ` YAMAMOTO Mitsuharu 2014-11-04 3:40 ` Leo Liu 2014-11-21 4:36 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2014-11-03 12:56 UTC (permalink / raw) To: emacs-devel >>>>> On Mon, 03 Nov 2014 16:08:01 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > The first update of Emacs 24.4 Mac port 5.x is available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.4-mac-5.1.tar.gz > *** New experimental functions `mac-osa-language-list' and > `mac-osa-script'. The latter is like `do-applescript', but can > execute JavaScript as well as AppleScript on OS X 10.10. I found a ridiculous mistake in the processing of handler args in `mac-osa-script'. It is not serious for normal use, but if you want to play with this new function, please apply the patch below. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp === modified file 'src/macappkit.m' *** src/macappkit.m 2014-11-03 07:13:33 +0000 --- src/macappkit.m 2014-11-03 12:34:50 +0000 *************** *** 10998,11004 **** NSString *handlerName; for (i = 0; i < nargs; i++) ! mac_ae_put_lisp (¶m_list, i, args[i]); target = [NSAppleEventDescriptor nullDescriptor]; result = [NSAppleEventDescriptor --- 10998,11004 ---- NSString *handlerName; for (i = 0; i < nargs; i++) ! mac_ae_put_lisp (¶m_list, 0, args[i]); target = [NSAppleEventDescriptor nullDescriptor]; result = [NSAppleEventDescriptor ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-11-03 12:56 ` YAMAMOTO Mitsuharu @ 2014-11-04 3:40 ` Leo Liu 0 siblings, 0 replies; 320+ messages in thread From: Leo Liu @ 2014-11-04 3:40 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel On 2014-11-03 21:56 +0900, YAMAMOTO Mitsuharu wrote: > I found a ridiculous mistake in the processing of handler args in > `mac-osa-script'. It is not serious for normal use, but if you want > to play with this new function, please apply the patch below. Could you update the instruction to include how to build with libxml2? Thanks. Leo ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-11-03 7:08 ` YAMAMOTO Mitsuharu 2014-11-03 12:56 ` YAMAMOTO Mitsuharu @ 2014-11-21 4:36 ` YAMAMOTO Mitsuharu 2014-11-27 1:43 ` Kazu Yamamoto ` (2 more replies) 1 sibling, 3 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2014-11-21 4:36 UTC (permalink / raw) To: emacs-devel The second update of Emacs 24.4 Mac port 5.x is available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.4-mac-5.2.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** The function `mac-osa-script' does not process ARGS (6th and later arguments) correctly. ** Improvements *** Even if the current keyboard layout maps some key with the control modifier to insertion of a character, which would be recognized as an ordinary insertion in applications that use the standard Cocoa text view, it is interpreted as a combination with the control modifier. This behavior is consistent with the Mac port version 4.x and earlier, and also obviates the previous fix for "C-_" on JIS keyboard. *** If /usr/include does not exist, then the Xcode SDK dir is examined as a candidate of libxml2 header location if it does not contain any special characters or blanks. *** The function `mac-osa-script' now accepts compiled code, which can be generated by a new function `mac-osa-compile', and a file name as well as a script source. Note: As of OS X 10.10.1, specifying compiled code generated from a JavaScript source causes crash. I think this is a bug in OSAKit. *** New function `mac-do-applescript', which is implemented on top of `mac-osa-script' and intended as a future replacement of `do-applescript'. *** New functions and hooks for interaction with the Text Input Source Services on Mac OS X 10.5 and later: `mac-input-source', `mac-input-source-list', `mac-select-input-source', `mac-deselect-input-source', `mac-selected-keyboard-input-source-change-hook', and `mac-enabled-keyboard-input-sources-change-hook'. *** New global minor mode `mac-auto-ascii-mode' for Mac OS X 10.5 and later. If enabled, it automatically selects the most-recently-used ASCII-capable keyboard input source on some occasions: after prefix key (bound in the global keymap) press such as C-x and M-g, and at the start of minibuffer input. Note: Strictly speaking, its implementation has a timing issue: the Lisp event queue may already have some input events that have been processed by some previous keyboard input source but yet to be processed by the Lisp interpreter. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-11-21 4:36 ` YAMAMOTO Mitsuharu @ 2014-11-27 1:43 ` Kazu Yamamoto 2014-11-28 0:36 ` YAMAMOTO Mitsuharu 2014-11-28 6:14 ` Sam Steingold 2015-01-29 3:51 ` YAMAMOTO Mitsuharu 2 siblings, 1 reply; 320+ messages in thread From: Kazu Yamamoto @ 2014-11-27 1:43 UTC (permalink / raw) To: mituharu; +Cc: emacs-devel Yamamoto-san, Thank you for your efforts always. I remember that you said you will prepare your git repo for Mac port when Emacs switches its repo to git. Now Emacs have done it. It would be highly appreciated if you open your repo of Mac port. --Kazu > The second update of Emacs 24.4 Mac port 5.x is available from > > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.4-mac-5.2.tar.gz > > YAMAMOTO Mitsuharu > mituharu@math.s.chiba-u.ac.jp > ** Fixed bugs > > *** The function `mac-osa-script' does not process ARGS (6th and later > arguments) correctly. > > ** Improvements > > *** Even if the current keyboard layout maps some key with the control > modifier to insertion of a character, which would be recognized as an > ordinary insertion in applications that use the standard Cocoa text > view, it is interpreted as a combination with the control modifier. > This behavior is consistent with the Mac port version 4.x and earlier, > and also obviates the previous fix for "C-_" on JIS keyboard. > > *** If /usr/include does not exist, then the Xcode SDK dir is examined > as a candidate of libxml2 header location if it does not contain any > special characters or blanks. > > *** The function `mac-osa-script' now accepts compiled code, which can > be generated by a new function `mac-osa-compile', and a file name as > well as a script source. > Note: As of OS X 10.10.1, specifying compiled code generated from a > JavaScript source causes crash. I think this is a bug in OSAKit. > > *** New function `mac-do-applescript', which is implemented on top of > `mac-osa-script' and intended as a future replacement of > `do-applescript'. > > *** New functions and hooks for interaction with the Text Input Source > Services on Mac OS X 10.5 and later: `mac-input-source', > `mac-input-source-list', `mac-select-input-source', > `mac-deselect-input-source', > `mac-selected-keyboard-input-source-change-hook', and > `mac-enabled-keyboard-input-sources-change-hook'. > > *** New global minor mode `mac-auto-ascii-mode' for Mac OS X 10.5 and > later. If enabled, it automatically selects the most-recently-used > ASCII-capable keyboard input source on some occasions: after prefix > key (bound in the global keymap) press such as C-x and M-g, and at the > start of minibuffer input. > Note: Strictly speaking, its implementation has a timing issue: the > Lisp event queue may already have some input events that have been > processed by some previous keyboard input source but yet to be > processed by the Lisp interpreter. > ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-11-27 1:43 ` Kazu Yamamoto @ 2014-11-28 0:36 ` YAMAMOTO Mitsuharu 0 siblings, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2014-11-28 0:36 UTC (permalink / raw) To: Kazu Yamamoto; +Cc: emacs-devel >>>>> On Thu, 27 Nov 2014 10:43:39 +0900 (JST), Kazu Yamamoto (山本和彦) <kazu@iij.ad.jp> said: > Yamamoto-san, Thank you for your efforts always. I remember that you > said you will prepare your git repo for Mac port when Emacs switches > its repo to git. Now Emacs have done it. It would be highly > appreciated if you open your repo of Mac port. Actually, I didn't say anything about making my repository public, because my git experiences were far from that level: I'm not maintaining any (private or public) git repositories for the Mac port myself. Actually I don't have enough experience with git yet. Probably I'll start practicing it after the upstream repository has switched to git. The situation is still almost the same: I don't have any git repositories for the Mac port. I don't have to be in a hurry for the development of the Mac port because the current version is based on Emacs 24.4, which is also in the old bzr repository. The transition will be made around the pretest of 24.5 or 25.1. Whether I make my repository public or not will probably depend on how much I can acquire my git knowledge and skills by that time. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-11-21 4:36 ` YAMAMOTO Mitsuharu 2014-11-27 1:43 ` Kazu Yamamoto @ 2014-11-28 6:14 ` Sam Steingold 2015-01-29 3:51 ` YAMAMOTO Mitsuharu 2 siblings, 0 replies; 320+ messages in thread From: Sam Steingold @ 2014-11-28 6:14 UTC (permalink / raw) To: emacs-devel It is alleged (http://emacs.stackexchange.com/a/3917/795) that your port passes C-f2 to the OS. What is the change that implements that? Thanks! Sam. -- Sam Steingold (http://sds.podval.org/) on darwin Ns 10.3.1343 http://www.childpsy.net/ http://truepeace.org http://mideasttruth.com http://palestinefacts.org http://memri.org http://americancensorship.org The only thing worse than X Windows: (X Windows) - X ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2014-11-21 4:36 ` YAMAMOTO Mitsuharu 2014-11-27 1:43 ` Kazu Yamamoto 2014-11-28 6:14 ` Sam Steingold @ 2015-01-29 3:51 ` YAMAMOTO Mitsuharu 2015-02-18 10:13 ` YAMAMOTO Mitsuharu 2 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2015-01-29 3:51 UTC (permalink / raw) To: emacs-devel The third update of Emacs 24.4 Mac port 5.x is available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.4-mac-5.3.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp Blend-and-blur of background color on OS X 10.10 is temporarily disabled to avoid mode-line erasure on frame focus switch. For some reason, mode-line row's `enabled_p' flag in the current matrix is sometimes reset even if it is visible. This causes blank mode-line on "expose" (drawRect:) events. In principle, this mode-line erasure can also happen on older versions of OS X or this version of Emacs Mac port. But it is usually observed on OS X 10.10 together with previous 5.x versions of Emacs Mac port, because the use of NSVisualEffectView, which provides the blend-and-blur feature, triggers full frame "exposure" on focus switch. ** Fixed bugs *** Special-display completion frame becomes transparent. Reported by Alan Shumitt. Adapt a fix for Bug#16619. *** `mac-auto-ascii-mode' on TTY terminals disables prefix keys with the meta key. *** Control-F2 is passed to the system even if mac-pass-control-to-system is set to nil. *** Synthetic bold text looks thinner on Retina display/HiDPI mode. This is because stroke line width for text drawing is not correctly scaled (whereas it is correctly scaled when drawn to bitmaps) on such environments. I've been reporting this to Apple on every OS X update since it was 10.7.4, but I couldn't get any response until recently. At last Apple answers that there are no plans to address this issue (rdar://11644870) currently. So I added a workaround that would cause a bad reverse effect if the original issue were fixed. *** `mac-ae-set-reply-parameter', which is used for reporting an error in Apple event hander, has not been working since emacs-24.2-mac-3.2. *** Input source functions ignore disabled input source ID strings. ** Improvements *** URL handler via Apple events now accepts the `org-protocol' scheme as well as `mailto'. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-01-29 3:51 ` YAMAMOTO Mitsuharu @ 2015-02-18 10:13 ` YAMAMOTO Mitsuharu 2015-02-18 10:34 ` YAMAMOTO Mitsuharu 2015-03-09 8:45 ` YAMAMOTO Mitsuharu 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2015-02-18 10:13 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 24.4.90 pretest is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.4.90-mac-5.4.tar.gz Although it is based on a pretest version of Emacs, I don't mark this version (5.4 rather than 5.90) of the Mac port as experimental/hackers-only this time. Now the `patch-mac' file is generated by `git diff', you will need to specify `-p1' rather than `-p0' when applying the patch. Git repository is also available at http://www.math.s.chiba-u.ac.jp/~mituharu/emacs-mac.git YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp * emacs-24.4.90-mac-5.4 (2015-02-18) Based on 24.4.90. Blend-and-blur of background color on OS X 10.10 is enabled again because the mode-line erasure issue (Bug#19721) is fixed upstream. The function `do-applescript' is now an alias of `mac-do-applescript', which is implemented on top of `mac-osa-script'. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-02-18 10:13 ` YAMAMOTO Mitsuharu @ 2015-02-18 10:34 ` YAMAMOTO Mitsuharu 2015-03-09 8:45 ` YAMAMOTO Mitsuharu 1 sibling, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2015-02-18 10:34 UTC (permalink / raw) To: emacs-devel >>>>> On Wed, 18 Feb 2015 19:13:42 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > Git repository is also available at > http://www.math.s.chiba-u.ac.jp/~mituharu/emacs-mac.git Sorry, I found several glitches. I withdraw it for now. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-02-18 10:13 ` YAMAMOTO Mitsuharu 2015-02-18 10:34 ` YAMAMOTO Mitsuharu @ 2015-03-09 8:45 ` YAMAMOTO Mitsuharu 2015-03-27 10:55 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2015-03-09 8:45 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 24.4.91 pretest is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.4.91-mac-5.5.tar.gz and Git repository is also available at http://www.math.s.chiba-u.ac.jp/~mituharu/emacs-mac.git YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Focusing a fullscreen frame whose menu-bar-lines value is 0 causes bouncing Spaces back. Reported by Marius Kjeldahl. ** Improvements *** Press and hold for accents is no longer unconditionally disabled. You can enable it via the Preference system (e.g., "defaults write org.gnu.Emacs ApplePressAndHoldEnabled YES"). *** Support emoji modifiers for skin tones (if the system and fonts support them). ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-03-09 8:45 ` YAMAMOTO Mitsuharu @ 2015-03-27 10:55 ` YAMAMOTO Mitsuharu 2015-03-31 18:07 ` Sam Steingold 2015-04-02 0:04 ` YAMAMOTO Mitsuharu 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2015-03-27 10:55 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 24.5 release candidate 1 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-rc1-mac-5.6.tar.gz and Git repository is also available at http://www.math.s.chiba-u.ac.jp/~mituharu/emacs-mac.git YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Pure space overflow on 32-bit build. *** LookupViewService invoked by Command-Control-D or three-finger tap crashes on OS X 10.10.3. Not tested for "force clicking" with pressure-sensitive trackpads, which require MacBook Pro (Retina, 13-inch, Early 2015) as of writing. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-03-27 10:55 ` YAMAMOTO Mitsuharu @ 2015-03-31 18:07 ` Sam Steingold 2015-03-31 18:42 ` Steinar Bang 2015-04-02 0:04 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: Sam Steingold @ 2015-03-31 18:07 UTC (permalink / raw) To: emacs-devel > * YAMAMOTO Mitsuharu <zvghuneh@zngu.f.puvon-h.np.wc> [2015-03-27 19:55:13 +0900]: > > The Mac port based on Emacs 24.5 release candidate 1 is now available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-rc1-mac-5.6.tar.gz > and Git repository is also available at > http://www.math.s.chiba-u.ac.jp/~mituharu/emacs-mac.git why is this not in the official tree? -- Sam Steingold (http://sds.podval.org/) on darwin Ns 10.3.1344 http://www.childpsy.net/ http://jihadwatch.org http://dhimmi.org http://palestinefacts.org http://www.memritv.org http://memri.org Rottweiler puppy for sale, eats everything, loves children. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-03-31 18:07 ` Sam Steingold @ 2015-03-31 18:42 ` Steinar Bang 2015-03-31 19:00 ` John Wiegley 2015-04-01 0:06 ` YAMAMOTO Mitsuharu 0 siblings, 2 replies; 320+ messages in thread From: Steinar Bang @ 2015-03-31 18:42 UTC (permalink / raw) To: emacs-devel >>>>> Sam Steingold <sds@gnu.org>: > why is this not in the official tree? I'm guessing because the emacs git master was rebased after it had been merged into the mac git, so they are seeing some of the bad side effects of repeated merges of rebased commits: duplicate history log entries ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-03-31 18:42 ` Steinar Bang @ 2015-03-31 19:00 ` John Wiegley 2015-04-01 0:06 ` YAMAMOTO Mitsuharu 1 sibling, 0 replies; 320+ messages in thread From: John Wiegley @ 2015-03-31 19:00 UTC (permalink / raw) To: emacs-devel >>>>> Steinar Bang <sb@dod.no> writes: > I'm guessing because the emacs git master was rebased after it had been > merged into the mac git, so they are seeing some of the bad side effects of > repeated merges of rebased commits: duplicate history log entries The "Mac port" variant is maintained as a patch set, so there should be no problem whatever with including it. The real question is whether the FSF wants to support a Carbon-based Emacs port, rather than the GNUstep port it currently uses. John ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-03-31 18:42 ` Steinar Bang 2015-03-31 19:00 ` John Wiegley @ 2015-04-01 0:06 ` YAMAMOTO Mitsuharu 2015-04-01 17:21 ` Sam Steingold 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2015-04-01 0:06 UTC (permalink / raw) To: emacs-devel >>>>> On Tue, 31 Mar 2015 20:42:43 +0200, Steinar Bang <sb@dod.no> said: >>>>> Sam Steingold <sds@gnu.org>: >> why is this not in the official tree? > I'm guessing because the emacs git master was rebased after it had > been merged into the mac git, so they are seeing some of the bad > side effects of repeated merges of rebased commits: duplicate > history log entries Actually I don't understand what "the emacs git master was rebased" means exactly, maybe because I'm very new to git. The Mac port git repository I published was first constructed on top of a clone of the Emacs git repository as of January 2015. I'm adding (a pushable copy of) the Mac port git repository as a "git remote" onto the clone of the Emacs repository created with the instructions in admin/notes/git-workflow. $ git remote -v emacs-mac localhost:src/emacs-mac.git (fetch) emacs-mac localhost:src/emacs-mac.git (push) origin git://git.savannah.gnu.org/emacs.git (fetch) origin git://git.savannah.gnu.org/emacs.git (push) YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-04-01 0:06 ` YAMAMOTO Mitsuharu @ 2015-04-01 17:21 ` Sam Steingold 2015-04-01 20:58 ` Stefan Monnier 0 siblings, 1 reply; 320+ messages in thread From: Sam Steingold @ 2015-04-01 17:21 UTC (permalink / raw) To: emacs-devel > * YAMAMOTO Mitsuharu <zvghuneh@zngu.f.puvon-h.np.wc> [2015-04-01 09:06:30 +0900]: > >>>>>> Sam Steingold <sds@gnu.org>: >>> why is this not in the official tree? > > Actually I don't understand what "the emacs git master was rebased" > means exactly, maybe because I'm very new to git. The Mac port git > repository I published was first constructed on top of a clone of the > Emacs git repository as of January 2015. I'm adding (a pushable copy > of) the Mac port git repository as a "git remote" onto the clone of > the Emacs repository created with the instructions in > admin/notes/git-workflow. > > $ git remote -v > emacs-mac localhost:src/emacs-mac.git (fetch) > emacs-mac localhost:src/emacs-mac.git (push) > origin git://git.savannah.gnu.org/emacs.git (fetch) > origin git://git.savannah.gnu.org/emacs.git (push) so, do you have any code which have not been pushed to origin? -- Sam Steingold (http://sds.podval.org/) on darwin Ns 10.3.1344 http://www.childpsy.net/ http://openvotingconsortium.org http://www.memritv.org http://think-israel.org http://www.dhimmitude.org http://honestreporting.com Live free or die. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-04-01 17:21 ` Sam Steingold @ 2015-04-01 20:58 ` Stefan Monnier 0 siblings, 0 replies; 320+ messages in thread From: Stefan Monnier @ 2015-04-01 20:58 UTC (permalink / raw) To: Sam Steingold; +Cc: emacs-devel > So, do you have any code which have not been pushed to origin? Yes: all the code specific to the "Mac port" is only in his repository, because it is not intended for inclusion in Emacs (where we use another codebase for that same purpose). Stefan ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-03-27 10:55 ` YAMAMOTO Mitsuharu 2015-03-31 18:07 ` Sam Steingold @ 2015-04-02 0:04 ` YAMAMOTO Mitsuharu 2015-04-05 23:55 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2015-04-02 0:04 UTC (permalink / raw) To: emacs-devel >>>>> On Fri, 27 Mar 2015 19:55:13 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > The Mac port based on Emacs 24.5 release candidate 1 is now available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-rc1-mac-5.6.tar.gz > and Git repository is also available at > http://www.math.s.chiba-u.ac.jp/~mituharu/emacs-mac.git I don't release the tarball for Emacs 24.5 release candidate 2: the previous one applies to it. The repository above is updated to incorporate the release candidate 2. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-04-02 0:04 ` YAMAMOTO Mitsuharu @ 2015-04-05 23:55 ` YAMAMOTO Mitsuharu 2015-04-11 1:30 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2015-04-05 23:55 UTC (permalink / raw) To: emacs-devel >>>>> On Thu, 02 Apr 2015 09:04:59 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: >> The Mac port based on Emacs 24.5 release candidate 1 is now >> available from >> ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-rc1-mac-5.6.tar.gz >> and Git repository is also available at >> http://www.math.s.chiba-u.ac.jp/~mituharu/emacs-mac.git > I don't release the tarball for Emacs 24.5 release candidate 2: the > previous one applies to it. The repository above is updated to > incorporate the release candidate 2. Ditto for release candidate 3. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-04-05 23:55 ` YAMAMOTO Mitsuharu @ 2015-04-11 1:30 ` YAMAMOTO Mitsuharu 2015-04-11 22:28 ` John Wiegley 2015-05-17 6:04 ` YAMAMOTO Mitsuharu 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2015-04-11 1:30 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 24.5 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.7.tar.gz and Git repository is also available at http://www.math.s.chiba-u.ac.jp/~mituharu/emacs-mac.git Note: Maybe I've once uploaded the repository above in a premature state. Please pull it again if you have already pulled it very recently (within one hour before this announcement). YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Improvements *** Update the list of emoji modifier base characters according to UTR #51 version 1.0 (draft 8). ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-04-11 1:30 ` YAMAMOTO Mitsuharu @ 2015-04-11 22:28 ` John Wiegley 2015-05-17 6:04 ` YAMAMOTO Mitsuharu 1 sibling, 0 replies; 320+ messages in thread From: John Wiegley @ 2015-04-11 22:28 UTC (permalink / raw) To: emacs-devel >>>>> YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes: > The Mac port based on Emacs 24.5 is now available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.7.tar.gz Nix (from GitHub) has been updated with nixpkgs.emacs24Macport_24_5, which includes this patch release. John ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-04-11 1:30 ` YAMAMOTO Mitsuharu 2015-04-11 22:28 ` John Wiegley @ 2015-05-17 6:04 ` YAMAMOTO Mitsuharu 2015-07-13 4:29 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2015-05-17 6:04 UTC (permalink / raw) To: emacs-devel The first update of the Mac port based on Emacs 24.5 is available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.8.tar.gz and Git repository is also available at http://www.math.s.chiba-u.ac.jp/~mituharu/emacs-mac.git YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Display may corrupt just after loading fonts. Adapt a fix for Bug#20410. *** System-wide popups (such as "Emoji & Symbols") are placed wrong when the cursor is at end of line. *** The symbol `left' for mac-right-*-modifier variables is not properly presented in customization buffers. ** Improvements *** Support ZWJ (ZERO WIDTH JOINER) sequences for emoji on OS X 10.10.3. *** Now the `:button' property in the value of a modifier variable (e.g., `mac-option-modifier') can be used for mapping button numbers. The default setting maps the primary button with `fn' to mouse-2. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-05-17 6:04 ` YAMAMOTO Mitsuharu @ 2015-07-13 4:29 ` YAMAMOTO Mitsuharu 2015-08-25 1:56 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2015-07-13 4:29 UTC (permalink / raw) To: emacs-devel The second update of the Mac port based on Emacs 24.5 is available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.9.tar.gz and Git repository is also available at http://www.math.s.chiba-u.ac.jp/~mituharu/emacs-mac.git YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Progress indicator is shown while tracking popup menu. *** Command-H followed by clicking the dock icon may create a new frame on OS X 10.10. *** Cancel/OK buttons in font dialog look fat on OS X 10.10. *** Several full screen glitches on OS X 10.11 Beta. Custom transition animation is disabled to work around some problems including crash. *** Visible bell not visible on OS X 10.11 Beta. ** Improvements *** New function `mac-application-state' to obtain the current status as a GUI application. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-07-13 4:29 ` YAMAMOTO Mitsuharu @ 2015-08-25 1:56 ` YAMAMOTO Mitsuharu 2015-09-27 8:24 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2015-08-25 1:56 UTC (permalink / raw) To: emacs-devel The third update of the Mac port based on Emacs 24.5 is available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.10.tar.gz and Git repository is also available at http://www.math.s.chiba-u.ac.jp/~mituharu/emacs-mac.git YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Crash when pressing Command + power button on OS X 10.9 and later. ** Improvements *** Accept localized font family names on Mac OS X 10.6 and later. *** Some resize operations on OS X 10.7 and later now involve transition animations by decomposing and distributing the current contents. Examples include dragging with shift/option key pressed, zooming, and dragging full screen tiling border on OS X 10.11 Beta. *** New global minor mode `mac-auto-operator-composition-mode'. If enabled, it composes consecutive ASCII symbolic characters into a special glyph when the font supports such a composition typically via ligatures for operators in programming languages. Tested with Hasklig and Fira Code. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-08-25 1:56 ` YAMAMOTO Mitsuharu @ 2015-09-27 8:24 ` YAMAMOTO Mitsuharu 2015-10-30 2:52 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2015-09-27 8:24 UTC (permalink / raw) To: emacs-devel The fourth update of the Mac port based on Emacs 24.5 is available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.11.tar.gz and Git repository is also available at http://www.math.s.chiba-u.ac.jp/~mituharu/emacs-mac.git YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Crash when closing a fullscreen frame on OS X 10.11 GM Candidate. *** Daemon mode does not exec after fork at startup. This is a regression introduced in 3.90. *** Display corrupts when zooming twice quickly. *** Crash when displaying etc/HELLO file on OS X 10.11 GM Candidate. It crashes when displaying Oriya characters with Arial Unicode MS. This happens even with TextEdit.app if you explicitly select the font. A workaround is added so Oriya Sangam MN is preferred by default. ** Improvements *** Extend mode line areas while showing resize transition animation. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-09-27 8:24 ` YAMAMOTO Mitsuharu @ 2015-10-30 2:52 ` YAMAMOTO Mitsuharu 2015-10-31 2:39 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2015-10-30 2:52 UTC (permalink / raw) To: emacs-devel The fifth update of the Mac port based on Emacs 24.5 is available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.12.tar.gz and Git repository is also available at http://www.math.s.chiba-u.ac.jp/~mituharu/emacs-mac.git YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Invoking Ediff from a fullscreen frame creates a fullscreen Control Panel on OS X 10.11 (does not happen on OS X 10.11.1). *** Changing a frame to/from fullboth does not make the frame key window on OS X 10.11. *** Making a fullboth frame fullscreen does not keep the tool bar visibility on OS X 10.7 and later. *** If the executable is built on an older OS/SDK and run on OS X 10.11, the frame placed in the left part of Split View gets maximized. Reported by Alan Schmitt. *** Crash when making a frame fullscreen/fullboth on Mac OS X 10.4. *** Crash by infinite recursion while displaying box face. Apply a fix for Bug#21428. *** Crash when redisplaying a window changes faces or fonts. Apply a fix for Bug#21428. ** Improvements *** Fullscreen/fullboth frames no longer hide the Dock unnecessarily if compiled and run on OS X 10.11. *** Fullscreen transition animation looks a bit better on OS X 10.11. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-10-30 2:52 ` YAMAMOTO Mitsuharu @ 2015-10-31 2:39 ` YAMAMOTO Mitsuharu 2015-12-09 3:28 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2015-10-31 2:39 UTC (permalink / raw) To: emacs-devel >>>>> On Fri, 30 Oct 2015 11:52:28 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > The fifth update of the Mac port based on Emacs 24.5 is available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.12.tar.gz > and Git repository is also available at > http://www.math.s.chiba-u.ac.jp/~mituharu/emacs-mac.git I've just made another release to fix a crash bug. ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.13.tar.gz If you already have emacs-24.5-mac-5.12.tar.gz, then you only need to apply the patch below. Sorry for the inconvenience. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Closing a fullscreen frame may cause crash or Lisp error in frame-live-p. ** Improvements *** Fullboth frames are no longer eligible to become fullscreen via Mission Control on OS X 10.11 (this change is actually made in 5.12). diff --git a/src/macappkit.m b/src/macappkit.m index 574bfb3..2a91aa0 100644 --- a/src/macappkit.m +++ b/src/macappkit.m @@ -4078,6 +4078,10 @@ static CGRect unset_global_focus_view_frame (void); EmacsFrameController * __unsafe_unretained weakSelf = self; BOOL savedToolbarVisibility; + /* Called also when a full screen window is being closed. */ + if (overlayWindow == nil) + return; + if (fullScreenTargetState & WM_STATE_DEDICATED_DESKTOP) { /* Exiting full screen is triggered by external events rather @@ -4093,15 +4097,11 @@ static CGRect unset_global_focus_view_frame (void); if (!(floor (NSAppKitVersionNumber) <= NSAppKitVersionNumber10_10_Max)) [self preprocessWindowManagerStateChange:fullScreenTargetState]; - /* Called also when a full screen window is being closed. */ - if (overlayWindow) - { - [self detachOverlayWindow]; - [self addFullScreenTransitionCompletionHandler:^(EmacsWindow *window, - BOOL success) { - [weakSelf attachOverlayWindow]; - }]; - } + [self detachOverlayWindow]; + [self addFullScreenTransitionCompletionHandler:^(EmacsWindow *window, + BOOL success) { + [weakSelf attachOverlayWindow]; + }]; /* This is a workaround for the problem of not preserving toolbar visibility value. */ ^ permalink raw reply related [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-10-31 2:39 ` YAMAMOTO Mitsuharu @ 2015-12-09 3:28 ` YAMAMOTO Mitsuharu 2015-12-13 4:19 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2015-12-09 3:28 UTC (permalink / raw) To: emacs-devel The seventh update of the Mac port based on Emacs 24.5 is available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.14.tar.gz and Git repository is also available at http://www.math.s.chiba-u.ac.jp/~mituharu/emacs-mac.git YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** mac-auto-operator-composition-mode breaks syntax highlighting. Reported by James Reeves. *** Hang when canceling pop-up dictionary with C-g on OS X 10.11. Reported by Max Siegel. ** Improvements *** Force clicking with a pressure-sensitive trackpad now pops up a Quick Look window to look up the word under the pointer in the dictionaries. Note: This is currently hard-coded. Also, unlike Command-Control-D or three-finger tap, it is not easy or often impossible to specify the region of the text you look up because down-mouse-1 event resets it. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-09 3:28 ` YAMAMOTO Mitsuharu @ 2015-12-13 4:19 ` YAMAMOTO Mitsuharu 2015-12-24 10:29 ` YAMAMOTO Mitsuharu 2016-04-22 23:51 ` YAMAMOTO Mitsuharu 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2015-12-13 4:19 UTC (permalink / raw) To: emacs-devel >>>>> On Wed, 09 Dec 2015 12:28:59 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > The seventh update of the Mac port based on Emacs 24.5 is available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.14.tar.gz > and Git repository is also available at > http://www.math.s.chiba-u.ac.jp/~mituharu/emacs-mac.git I've just made another release to fix an invocation bug. Sorry for the short release interval again. ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.15.tar.gz YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Pure space overflow on 32-bit build. *** Can't invoke from Finder if user's login shell is fish. This is a regression introduced in 5.12. *** Changing default font causes display corruption in some cases. Reported by Leo. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-13 4:19 ` YAMAMOTO Mitsuharu @ 2015-12-24 10:29 ` YAMAMOTO Mitsuharu 2015-12-24 17:28 ` John Wiegley 2016-04-22 23:51 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2015-12-24 10:29 UTC (permalink / raw) To: emacs-devel The Mac port based on the `emacs-25' branch is now available from https://bitbucket.org/mituharu/emacs-mac.git (the `work' branch) Note that this is a bare development branch and documentations are not updated yet. You don't have to specify --with-mac for configure options because it is the default now. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-24 10:29 ` YAMAMOTO Mitsuharu @ 2015-12-24 17:28 ` John Wiegley 2015-12-28 7:51 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: John Wiegley @ 2015-12-24 17:28 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel [-- Attachment #1: Type: text/plain, Size: 787 bytes --] >>>>> YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes: > The Mac port based on the `emacs-25' branch is now available from > https://bitbucket.org/mituharu/emacs-mac.git (the `work' branch) > Note that this is a bare development branch and documentations are not > updated yet. You don't have to specify --with-mac for configure options > because it is the default now. Thank you, Yamamoto-san! This is fantastic, and will help me to track the latest development more closely than a build I only use for testing. How much work would it be for us to merge this build flavor into the main emacs-25 branch? -- John Wiegley GPG fingerprint = 4710 CF98 AF9B 327B B80F http://newartisans.com 60E1 46C4 BD1A 7AC1 4BA2 [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 629 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-24 17:28 ` John Wiegley @ 2015-12-28 7:51 ` YAMAMOTO Mitsuharu 2015-12-28 8:44 ` Bozhidar Batsov 2015-12-28 20:29 ` John Wiegley 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2015-12-28 7:51 UTC (permalink / raw) To: emacs-devel >>>>> On Thu, 24 Dec 2015 09:28:35 -0800, John Wiegley <jwiegley@gmail.com> said: >> The Mac port based on the `emacs-25' branch is now available from >> https://bitbucket.org/mituharu/emacs-mac.git (the `work' branch) >> Note that this is a bare development branch and documentations are >> not updated yet. You don't have to specify --with-mac for configure >> options because it is the default now. > Thank you, Yamamoto-san! This is fantastic, and will help me to > track the latest development more closely than a build I only use > for testing. > How much work would it be for us to merge this build flavor into the > main emacs-25 branch? Originally, the Mac port was not intended for inclusion to the main distribution, but for my private and classroom use. But if the inclusion is useful and meaningful for many people, then I'll make some effort to do that. I have one concern about the inclusion of the Mac port, that is, whether it can be merged with its full features. If not, then I'll have to provide some additional patch anyway, and that's not beneficial to the current users of the Mac port. In particular, I suspect the inclusion of the following features might be controversial whether they can be regarded as specific to Mac: * Pixel-based mouse wheel smooth scroll for newer mice/trackpads. * When the clipboard has both textual and image data, yank inserts the former and push both into the kill ring so the latter can be inserted with yank-pop afterwards. * The function `mac-start-animation' provides several animation effects via Core Animation. You can see the default animations with buffer switching by horizontal swiping/flicking (horizontal movement), exiting from the splash screen by typing "q" (fade out), and the "About Emacs" (ripple effect) and "Preferences..." menu items (swipe effect) in the application menu in the menu bar. * Emoji display, with support of variation sequences (text-style vs. emoji-style) and modifiers (skin tones) if the font supports them. * Blend-and-blur of background color on OS X 10.10 and later via face's stipple attribute: e.g., (set-face-stipple 'fringe "alpha:50%"). YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-28 7:51 ` YAMAMOTO Mitsuharu @ 2015-12-28 8:44 ` Bozhidar Batsov 2015-12-29 6:47 ` Richard Stallman 2015-12-28 20:29 ` John Wiegley 1 sibling, 1 reply; 320+ messages in thread From: Bozhidar Batsov @ 2015-12-28 8:44 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel [-- Attachment #1: Type: text/plain, Size: 3065 bytes --] We should aim to provide the best possible Emacs experience on every platform, so I doubt there will be much opposition to making that cocoa port better. We've discussed with Jan a while back, that it's ok to add OS X-specific features, as long as they are enabled conditionally and the the GNUStep version is not affected by them. I suspect that a lot of Emacs users are OS X users these days (many friends of mine who were long-time GNU/Linux users work on OS X today, me included), so the impact of improving the cocoa port can be potentially huge! On 28 December 2015 at 08:51, YAMAMOTO Mitsuharu < mituharu@math.s.chiba-u.ac.jp> wrote: > >>>>> On Thu, 24 Dec 2015 09:28:35 -0800, John Wiegley <jwiegley@gmail.com> > said: > > >> The Mac port based on the `emacs-25' branch is now available from > >> https://bitbucket.org/mituharu/emacs-mac.git (the `work' branch) > > >> Note that this is a bare development branch and documentations are > >> not updated yet. You don't have to specify --with-mac for configure > >> options because it is the default now. > > > Thank you, Yamamoto-san! This is fantastic, and will help me to > > track the latest development more closely than a build I only use > > for testing. > > > How much work would it be for us to merge this build flavor into the > > main emacs-25 branch? > > Originally, the Mac port was not intended for inclusion to the > main distribution, but for my private and classroom use. But if > the inclusion is useful and meaningful for many people, then I'll > make some effort to do that. > > I have one concern about the inclusion of the Mac port, that is, > whether it can be merged with its full features. If not, then I'll > have to provide some additional patch anyway, and that's not > beneficial to the current users of the Mac port. In particular, I > suspect the inclusion of the following features might be controversial > whether they can be regarded as specific to Mac: > > * Pixel-based mouse wheel smooth scroll for newer mice/trackpads. > * When the clipboard has both textual and image data, yank inserts > the former and push both into the kill ring so the latter can be > inserted with yank-pop afterwards. > * The function `mac-start-animation' provides several animation > effects via Core Animation. You can see the default > animations with buffer switching by horizontal > swiping/flicking (horizontal movement), exiting from the > splash screen by typing "q" (fade out), and the "About > Emacs" (ripple effect) and "Preferences..." menu items (swipe > effect) in the application menu in the menu bar. > * Emoji display, with support of variation sequences (text-style > vs. emoji-style) and modifiers (skin tones) if the font supports > them. > * Blend-and-blur of background color on OS X 10.10 and later > via face's stipple attribute: e.g., (set-face-stipple > 'fringe "alpha:50%"). > > YAMAMOTO Mitsuharu > mituharu@math.s.chiba-u.ac.jp > > [-- Attachment #2: Type: text/html, Size: 4026 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-28 8:44 ` Bozhidar Batsov @ 2015-12-29 6:47 ` Richard Stallman 2015-12-29 9:40 ` Jean-Christophe Helary 0 siblings, 1 reply; 320+ messages in thread From: Richard Stallman @ 2015-12-29 6:47 UTC (permalink / raw) To: Bozhidar Batsov; +Cc: mituharu, emacs-devel [[[ To any NSA and FBI agents reading my email: please consider ]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] > We should aim to provide the best possible Emacs experience on every > platform, Usually, but not always. The purpose of GNU Emacs is to be a good part of the GNU system and thus to make the GNU system better; other platforms are secondary. GNU Emacs should never offer people a practical reason to use some other system instead of GNU. Therefore, when someone implements a useful new feature but only for a non-GNU system, we do not accept it that form. Instead we say, "Make it work equally well on GNU, and we will accept it." > many friends > of mine who were long-time GNU/Linux users work on OS X today, me > included This is a VERY bad thing. Can we find ways to discourage this? In principle, adding nice features to Emacs that work on GNU/Linux and do not work on MacOS could help. But I don't see much scope for success that way. I think our principal hope of influencing people is through influencing the way they think about the choice of system. For instance, by teaching them to value freedom (which MacOS denies) more and convenience (which Apple might offer them) less. If we took the attitude that we aim to "serve the users" wherever they happen to be, that would convey the message, "Sure, switch to MacOS -- we will make it easier for you." For us, a self-defeating approach. Thus our stance is that a person who moves from GNU/Linux to MacOS is being self-destructively foolish. We take this seriously and we must speak and act in accord with it. This way, we can influence some people. -- Dr Richard Stallman President, Free Software Foundation (gnu.org, fsf.org) Internet Hall-of-Famer (internethalloffame.org) Skype: No way! See stallman.org/skype.html. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 6:47 ` Richard Stallman @ 2015-12-29 9:40 ` Jean-Christophe Helary 2015-12-29 10:43 ` David Kastrup ` (2 more replies) 0 siblings, 3 replies; 320+ messages in thread From: Jean-Christophe Helary @ 2015-12-29 9:40 UTC (permalink / raw) To: emacs-devel > On Dec 29, 2015, at 15:47, Richard Stallman <rms@gnu.org> wrote: > >> many friends >> of mine who were long-time GNU/Linux users work on OS X today, me >> included > > Thus our stance is that a person who moves from GNU/Linux to MacOS is > being self-destructively foolish. We take this seriously and we must > speak and act in accord with it. This way, we can influence some > people. My personal opinion is that people do not switch to MacOS but rather to Apple machines which are typically better built than standard Intel based machines. It is the robustness of the hardware that appeals to most users, not the OS. To have more people switch to a GNU/Linux system, you would have to find a maker that builds high quality machines for a price similar to what Apple offers (which is in all likeliness not possible) and offers similar flawless integration between the OS and the machine (which is possible). Jean-Christophe Helary ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 9:40 ` Jean-Christophe Helary @ 2015-12-29 10:43 ` David Kastrup 2015-12-29 11:18 ` CHENG Gao 2015-12-30 6:09 ` Richard Stallman 2 siblings, 0 replies; 320+ messages in thread From: David Kastrup @ 2015-12-29 10:43 UTC (permalink / raw) To: Jean-Christophe Helary; +Cc: emacs-devel Jean-Christophe Helary <jean.christophe.helary@gmail.com> writes: >> On Dec 29, 2015, at 15:47, Richard Stallman <rms@gnu.org> wrote: >> >>> many friends >>> of mine who were long-time GNU/Linux users work on OS X today, me >>> included >> >> Thus our stance is that a person who moves from GNU/Linux to MacOS is >> being self-destructively foolish. We take this seriously and we must >> speak and act in accord with it. This way, we can influence some >> people. > > My personal opinion is that people do not switch to MacOS but rather > to Apple machines which are typically better built than standard Intel > based machines. It is the robustness of the hardware that appeals to > most users, not the OS. Shrug. Linus Torvalds at one time used a Macbook Air for his development IIRC, but obviously not running MacOS X on it. So his personal freedom was not hampered much more than with other typical hardware choices. It still lends financial support to a powerful company who is rather firmly invested against the goals of the GNU project for one thing and a number of issues concerning freedom and computing for another. > To have more people switch to a GNU/Linux system, you would have to > find a maker that builds high quality machines for a price similar to > what Apple offers (which is in all likeliness not possible) and offers > similar flawless integration between the OS and the machine (which is > possible). Shrug. To have more people switch to a GNU/Linux system, you need to make them care about software freedom. Locking people into their choices results in money and power, both of which can partly be reinvested to sweeten the deal. It's the "Open Source movement" which thinks it can "win" on those terms. But you don't "fight" an empire by waiting until it self-destructs before starting recruitment. We will not beat Apple at their game. We can just offer a good way forward for those willing to quit Apple's game. And what we can offer these days requires much less determination to choose than it did at one time. But there will always be a personal cost to stop running with the herd as long as the herd is not going straight off a cliff. -- David Kastrup ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 9:40 ` Jean-Christophe Helary 2015-12-29 10:43 ` David Kastrup @ 2015-12-29 11:18 ` CHENG Gao 2015-12-30 6:09 ` Richard Stallman 2015-12-30 6:09 ` Richard Stallman 2 siblings, 1 reply; 320+ messages in thread From: CHENG Gao @ 2015-12-29 11:18 UTC (permalink / raw) To: emacs-devel *On Tue, 29 Dec 2015 18:40:29 +0900 * Also sprach Jean-Christophe Helary <jean.christophe.helary@gmail.com>: >> On Dec 29, 2015, at 15:47, Richard Stallman <rms@gnu.org> wrote: >> >>> many friends of mine who were long-time GNU/Linux users work on OS >>> X today, me included >> Thus our stance is that a person who moves from GNU/Linux to MacOS >> is being self-destructively foolish. We take this seriously and we >> must speak and act in accord with it. This way, we can influence >> some people. > > My personal opinion is that people do not switch to MacOS but rather > to Apple machines which are typically better built than standard Intel > based machines. It is the robustness of the hardware that appeals to > most users, not the OS. > > To have more people switch to a GNU/Linux system, you would have to > find a maker that builds high quality machines for a price similar to > what Apple offers (which is in all likeliness not possible) and offers > similar flawless integration between the OS and the machine (which is > possible). > > Jean-Christophe Helary > Statements: I use MacOS (id. Mac computer), for long time. I wish hard work of Yamamoto san and even Aquamacs' be merged into Emacs, for long time. Since I think otherwise much man hours are not fully used and don't beneficit as many users as possible. Personal experience: I switched to Mac not because of it's vogue and chic etc. Only reason is I was fed up with Wind-oz, which is not as romaintic as it sounds. I started to use GNU/Linux, but you know at that time RedHat was not playing well with my crappy computer. At last I switched to Mac since after all it's UNIX. Then I just get used to it though I also run GNU/Linux hardwares (in fact several of them). With all above said, here comes MHO. I don't think MacOS and GNU/Linux are comparable. They are apple versus gnu, no matter literally ot not. Mac(OS) is a self-contained ecosystem. It has its own business model, and it doesn't carry that much historical burden on its shoulders. On the contrary as few as it decides to. They can tailor their application to few hardwares they choose. When decided to abandon Carbon, voila Carbon abandoned. When decided your Mac is not qualified for next big story, boys and girls, time to smash your piggy bank. Can GNU/Linux shrugs these burden off? Or even can Wind-oz? I bet if Emacs is only targeted to run on, say, 1Ghz+ 4-core+ CPU with 4G+ memory hardware, it will be entirely different beast. Found bugs in Emacs 23? 22? Man, I am sorry, but we only do Emacs 25. So suit yourself or shoot yourself. I just think it's philosophical difference or gap. Just my RMB2 cents. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 11:18 ` CHENG Gao @ 2015-12-30 6:09 ` Richard Stallman 2015-12-30 6:26 ` CHENG Gao 0 siblings, 1 reply; 320+ messages in thread From: Richard Stallman @ 2015-12-30 6:09 UTC (permalink / raw) To: CHENG Gao; +Cc: emacs-devel [[[ To any NSA and FBI agents reading my email: please consider ]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] > I bet if Emacs is only targeted to run on, say, 1Ghz+ 4-core+ CPU with > 4G+ memory hardware, it will be entirely different beast. Found bugs in > Emacs 23? 22? Man, I am sorry, but we only do Emacs 25. So suit yourself > or shoot yourself. I am not sure what you mean -- it is like a Chinese poem, leading to a long discussion about the meaning. Could you say what you think we should do, and why? -- Dr Richard Stallman President, Free Software Foundation (gnu.org, fsf.org) Internet Hall-of-Famer (internethalloffame.org) Skype: No way! See stallman.org/skype.html. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-30 6:09 ` Richard Stallman @ 2015-12-30 6:26 ` CHENG Gao 0 siblings, 0 replies; 320+ messages in thread From: CHENG Gao @ 2015-12-30 6:26 UTC (permalink / raw) To: emacs-devel *On Wed, 30 Dec 2015 01:09:38 -0500 * Also sprach Richard Stallman <rms@gnu.org>: > [[[ To any NSA and FBI agents reading my email: please consider ]]] > [[[ whether defending the US Constitution against all enemies, ]]] [[[ > foreign or domestic, requires you to follow Snowden's example. ]]] > > > I bet if Emacs is only targeted to run on, say, 1Ghz+ 4-core+ CPU > > with 4G+ memory hardware, it will be entirely different beast. > > Found bugs in Emacs 23? 22? Man, I am sorry, but we only do Emacs > > 25. So suit yourself or shoot yourself. > > I am not sure what you mean -- it is like a Chinese poem, leading to a > long discussion about the meaning. > > Could you say what you think we should do, and why? What I mean is GNU/Linux world carries heavy burden and has to acccomodate oceans of hardwares spanning decades. So it's not proper and fair to compare GNU/Linux with MacOS since Mac(OS) is a self-contained ecosystem and distates hardware - generally after several major releases (like two or three) you have to ditch your computer and buy a latest one to use latest OS. Just arguing with OP. I didn't suggest anything. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 9:40 ` Jean-Christophe Helary 2015-12-29 10:43 ` David Kastrup 2015-12-29 11:18 ` CHENG Gao @ 2015-12-30 6:09 ` Richard Stallman 2 siblings, 0 replies; 320+ messages in thread From: Richard Stallman @ 2015-12-30 6:09 UTC (permalink / raw) To: Jean-Christophe Helary; +Cc: emacs-devel [[[ To any NSA and FBI agents reading my email: please consider ]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] > My personal opinion is that people do not switch to MacOS but > rather to Apple machines which are typically better built than > standard Intel based machines. It is the robustness of the > hardware that appeals to most users, not the OS. GNU/Linux works on those machines, so when you meet people who use them with MacOS, how about suggesting that they install GNU/Linux? > To have more people switch to a GNU/Linux system, you would have > to find a maker that builds high quality machines for a price > similar to what Apple offers It is true that that would help our cause -- true, but not useful, since we have no control and hardly any influence over manufacturers. Fortunately, the claim that that's the _only_ way is not true. It applies only to users who judge _only_ based on convenience. Those people are many, but what they are doing is folly (c'est fou). They are ignoring the issue of freedom and how their software subjugates them and mistreats them. Our overall goal is to free them from user-subjugating software (logiciel privateur). If we call their attention to this issue, some of them will be disgusted with what they have accepted until now, and some of them will change. I suggest showing people fsf.org/tedx, http://gnu.org/philosophy/free-software-even-more-important.html (..fr.html is the French translation), and http://gnu.org/proprietary. You can help spread this issue by making your own decisions based on freedom, and showing your friends and associates that you do. David Kastrup said it very well: > It's the "Open Source movement" which thinks it can "win" on those > terms. But you don't "fight" an empire by waiting until it > self-destructs before starting recruitment. We will not beat Apple at > their game. We can just offer a good way forward for those willing to > quit Apple's game. And what we can offer these days requires much less > determination to choose than it did at one time. -- Dr Richard Stallman President, Free Software Foundation (gnu.org, fsf.org) Internet Hall-of-Famer (internethalloffame.org) Skype: No way! See stallman.org/skype.html. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-28 7:51 ` YAMAMOTO Mitsuharu 2015-12-28 8:44 ` Bozhidar Batsov @ 2015-12-28 20:29 ` John Wiegley 2015-12-28 22:35 ` David Engster 1 sibling, 1 reply; 320+ messages in thread From: John Wiegley @ 2015-12-28 20:29 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel [-- Attachment #1: Type: text/plain, Size: 724 bytes --] >>>>> YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes: > Originally, the Mac port was not intended for inclusion to the main > distribution, but for my private and classroom use. But if the inclusion is > useful and meaningful for many people, then I'll make some effort to do > that. It would not only be useful and meaningful to me, but it also has been to every other Mac user I've recommended it to. They may not be on their list to chime in, so allow me to proxy for them. I'd very much like to see this included in the main distribution. -- John Wiegley GPG fingerprint = 4710 CF98 AF9B 327B B80F http://newartisans.com 60E1 46C4 BD1A 7AC1 4BA2 [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 629 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-28 20:29 ` John Wiegley @ 2015-12-28 22:35 ` David Engster 2015-12-28 22:54 ` John Wiegley 0 siblings, 1 reply; 320+ messages in thread From: David Engster @ 2015-12-28 22:35 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel John Wiegley writes: >>>>>> YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes: >> Originally, the Mac port was not intended for inclusion to the main >> distribution, but for my private and classroom use. But if the inclusion is >> useful and meaningful for many people, then I'll make some effort to do >> that. > > It would not only be useful and meaningful to me, but it also has been to > every other Mac user I've recommended it to. They may not be on their list to > chime in, so allow me to proxy for them. > > I'd very much like to see this included in the main distribution. You skipped over this concern from Yamamoto-san, which I think is very valid: > In particular, I suspect the inclusion of the following features might > be controversial whether they can be regarded as specific to Mac: AFAIK I think it is not OK to have features that are specific to a non-free plattform, so I'd suggest to discuss this with Richard first before encouraging work on a possible merge. -David ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-28 22:35 ` David Engster @ 2015-12-28 22:54 ` John Wiegley 2015-12-29 6:51 ` Richard Stallman 0 siblings, 1 reply; 320+ messages in thread From: John Wiegley @ 2015-12-28 22:54 UTC (permalink / raw) To: David Engster; +Cc: rms, YAMAMOTO Mitsuharu, emacs-devel [-- Attachment #1: Type: text/plain, Size: 877 bytes --] >>>>> David Engster <deng@randomsample.de> writes: > AFAIK I think it is not OK to have features that are specific to a non-free > plattform, so I'd suggest to discuss this with Richard first before > encouraging work on a possible merge. It was my understanding that it is fine to have features that a volunteer is willing to do the work for, just not to promote features that would make a non-GNU platform more attractive (such as, by devoting any other resources to their development, or giving them special status in any way). If Yamamoto-san is doing the work and giving it to the Emacs project freely, is there a reason to turn it down? I suppose this is indeed a matter for Richard to weigh in on. -- John Wiegley GPG fingerprint = 4710 CF98 AF9B 327B B80F http://newartisans.com 60E1 46C4 BD1A 7AC1 4BA2 [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 629 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-28 22:54 ` John Wiegley @ 2015-12-29 6:51 ` Richard Stallman 2015-12-29 13:24 ` Rasmus ` (2 more replies) 0 siblings, 3 replies; 320+ messages in thread From: Richard Stallman @ 2015-12-29 6:51 UTC (permalink / raw) To: John Wiegley; +Cc: mituharu, deng, emacs-devel [[[ To any NSA and FBI agents reading my email: please consider ]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] > It was my understanding that it is fine to have features that a volunteer is > willing to do the work for, just not to promote features that would make a > non-GNU platform more attractive (such as, by devoting any other resources to > their development, or giving them special status in any way). That is basically right. More precisely, we don't want GNU Emacs to give people any practical reason to prefer some other system to GNU. > If Yamamoto-san is doing the work and giving it to the Emacs project freely, > is there a reason to turn it down? I suppose this is indeed a matter for > Richard to weigh in on. Could someone explain to me, first, what these features do? -- Dr Richard Stallman President, Free Software Foundation (gnu.org, fsf.org) Internet Hall-of-Famer (internethalloffame.org) Skype: No way! See stallman.org/skype.html. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 6:51 ` Richard Stallman @ 2015-12-29 13:24 ` Rasmus 2015-12-31 6:30 ` Richard Stallman 2015-12-29 17:14 ` John Wiegley 2015-12-29 18:00 ` Clément Pit--Claudel 2 siblings, 1 reply; 320+ messages in thread From: Rasmus @ 2015-12-29 13:24 UTC (permalink / raw) To: emacs-devel; +Cc: rms Richard Stallman <rms@gnu.org> writes: > > If Yamamoto-san is doing the work and giving it to the Emacs > > project freely, > > is there a reason to turn it down? I suppose this is indeed a matter for > > Richard to weigh in on. > > Could someone explain to me, first, what these features do? This was outlined by Yamamoto-san in this message: http://permalink.gmane.org/gmane.emacs.devel/196996 Here's the relevant quotation from Yamamoto-san: Originally, the Mac port was not intended for inclusion to the main distribution, but for my private and classroom use. But if the inclusion is useful and meaningful for many people, then I'll make some effort to do that. I have one concern about the inclusion of the Mac port, that is, whether it can be merged with its full features. If not, then I'll have to provide some additional patch anyway, and that's not beneficial to the current users of the Mac port. In particular, I suspect the inclusion of the following features might be controversial whether they can be regarded as specific to Mac: * Pixel-based mouse wheel smooth scroll for newer mice/trackpads. * When the clipboard has both textual and image data, yank inserts the former and push both into the kill ring so the latter can be inserted with yank-pop afterwards. * The function `mac-start-animation' provides several animation effects via Core Animation. You can see the default animations with buffer switching by horizontal swiping/flicking (horizontal movement), exiting from the splash screen by typing "q" (fade out), and the "About Emacs" (ripple effect) and "Preferences..." menu items (swipe effect) in the application menu in the menu bar. * Emoji display, with support of variation sequences (text-style vs. emoji-style) and modifiers (skin tones) if the font supports them. * Blend-and-blur of background color on OS X 10.10 and later via face's stipple attribute: e.g., (set-face-stipple 'fringe "alpha:50%"). -- Vote for proprietary math! ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 13:24 ` Rasmus @ 2015-12-31 6:30 ` Richard Stallman 2015-12-31 19:50 ` Chad Brown ` (2 more replies) 0 siblings, 3 replies; 320+ messages in thread From: Richard Stallman @ 2015-12-31 6:30 UTC (permalink / raw) To: Rasmus; +Cc: emacs-devel [[[ To any NSA and FBI agents reading my email: please consider ]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] Thanks for showing me the list. I will look at them one by one. > * Pixel-based mouse wheel smooth scroll for newer mice/trackpads. I think we support this already on various systems. If that is so, there is no reason not to support it on MacOS also. > * When the clipboard has both textual and image data, yank inserts > the former and push both into the kill ring so the latter can be > inserted with yank-pop afterwards. Does the clipboard on X support images? If so, can Emacs handle them? If this feature works on other systems, it is ok to support it on MacOS too. > * The function `mac-start-animation' provides several animation > effects via Core Animation. It looks like this feature would only be for MacOS, so we should not install it. If you would like to help the cause of freedom, one way you can do so is by not releasing this code at all. > * Emoji display, with support of variation sequences (text-style > vs. emoji-style) and modifiers (skin tones) if the font supports > them. Reportedly this needs changes in other parts of GNU/Linux first. Until then, we should not install it. > * Blend-and-blur of background color on OS X 10.10 and later > via face's stipple attribute: e.g., (set-face-stipple > 'fringe "alpha:50%"). Likewise for this, I think. Above all, we need to avoid falling into thinking with the wrong values. Our freedom is more important than any number of features like these. -- Dr Richard Stallman President, Free Software Foundation (gnu.org, fsf.org) Internet Hall-of-Famer (internethalloffame.org) Skype: No way! See stallman.org/skype.html. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-31 6:30 ` Richard Stallman @ 2015-12-31 19:50 ` Chad Brown 2015-12-31 21:36 ` Random832 2016-01-01 2:29 ` Richard Stallman 2016-01-01 6:54 ` Daniel Colascione 2016-01-03 22:49 ` John Wiegley 2 siblings, 2 replies; 320+ messages in thread From: Chad Brown @ 2015-12-31 19:50 UTC (permalink / raw) To: rms; +Cc: emacs-devel > On 30 Dec 2015, at 22:30, Richard Stallman <rms@gnu.org> wrote: > > [[[ To any NSA and FBI agents reading my email: please consider ]]] > [[[ whether defending the US Constitution against all enemies, ]]] > [[[ foreign or domestic, requires you to follow Snowden's example. ]]] > >> * The function `mac-start-animation' provides several animation >> effects via Core Animation. > > It looks like this feature would only be for MacOS, so we should not > install it. If you would like to help the cause of freedom, one way > you can do so is by not releasing this code at all. In case it wasn’t clear, this code just turns on a basic OS feature that is built in to MacOS. The code isn’t creating animations for emacs or adding animation support to the OS. ~Chad ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-31 19:50 ` Chad Brown @ 2015-12-31 21:36 ` Random832 2016-01-04 22:31 ` Xu Xin 2016-01-01 2:29 ` Richard Stallman 1 sibling, 1 reply; 320+ messages in thread From: Random832 @ 2015-12-31 21:36 UTC (permalink / raw) To: emacs-devel Chad Brown <yandros@gmail.com> writes: > In case it wasn’t clear, this code just turns on a basic OS feature that > is built in to MacOS. The code isn’t creating animations for emacs or > adding animation support to the OS. It's not clear from the description here what the animations are or when they are used. From a description elsewhere it sounds like it uses a "sliding pages" effect for switching buffers with certain mouse gestures? Is there anything else? Incidentally, I did find some information suggesting that GNUstep is planning work and/or has done work on CoreAnimation. http://heronsperch.blogspot.com/2013/06/gnustep-mythbusting.html https://github.com/gnustep/quartzcore Does anyone here use ns-emacs on GNUstep? ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-31 21:36 ` Random832 @ 2016-01-04 22:31 ` Xu Xin 2016-01-05 0:26 ` Andrés Ramírez 0 siblings, 1 reply; 320+ messages in thread From: Xu Xin @ 2016-01-04 22:31 UTC (permalink / raw) To: Random832; +Cc: Emacs developers On Thu, Dec 31, 2015 at 4:36 PM, Random832 <random832@fastmail.com> wrote: > Chad Brown <yandros@gmail.com> writes: >> In case it wasn’t clear, this code just turns on a basic OS feature that >> is built in to MacOS. The code isn’t creating animations for emacs or >> adding animation support to the OS. > > It's not clear from the description here what the animations are or when > they are used. From a description elsewhere it sounds like it uses a > "sliding pages" effect for switching buffers with certain mouse > gestures? Is there anything else? > > Incidentally, I did find some information suggesting that GNUstep is > planning work and/or has done work on CoreAnimation. > > http://heronsperch.blogspot.com/2013/06/gnustep-mythbusting.html > https://github.com/gnustep/quartzcore > > Does anyone here use ns-emacs on GNUstep? Also would like to know the answer. Just for my curiousness. > > - Xin ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-01-04 22:31 ` Xu Xin @ 2016-01-05 0:26 ` Andrés Ramírez 0 siblings, 0 replies; 320+ messages in thread From: Andrés Ramírez @ 2016-01-05 0:26 UTC (permalink / raw) To: Xu Xin; +Cc: Random832, jan.h.d, Emacs developers Hi Xu and Emacsers. On Mon, 04 Jan 2016 17:31:04 -0500, Xu Xin wrote: > > On Thu, Dec 31, 2015 at 4:36 PM, Random832 <random832@fastmail.com> wrote: > > Chad Brown <yandros@gmail.com> writes: > >> In case it wasn’t clear, this code just turns on a basic OS feature that > >> is built in to MacOS. The code isn’t creating animations for emacs or > >> adding animation support to the OS. > > > > It's not clear from the description here what the animations are or when > > they are used. From a description elsewhere it sounds like it uses a > > "sliding pages" effect for switching buffers with certain mouse > > gestures? Is there anything else? > > > > Incidentally, I did find some information suggesting that GNUstep is > > planning work and/or has done work on CoreAnimation. > > > > http://heronsperch.blogspot.com/2013/06/gnustep-mythbusting.html > > https://github.com/gnustep/quartzcore > > > > > Does anyone here use ns-emacs on GNUstep? > Also would like to know the answer. Just for my curiousness. In the past. I have tried it on GNU/Linux with window maker https://wiki.archlinux.org/index.php/Window_Maker In my opinion, Some people from the Darwin side should try it on GNU/Linux. It needs a lot of customization on GNU/Linux, for some old images see (this bug was closed by Jan, and calendar did render perfectly): https://lists.gnu.org/archive/html/emacs-devel/2014-07/msg00190.html Jan Djärv should have a better opinion than me. About this. Before this experience. I had the idea than was not possible to run ns-port on GNU/Linux. For improving It. It need more users (manpower). Best Regards ps: I am going to try to compile again and see how it renders now. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-31 19:50 ` Chad Brown 2015-12-31 21:36 ` Random832 @ 2016-01-01 2:29 ` Richard Stallman 1 sibling, 0 replies; 320+ messages in thread From: Richard Stallman @ 2016-01-01 2:29 UTC (permalink / raw) To: Chad Brown; +Cc: emacs-devel [[[ To any NSA and FBI agents reading my email: please consider ]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] > >> * The function `mac-start-animation' provides several animation > >> effects via Core Animation. > > > > It looks like this feature would only be for MacOS, so we should not > > install it. If you would like to help the cause of freedom, one way > > you can do so is by not releasing this code at all. > In case it wasn’t clear, this code just turns on a basic OS feature that > is built in to MacOS. I supposed it was that way. So this is no surprise, but it is unfortunate. If the code to do the hard work were in Emacs, we could probably easily make it work on other systems. And we could more or less take for granted someone would soon do so. So it would be ok to install. Since the implementation is mostly in MacOS, making it work on GNU/Linux is a bigger job. We must stand firm and say, "If you want this to work on MacOS, implement it for GNU." -- Dr Richard Stallman President, Free Software Foundation (gnu.org, fsf.org) Internet Hall-of-Famer (internethalloffame.org) Skype: No way! See stallman.org/skype.html. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-31 6:30 ` Richard Stallman 2015-12-31 19:50 ` Chad Brown @ 2016-01-01 6:54 ` Daniel Colascione 2016-01-01 7:36 ` Jean-Christophe Helary 2016-01-03 22:49 ` John Wiegley 2 siblings, 1 reply; 320+ messages in thread From: Daniel Colascione @ 2016-01-01 6:54 UTC (permalink / raw) To: rms, Rasmus; +Cc: emacs-devel [-- Attachment #1: Type: text/plain, Size: 1977 bytes --] On 12/30/2015 10:30 PM, Richard Stallman wrote: > > * The function `mac-start-animation' provides several animation > > effects via Core Animation. > > It looks like this feature would only be for MacOS, so we should not > install it. If you would like to help the cause of freedom, one way > you can do so is by not releasing this code at all. You'll probably just interpret this email as an attack on free software or something, so I really shouldn't bother sending it --- but I really can't help in this particular instance pointing out how absurd it is to claim that someone shouldn't provide a trivial interface to platform graphical facilities, and support emojis, merely because nobody's bothered to implement these facilities on GNU/X11/GTK/Linux. I probably shouldn't point this out, but Emacs on OS X already supports invoking AppleScript. There's no GNU/Linux equivalent. Quelle horreur! > > * Emoji display, with support of variation sequences (text-style > > vs. emoji-style) and modifiers (skin tones) if the font supports > > them. > > Reportedly this needs changes in other parts of GNU/Linux first. > Until then, we should not install it. Why don't *you* send a patch? That way, we can make both Emacs and GNU/Linux better instead of making Emacs worse to accomplish making GNU/Linux look marginally better --- actually, in accomplish nothing, since nobody's fooled into thinking OS X lacks features merely because Emacs doesn't support them. > > * Blend-and-blur of background color on OS X 10.10 and later > > via face's stipple attribute: e.g., (set-face-stipple > > 'fringe "alpha:50%"). > > Likewise for this, I think. > > Above all, we need to avoid falling into thinking with the wrong values. > Our freedom is more important than any number of features like these. Do you even care that your strategy hasn't been working? [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 819 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-01-01 6:54 ` Daniel Colascione @ 2016-01-01 7:36 ` Jean-Christophe Helary 2016-01-01 7:47 ` Daniel Colascione 0 siblings, 1 reply; 320+ messages in thread From: Jean-Christophe Helary @ 2016-01-01 7:36 UTC (permalink / raw) To: emacs-devel > On Jan 1, 2016, at 15:54, Daniel Colascione <dancol@dancol.org> wrote: > > I probably shouldn't point this out, but Emacs on OS X already supports > invoking AppleScript. There's no GNU/Linux equivalent. Quelle horreur! That's an external mode for users to install. > Do you even care that your strategy hasn't been working? Emacs has been around longer than a huge amount of software and is bound to stay for a long time and outlive most of the editors that exist today. So it's hard to demonstrate that the "strategy" is not working. In fact, as was pointed earlier in this thread, a huge lot of Emacs users use it within OSX and *not* for it's ability to display emojis... Jean-Christophe Helary ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-01-01 7:36 ` Jean-Christophe Helary @ 2016-01-01 7:47 ` Daniel Colascione 2016-01-01 17:01 ` Ingo Lohmar 0 siblings, 1 reply; 320+ messages in thread From: Daniel Colascione @ 2016-01-01 7:47 UTC (permalink / raw) To: Jean-Christophe Helary, emacs-devel [-- Attachment #1: Type: text/plain, Size: 896 bytes --] On 12/31/2015 11:36 PM, Jean-Christophe Helary wrote: > >> On Jan 1, 2016, at 15:54, Daniel Colascione <dancol@dancol.org> wrote: >> >> I probably shouldn't point this out, but Emacs on OS X already supports >> invoking AppleScript. There's no GNU/Linux equivalent. Quelle horreur! > > That's an external mode for users to install. No it isn't. Grep for ns-do-applescript. >> Do you even care that your strategy hasn't been working? > > Emacs has been around longer than a huge amount of software and is bound to stay for a long time and outlive most of the editors that exist today. So it's hard to demonstrate that the "strategy" is not working. In fact, as was pointed earlier in this thread, a huge lot of Emacs users use it within OSX and *not* for it's ability to display emojis... Let's talk about how keeping features out of GCC led to the total defeat of Clang. [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 819 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-01-01 7:47 ` Daniel Colascione @ 2016-01-01 17:01 ` Ingo Lohmar 2016-01-01 19:35 ` Bozhidar Batsov 0 siblings, 1 reply; 320+ messages in thread From: Ingo Lohmar @ 2016-01-01 17:01 UTC (permalink / raw) To: Daniel Colascione, Jean-Christophe Helary, emacs-devel On Thu, Dec 31 2015 23:47 (-0800), Daniel Colascione wrote: > On 12/31/2015 11:36 PM, Jean-Christophe Helary wrote: >> >>> On Jan 1, 2016, at 15:54, Daniel Colascione <dancol@dancol.org> wrote: >>> >>> I probably shouldn't point this out, but Emacs on OS X already supports >>> invoking AppleScript. There's no GNU/Linux equivalent. Quelle horreur! >> >> That's an external mode for users to install. > > No it isn't. Grep for ns-do-applescript. > To my knowledge, calling external AppleScript does not make anything possible or easy that is not easy to do using other means (external scripts) on GNU/Linux. >>> Do you even care that your strategy hasn't been working? >> >> Emacs has been around longer than a huge amount of software and is bound to stay for a long time and outlive most of the editors that exist today. So it's hard to demonstrate that the "strategy" is not working. In fact, as was pointed earlier in this thread, a huge lot of Emacs users use it within OSX and *not* for it's ability to display emojis... > > Let's talk about how keeping features out of GCC led to the total defeat > of Clang. Firstly, you are switching the example from Emacs to GCC simply because it suits your argument. What "works" in one instance might not work in another one, of course. More importantly, you imply that the "total defeat of Clang" is the goal of the GNU project and GCC in particular (presumably, something along those lines is what you mean when you say a strategy "works" or does not "work"). I do not speak for the project or for anybody else, but if you read up on just the few most fundamental essays on/of the free software movement, it should become very clear that this is completely besides the point (and would be more closely in line with the "open source" point of view). ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-01-01 17:01 ` Ingo Lohmar @ 2016-01-01 19:35 ` Bozhidar Batsov 2016-01-02 7:54 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: Bozhidar Batsov @ 2016-01-01 19:35 UTC (permalink / raw) To: Ingo Lohmar; +Cc: Daniel Colascione, emacs-devel, Jean-Christophe Helary [-- Attachment #1: Type: text/plain, Size: 2199 bytes --] I feel this discussion went in the wrong direction. Let's just focus on how much of the Emacs Mac port can we merge into GNU Emacs. It's clear at this point we can't get all the functionality in, but I'd still take every improvement that I can. On 1 January 2016 at 17:01, Ingo Lohmar <i.lohmar@gmail.com> wrote: > On Thu, Dec 31 2015 23:47 (-0800), Daniel Colascione wrote: > > > On 12/31/2015 11:36 PM, Jean-Christophe Helary wrote: > >> > >>> On Jan 1, 2016, at 15:54, Daniel Colascione <dancol@dancol.org> wrote: > >>> > >>> I probably shouldn't point this out, but Emacs on OS X already supports > >>> invoking AppleScript. There's no GNU/Linux equivalent. Quelle horreur! > >> > >> That's an external mode for users to install. > > > > No it isn't. Grep for ns-do-applescript. > > > > To my knowledge, calling external AppleScript does not make anything > possible or easy that is not easy to do using other means (external > scripts) on GNU/Linux. > > >>> Do you even care that your strategy hasn't been working? > >> > >> Emacs has been around longer than a huge amount of software and is > bound to stay for a long time and outlive most of the editors that exist > today. So it's hard to demonstrate that the "strategy" is not working. In > fact, as was pointed earlier in this thread, a huge lot of Emacs users use > it within OSX and *not* for it's ability to display emojis... > > > > Let's talk about how keeping features out of GCC led to the total defeat > > of Clang. > > Firstly, you are switching the example from Emacs to GCC simply because > it suits your argument. What "works" in one instance might not work in > another one, of course. > > More importantly, you imply that the "total defeat of Clang" is the goal > of the GNU project and GCC in particular (presumably, something along > those lines is what you mean when you say a strategy "works" or does not > "work"). I do not speak for the project or for anybody else, but if you > read up on just the few most fundamental essays on/of the free software > movement, it should become very clear that this is completely besides > the point (and would be more closely in line with the "open source" > point of view). > > [-- Attachment #2: Type: text/html, Size: 2899 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-01-01 19:35 ` Bozhidar Batsov @ 2016-01-02 7:54 ` YAMAMOTO Mitsuharu 2016-01-02 22:21 ` John Wiegley 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2016-01-02 7:54 UTC (permalink / raw) To: emacs-devel >>>>> On Fri, 1 Jan 2016 19:35:17 +0000, Bozhidar Batsov <bozhidar@batsov.com> said: > I feel this discussion went in the wrong direction. Let's just focus > on how much of the Emacs Mac port can we merge into GNU Emacs. It's > clear at this point we can't get all the functionality in, but I'd > still take every improvement that I can. I'd rather like to avoid having/maintaining multiple versions of the Mac port, because that doesn't look better than the present situation. Currently I feel inclined to keep it separated from the standard distribution. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-01-02 7:54 ` YAMAMOTO Mitsuharu @ 2016-01-02 22:21 ` John Wiegley 2016-01-03 7:13 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: John Wiegley @ 2016-01-02 22:21 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel >>>>> YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes: > I'd rather like to avoid having/maintaining multiple versions of the Mac > port, because that doesn't look better than the present situation. Currently > I feel inclined to keep it separated from the standard distribution. Unless I misunderstand, right now you are maintaining a patch. If we merge most of your work (though apparently not all), doesn't this just meant that the size of the patch you maintain becomes much smaller? I'd think that no matter what, this is a win for any fork maintainer. -- John Wiegley GPG fingerprint = 4710 CF98 AF9B 327B B80F http://newartisans.com 60E1 46C4 BD1A 7AC1 4BA2 ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-01-02 22:21 ` John Wiegley @ 2016-01-03 7:13 ` YAMAMOTO Mitsuharu 2016-01-03 12:36 ` Bozhidar Batsov 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2016-01-03 7:13 UTC (permalink / raw) To: emacs-devel >>>>> On Sat, 02 Jan 2016 14:21:00 -0800, John Wiegley <jwiegley@gmail.com> said: >> I'd rather like to avoid having/maintaining multiple versions of >> the Mac port, because that doesn't look better than the present >> situation. Currently I feel inclined to keep it separated from the >> standard distribution. > Unless I misunderstand, right now you are maintaining a patch. If we > merge most of your work (though apparently not all), doesn't this > just meant that the size of the patch you maintain becomes much > smaller? I'd think that no matter what, this is a win for any fork > maintainer. The size of the patch is not an issue; actually, the Mac specific files are currently distributed as raw files rather than in the patch form. Also, most of the port-independent part has already been committed to the emacs-25 branch. Maintaining a single version is much simpler especially when it comes to processing bug reports, reproducing them, and trying fix candidates. If there were no alternative for Mac-native GUI ports, or there is a consensus that it is not good enough, then it would be meaningful to have an FSF-policy compliant version as well as a full-feature version despite the maintenance burden. But that is not the case. I don't think it is a good idea to have a restricted version of the Mac port whereas the developer is not willing to provide it and most of the current Mac port users would skip it preferring the full-feature version. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-01-03 7:13 ` YAMAMOTO Mitsuharu @ 2016-01-03 12:36 ` Bozhidar Batsov 2016-01-04 0:38 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: Bozhidar Batsov @ 2016-01-03 12:36 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel [-- Attachment #1: Type: text/plain, Size: 2050 bytes --] On 3 January 2016 at 07:13, YAMAMOTO Mitsuharu < mituharu@math.s.chiba-u.ac.jp> wrote: > >>>>> On Sat, 02 Jan 2016 14:21:00 -0800, John Wiegley <jwiegley@gmail.com> > said: > >> I'd rather like to avoid having/maintaining multiple versions of > >> the Mac port, because that doesn't look better than the present > >> situation. Currently I feel inclined to keep it separated from the > >> standard distribution. > > > Unless I misunderstand, right now you are maintaining a patch. If we > > merge most of your work (though apparently not all), doesn't this > > just meant that the size of the patch you maintain becomes much > > smaller? I'd think that no matter what, this is a win for any fork > > maintainer. > > The size of the patch is not an issue; actually, the Mac specific > files are currently distributed as raw files rather than in the patch > form. Also, most of the port-independent part has already been > committed to the emacs-25 branch. > What exactly has been committed to the emacs-25 branch? I recall no major improvements to the cocoa port in Emacs 25. > > Maintaining a single version is much simpler especially when it comes > to processing bug reports, reproducing them, and trying fix > candidates. > I'm not sure what would change if some of the functionality was moved to GNU Emacs. You still use it, as the basis for the Mac port and you always support just the latest version. > > If there were no alternative for Mac-native GUI ports, or there is a > consensus that it is not good enough, then it would be meaningful to > have an FSF-policy compliant version as well as a full-feature version > despite the maintenance burden. But that is not the case. > > I don't think it is a good idea to have a restricted version of the > Mac port whereas the developer is not willing to provide it and most > of the current Mac port users would skip it preferring the > full-feature version. > > YAMAMOTO Mitsuharu > mituharu@math.s.chiba-u.ac.jp > > [-- Attachment #2: Type: text/html, Size: 3057 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-01-03 12:36 ` Bozhidar Batsov @ 2016-01-04 0:38 ` YAMAMOTO Mitsuharu 2016-01-04 0:42 ` John Wiegley 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2016-01-04 0:38 UTC (permalink / raw) To: Bozhidar Batsov; +Cc: emacs-devel >>>>> On Sun, 3 Jan 2016 12:36:40 +0000, Bozhidar Batsov <bozhidar@batsov.com> said: >> The size of the patch is not an issue; actually, the Mac specific >> files are currently distributed as raw files rather than in the >> patch form. Also, most of the port-independent part has already >> been committed to the emacs-25 branch. > What exactly has been committed to the emacs-25 branch? I recall no major > improvements to the cocoa port in Emacs 25. * 30f4a89..: YAMAMOTO Mitsuharu 2015-12-31 Move variables to inner loop, preparing for Mac port merge * 6ee327d..: YAMAMOTO Mitsuharu 2015-12-31 Add handle_user_signal_hook * 47580e0..: YAMAMOTO Mitsuharu 2015-12-31 Avoid writing to purespace * 0588be7..: YAMAMOTO Mitsuharu 2015-12-31 Remove unused variable * 89e7483..: YAMAMOTO Mitsuharu 2015-12-31 * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin. * 3b95e9c..: YAMAMOTO Mitsuharu 2015-12-31 Use posix_openpt instead of openpty on Darwin These changes have been in the Mac port for a long time. You wouldn't notice anything unless you try to build Emacs without the Command Line Developer Tools. If you noticed any visible differences, then that means I have injected a bug. >> Maintaining a single version is much simpler especially when it >> comes to processing bug reports, reproducing them, and trying fix >> candidates. > I'm not sure what would change if some of the functionality was > moved to GNU Emacs. You still use it, as the basis for the Mac port > and you always support just the latest version. Do I need to elaborate this? When I receive a bug report, I try to reproduce the bug on my side. If I have two variants of the Mac port, restricted and fully-featured, then I have to try it for both of the variants. As is often the case, a typical bug report lacks clear description of versions, configurations, and concrete steps to reproduce, so it involves trial-and-error even for a single variant. Also, I have to make sure that a fix candidate doesn't break either of the variants. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-01-04 0:38 ` YAMAMOTO Mitsuharu @ 2016-01-04 0:42 ` John Wiegley 2016-01-05 1:00 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: John Wiegley @ 2016-01-04 0:42 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: Bozhidar Batsov, emacs-devel [-- Attachment #1: Type: text/plain, Size: 955 bytes --] >>>>> YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes: > Do I need to elaborate this? When I receive a bug report, I try to reproduce > the bug on my side. If I have two variants of the Mac port, restricted and > fully-featured, then I have to try it for both of the variants. You really only have to try it in your variant. Any of us on Mac will be trying to reproduce it in the restricted variant. If I believe it might be fixed in the fully-featured version, I'll try it there before notifying you about the bug. By moving your code into core, it should actually reduce your workload. There will be more eyes on your bugs, others verifying reproduction steps, more people to participate in the conversation, use of our bug tracker, etc. Come, Yamamoto-san, join us!! -- John Wiegley GPG fingerprint = 4710 CF98 AF9B 327B B80F http://newartisans.com 60E1 46C4 BD1A 7AC1 4BA2 [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 629 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-01-04 0:42 ` John Wiegley @ 2016-01-05 1:00 ` YAMAMOTO Mitsuharu 2016-01-05 2:00 ` Chad Brown 2016-01-05 12:37 ` João Távora 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2016-01-05 1:00 UTC (permalink / raw) To: Bozhidar Batsov, emacs-devel >>>>> On Sun, 03 Jan 2016 16:42:23 -0800, John Wiegley <jwiegley@gmail.com> said: >> Do I need to elaborate this? When I receive a bug report, I try to >> reproduce the bug on my side. If I have two variants of the Mac >> port, restricted and fully-featured, then I have to try it for both >> of the variants. > You really only have to try it in your variant. Any of us on Mac > will be trying to reproduce it in the restricted variant. If I > believe it might be fixed in the fully-featured version, I'll try it > there before notifying you about the bug. > By moving your code into core, it should actually reduce your > workload. There will be more eyes on your bugs, others verifying > reproduction steps, more people to participate in the conversation, > use of our bug tracker, etc. > Come, Yamamoto-san, join us!! I've been subscribing to the bug-gnu-emacs list, and occasionally try to reproduce the reported NS port bugs on the Mac port, in case they are common to OS X or Cocoa (e.g., bug#21573). In a sense, I've already been joining. I really appreciate your encouragement, but I'm skeptical about reduction of my workload by others' cooperation from my experience with the Carbon port in Emacs 22 and the situation involving the NS port especially with respect to GNUstep. Also, frankly, I feel uncomfortable with aligning the current default modifier key setting of the Mac port (Command -> Meta, Option -> "compose") to that of the NS port (Command -> Super (emulating Mac shortcut), Option -> Meta), which I don't think is a good default especially for those who are using a keyboard that cannot enter all of the ASCII characters without the option key. I'd like to hear what others think. Do you want to have a restricted version of the Mac port in the mainline? Will you use it in preference to the full-feature version distributed separately (e.g., via another git repository)? YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-01-05 1:00 ` YAMAMOTO Mitsuharu @ 2016-01-05 2:00 ` Chad Brown 2016-01-05 4:53 ` John Wiegley 2016-01-05 10:50 ` Martin Yrjölä 2016-01-05 12:37 ` João Távora 1 sibling, 2 replies; 320+ messages in thread From: Chad Brown @ 2016-01-05 2:00 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel > On 04 Jan 2016, at 17:00, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> wrote: > > I'd like to hear what others think. Do you want to have a restricted > version of the Mac port in the mainline? Will you use it in > preference to the full-feature version distributed separately (e.g., > via another git repository)? Speaking for myself: I do not use any form of the Mac port, but instead use the NS port (under Mac OSX), because I want to track the mainline (or the release candidate when such exists). From what I’ve seen, there are things in the Mac port that I would like to have (e.g. with regards to select), but I forgo in order to help (minimally) emacs development. Thanks, ~Chad ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-01-05 2:00 ` Chad Brown @ 2016-01-05 4:53 ` John Wiegley 2016-01-06 10:14 ` Alan Schmitt 2016-01-05 10:50 ` Martin Yrjölä 1 sibling, 1 reply; 320+ messages in thread From: John Wiegley @ 2016-01-05 4:53 UTC (permalink / raw) To: Chad Brown; +Cc: YAMAMOTO Mitsuharu, emacs-devel >>>>> Chad Brown <yandros@gmail.com> writes: > Speaking for myself: I do not use any form of the Mac port, but instead use > the NS port (under Mac OSX), because I want to track the mainline (or the > release candidate when such exists). From what I’ve seen, there are things > in the Mac port that I would like to have (e.g. with regards to select), but > I forgo in order to help (minimally) emacs development. Thanks, Chad, this highlights a reason beyond the personal why I'd like Mac Port in the main-line: I recommend it every Mac user I know, but many are not willing to go through the extra effort of patching their sources to build it. Instead, they download binaries from emacsformacosx.com, and never get to experience how nice Emacs can be on OS X. -- John Wiegley GPG fingerprint = 4710 CF98 AF9B 327B B80F http://newartisans.com 60E1 46C4 BD1A 7AC1 4BA2 ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-01-05 4:53 ` John Wiegley @ 2016-01-06 10:14 ` Alan Schmitt 0 siblings, 0 replies; 320+ messages in thread From: Alan Schmitt @ 2016-01-06 10:14 UTC (permalink / raw) To: emacs-devel [-- Attachment #1: Type: text/plain, Size: 1097 bytes --] On 2016-01-04 20:53, John Wiegley <jwiegley@gmail.com> writes: >>>>>> Chad Brown <yandros@gmail.com> writes: > >> Speaking for myself: I do not use any form of the Mac port, but instead use >> the NS port (under Mac OSX), because I want to track the mainline (or the >> release candidate when such exists). From what I’ve seen, there are things >> in the Mac port that I would like to have (e.g. with regards to select), but >> I forgo in order to help (minimally) emacs development. > > Thanks, Chad, this highlights a reason beyond the personal why I'd like Mac > Port in the main-line: I recommend it every Mac user I know, but many are not > willing to go through the extra effort of patching their sources to build it. > Instead, they download binaries from emacsformacosx.com, and never get to > experience how nice Emacs can be on OS X. Building it with homebrew is fairly simple: https://github.com/railwaycat/homebrew-emacsmacport Best, Alan -- OpenPGP Key ID : 040D0A3B4ED2E5C7 Athmospheric CO₂ (Updated December 28, 2015, Mauna Loa Obs.): 402.60 ppm [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 472 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-01-05 2:00 ` Chad Brown 2016-01-05 4:53 ` John Wiegley @ 2016-01-05 10:50 ` Martin Yrjölä 1 sibling, 0 replies; 320+ messages in thread From: Martin Yrjölä @ 2016-01-05 10:50 UTC (permalink / raw) To: Chad Brown, YAMAMOTO Mitsuharu; +Cc: emacs-devel Hi Chad and Yamamoto. Chad Brown <yandros@gmail.com> writes: >> On 04 Jan 2016, at 17:00, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> wrote: >> >> I'd like to hear what others think. Do you want to have a restricted >> version of the Mac port in the mainline? Will you use it in >> preference to the full-feature version distributed separately (e.g., >> via another git repository)? > > Speaking for myself: I do not use any form of the Mac port, but > instead use the NS port (under Mac OSX), because I want to track > the mainline (or the release candidate when such exists). From > what I’ve seen, there are things in the Mac port that I would > like to have (e.g. with regards to select), but I forgo in order > to help (minimally) emacs development. > > Thanks, > ~Chad I'm in the same boat. I want to track the mainline and maybe get into Emacs development, but I'm missing many of the Mac port's excellent features, especially the improved integration with OS X. Even having a restricted version merged to mainline would make me happier. However, I hope that everything could be merged some time in the future, when we figure out a way to support the same features on Linux. I'm wondering what this merge would mean to the NS port? Is the NS port made obsolete by the Mac port? I think it would be less effort to maintain a single port for OS X. Best regards, Martin Yrjölä ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-01-05 1:00 ` YAMAMOTO Mitsuharu 2016-01-05 2:00 ` Chad Brown @ 2016-01-05 12:37 ` João Távora 2016-01-05 13:48 ` Paul Michael Reilly 1 sibling, 1 reply; 320+ messages in thread From: João Távora @ 2016-01-05 12:37 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: Bozhidar Batsov, emacs-devel On Tue, Jan 5, 2016 at 1:00 AM, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> wrote: > I'd like to hear what others think. Do you want to have a restricted > version of the Mac port in the mainline? Will you use it in > preference to the full-feature version distributed separately (e.g., > via another git repository)? Yes! Mostly due to the fact that, while the mac port's features are super-nice, I want to develop in emacs's trunk, and so I almost always decide to use the normal nextstep build. I miss a lot of the mac port's features there... But I don't use it anymore. To be honest, I haven't looked if there's a way to "git merge" the tip of the mac port with the tip of trunk for to do development while having nice mac-port features for doing that development. João ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-01-05 12:37 ` João Távora @ 2016-01-05 13:48 ` Paul Michael Reilly 0 siblings, 0 replies; 320+ messages in thread From: Paul Michael Reilly @ 2016-01-05 13:48 UTC (permalink / raw) To: João Távora, YAMAMOTO Mitsuharu; +Cc: Bozhidar Batsov, emacs-devel [-- Attachment #1: Type: text/plain, Size: 1691 bytes --] I'll add my voice to the emerging crescendo, I want to build and run the mac port out of the mainline sources but I do not want to deal with patch files. I crave smooth scrolling and to learn what other gems are in the mac ports version. I also echo the sentiment that I hate, hate, hate the notion of mucking up the command and option keys. I want someone walking up to my keyboard to get pretty close to normal key behavior from the command key if it happens that I am in Emacs at the time, which is pretty much always the case. Please Yamamoto-san, join the fray and help solve your issues for both yourself and those of us who so admire and respect your work, but just don't have the bandwidth to live in multiple Emacs worlds. On Tue, Jan 5, 2016 at 7:38 AM João Távora <joaotavora@gmail.com> wrote: > On Tue, Jan 5, 2016 at 1:00 AM, YAMAMOTO Mitsuharu > <mituharu@math.s.chiba-u.ac.jp> wrote: > > I'd like to hear what others think. Do you want to have a restricted > > version of the Mac port in the mainline? Will you use it in > > preference to the full-feature version distributed separately (e.g., > > via another git repository)? > > Yes! > > Mostly due to the fact that, while the mac port's features are super-nice, > I want to develop in emacs's trunk, and so I almost always decide to > use the normal nextstep build. > > I miss a lot of the mac port's features there... But I don't use it > anymore. > > To be honest, I haven't looked if there's a way to "git merge" the tip of > the mac port with the tip of trunk for to do development while having nice > mac-port features for doing that development. > > João > > -- -pmr [-- Attachment #2: Type: text/html, Size: 2143 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-31 6:30 ` Richard Stallman 2015-12-31 19:50 ` Chad Brown 2016-01-01 6:54 ` Daniel Colascione @ 2016-01-03 22:49 ` John Wiegley 2 siblings, 0 replies; 320+ messages in thread From: John Wiegley @ 2016-01-03 22:49 UTC (permalink / raw) To: Richard Stallman; +Cc: emacs-devel [-- Attachment #1: Type: text/plain, Size: 662 bytes --] >>>>> Richard Stallman <rms@gnu.org> writes: > Above all, we need to avoid falling into thinking with the wrong values. Our > freedom is more important than any number of features like these. I don't even care about the features, it's losing the contributor because we aren't willing to include their work that hurts the most in this case. Yes he still maintains his fork, but I'd have loved to bring him more closely into the fold. The platform he's supporting may not be free, but his work is. -- John Wiegley GPG fingerprint = 4710 CF98 AF9B 327B B80F http://newartisans.com 60E1 46C4 BD1A 7AC1 4BA2 [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 629 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 6:51 ` Richard Stallman 2015-12-29 13:24 ` Rasmus @ 2015-12-29 17:14 ` John Wiegley 2015-12-29 17:50 ` Clément Pit--Claudel 2015-12-30 6:11 ` Richard Stallman 2015-12-29 18:00 ` Clément Pit--Claudel 2 siblings, 2 replies; 320+ messages in thread From: John Wiegley @ 2015-12-29 17:14 UTC (permalink / raw) To: Richard Stallman; +Cc: mituharu, deng, emacs-devel [-- Attachment #1: Type: text/plain, Size: 2182 bytes --] >>>>> Richard Stallman <rms@gnu.org> writes: > Could someone explain to me, first, what these features do? * Pixel-based mouse wheel smooth scroll for newer mice/trackpads. You can scroll by pixels rather than by lines, is my understanding. * When the clipboard has both textual and image data, yank inserts the former and push both into the kill ring so the latter can be inserted with yank-pop afterwards. This should be self-explanatory. I think we could probably do this on GNU/Linux also. * The function `mac-start-animation' provides several animation effects via Core Animation. You can see the default animations with buffer switching by horizontal swiping/flicking (horizontal movement), exiting from the splash screen by typing "q" (fade out), and the "About Emacs" (ripple effect) and "Preferences..." menu items (swipe effect) in the application menu in the menu bar. Core Animation is a Mac OS X facility for performing certain animations using hardware accelerated rendering, and is the basis for the way the UI "feels". This makes some of these animations available to Emacs, such as when buffer switching by swiping on the trackpad. I would consider a feature like this completely optional. * Emoji display, with support of variation sequences (text-style vs. emoji-style) and modifiers (skin tones) if the font supports them. Emojis (like graphical smileys) can support more styling. Not sure if the typography library on GNU/Linux makes this information available yet or not. * Blend-and-blur of background color on OS X 10.10 and later via face's stipple attribute: e.g., (set-face-stipple 'fringe "alpha:50%"). When enabling transparency, allows another algorithm for blending with the content of the desktop behind Emacs. I don't know if GNU/Linux could support this, as it probably requires support from the window manager? -- John Wiegley GPG fingerprint = 4710 CF98 AF9B 327B B80F http://newartisans.com 60E1 46C4 BD1A 7AC1 4BA2 [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 629 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 17:14 ` John Wiegley @ 2015-12-29 17:50 ` Clément Pit--Claudel 2015-12-30 6:11 ` Richard Stallman 1 sibling, 0 replies; 320+ messages in thread From: Clément Pit--Claudel @ 2015-12-29 17:50 UTC (permalink / raw) To: emacs-devel [-- Attachment #1: Type: text/plain, Size: 1502 bytes --] On 12/29/2015 06:14 PM, John Wiegley wrote: >>>>>> Richard Stallman <rms@gnu.org> writes: >> Could someone explain to me, first, what these features do? > > * Emoji display, with support of variation sequences (text-style vs. > emoji-style) and modifiers (skin tones) if the font supports them. > > Emojis (like graphical smileys) can support more styling. That's not exactly it: it means support for a different set of fonts, whose glyphs are multi-color pictures instead of monochrome shapes. I asked about this feature two weeks ago, and got many replies (most of them lukewarm). I think Richard and you also replied: > On 12/17/2015 06:25 PM, John Wiegley wrote: >>>>>>> Richard Stallman <rms@gnu.org> writes: >>> I suggest that we give low priority to this feature. If someone wants to >>> implement it and does a good job, we can accept it, but otherwise we don't >>> care. >> >> Agreed. > Not sure if the typography library on GNU/Linux makes this > information available yet or not. Freetype has supported it since 2012. Emacs' has a direct interface to Freetype, but it seems to essentially be dead code. libXft doesn't expose Freetype's support for this feature, and I didn't get a reply from the devs on their mailing list about this. Cairo doesn't expose Freetype's support either, though Mozilla implemented support for it in their own branch. All in all it seems that it will be some time before GNU/Linux users get access to this feature. [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 17:14 ` John Wiegley 2015-12-29 17:50 ` Clément Pit--Claudel @ 2015-12-30 6:11 ` Richard Stallman 2015-12-30 19:57 ` John Wiegley 1 sibling, 1 reply; 320+ messages in thread From: Richard Stallman @ 2015-12-30 6:11 UTC (permalink / raw) To: John Wiegley; +Cc: mituharu, deng, emacs-devel [[[ To any NSA and FBI agents reading my email: please consider ]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] > * Blend-and-blur of background color on OS X 10.10 and later > via face's stipple attribute: e.g., (set-face-stipple > 'fringe "alpha:50%"). > When enabling transparency, allows another algorithm for blending with the > content of the desktop behind Emacs. I don't know if GNU/Linux could support > this, as it probably requires support from the window manager? I don't think the window manager has anything to do with it, but it requires support from the X server and library, or whatever is used now instead of that. We can install the MacOS support for this if and when we also support it on GNU/Linux. -- Dr Richard Stallman President, Free Software Foundation (gnu.org, fsf.org) Internet Hall-of-Famer (internethalloffame.org) Skype: No way! See stallman.org/skype.html. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-30 6:11 ` Richard Stallman @ 2015-12-30 19:57 ` John Wiegley 2015-12-30 20:54 ` Chad Brown ` (2 more replies) 0 siblings, 3 replies; 320+ messages in thread From: John Wiegley @ 2015-12-30 19:57 UTC (permalink / raw) To: Richard Stallman; +Cc: mituharu, deng, emacs-devel [-- Attachment #1: Type: text/plain, Size: 1084 bytes --] >>>>> Richard Stallman <rms@gnu.org> writes: >> * Blend-and-blur of background color on OS X 10.10 and later >> via face's stipple attribute: e.g., (set-face-stipple >> 'fringe "alpha:50%"). > We can install the MacOS support for this if and when we also support it on > GNU/Linux. Very well. Yamamoto-san, I imagine this will mean you still have to maintain a separate patch for Mac Port, but now covering only those features that the FSF does not yet accept into GNU Emacs. All the rest of your work can be merged in when you are ready. This should leave you with a much smaller patch to manage separately. I would like to see this work applied to the emacs-25 branch, as I have been using it daily for years and can vouch for its readiness. We also need a new section in the NEWS to describe what it offers as a build flavor for Mac users, and a section in the INSTALL file describing how to select it. -- John Wiegley GPG fingerprint = 4710 CF98 AF9B 327B B80F http://newartisans.com 60E1 46C4 BD1A 7AC1 4BA2 [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 629 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-30 19:57 ` John Wiegley @ 2015-12-30 20:54 ` Chad Brown 2015-12-31 0:41 ` YAMAMOTO Mitsuharu 2015-12-31 8:28 ` Adrian.B.Robert 2 siblings, 0 replies; 320+ messages in thread From: Chad Brown @ 2015-12-30 20:54 UTC (permalink / raw) To: emacs-devel; +Cc: mituharu > On 30 Dec 2015, at 11:57, John Wiegley <jwiegley@gmail.com> wrote: > > Very well. Yamamoto-san, I imagine this will mean you still have to maintain a > separate patch for Mac Port, but now covering only those features that the FSF > does not yet accept into GNU Emacs. All the rest of your work can be merged in > when you are ready. This should leave you with a much smaller patch to manage > separately. > > I would like to see this work applied to the emacs-25 branch, as I have been > using it daily for years and can vouch for its readiness. We also need a new > section in the NEWS to describe what it offers as a build flavor for Mac > users, and a section in the INSTALL file describing how to select it. Personally, I would like to see the Mac Port gain support for the NS port’s relocatable application bundle (that is, everything Emacs uses is inside Emacs.app, and /usr/local is not touched). This makes keeping multiple versions of emacs on the same machine much nicer. This support already works for NS and GNUStep, so it shouldn’t be too hard to add to the Mac Port. Other platforms don’t use the “.app” functionality, so it shouldn’t impact them, except to make the functionality more portable if someone wants to try to adapt it there. I had meant to do this myself, and will get to it eventually, but my hacking time is almost non-existant at this point, unfortunately. Thank you, ~Chad ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-30 19:57 ` John Wiegley 2015-12-30 20:54 ` Chad Brown @ 2015-12-31 0:41 ` YAMAMOTO Mitsuharu 2015-12-31 1:06 ` Paul Eggert 2015-12-31 8:28 ` Adrian.B.Robert 2 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2015-12-31 0:41 UTC (permalink / raw) To: Richard Stallman, deng, emacs-devel >>>>> On Wed, 30 Dec 2015 11:57:43 -0800, John Wiegley <jwiegley@gmail.com> said: >>> * Blend-and-blur of background color on OS X 10.10 and later via >>> face's stipple attribute: e.g., (set-face-stipple 'fringe >>> "alpha:50%"). >> We can install the MacOS support for this if and when we also >> support it on GNU/Linux. > Very well. Yamamoto-san, I imagine this will mean you still have to > maintain a separate patch for Mac Port, but now covering only those > features that the FSF does not yet accept into GNU Emacs. All the > rest of your work can be merged in when you are ready. This should > leave you with a much smaller patch to manage separately. The above feature is the least important one among what I gave in the previous mail. Probably I'll just disable it and I won't provide a separate patch. I'll start with committing a few changes that are currently included in the Mac port but actually not specific to it. What should I do for the copyright lines at the beginning of the port-specific files? Currently, the first lines in src/mac.c look like: /* Unix emulation routines for GNU Emacs on the Mac OS. Copyright (C) 2000-2008 Free Software Foundation, Inc. Copyright (C) 2009-2015 YAMAMOTO Mitsuharu because this file is derived from the corresponding one in Emacs 22 where the Carbon port (the precedessor of the Mac port) was a part of the standard distribution. The copyright lines in a file that are not derived from the Carbon port look like /* Definitions and headers for AppKit framework on the Mac OS. Copyright (C) 2008-2015 YAMAMOTO Mitsuharu YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-31 0:41 ` YAMAMOTO Mitsuharu @ 2015-12-31 1:06 ` Paul Eggert 0 siblings, 0 replies; 320+ messages in thread From: Paul Eggert @ 2015-12-31 1:06 UTC (permalink / raw) To: YAMAMOTO Mitsuharu, emacs-devel YAMAMOTO Mitsuharu wrote: > Copyright (C) 2000-2008 Free Software Foundation, Inc. > Copyright (C) 2009-2015 YAMAMOTO Mitsuharu You've assigned copyright to the FSF, right? So, change this to: Copyright (C) 2000-2015 Free Software Foundation, Inc. > Copyright (C) 2008-2015 YAMAMOTO Mitsuharu and change this to: Copyright (C) 2008-2015 Free Software Foundation, Inc. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-30 19:57 ` John Wiegley 2015-12-30 20:54 ` Chad Brown 2015-12-31 0:41 ` YAMAMOTO Mitsuharu @ 2015-12-31 8:28 ` Adrian.B.Robert 2 siblings, 0 replies; 320+ messages in thread From: Adrian.B.Robert @ 2015-12-31 8:28 UTC (permalink / raw) To: emacs-devel John Wiegley <jwiegley@gmail.com> writes: > ... > I would like to see this work applied to the emacs-25 branch, as I have been > using it daily for years and can vouch for its readiness. We also need a new > section in the NEWS to describe what it offers as a build flavor for Mac > users, and a section in the INSTALL file describing how to select it. What is the status of multi-TTY support in the Mac Port? From this post it looks like it is not there yet? https://www.reddit.com/r/emacs/comments/3vvrln/emacsmacport_and_the_daemon_problem/ If not, I suppose it will be worth mentioning this, and perhaps the workarounds given in Reddit, in the INSTALL or NEWS. Also, it may be worth to mention major user-visible differences from the main NS version. Not necessarily the bells and whistles, but functional items such as the Meta/Super mapping mentioned in another thread (if it remains a difference). ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 6:51 ` Richard Stallman 2015-12-29 13:24 ` Rasmus 2015-12-29 17:14 ` John Wiegley @ 2015-12-29 18:00 ` Clément Pit--Claudel 2015-12-29 18:09 ` Dmitry Gutov 2 siblings, 1 reply; 320+ messages in thread From: Clément Pit--Claudel @ 2015-12-29 18:00 UTC (permalink / raw) To: emacs-devel [-- Attachment #1: Type: text/plain, Size: 1331 bytes --] On 12/29/2015 07:51 AM, Richard Stallman wrote: > [[[ To any NSA and FBI agents reading my email: please consider ]]] > [[[ whether defending the US Constitution against all enemies, ]]] > [[[ foreign or domestic, requires you to follow Snowden's example. ]]] > > > It was my understanding that it is fine to have features that a volunteer is > > willing to do the work for, just not to promote features that would make a > > non-GNU platform more attractive (such as, by devoting any other resources to > > their development, or giving them special status in any way). > > That is basically right. More precisely, we don't want GNU Emacs to give > people any practical reason to prefer some other system to GNU. Yet this is precisely what we do, unwillingly: GNU Emacs lack of features on GNU Linux (compared to forks available on other systems) gives people practical reasons to use a non-GNU Emacs, on a non-free platform (that's where Emacs (but not GNU Emacs) works best). Thus not accepting these MacOS-specific features in GNU Emacs only encourages people to prefer a non-GNU fork of Emacs; it doesn't do anything to prevent them from switching to a non-free platform. In conclusion, instead of using GNU Emacs on a non-free platform, people use a non-GNU Emacs on a non-free platform. [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 18:00 ` Clément Pit--Claudel @ 2015-12-29 18:09 ` Dmitry Gutov 2015-12-29 18:19 ` David Kastrup 2015-12-29 18:30 ` Clément Pit--Claudel 0 siblings, 2 replies; 320+ messages in thread From: Dmitry Gutov @ 2015-12-29 18:09 UTC (permalink / raw) To: Clément Pit--Claudel, emacs-devel On 12/29/2015 08:00 PM, Clément Pit--Claudel wrote: > Yet this is precisely what we do, unwillingly: GNU Emacs lack of features on GNU Linux (compared to forks available on other systems) gives people practical reasons to use a non-GNU Emacs, on a non-free platform (that's where Emacs (but not GNU Emacs) works best). > > Thus not accepting these MacOS-specific features in GNU Emacs only encourages people to prefer a non-GNU fork of Emacs; it doesn't do anything to prevent them from switching to a non-free platform. In conclusion, instead of using GNU Emacs on a non-free platform, people use a non-GNU Emacs on a non-free platform. I think we consider people using non-GNU Emacs less of a problem than people using non-free platforms (or, worse, moving to them). Forks of Emacs are still libre software, after all. Since adding feature to GNU Emacs that give more advantage to non-free platforms might encourage the latter, this seems to make a stronger case in favor of adding support for all (?) of the features in question on GNU/Linux than doing anything else, like merging Emacs Mac Port. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 18:09 ` Dmitry Gutov @ 2015-12-29 18:19 ` David Kastrup 2015-12-29 19:07 ` Dmitry Gutov 2015-12-29 18:30 ` Clément Pit--Claudel 1 sibling, 1 reply; 320+ messages in thread From: David Kastrup @ 2015-12-29 18:19 UTC (permalink / raw) To: Dmitry Gutov; +Cc: Clément Pit--Claudel, emacs-devel Dmitry Gutov <dgutov@yandex.ru> writes: > On 12/29/2015 08:00 PM, Clément Pit--Claudel wrote: > >> Yet this is precisely what we do, unwillingly: GNU Emacs lack of >> features on GNU Linux (compared to forks available on other systems) >> gives people practical reasons to use a non-GNU Emacs, on a non-free >> platform (that's where Emacs (but not GNU Emacs) works best). >> >> Thus not accepting these MacOS-specific features in GNU Emacs only >> encourages people to prefer a non-GNU fork of Emacs; it doesn't do >> anything to prevent them from switching to a non-free platform. In >> conclusion, instead of using GNU Emacs on a non-free platform, >> people use a non-GNU Emacs on a non-free platform. > > I think we consider people using non-GNU Emacs less of a problem than > people using non-free platforms (or, worse, moving to them). Forks of > Emacs are still libre software, after all. Not if you have to agree to onerous conditions in order to even compile them. Please take a look at the XCode use conditions. -- David Kastrup ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 18:19 ` David Kastrup @ 2015-12-29 19:07 ` Dmitry Gutov 2015-12-29 21:46 ` Alex Dunn 0 siblings, 1 reply; 320+ messages in thread From: Dmitry Gutov @ 2015-12-29 19:07 UTC (permalink / raw) To: David Kastrup; +Cc: Clément Pit--Claudel, emacs-devel On 12/29/2015 08:19 PM, David Kastrup wrote: > Not if you have to agree to onerous conditions in order to even compile > them. Please take a look at the XCode use conditions. Does Homebrew require XCode to be installed, and those conditions accepted? Either way, though, IIUC most Mac OS users install GNU Emacs the same way (using Homebrew). ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 19:07 ` Dmitry Gutov @ 2015-12-29 21:46 ` Alex Dunn 2015-12-29 22:37 ` John Wiegley 0 siblings, 1 reply; 320+ messages in thread From: Alex Dunn @ 2015-12-29 21:46 UTC (permalink / raw) To: Dmitry Gutov, David Kastrup; +Cc: Clément Pit--Claudel, emacs-devel Dmitry Gutov <dgutov@yandex.ru> writes: > Does Homebrew require XCode to be installed, and those conditions accepted? Clang and related build tools are provided by Xcode and the Xcode Command-Line Tools, so for software that needs to be compiled; yes. But pre-compiled binaries can be installed without. So it might be possible—I haven’t tried—to installed Homebrew’s “bottled” GCC, then use that for software that needs to be compiled from source, all without agreeing to the Xcode terms. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 21:46 ` Alex Dunn @ 2015-12-29 22:37 ` John Wiegley 2015-12-29 22:57 ` David Kastrup 2015-12-30 6:15 ` CHENG Gao 0 siblings, 2 replies; 320+ messages in thread From: John Wiegley @ 2015-12-29 22:37 UTC (permalink / raw) To: Alex Dunn Cc: David Kastrup, emacs-devel, Clément Pit--Claudel, Dmitry Gutov >>>>> Alex Dunn <dunn.alex@gmail.com> writes: > Clang and related build tools are provided by Xcode and the Xcode > Command-Line Tools, so for software that needs to be compiled; yes. But > pre-compiled binaries can be installed without. So it might be possible—I > haven’t tried—to installed Homebrew’s “bottled” GCC, then use that for > software that needs to be compiled from source, all without agreeing to the > Xcode terms. Just as a side note: the Nix build of Emacs on Mac does not require Xcode to be installed. It downloads and builds clang or gcc itself in order to build Emacs. Xcode is no longer necessary on Mac for building free software. -- John Wiegley GPG fingerprint = 4710 CF98 AF9B 327B B80F http://newartisans.com 60E1 46C4 BD1A 7AC1 4BA2 ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 22:37 ` John Wiegley @ 2015-12-29 22:57 ` David Kastrup 2015-12-29 23:23 ` John Wiegley 2015-12-30 6:15 ` CHENG Gao 1 sibling, 1 reply; 320+ messages in thread From: David Kastrup @ 2015-12-29 22:57 UTC (permalink / raw) To: Alex Dunn; +Cc: emacs-devel, Clément Pit--Claudel, Dmitry Gutov John Wiegley <jwiegley@gmail.com> writes: >>>>>> Alex Dunn <dunn.alex@gmail.com> writes: > >> Clang and related build tools are provided by Xcode and the Xcode >> Command-Line Tools, so for software that needs to be compiled; yes. But >> pre-compiled binaries can be installed without. So it might be possible—I >> haven’t tried—to installed Homebrew’s “bottled” GCC, then use that for >> software that needs to be compiled from source, all without agreeing to the >> Xcode terms. > > Just as a side note: the Nix build of Emacs on Mac does not require > Xcode to be installed. It downloads and builds clang or gcc itself in > order to build Emacs. Xcode is no longer necessary on Mac for building > free software. For command line applications, namely the kind of stuff that would also run under Darwin alone. I don't think that popular versions of Emacs would be in that category. -- David Kastrup ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 22:57 ` David Kastrup @ 2015-12-29 23:23 ` John Wiegley 2015-12-30 9:44 ` David Kastrup 0 siblings, 1 reply; 320+ messages in thread From: John Wiegley @ 2015-12-29 23:23 UTC (permalink / raw) To: David Kastrup Cc: Clément Pit--Claudel, Dmitry Gutov, Alex Dunn, emacs-devel >>>>> David Kastrup <dak@gnu.org> writes: > For command line applications, namely the kind of stuff that would also run > under Darwin alone. I don't think that popular versions of Emacs would be in > that category. For any kind of application. I'm using the fully graphical Mac Port version of Emacs as an application, without Xcode. -- John Wiegley GPG fingerprint = 4710 CF98 AF9B 327B B80F http://newartisans.com 60E1 46C4 BD1A 7AC1 4BA2 ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 23:23 ` John Wiegley @ 2015-12-30 9:44 ` David Kastrup 0 siblings, 0 replies; 320+ messages in thread From: David Kastrup @ 2015-12-30 9:44 UTC (permalink / raw) To: Alex Dunn; +Cc: Dmitry Gutov, Clément Pit--Claudel, emacs-devel John Wiegley <jwiegley@gmail.com> writes: >>>>>> David Kastrup <dak@gnu.org> writes: > >> For command line applications, namely the kind of stuff that would >> also run under Darwin alone. I don't think that popular versions of >> Emacs would be in that category. > > For any kind of application. I'm using the fully graphical Mac Port > version of Emacs as an application, without Xcode. And you compiled it yourself without reverting to Xcode? -- David Kastrup ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 22:37 ` John Wiegley 2015-12-29 22:57 ` David Kastrup @ 2015-12-30 6:15 ` CHENG Gao 1 sibling, 0 replies; 320+ messages in thread From: CHENG Gao @ 2015-12-30 6:15 UTC (permalink / raw) To: emacs-devel *On Tue, 29 Dec 2015 14:37:40 -0800 * Also sprach John Wiegley <jwiegley@gmail.com>: >>>>>> Alex Dunn <dunn.alex@gmail.com> writes: > >> Clang and related build tools are provided by Xcode and the Xcode >> Command-Line Tools, so for software that needs to be compiled; yes. >> But pre-compiled binaries can be installed without. So it might be >> possible—I haven’t tried—to installed Homebrew’s “bottled” GCC, then >> use that for software that needs to be compiled from source, all >> without agreeing to the Xcode terms. > > Just as a side note: the Nix build of Emacs on Mac does not require > Xcode to be installed. It downloads and builds clang or gcc itself in > order to build Emacs. Xcode is no longer necessary on Mac for building > free software. Just FYI only in case someone needs. In Github there is an osx-gcc-installer, which could install build essentials. Yes Xcode is not necessary for building free softwares. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 18:09 ` Dmitry Gutov 2015-12-29 18:19 ` David Kastrup @ 2015-12-29 18:30 ` Clément Pit--Claudel 2015-12-29 18:57 ` Christopher W Carpenter 2015-12-30 6:11 ` Richard Stallman 1 sibling, 2 replies; 320+ messages in thread From: Clément Pit--Claudel @ 2015-12-29 18:30 UTC (permalink / raw) To: Dmitry Gutov, emacs-devel [-- Attachment #1: Type: text/plain, Size: 1125 bytes --] On 12/29/2015 07:09 PM, Dmitry Gutov wrote: > Since adding feature to GNU Emacs that give more advantage to > non-free platforms might encourage the latter I don't think many people care whether they are using GNU Emacs or a fork thereof, so I'm not sure it would change much to the current situation (people on MacOS can use a version of Emacs that has more features than the ones available on GNU/Linux). > this seems to make a stronger case in favor of adding support for all > (?) of the features in question on GNU/Linux than doing anything > else, like merging Emacs Mac Port. Fully agreed; it seems clear to me that the priority is in getting more of these features in Emacs for GNU/Linux. I was just pointing out that as due to the current situation, I've had people point out to me that my Emacs experience would be nicer on MacOS than on GNU/Linux (and they are right: the best Emacs experience today is not on GNU/Linux). These people were not running GNU Emacs, but indeed that doesn't matter in terms of freedom (though it does matter in terms of using GNU Emacs to promote the GNU project). [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 18:30 ` Clément Pit--Claudel @ 2015-12-29 18:57 ` Christopher W Carpenter 2015-12-29 19:03 ` Clément Pit--Claudel 2015-12-29 19:53 ` John Wiegley 2015-12-30 6:11 ` Richard Stallman 1 sibling, 2 replies; 320+ messages in thread From: Christopher W Carpenter @ 2015-12-29 18:57 UTC (permalink / raw) To: Clément Pit--Claudel; +Cc: emacs-devel, Dmitry Gutov [-- Attachment #1: Type: text/plain, Size: 1713 bytes --] Clément Pit--Claudel <clement.pit@gmail.com> writes: > On 12/29/2015 07:09 PM, Dmitry Gutov wrote: >> Since adding feature to GNU Emacs that give more advantage to >> non-free platforms might encourage the latter > > I don't think many people care whether they are using GNU Emacs or a fork thereof, so I'm not sure it would change much to the current situation (people on MacOS can use a version of Emacs that has more features than the ones available on GNU/Linux). > >> this seems to make a stronger case in favor of adding support for all >> (?) of the features in question on GNU/Linux than doing anything >> else, like merging Emacs Mac Port. > > Fully agreed; it seems clear to me that the priority is in getting more of these features in Emacs for GNU/Linux. > > I was just pointing out that as due to the current situation, I've had people > point out to me that my Emacs experience would be nicer on MacOS than on > GNU/Linux (and they are right: the best Emacs experience today is not on > GNU/Linux). These people were not running GNU Emacs, but indeed that doesn't > matter in terms of freedom (though it does matter in terms of using GNU Emacs to > promote the GNU project). FWIW emacs of Mac OS X (any of the versions I tried before just installing debian on my macbook) have significantly degraded buffer performance compared to Linux. I believe bugs were filed about it but most of the core dev team don't have a mac to test on. If you do any heavy buffer updating (like using emacs as a terminal emulator) you can actually slow down the process creating the output. So no, even from a practical sense you would not have a nicer experience in MacOS IMHO. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 818 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 18:57 ` Christopher W Carpenter @ 2015-12-29 19:03 ` Clément Pit--Claudel 2015-12-29 19:53 ` John Wiegley 1 sibling, 0 replies; 320+ messages in thread From: Clément Pit--Claudel @ 2015-12-29 19:03 UTC (permalink / raw) To: Christopher W Carpenter; +Cc: emacs-devel, Dmitry Gutov [-- Attachment #1: Type: text/plain, Size: 2087 bytes --] On 12/29/2015 07:57 PM, Christopher W Carpenter wrote: > Clément Pit--Claudel <clement.pit@gmail.com> writes: > >> On 12/29/2015 07:09 PM, Dmitry Gutov wrote: >>> Since adding feature to GNU Emacs that give more advantage to >>> non-free platforms might encourage the latter >> >> I don't think many people care whether they are using GNU Emacs or a fork thereof, so I'm not sure it would change much to the current situation (people on MacOS can use a version of Emacs that has more features than the ones available on GNU/Linux). >> >>> this seems to make a stronger case in favor of adding support for all >>> (?) of the features in question on GNU/Linux than doing anything >>> else, like merging Emacs Mac Port. >> >> Fully agreed; it seems clear to me that the priority is in getting more of these features in Emacs for GNU/Linux. >> >> I was just pointing out that as due to the current situation, I've had people >> point out to me that my Emacs experience would be nicer on MacOS than on >> GNU/Linux (and they are right: the best Emacs experience today is not on >> GNU/Linux). These people were not running GNU Emacs, but indeed that doesn't >> matter in terms of freedom (though it does matter in terms of using GNU Emacs to >> promote the GNU project). > > > FWIW emacs of Mac OS X (any of the versions I tried before just > installing debian on my macbook) have significantly degraded buffer > performance compared to Linux. I believe bugs were filed about it but > most of the core dev team don't have a mac to test on. > > If you do any heavy buffer updating (like using emacs as a terminal > emulator) you can actually slow down the process creating the output. > > So no, even from a practical sense you would not have a nicer experience > in MacOS IMHO. I see. I don't own a Mac, so I can't tell; it's good news that GNU Emacs on GNU/Linux still has an edge over the Mac versions :) I've heard people say a lot of good things about smooth scrolling on Mac; I imagine they didn't run into the problem that you pointed out. [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 18:57 ` Christopher W Carpenter 2015-12-29 19:03 ` Clément Pit--Claudel @ 2015-12-29 19:53 ` John Wiegley 2015-12-29 20:03 ` Christopher W Carpenter 1 sibling, 1 reply; 320+ messages in thread From: John Wiegley @ 2015-12-29 19:53 UTC (permalink / raw) To: Christopher W Carpenter Cc: Dmitry Gutov, Clément Pit--Claudel, emacs-devel >>>>> Christopher W Carpenter <mordocai@mordocai.net> writes: > If you do any heavy buffer updating (like using emacs as a terminal > emulator) you can actually slow down the process creating the output. And this is the default Cocoa build, right? Because I think this is one of the very things that the Mac Port build variant from Yamamoto-san fixes. -- John Wiegley GPG fingerprint = 4710 CF98 AF9B 327B B80F http://newartisans.com 60E1 46C4 BD1A 7AC1 4BA2 ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 19:53 ` John Wiegley @ 2015-12-29 20:03 ` Christopher W Carpenter 0 siblings, 0 replies; 320+ messages in thread From: Christopher W Carpenter @ 2015-12-29 20:03 UTC (permalink / raw) To: Clément Pit--Claudel; +Cc: Dmitry Gutov, emacs-devel [-- Attachment #1: Type: text/plain, Size: 698 bytes --] John Wiegley <jwiegley@gmail.com> writes: >>>>>> Christopher W Carpenter <mordocai@mordocai.net> writes: > >> If you do any heavy buffer updating (like using emacs as a terminal >> emulator) you can actually slow down the process creating the output. > > And this is the default Cocoa build, right? Because I think this is one of the > very things that the Mac Port build variant from Yamamoto-san fixes. It has been many months since I did it and I didn't keep great notes so i'm not sure, but I believe I tried the binary from http://emacsformacosx.com/ as well as many different options using brew and got the same results. Not sure if I got Yamamoto-San's version while trying things or not. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 818 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-29 18:30 ` Clément Pit--Claudel 2015-12-29 18:57 ` Christopher W Carpenter @ 2015-12-30 6:11 ` Richard Stallman 2015-12-30 10:32 ` Clément Pit--Claudel 2015-12-30 10:39 ` David Kastrup 1 sibling, 2 replies; 320+ messages in thread From: Richard Stallman @ 2015-12-30 6:11 UTC (permalink / raw) To: Clément Pit--Claudel; +Cc: emacs-devel, dgutov [[[ To any NSA and FBI agents reading my email: please consider ]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] > I was just pointing out that as due to the current situation, I've > had people point out to me that my Emacs experience would be nicer > on MacOS than on GNU/Linux (and they are right: the best Emacs > experience today is not on GNU/Linux). If there are technical advantages to running Emacs on MacOS rather than on GNU,that is a bad thing. Adding more MacOS-only features to GNU Emacs would make it worse. To correct this technical problem entails (1) putting support into X display for these features and (2) making Emacs interface to them. Since (1) is the hard job and (2) is comparatively easy, our proper technical response is to urge people to work on (1). Would you like to work on it? However, our response should not be purely technical, because the problem is not purely technical. A big part of the problem is that these people judge the "best" experience in a shallow, superficial way, considering convenience alone and disregarding freedom. When you judge based on freedom, SmackOS is a horrible experience. We need to do more to point out this issue to the people who habitually disregard it, or don't know about it. I suggest showing other people fsf.org/tedx and http://gnu.org/philosophy/free-software-even-more-important.html. Also http://gnu.org/proprietary/malware-apple.html. Your personal example can influence people. If you put GNU/Linux on your Mac, and tell your friends, "I want freedom. I will sacrifice some convenience so I can be free," you will influence some of them somewhat. See http://gnu.org/philosophy/compromise.html. -- Dr Richard Stallman President, Free Software Foundation (gnu.org, fsf.org) Internet Hall-of-Famer (internethalloffame.org) Skype: No way! See stallman.org/skype.html. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-30 6:11 ` Richard Stallman @ 2015-12-30 10:32 ` Clément Pit--Claudel 2015-12-31 6:30 ` Richard Stallman 2015-12-30 10:39 ` David Kastrup 1 sibling, 1 reply; 320+ messages in thread From: Clément Pit--Claudel @ 2015-12-30 10:32 UTC (permalink / raw) To: rms; +Cc: emacs-devel, dgutov [-- Attachment #1: Type: text/plain, Size: 3406 bytes --] On 12/30/2015 07:11 AM, Richard Stallman wrote: > To correct this technical problem entails (1) putting support into X > display for these features and (2) making Emacs interface to them. > Since (1) is the hard job and (2) is comparatively easy, our proper > technical response is to urge people to work on (1). Would you like > to work on it? If anyone knows a libXft maintainer, I'll be happy to talk to them; my email to their mailing list gathered exactly one response, which I can unfortunately not make any sense of: }} -------- Forwarded Message -------- }} Subject: Re: Color bitmap support in Xft? }} Date: Fri, 18 Dec 2015 08:16:37 +0100 }} From: Michael Titke <michael.tiedtke@o2online.de> }} To: xorg@lists.x.org }} }} Just add a video mode font (we'll need to "typeset" videos intext anyway - what was layout then?) and replace user input with random noise where DSP would have told those smart ones ... }} }} On 17/12/2015 21:23, Clément Pit--Claudel wrote: }} > Hi all, }} > }} > I'm looking into adding support for color emoji to Emacs. Color emoji use a new feature of OpenType fonts that allows font designers to embed full-color images in a font for certain glyphs. Fonts such as Google Noto Emoji or Apple Color Emoji thus have a table mapping certain Unicode points to raster color images. This feature is frequently used on smartphones, and was more recently added to Chrome and Firefox (both get it throught Freetype). }} > }} > Freetype has support for these multicolor glyphs since version 2.5 (2013). So does FontConfig (and, apparently, Skia). However, it does not seem to be possible to use this feature through Xft. }} > Has there been efforts to support it? }} > }} > IIUC, the required changes would involve extending case matches that look at the FT_Pixel_Mode enumeration (it gained a new member FT_PIXEL_MODE_BGRA), and passing an extra flag to Freetype. Here is the relevant documentation: }} > }} >> FT_PIXEL_MODE_BGRA }} >> }} >> An image with four 8-bit channels per pixel, representing a color }} >> image (such as emoticons) with alpha channel. For each pixel, the }} >> format is BGRA, which means, the blue channel comes first in memory. }} >> The color channels are pre-multiplied and in the sRGB colorspace. For }} >> example, full red at half-translucent opacity will be represented as }} >> ‘00,00,80,80’, not ‘00,00,FF,80’. See also FT_LOAD_COLOR. }} >> FT_LOAD_COLOR }} >> }} >> This flag is used to request loading of color embedded-bitmap }} >> images. The resulting color bitmaps, if available, will have the }} >> FT_PIXEL_MODE_BGRA format. When the flag is not used and color }} >> bitmaps are found, they will be converted to 256-level gray bitmaps }} >> transparently. Those bitmaps will be in the FT_PIXEL_MODE_GRAY }} >> format }} > Has such an extension been discussed before? Or am I taking the wrong approach? }} > }} > Clément. On the other hand, the person who implemented support in Freetype said that he would look into it (in an exchange at https://github.com/googlei18n/color-emoji/issues/5). Having no experience with this (and seeing that a patch adding support for it was proposed to libXft at http://lists.x.org/archives/xorg-devel/2015-August/047175.html last August but received no responses), I'm not sure what more to do. Advice is very welcome though! Clément. [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-30 10:32 ` Clément Pit--Claudel @ 2015-12-31 6:30 ` Richard Stallman 0 siblings, 0 replies; 320+ messages in thread From: Richard Stallman @ 2015-12-31 6:30 UTC (permalink / raw) To: Clément Pit--Claudel; +Cc: emacs-devel, dgutov I know even less about libXft than you. I don't really know what job it does. For help in understanding that, I suggest asking people who already know something about it. -- Dr Richard Stallman President, Free Software Foundation (gnu.org, fsf.org) Internet Hall-of-Famer (internethalloffame.org) Skype: No way! See stallman.org/skype.html. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-30 6:11 ` Richard Stallman 2015-12-30 10:32 ` Clément Pit--Claudel @ 2015-12-30 10:39 ` David Kastrup 1 sibling, 0 replies; 320+ messages in thread From: David Kastrup @ 2015-12-30 10:39 UTC (permalink / raw) To: Richard Stallman; +Cc: dgutov, Clément Pit--Claudel, emacs-devel Richard Stallman <rms@gnu.org> writes: > However, our response should not be purely technical, because the > problem is not purely technical. A big part of the problem is that > these people judge the "best" experience in a shallow, superficial > way, considering convenience alone and disregarding freedom. When you > judge based on freedom, SmackOS is a horrible experience. > > We need to do more to point out this issue to the people who > habitually disregard it, or don't know about it. > > I suggest showing other people fsf.org/tedx and > http://gnu.org/philosophy/free-software-even-more-important.html. > Also http://gnu.org/proprietary/malware-apple.html. > > Your personal example can influence people. If you put GNU/Linux on > your Mac, and tell your friends, "I want freedom. I will sacrifice > some convenience so I can be free," you will influence some of them > somewhat. Personally, these days I find that the most convincing treatises about the importance of software freedom are written by Apple and Microsoft themselves. Just read the "license agreement" of their software to users and ask them for every sentence whether they really agree (plan plenty of time for that: I think the "privacy agreement" for Windows 10 alone runs to about 20 pages). It was solemn for MSDOS, sobering for Windows 3.1, troubling for Windows 95, and has become so outlandish since then that it's hard to believe if you read the entire thing. These days "don't agree to stuff you haven't read" is pretty much sufficient for leaving little but Free Software as a serious option. -- David Kastrup ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2015-12-13 4:19 ` YAMAMOTO Mitsuharu 2015-12-24 10:29 ` YAMAMOTO Mitsuharu @ 2016-04-22 23:51 ` YAMAMOTO Mitsuharu 2016-04-30 5:57 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2016-04-22 23:51 UTC (permalink / raw) To: emacs-devel The ninth update of the Mac port based on Emacs 24.5 is available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.16.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git A bare development branch (no documentation updates yet) based on the pretest versions of Emacs 25.1 is also available from the "work" branch of the above repository. ** Fixed bugs *** M-x tool-bar-mode RET for a fullheight/maximized frame fails on its first invocation. *** Wrong size calculations for 2x genuine imagemagick images. For example, (image-size (create-image "splash.png" 'imagemagick nil :max-height 300)) is larger than the one without the :max-height property if the frame is on a Retina display. ** Improvements *** For frames on a Retina display, image-io/imagemagick image descriptors involving non-integral transformations such as shrinking or rotation are now processed with 2x pixel buffer even if the source image file/data is for 1x. For example, (insert-image (create-image "gnus/gnus.png" 'imagemagick nil :max-height 100)) now looks crisper. *** Org mode LaTeX fragments preview may also create 2x images. The patch below is a quick hack (see the "XXX" comment below) for PDF Tools to display 2x images on Retina display. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp diff --git a/lisp/pdf-annot.el b/lisp/pdf-annot.el index 32cb237..bb63a71 100644 --- a/lisp/pdf-annot.el +++ b/lisp/pdf-annot.el @@ -921,6 +921,7 @@ other annotations." (pdf-cache-renderpage-highlight page (car size) `("white" "steel blue" 0.35 ,@edges)) + :width (car size) :map (pdf-view-apply-hotspot-functions window page size)))) (pdf-util-scroll-to-edges diff --git a/lisp/pdf-info.el b/lisp/pdf-info.el index 6a5edb8..62da214 100644 --- a/lisp/pdf-info.el +++ b/lisp/pdf-info.el @@ -1514,7 +1514,15 @@ Return the data of the corresponding PNG image." 'renderpage (pdf-info--normalize-file-or-buffer file-or-buffer) page - width + (* width + ;; XXX This does not give optimal results when you have both + ;; Retina and non-Retina displays connected. For true + ;; high-resolution support, one should use either TIFF, "@2x" + ;; convention, or resolution-independent formats such as PDF. + (or (and (memq (pdf-view-image-type) '(imagemagick image-io)) + (fboundp 'frame-monitor-attributes) + (cdr (assq 'backing-scale-factor (frame-monitor-attributes)))) + 1)) (let (transformed) (while (cdr commands) (let ((kw (pop commands)) diff --git a/lisp/pdf-isearch.el b/lisp/pdf-isearch.el index bffbd3b..674d295 100644 --- a/lisp/pdf-isearch.el +++ b/lisp/pdf-isearch.el @@ -728,7 +728,7 @@ MATCH-BG LAZY-FG LAZY-BG\)." occur-hack-p) (eq page (pdf-view-current-page))) (pdf-view-display-image - (pdf-view-create-image data)))))))) + (pdf-view-create-image data :width width)))))))) (pdf-info-renderpage-text-regions page width t nil `(,fg1 ,bg1 ,@(pdf-util-scale-pixel-to-relative diff --git a/lisp/pdf-view.el b/lisp/pdf-view.el index 555032e..406ab98 100644 --- a/lisp/pdf-view.el +++ b/lisp/pdf-view.el @@ -725,7 +725,7 @@ See also `pdf-view-set-slice-from-bounding-box'." "Return the image-type which should be used. The return value is either imagemagick (if available and wanted -or if png is not available) or png. +or if png is not available), image-io (on the Mac port), or png. Signal an error, if neither imagemagick nor png is available. @@ -733,6 +733,8 @@ See also `pdf-view-use-imagemagick'." (cond ((and pdf-view-use-imagemagick (fboundp 'imagemagick-types)) 'imagemagick) + ((image-type-available-p 'image-io) + 'image-io) ((image-type-available-p 'png) 'png) ((fboundp 'imagemagick-types) @@ -741,8 +743,8 @@ See also `pdf-view-use-imagemagick'." (error "PNG image supported not compiled into Emacs")))) (defun pdf-view-use-scaling-p () - (and (eq 'imagemagick - (pdf-view-image-type)) + (and (memq (pdf-view-image-type) + '(imagemagick image-io)) pdf-view-use-scaling)) (defmacro pdf-view-create-image (data &rest props) @@ -1195,7 +1197,8 @@ This is more useful for commands like `(,(car colors) ,(cdr colors) 0.35 ,@region)) (pdf-info-renderpage-text-regions page width nil nil - `(,(car colors) ,(cdr colors) ,@region))))))) + `(,(car colors) ,(cdr colors) ,@region))) + :width width)))) (defun pdf-view-kill-ring-save () "Copy the region to the `kill-ring'." ^ permalink raw reply related [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-04-22 23:51 ` YAMAMOTO Mitsuharu @ 2016-04-30 5:57 ` YAMAMOTO Mitsuharu 2016-05-01 9:06 ` YAMAMOTO Mitsuharu 2016-06-26 4:12 ` YAMAMOTO Mitsuharu 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2016-04-30 5:57 UTC (permalink / raw) To: emacs-devel >>>>> On Sat, 23 Apr 2016 08:51:45 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > The ninth update of the Mac port based on Emacs 24.5 is available from > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.16.tar.gz This release was mainly intended for enhancement on Retina display environments, but actually there was a nasty bug in that part when the Mac port was compiled with ImageMagick. I've just made another release: ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.17.tar.gz The only changed file is `patch-mac'. So, if you still have a build tree, then you can just unapply the `patch-mac' file in the previous version and apply the new one. Sorry for the inconvenience. > and Git repository is also available at > https://bitbucket.org/mituharu/emacs-mac.git > A bare development branch (no documentation updates yet) based on the > pretest versions of Emacs 25.1 is also available from the "work" > branch of the above repository. ** Fixed bugs *** Shrunken image size on a Retina display is wrong if it is created from the raw data using genuine ImageMagick. Reported by Sean Farley. ** Improvements *** When you create an image from the raw data as opposed to a file, you can now provide 2x data for high-resolution environments via the `:data-2x' property. It can be specified either as a property of the image descriptor or as a text property of the first character of the standard resolution data (if it is given as a string). > The patch below is a quick hack (see the "XXX" comment below) for PDF > Tools to display 2x images on Retina display. Also, I made the patch below for preview-latex in AUCTeX so preview images look fine on Retina displays. It now makes Ghostscript generate PDF files instead of PNG ones, and let the Mac port render them using the `image-io' image type via PDFKit. So moving a frame between Retina and non-Retina displays works gracefully unlike my previous patch for PDF Tools. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp diff --git a/preview.el.in b/preview.el.in index 8a58104..48f0608 100644 --- a/preview.el.in +++ b/preview.el.in @@ -188,7 +188,10 @@ spec to avoid unnecessary evaluation time." (close preview-gs-close)) (tiff (open preview-gs-open) (place preview-gs-place) - (close preview-gs-close))) + (close preview-gs-close)) + (image-io (open preview-gs-open) + (place preview-gs-place) + (close preview-gs-close))) "Define functions for generating images. These functions get called in the process of generating inline images of the specified type. The open function is called @@ -218,17 +221,23 @@ function args" :inline t sexp)) (dvipng png "-sDEVICE=png16m") (jpeg jpeg "-sDEVICE=jpeg") (pnm pbm "-sDEVICE=pnmraw") - (tiff tiff "-sDEVICE=tiff12nc")) + (tiff tiff "-sDEVICE=tiff12nc") + (image-io (image-io pdf t) "-sDEVICE=pdfwrite")) "*Alist of image types and corresponding Ghostscript options. The `dvipng' and `postscript' (don't use) entries really specify a fallback device when images can't be processed by the requested method, like when PDFTeX was used." :group 'preview-gs :type '(repeat (list :tag nil (symbol :tag "preview image-type") - (symbol :tag "Emacs image-type") + (choice (symbol :tag "Emacs image-type") + (list :tag "Extended setting" + (symbol :tag "Emacs image-type") + (symbol :tag "File name extension") + (boolean :tag "Produces vector output"))) (repeat :inline t :tag "Ghostscript options" string)))) -(defcustom preview-image-type 'png +(defcustom preview-image-type + (if (preview-supports-image-type 'image-io) 'image-io 'png) "*Image type to be used in images." :group 'preview-gs :type (append '(choice) @@ -372,6 +381,13 @@ See also `preview-gs-command'." :group 'preview-gs :type '(repeat string)) +(defcustom preview-gs-vector-options '("-q" "-dDELAYSAFER" "-dNOPAUSE" + "-DNOPLATFONTS" "-dPrinted") + "*Like `preview-gs-options', but used when gs produces vector outputs. +See also `preview-gs-command'." + :group 'preview-gs + :type '(repeat string)) + (defvar preview-gs-queue nil "List of overlays to convert using gs. Buffer-local to the appropriate TeX process buffer.") @@ -406,6 +422,14 @@ follow changes in the displayed buffer area faster." "Image type for gs produced images.") (make-variable-buffer-local 'preview-gs-image-type) +(defvar preview-gs-image-extension nil + "Image file name extension for gs produced images.") +(make-variable-buffer-local 'preview-gs-image-extension) + +(defvar preview-gs-image-vector-p nil + "Non-nil if gs produces vector output images.") +(make-variable-buffer-local 'preview-gs-image-vector-p) + (defvar preview-gs-sequence nil "Pair of sequence numbers for gs produced images.") (make-variable-buffer-local 'preview-gs-sequence) @@ -696,7 +720,7 @@ Gets the usual PROCESS and STRING parameters, see (format "%s/pr%d-%%d.%s" (car TeX-active-tempdir) (car preview-gs-sequence) - preview-gs-image-type)))) + preview-gs-image-extension)))) (process (apply #'start-process "Preview-Ghostscript" @@ -726,11 +750,20 @@ Gets the usual PROCESS and STRING parameters, see (defun preview-gs-open (&optional setup) "Start a Ghostscript conversion pass. SETUP may contain a parser setup function." - (let ((image-info (assq preview-image-type preview-gs-image-type-alist))) - (setq preview-gs-image-type (nth 1 image-info)) + (let* ((image-info (assq preview-image-type preview-gs-image-type-alist)) + (image-type-info (nth 1 image-info))) + (if (not (consp image-type-info)) + (setq preview-gs-image-type image-type-info + preview-gs-image-extension image-type-info + preview-gs-image-vector-p nil) + (setq preview-gs-image-type (nth 0 image-type-info) + preview-gs-image-extension (nth 1 image-type-info) + preview-gs-image-vector-p (nth 2 image-type-info))) (setq preview-gs-sequence nil) (setq preview-gs-command-line (append - preview-gs-options + (if (not preview-gs-image-vector-p) + preview-gs-options + preview-gs-vector-options) (nthcdr 2 image-info)) preview-gs-init-string (format "{DELAYSAFER{.setsafe}if}stopped pop\ @@ -833,7 +866,7 @@ Pure borderless black-on-white will return an empty string." (let ((process (preview-start-dvips preview-fast-conversion))) (setq TeX-sentinel-function #'preview-gs-dvips-sentinel) (list process (current-buffer) TeX-active-tempdir preview-ps-file - preview-gs-image-type)))) + preview-gs-image-extension)))) (defun preview-dvipng-process-setup () "Set up dvipng process for conversion." @@ -861,7 +894,7 @@ Pure borderless black-on-white will return an empty string." (let ((process (preview-start-pdf2dsc))) (setq TeX-sentinel-function #'preview-pdf2dsc-sentinel) (list process (current-buffer) TeX-active-tempdir preview-ps-file - preview-gs-image-type))) + preview-gs-image-extension))) (defun preview-dvips-abort () "Abort a Dvips run." @@ -1248,11 +1281,13 @@ given as ANSWER." (overlay-put ov 'filenames (cdr filenames)) (preview-replace-active-icon ov - (preview-create-icon (car newfile) - preview-gs-image-type - (preview-ascent-from-bb - bbox) - (aref preview-colors 2)))) + (apply #'preview-create-icon + (car newfile) + preview-gs-image-type + (preview-ascent-from-bb bbox) + (aref preview-colors 2) + (and preview-gs-image-vector-p + (list (preview-size-from-bb bbox)))))) (overlay-put ov 'queued nil))))) (while (and (< (length preview-gs-outstanding) preview-gs-outstanding-limit) @@ -1269,7 +1304,7 @@ given as ANSWER." (format "pr%d-%d.%s" (car preview-gs-sequence) (cdr preview-gs-sequence) - preview-gs-image-type) + preview-gs-image-extension) TeX-active-tempdir)))))) (bbox (aset queued 0 (or (and preview-prefer-TeX-bb @@ -1459,6 +1494,24 @@ numbers (can be float if available)." (round (* 100.0 (/ (- top 720.0) (- top bottom)))) 100))) +(defun preview-size-from-bb (bb) + "This calculates the image pixel size from its bounding box. +When the ghostscript device produces vector outputs, the `-r' +option does not change the page size of the produced output, but +specifies the resolution for pattern fills and fonts that must be +converted to bitmaps. This function is used for calculating the +size in pixels from the value passed to the `-r' option and the +given bounding box." + (let ((res '(72.0 . 72.0))) + (dolist (option preview-gs-command-line) + (if (string-match "\\`-r\\([0-9.]+\\)x\\([0-9.]+\\)\\'" option) + (setq res (cons (string-to-number (match-string 1 option)) + (string-to-number (match-string 2 option)))))) + (cons (round (* (- (aref bb 2) (aref bb 0)) + (/ (car res) 72.0))) + (round (* (- (aref bb 3) (aref bb 1)) + (/ (cdr res) 72.0)))))) + (defface preview-face '((((background dark)) (:background "dark slate gray")) (t @@ -3556,6 +3609,7 @@ If not a regular release, the date of the last change.") preview-pdf2dsc-command preview-gs-command preview-gs-options + preview-gs-vector-options preview-gs-image-type-alist preview-fast-conversion preview-prefer-TeX-bb diff --git a/prv-emacs.el b/prv-emacs.el index 9f40736..07c4018 100644 --- a/prv-emacs.el +++ b/prv-emacs.el @@ -80,19 +80,20 @@ Consults `preview-transparent-color'." (nth 1 preview-transparent-color) 'default))))) -(defsubst preview-create-icon-1 (file type ascent border) +(defsubst preview-create-icon-1 (file type ascent border &optional size) `(image :file ,file :type ,type :ascent ,ascent ,@(and border - '(:mask (heuristic t))))) + '(:mask (heuristic t))) + ,@(and size + `(:width ,(car size) :height ,(cdr size))))) -(defun preview-create-icon (file type ascent border) +(defun preview-create-icon (file type ascent border &optional size) "Create an icon from FILE, image TYPE, ASCENT and BORDER." - (list - (preview-create-icon-1 file type ascent border) - file type ascent border)) + `(,(preview-create-icon-1 file type ascent border size) + ,file ,type ,ascent ,border ,@(and size (list size)))) (put 'preview-filter-specs :type #'(lambda (keyword value &rest args) @@ -590,7 +591,8 @@ The fourth value is the transparent border thickness." (nth 2 image) (if (< (length image) 4) (preview-get-heuristic-mask) - (nth 3 image)))))) + (nth 3 image)) + (nth 4 image))))) (defsubst preview-supports-image-type (imagetype) "Check if IMAGETYPE is supported." ^ permalink raw reply related [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-04-30 5:57 ` YAMAMOTO Mitsuharu @ 2016-05-01 9:06 ` YAMAMOTO Mitsuharu 2016-06-26 4:12 ` YAMAMOTO Mitsuharu 1 sibling, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2016-05-01 9:06 UTC (permalink / raw) To: emacs-devel >>>>> On Sat, 30 Apr 2016 14:57:54 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: >> The patch below is a quick hack (see the "XXX" comment below) for >> PDF Tools to display 2x images on Retina display. > Also, I made the patch below for preview-latex in AUCTeX so preview > images look fine on Retina displays. It now makes Ghostscript > generate PDF files instead of PNG ones, and let the Mac port render > them using the `image-io' image type via PDFKit. So moving a frame > between Retina and non-Retina displays works gracefully unlike my > previous patch for PDF Tools. Another merit of this approach over creation of doubled bitmap images is it can take advantage of LCD smoothing (I've just noticed that). So this might be meaningful even on non-Retina environments (unless you hate LCD smoothing). YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-04-30 5:57 ` YAMAMOTO Mitsuharu 2016-05-01 9:06 ` YAMAMOTO Mitsuharu @ 2016-06-26 4:12 ` YAMAMOTO Mitsuharu 2016-07-25 4:44 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2016-06-26 4:12 UTC (permalink / raw) To: emacs-devel The eleventh update of the Mac port based on Emacs 24.5 is available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.18.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git If you are using the Mac port on OS X 10.11 and find it less responsive than the NS port, then please try this version. Some behavior on window flushing has been changed between OS X 10.10 and 10.11. The NS port straightforwardly benefited from this change, but some workarounds in the Mac port for older versions of OS X prevented the change from taking effect (it actually gives a reverse effect). YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** On OS X 10.11, the result of Typometer is much worse than that on the NS port, although better than the both ports on OS X 10.10. This is because the Mac port manually defers and coalesces screen flushes in order to work around slow flyspell. This seems to be unnecessary on OS X 10.11, and actually gives a reverse effect as above. ** Improvements *** Emoji data is updated to Unicode 9.0. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-06-26 4:12 ` YAMAMOTO Mitsuharu @ 2016-07-25 4:44 ` YAMAMOTO Mitsuharu 2016-08-22 0:37 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2016-07-25 4:44 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 25.1 release candidate 1 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-25.1-rc1-mac-5.90.tar.gz ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-hires-icons-2.0.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git Get it from the "master" branch. The "work" branch is for bare development and not for release (candidate) versions. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Crash when closing a fullscreen frame on macOS 10.12 Beta. *** Can't resize a frame by dragging its edge on macOS 10.12 Beta. *** Cyrillic text composition in HELLO file is shown wrong with Menlo. ** Improvements *** New functions `mac-export-frames', `mac-page-setup-dialog', `mac-get-page-setup', and `mac-print-frames-dialog'. They correspond to x-* functions provided in the cairo build together with GTK+. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-07-25 4:44 ` YAMAMOTO Mitsuharu @ 2016-08-22 0:37 ` YAMAMOTO Mitsuharu 2016-08-22 7:31 ` Marius Kjeldahl 2016-09-18 6:39 ` Emacs Mac port YAMAMOTO Mitsuharu 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2016-08-22 0:37 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 25.1 release candidate 2 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-25.1-rc2-mac-5.91.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git Get it from the "master" branch. The "work" branch is for bare development and not for release (candidate) versions. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Improvements *** Update emoji sequence data to version 4.0 draft. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-08-22 0:37 ` YAMAMOTO Mitsuharu @ 2016-08-22 7:31 ` Marius Kjeldahl 2016-08-22 10:41 ` Marius Kjeldahl 2016-09-18 6:39 ` Emacs Mac port YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: Marius Kjeldahl @ 2016-08-22 7:31 UTC (permalink / raw) To: YAMAMOTO Mitsuharu, emacs-devel [-- Attachment #1: Type: text/plain, Size: 1048 bytes --] Thanks, did a quick test and seems to work fine as usual. One noticeable difference is that in your build, the fonts are weighted heavier. On my iMac5K, your version looks bold compared to the regular version. I've posted a link to screenshots below, although it's less visible in a compressed image than on my actual screen. https://snag.gy/aiqFch.jpg Anyways, thanks! Marius K. On Mon, 22 Aug 2016 at 02:38 YAMAMOTO Mitsuharu < mituharu@math.s.chiba-u.ac.jp> wrote: > The Mac port based on Emacs 25.1 release candidate 2 is now available from > > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-25.1-rc2-mac-5.91.tar.gz > > and Git repository is also available at > > https://bitbucket.org/mituharu/emacs-mac.git > > Get it from the "master" branch. The "work" branch is for bare > development and not for release (candidate) versions. > > YAMAMOTO Mitsuharu > mituharu@math.s.chiba-u.ac.jp > > ** Improvements > > *** Update emoji sequence data to version 4.0 draft. > > [-- Attachment #2: Type: text/html, Size: 1815 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-08-22 7:31 ` Marius Kjeldahl @ 2016-08-22 10:41 ` Marius Kjeldahl 2016-08-23 0:07 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: Marius Kjeldahl @ 2016-08-22 10:41 UTC (permalink / raw) To: YAMAMOTO Mitsuharu, emacs-devel [-- Attachment #1: Type: text/plain, Size: 2048 bytes --] Following up on my own post, I now noticed that there was a setting in my .emacs file that selected the bold weighting. Why "stock" Emacs did not respect that setting and this "Mac port" did I have no idea. Changed the default weight to normal and now both versions have identical fonts. A curious mind might want to know why the "stock" Emacs OSX build does not respect the bold weight. The specific setting from my .emacs is: (custom-set-faces ;; custom-set-faces was added by Custom. ;; If you edit it by hand, you could mess it up, so be careful. ;; Your init file should contain only one such instance. ;; If there is more than one, they won't work right. '(default ((t (:stipple nil :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 120 :width normal :family "Andale Mono"))))) Thanks, Marius K. On Mon, 22 Aug 2016 at 09:31 Marius Kjeldahl <marius.kjeldahl@gmail.com> wrote: > Thanks, did a quick test and seems to work fine as usual. One noticeable > difference is that in your build, the fonts are weighted heavier. On my > iMac5K, your version looks bold compared to the regular version. I've > posted a link to screenshots below, although it's less visible in a > compressed image than on my actual screen. > > https://snag.gy/aiqFch.jpg > > Anyways, thanks! > > Marius K. > > On Mon, 22 Aug 2016 at 02:38 YAMAMOTO Mitsuharu < > mituharu@math.s.chiba-u.ac.jp> wrote: > >> The Mac port based on Emacs 25.1 release candidate 2 is now available from >> >> ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-25.1-rc2-mac-5.91.tar.gz >> >> and Git repository is also available at >> >> https://bitbucket.org/mituharu/emacs-mac.git >> >> Get it from the "master" branch. The "work" branch is for bare >> development and not for release (candidate) versions. >> >> YAMAMOTO Mitsuharu >> mituharu@math.s.chiba-u.ac.jp >> >> ** Improvements >> >> *** Update emoji sequence data to version 4.0 draft. >> >> [-- Attachment #2: Type: text/html, Size: 3234 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-08-22 10:41 ` Marius Kjeldahl @ 2016-08-23 0:07 ` YAMAMOTO Mitsuharu 2016-08-23 9:02 ` Alan Third 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2016-08-23 0:07 UTC (permalink / raw) To: Marius Kjeldahl; +Cc: emacs-devel >>>>> On Mon, 22 Aug 2016 10:41:45 +0000, Marius Kjeldahl <marius.kjeldahl@gmail.com> said: > Following up on my own post, I now noticed that there was a setting > in my .emacs file that selected the bold weighting. Why "stock" > Emacs did not respect that setting and this "Mac port" did I have no > idea. Changed the default weight to normal and now both versions > have identical fonts. A curious mind might want to know why the > "stock" Emacs OSX build does not respect the bold weight. The > specific setting from my .emacs is: Probably this is due to the following workaround only in the Mac port: * emacs-24.4-mac-5.3 (2015-01-29) http://lists.gnu.org/archive/html/emacs-devel/2015-01/msg01040.html ** Fixed bugs *** Synthetic bold text looks thinner on Retina display/HiDPI mode. This is because stroke line width for text drawing is not correctly scaled (whereas it is correctly scaled when drawn to bitmaps) on such environments. I've been reporting this to Apple on every OS X update since it was 10.7.4, but I couldn't get any response until recently. At last Apple answers that there are no plans to address this issue (rdar://11644870) currently. So I added a workaround that would cause a bad reverse effect if the original issue were fixed. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-08-23 0:07 ` YAMAMOTO Mitsuharu @ 2016-08-23 9:02 ` Alan Third 2016-08-24 1:54 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: Alan Third @ 2016-08-23 9:02 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: Marius Kjeldahl, Emacs-Devel devel On 23 August 2016 at 01:07, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> wrote: > > Probably this is due to the following workaround only in the Mac port: > > * emacs-24.4-mac-5.3 (2015-01-29) > http://lists.gnu.org/archive/html/emacs-devel/2015-01/msg01040.html > > ** Fixed bugs > > *** Synthetic bold text looks thinner on Retina display/HiDPI mode. > This is because stroke line width for text drawing is not correctly > scaled (whereas it is correctly scaled when drawn to bitmaps) on > such environments. I've been reporting this to Apple on every OS X > update since it was 10.7.4, but I couldn't get any response until > recently. At last Apple answers that there are no plans to address > this issue (rdar://11644870) currently. So I added a workaround that > would cause a bad reverse effect if the original issue were fixed. Is it possible to apply this fix to the NS port or would we need to come up with another solution? -- Alan Third ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-08-23 9:02 ` Alan Third @ 2016-08-24 1:54 ` YAMAMOTO Mitsuharu 2016-08-29 19:56 ` [PATCH] Fix synthetic bold on macOS retina displays Alan Third 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2016-08-24 1:54 UTC (permalink / raw) To: Alan Third; +Cc: Marius Kjeldahl, Emacs-Devel devel >>>>> On Tue, 23 Aug 2016 10:02:47 +0100, Alan Third <alan@idiocy.org> said: > On 23 August 2016 at 01:07, YAMAMOTO Mitsuharu > <mituharu@math.s.chiba-u.ac.jp> wrote: >> >> Probably this is due to the following workaround only in the Mac port: >> >> * emacs-24.4-mac-5.3 (2015-01-29) >> http://lists.gnu.org/archive/html/emacs-devel/2015-01/msg01040.html >> >> ** Fixed bugs >> >> *** Synthetic bold text looks thinner on Retina display/HiDPI mode. >> This is because stroke line width for text drawing is not correctly >> scaled (whereas it is correctly scaled when drawn to bitmaps) on >> such environments. I've been reporting this to Apple on every OS X >> update since it was 10.7.4, but I couldn't get any response until >> recently. At last Apple answers that there are no plans to address >> this issue (rdar://11644870) currently. So I added a workaround that >> would cause a bad reverse effect if the original issue were fixed. > Is it possible to apply this fix to the NS port or would we need to > come up with another solution? The workaround is simple, but the current code uses some Mac-port-specific variables. So at least it cannot be applied to the NS port directly. /* Stroke line width for text drawing is not correctly scaled on Retina display/HiDPI mode when drawn to screen (whereas it is correctly scaled when drawn to bitmaps), and synthetic bold looks thinner on such environments. Apple says there are no plans to address this issue (rdar://11644870) currently. So we add a workaround. */ if (FRAME_BACKING_SCALE_FACTOR (f) != 1 && !FRAME_SYNTHETIC_BOLD_WORKAROUND_DISABLED_P (f) && (mac_operating_system_version.minor >= 7 || mac_operating_system_version.major > 10)) bold_factor = synthetic_bold_factor * 2; else bold_factor = synthetic_bold_factor; YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* [PATCH] Fix synthetic bold on macOS retina displays 2016-08-24 1:54 ` YAMAMOTO Mitsuharu @ 2016-08-29 19:56 ` Alan Third 0 siblings, 0 replies; 320+ messages in thread From: Alan Third @ 2016-08-29 19:56 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: Marius Kjeldahl, Emacs-Devel devel * src/macfont.m (macfont_draw): Multiply the synthetic bold scaling factor by the OS window backing scale factor. --- src/macfont.m | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/macfont.m b/src/macfont.m index c799100..d9bad03 100644 --- a/src/macfont.m +++ b/src/macfont.m @@ -2878,7 +2878,19 @@ So we use CTFontDescriptorCreateMatchingFontDescriptor (no if (macfont_info->synthetic_bold_p && ! no_antialias_p) { CGContextSetTextDrawingMode (context, kCGTextFillStroke); + + /* Stroke line width for text drawing is not correctly + scaled on Retina display/HiDPI mode when drawn to screen + (whereas it is correctly scaled when drawn to bitmaps), + and synthetic bold looks thinner on such environments. + Apple says there are no plans to address this issue + (rdar://11644870) currently. So we add a workaround. */ +#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_7 + CGContextSetLineWidth (context, synthetic_bold_factor * font_size + * [[FRAME_NS_VIEW(f) window] backingScaleFactor]); +#else CGContextSetLineWidth (context, synthetic_bold_factor * font_size); +#endif CG_SET_STROKE_COLOR_WITH_FACE_FOREGROUND (context, face, f); } if (no_antialias_p) -- Not a lot to this. I hope you don’t mind that I stole your explanatory comment completely. We don’t (as far as I’m aware) have a neat way of checking versions at run‐time, so I’ve just stuck to making it a compile‐time check. -- Alan Third ^ permalink raw reply related [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-08-22 0:37 ` YAMAMOTO Mitsuharu 2016-08-22 7:31 ` Marius Kjeldahl @ 2016-09-18 6:39 ` YAMAMOTO Mitsuharu 2016-09-18 7:32 ` martin rudalics 2016-10-30 5:55 ` YAMAMOTO Mitsuharu 1 sibling, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2016-09-18 6:39 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 25.1 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-25.1-mac-6.0.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git The twelfth update of the Mac port based on Emacs 24.5, containing changes for upcoming macOS 10.12, is also available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.19.tar.gz The corresponding branch in the Git repository is `mac-24'. The old repository URL is now forwarded to the Bitbucket one. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Several glitches in frame tabbing on macOS 10.12. To address this issue in a simple and consistent way, we now round the frame size according to the character size only on resize by mouse dragging or changes of the `fullscreen' frame parameter. This may cause some incompatibility. *** Fullscreen frames contain space at the top on OS X 10.10. ** Improvements *** New variable `mac-frame-tabbing' specifying tabbing behavior of a frame that is becoming visible on macOS 10.12. *** C-x 5 5 ... behaves like the C-x 5 prefix, but temporarily changes tabbing behavior if "5" is typed repeatedly on macOS 10.12. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-09-18 6:39 ` Emacs Mac port YAMAMOTO Mitsuharu @ 2016-09-18 7:32 ` martin rudalics 2016-09-18 7:48 ` YAMAMOTO Mitsuharu 2016-10-30 5:55 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: martin rudalics @ 2016-09-18 7:32 UTC (permalink / raw) To: YAMAMOTO Mitsuharu, emacs-devel > ... we now round the > frame size according to the character size only on resize by mouse > dragging or changes of the `fullscreen' frame parameter. Can you kindly explain what this means? IMHO the behavior should be such as to - not round when mouse dragging or changing the `fullscreen' parameter - round otherwise (if requested). I don't know whether you implemented `frame-resize-pixelwise'. martin ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-09-18 7:32 ` martin rudalics @ 2016-09-18 7:48 ` YAMAMOTO Mitsuharu 2016-09-18 8:15 ` martin rudalics 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2016-09-18 7:48 UTC (permalink / raw) To: martin rudalics; +Cc: emacs-devel >>>>> On Sun, 18 Sep 2016 09:32:22 +0200, martin rudalics <rudalics@gmx.at> said: >> ... we now round the >> frame size according to the character size only on resize by mouse >> dragging or changes of the `fullscreen' frame parameter. > Can you kindly explain what this means? IMHO the behavior should be > such as to > - not round when mouse dragging or changing the `fullscreen' parameter > - round otherwise (if requested). > I don't know whether you implemented `frame-resize-pixelwise'. The change I described was about the case that the variable `frame-resize-pixelwise' is nil. If it is t, then the rounding never occurs. When `frame-resize-pixelwise' is nil, the previous versions of the Mac port always respected the window size hints and did rounding. But this appears to interfere with "automatic window tabbing" introduced in macOS 10.12, so I restricted the cases where the size hints is respected. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-09-18 7:48 ` YAMAMOTO Mitsuharu @ 2016-09-18 8:15 ` martin rudalics 2016-09-18 8:39 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: martin rudalics @ 2016-09-18 8:15 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel > When `frame-resize-pixelwise' is nil, the previous versions of the Mac > port always respected the window size hints and did rounding. But > this appears to interfere with "automatic window tabbing" introduced > in macOS 10.12, so I restricted the cases where the size hints is > respected. I must be still missing something: Originally you said that "we now round the frame size according to the character size only on resize by mouse dragging or changes of the `fullscreen' frame parameter" which doesn't make sense to me: Rounding on resize by mouse dragging doesn't seem reasonable to me because the frame edge will not follow the mouse pointer but rather jump instead. Rounding when maximizing or making a fullscreen frame, however, is much worse because it may leave a maximized or fullscreen frame with empty space at anedge of the screen. So I'm curious whether your description above just inverts the meaning of what you actually do. martin ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-09-18 8:15 ` martin rudalics @ 2016-09-18 8:39 ` YAMAMOTO Mitsuharu 2016-09-18 9:52 ` martin rudalics 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2016-09-18 8:39 UTC (permalink / raw) To: martin rudalics; +Cc: emacs-devel >>>>> On Sun, 18 Sep 2016 10:15:47 +0200, martin rudalics <rudalics@gmx.at> said: >> When `frame-resize-pixelwise' is nil, the previous versions of the Mac >> port always respected the window size hints and did rounding. But >> this appears to interfere with "automatic window tabbing" introduced >> in macOS 10.12, so I restricted the cases where the size hints is >> respected. > I must be still missing something: Originally you said that > "we now round the frame size according to the character size only on > resize by mouse dragging or changes of the `fullscreen' frame > parameter" > which doesn't make sense to me: Rounding on resize by mouse dragging > doesn't seem reasonable to me because the frame edge will not follow the > mouse pointer but rather jump instead. Rounding when maximizing or > making a fullscreen frame, however, is much worse because it may leave a > maximized or fullscreen frame with empty space at anedge of the screen. > So I'm curious whether your description above just inverts the meaning > of what you actually do. Not actually. I think some of X11 window managers do rounding on resize by mouse dragging if `frame-resize-pixelwise' is nil (at least, quartz-wm does so). If user wants resize by mouse dragging to follow the mouse strictly, then she or he can set `frame-resize-pixelwise' to t. Also, unlike the NS port, the Mac port does not "white out" the screen during mouse dragging but updates the contents, and it is a bit heavy operation. Rounding during mouse dragging also acts as "coalescing" screen updates. (Actually, the way to implement this screen updating during mouse dragging on the Mac port interferes with "window snapping" introduced in macOS 10.12, so it is disabled if running on that version.) Rounding does not happen for the axis that is specified to be maximized/full so that it does not leave spaces. So, rounding happens only for horizontal axis when the fullscreen frame parameter is set to 'fullheight if `frame-resize-pixelwise' is nil. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-09-18 8:39 ` YAMAMOTO Mitsuharu @ 2016-09-18 9:52 ` martin rudalics 2016-09-18 14:46 ` Eli Zaretskii 2016-09-19 2:01 ` YAMAMOTO Mitsuharu 0 siblings, 2 replies; 320+ messages in thread From: martin rudalics @ 2016-09-18 9:52 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel > Not actually. I think some of X11 window managers do rounding on > resize by mouse dragging if `frame-resize-pixelwise' is nil (at least, > quartz-wm does so). Hopefully all of them do. I (silently) do not round on Windows because there we do not have those line x column indicators which are (IMO) the sole good reason for rounding on X11. Apart from performance problems. > If user wants resize by mouse dragging to follow > the mouse strictly, then she or he can set `frame-resize-pixelwise' to > t. That's the idea, yes. > Also, unlike the NS port, the Mac port does not "white out" the screen > during mouse dragging but updates the contents, and it is a bit heavy > operation. Rounding during mouse dragging also acts as "coalescing" > screen updates. Makes sense. > (Actually, the way to implement this screen updating during mouse > dragging on the Mac port interferes with "window snapping" introduced > in macOS 10.12, so it is disabled if running on that version.) So what do you do with "window snapping"? Can you ask for a "white out"? > Rounding does not happen for the axis that is specified to be > maximized/full so that it does not leave spaces. So, rounding happens > only for horizontal axis when the fullscreen frame parameter is set to > 'fullheight if `frame-resize-pixelwise' is nil. Sounds reasonable. Hmm... Leaves me with one question: When do you suppress rounding with `frame-resize-pixelwise' nil? Only for "for the axis that is specified to be maximized/full"? Or are there other cases? martin ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-09-18 9:52 ` martin rudalics @ 2016-09-18 14:46 ` Eli Zaretskii 2016-09-18 15:15 ` martin rudalics 2016-09-19 2:01 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: Eli Zaretskii @ 2016-09-18 14:46 UTC (permalink / raw) To: martin rudalics; +Cc: mituharu, emacs-devel > Date: Sun, 18 Sep 2016 11:52:44 +0200 > From: martin rudalics <rudalics@gmx.at> > Cc: emacs-devel@gnu.org > > I (silently) do not round on Windows Is it wise to have Emacs on MS-Windows behave differently in this regard? (Is it even documented?) ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-09-18 14:46 ` Eli Zaretskii @ 2016-09-18 15:15 ` martin rudalics 2016-09-18 15:41 ` Eli Zaretskii 0 siblings, 1 reply; 320+ messages in thread From: martin rudalics @ 2016-09-18 15:15 UTC (permalink / raw) To: Eli Zaretskii; +Cc: mituharu, emacs-devel > Is it wise to have Emacs on MS-Windows behave differently in this > regard? Windows doesn't support anything but pixelwise resizing of its windows. This means that the final shape of a frame visually indicated by Windows when mouse dragging a border or an edge would not be implemented by a chracter size oriented Emacs. Rather, Emacs would snap window sizes back as it did in older versions. > (Is it even documented?) Look up `frame-resize-pixelwise' in the Elisp manual. martin ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-09-18 15:15 ` martin rudalics @ 2016-09-18 15:41 ` Eli Zaretskii 2016-09-18 17:06 ` martin rudalics 0 siblings, 1 reply; 320+ messages in thread From: Eli Zaretskii @ 2016-09-18 15:41 UTC (permalink / raw) To: martin rudalics; +Cc: mituharu, emacs-devel > Date: Sun, 18 Sep 2016 17:15:42 +0200 > From: martin rudalics <rudalics@gmx.at> > CC: mituharu@math.s.chiba-u.ac.jp, emacs-devel@gnu.org > > > Is it wise to have Emacs on MS-Windows behave differently in this > > regard? > > Windows doesn't support anything but pixelwise resizing of its windows. > This means that the final shape of a frame visually indicated by Windows > when mouse dragging a border or an edge would not be implemented by a > chracter size oriented Emacs. Rather, Emacs would snap window sizes > back as it did in older versions. I'm asking why it is wrong to do that in newer versions, as long as frame-resize-pixelwise is nil. Especially since we behave like that on other systems. > > (Is it even documented?) > > Look up `frame-resize-pixelwise' in the Elisp manual. But frame resizing by dragging by a mouse is a user-visible feature, not only for Lisp programmers. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-09-18 15:41 ` Eli Zaretskii @ 2016-09-18 17:06 ` martin rudalics 2016-09-18 17:19 ` Eli Zaretskii 0 siblings, 1 reply; 320+ messages in thread From: martin rudalics @ 2016-09-18 17:06 UTC (permalink / raw) To: Eli Zaretskii; +Cc: mituharu, emacs-devel > I'm asking why it is wrong to do that in newer versions, as long as > frame-resize-pixelwise is nil. Because we want to give users a nice experience, by default. > Especially since we behave like that > on other systems. The "other systems" have window managers that do support size hints. Windows doesn't. We can not tell Windows where to draw the desired shape of the frame. Basically, our Windows code does not behave differently from X code at all: Emacs simply respects the requested size. If it didn't on Windows - that is, if we applied some character size based rounding - we would immediately get Aero Snap requests wrong which may ask, for example, to have a window occupy the left or right half of the screen. We cannot distinguish whether any such request is the result of dragging a frame edge with the mouse or that of an Aero routine. >> > (Is it even documented?) >> >> Look up `frame-resize-pixelwise' in the Elisp manual. > > But frame resizing by dragging by a mouse is a user-visible feature, > not only for Lisp programmers. Why bother users with something that works out of the box and without a single complaint over the past years? The one and only problem users had so far is that of window managers trying to maximize frames characterwise and failing miserably. That problem is addressed in the user manual. martin ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-09-18 17:06 ` martin rudalics @ 2016-09-18 17:19 ` Eli Zaretskii 2016-09-19 8:19 ` martin rudalics 0 siblings, 1 reply; 320+ messages in thread From: Eli Zaretskii @ 2016-09-18 17:19 UTC (permalink / raw) To: martin rudalics; +Cc: mituharu, emacs-devel > Date: Sun, 18 Sep 2016 19:06:29 +0200 > From: martin rudalics <rudalics@gmx.at> > CC: mituharu@math.s.chiba-u.ac.jp, emacs-devel@gnu.org > > > I'm asking why it is wrong to do that in newer versions, as long as > > frame-resize-pixelwise is nil. > > Because we want to give users a nice experience, by default. So basically, no matter what is the value of frame-resize-pixelwise, we behave the same on Windows? If so, I think we deprive users of the flexibility to experience the other behavior, however unimportant it may seem, and that is IMO a pity. > >> Look up `frame-resize-pixelwise' in the Elisp manual. > > > > But frame resizing by dragging by a mouse is a user-visible feature, > > not only for Lisp programmers. > > Why bother users Because that's what manuals are about: bothering users with the details of how the software works. Those who don't want to read, don't have to. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-09-18 17:19 ` Eli Zaretskii @ 2016-09-19 8:19 ` martin rudalics 0 siblings, 0 replies; 320+ messages in thread From: martin rudalics @ 2016-09-19 8:19 UTC (permalink / raw) To: Eli Zaretskii; +Cc: mituharu, emacs-devel > So basically, no matter what is the value of frame-resize-pixelwise, > we behave the same on Windows? Correct. ‘frame-resize-pixelwise’ is responsible for which size hints are passed to the window manager. There are no size hints on Windows. > If so, I think we deprive users of the > flexibility to experience the other behavior, however unimportant it > may seem, and that is IMO a pity. It's a pity that you did not comment even one of the issues I mentioned in my previous posts. My primary concern is to make Emacs stable and predictable when resizing frames and windows. On every platform I can work on. I don't intend to trade stability for flexibility. When a window manager or the OS ask Emacs to resize its window in a certain way, I comply. This doctrine was established by Jan many years ago and fully applies to all X based platforms. Earlier we refused non-characterwise resize requests on Windows because we considered leaving empty space within the Emacs window the greater evil. Such refusal was a gross hack, breaking tiling and all sorts of maximization/fullscreen requests. With pixelwise frame resizing we can fill any empty space within the Emacs window with text and apply Jan's rule to Windows builds as well. >> Why bother users > > Because that's what manuals are about: bothering users with the > details of how the software works. I was convinced that the "details of how the software works" belong to the Elisp manual. Presumably I was wrong. > Those who don't want to read, > don't have to. It makes me a bit sad that you apparently believe that I have chosen the way of handling resize requests on Windows deliberately. It took me quite some time to arrive at the present solution and I am glad that so far we never got any bug reports in this area. I wished I could say the same thing about the remaining platforms. martin ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-09-18 9:52 ` martin rudalics 2016-09-18 14:46 ` Eli Zaretskii @ 2016-09-19 2:01 ` YAMAMOTO Mitsuharu 2016-09-19 8:19 ` martin rudalics 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2016-09-19 2:01 UTC (permalink / raw) To: martin rudalics; +Cc: emacs-devel >>>>> On Sun, 18 Sep 2016 11:52:44 +0200, martin rudalics <rudalics@gmx.at> said: >> (Actually, the way to implement this screen updating during mouse >> dragging on the Mac port interferes with "window snapping" introduced >> in macOS 10.12, so it is disabled if running on that version.) > So what do you do with "window snapping"? Can you ask for a "white > out"? For "window snapping" introduced in macOS Sierra, see https://www.youtube.com/watch?v=pzJGeTS49f4 . The difficulty in updating the frame contents during resize by mouse dragging on OS X/macOS comes from the fact that it is processed in a modal loop. To reflect the frame size change in Emacs, we have to go back to Lisp event loop so it triggers redisplay, but the modal loop does not allow us to do so. Screen updating during mouse dragging is handled by generating fake events press -> drag -> release -> press -> drag -> release -> ... internally during a single dragging session. Between (fake) release and press, we go back to the Lisp event loop to trigger redisplay. Unfortunately, this fake event generation does not work with "window snapping" introduced in upcoming macOS 10.12 Sierra, probably because the contextual information is lost by fragmented drag events. I don't want to make a frame all white as in the NS port, so I capture the frame contents as a bitmap, decompose it to window (Emacs terminology) contents, and distribute them proportionally during resize by mouse dragging. >> Rounding does not happen for the axis that is specified to be >> maximized/full so that it does not leave spaces. So, rounding happens >> only for horizontal axis when the fullscreen frame parameter is set to >> 'fullheight if `frame-resize-pixelwise' is nil. > Sounds reasonable. Hmm... > Leaves me with one question: When do you suppress rounding with > `frame-resize-pixelwise' nil? Only for "for the axis that is specified > to be maximized/full"? Or are there other cases? No other cases. It is handled in the delegate method windowWillResize:toSize: (you can think it as a callback) at https://bitbucket.org/mituharu/emacs-mac/src/550234fa179601d4bace2cf32b693fc33f3d1266/src/macappkit.m?at=master&fileviewer=file-view-default#macappkit.m-2915 . Rounding is done in the method hintedWindowFrameSize:allowsLarger: at https://bitbucket.org/mituharu/emacs-mac/src/550234fa179601d4bace2cf32b693fc33f3d1266/src/macappkit.m?at=master&fileviewer=file-view-default#macappkit.m-2302 . YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-09-19 2:01 ` YAMAMOTO Mitsuharu @ 2016-09-19 8:19 ` martin rudalics 2016-09-19 8:42 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: martin rudalics @ 2016-09-19 8:19 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel > For "window snapping" introduced in macOS Sierra, see > https://www.youtube.com/watch?v=pzJGeTS49f4 . IIUC this video shows only how snapping works when moving windows around the screen. There's no resizing involved. Do windows also "snap" while they get resized? > The difficulty in updating the frame contents during resize by mouse > dragging on OS X/macOS comes from the fact that it is processed in a > modal loop. To reflect the frame size change in Emacs, we have to go > back to Lisp event loop so it triggers redisplay, but the modal loop > does not allow us to do so. I understand. But simply moving windows does not resize them. No need to trigger redisplay. > Screen updating during mouse dragging is handled by generating fake > events press -> drag -> release -> press -> drag -> release -> ... > internally during a single dragging session. Between (fake) release > and press, we go back to the Lisp event loop to trigger redisplay. > > Unfortunately, this fake event generation does not work with "window > snapping" introduced in upcoming macOS 10.12 Sierra, probably because > the contextual information is lost by fragmented drag events. I don't > want to make a frame all white as in the NS port, so I capture the > frame contents as a bitmap, decompose it to window (Emacs terminology) > contents, ... to avoid that scroll bars appear in the wrong place, I presume ... > and distribute them proportionally during resize by mouse > dragging. Thanks for the information, martin ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-09-19 8:19 ` martin rudalics @ 2016-09-19 8:42 ` YAMAMOTO Mitsuharu 0 siblings, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2016-09-19 8:42 UTC (permalink / raw) To: martin rudalics; +Cc: emacs-devel >>>>> On Mon, 19 Sep 2016 10:19:22 +0200, martin rudalics <rudalics@gmx.at> said: >> For "window snapping" introduced in macOS Sierra, see >> https://www.youtube.com/watch?v=pzJGeTS49f4 . > IIUC this video shows only how snapping works when moving windows around > the screen. There's no resizing involved. Do windows also "snap" while > they get resized? Yes. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-09-18 6:39 ` Emacs Mac port YAMAMOTO Mitsuharu 2016-09-18 7:32 ` martin rudalics @ 2016-10-30 5:55 ` YAMAMOTO Mitsuharu 2017-02-04 5:46 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2016-10-30 5:55 UTC (permalink / raw) To: emacs-devel The first update of the Mac port based on Emacs 25.1 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-25.1-mac-6.1.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git The thirteenth update of the Mac port based on Emacs 24.5 is also available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.20.tar.gz The corresponding branch in the Git repository is `mac-24'. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Incremental search with a Japanese text in an empty buffer fails. Reported by Takaaki Ishikawa. *** Crash when showing a tooltip on macOS 10.12 if compiled with enable-checking. *** Crash with C-x 5 5 2 -> C-x 5 2 -> close the first frame with the red "x" button on macOS 10.12. *** Fullscreen transition animation looks awkward on OS X 10.7. This is a regression introduced in 6.0 as the fix for "fullscreen frames contain space at the top on OS X 10.10". *** Proxy icon is sometimes not updated. *** M-x battery RET does not show battery info on macOS 10.12. Apply a fix for Bug#24537. *** Emacs sometimes becomes unresponsive to Dock icon clicks (though it reacts to Command-Tab) if its frames are completely covered by other applications for a while on macOS 10.12. ** Improvements *** Ligature glyph width is adjusted to a multiple of space width for monospace fonts. *** Screen update during resize now works on macOS 10.12 if frame-resize-pixelwise is nil. *** Character Picker is shown in Touch Bar. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-10-30 5:55 ` YAMAMOTO Mitsuharu @ 2017-02-04 5:46 ` YAMAMOTO Mitsuharu 2017-02-05 2:35 ` Xu Xin 2017-04-21 23:54 ` YAMAMOTO Mitsuharu 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2017-02-04 5:46 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 25.2 release candidate 1 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-25.2-rc1-mac-6.2.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Can't resize a frame by dragging its edge on macOS 10.12 via Screen Sharing.app. *** mac-auto-operator-composition-mode does not compose "{." for Fira Code. *** On Mac OS X 10.7 - OS X 10.9, Emacs consumes CPU time even when it is idle if tool bars are shown. This is a regression introduced in the previous version. *** Crash when pressing Command + power button on OS X 10.9 and later if mac-pass-command-to-system is nil. Reported by Leo. *** Drag-and-dropping URL does not respect dnd-protocol-alist. *** Lisp representation of CFNumber may overflow on 64-bit binary. *** Crash when evaluating (mac-coerce-ae-data "furl" "file:///.file/" 'undecoded-file-name) *** Closing a tab in a full screen space causes error on macOS 10.12. ** Improvements *** Show text input candidates and dialog buttons in Touch Bar. *** Update emoji data to UTR #51 version 4.0. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2017-02-04 5:46 ` YAMAMOTO Mitsuharu @ 2017-02-05 2:35 ` Xu Xin 2017-02-05 2:41 ` YAMAMOTO Mitsuharu 2017-04-21 23:54 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: Xu Xin @ 2017-02-05 2:35 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: Emacs developers On Sat, Feb 4, 2017 at 12:46 AM, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> wrote: > The Mac port based on Emacs 25.2 release candidate 1 is now available from > > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-25.2-rc1-mac-6.2.tar.gz > > and Git repository is also available at > > https://bitbucket.org/mituharu/emacs-mac.git > > YAMAMOTO Mitsuharu > mituharu@math.s.chiba-u.ac.jp > > ** Fixed bugs > > *** Can't resize a frame by dragging its edge on macOS 10.12 via > Screen Sharing.app. > > *** mac-auto-operator-composition-mode does not compose "{." for Fira > Code. > > *** On Mac OS X 10.7 - OS X 10.9, Emacs consumes CPU time even when it > is idle if tool bars are shown. This is a regression introduced in > the previous version. > > *** Crash when pressing Command + power button on OS X 10.9 and later > if mac-pass-command-to-system is nil. > Reported by Leo. > > *** Drag-and-dropping URL does not respect dnd-protocol-alist. > > *** Lisp representation of CFNumber may overflow on 64-bit binary. > > *** Crash when evaluating (mac-coerce-ae-data "furl" "file:///.file/" > 'undecoded-file-name) > > *** Closing a tab in a full screen space causes error on macOS 10.12. > > ** Improvements > > *** Show text input candidates and dialog buttons in Touch Bar. > > *** Update emoji data to UTR #51 version 4.0. > Looks there's no "emacs-25.2-rc1-mac-6.2" tag in Bitbucket Git repository? ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2017-02-05 2:35 ` Xu Xin @ 2017-02-05 2:41 ` YAMAMOTO Mitsuharu 0 siblings, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2017-02-05 2:41 UTC (permalink / raw) To: Xu Xin; +Cc: Emacs developers >>>>> On Sat, 4 Feb 2017 21:35:57 -0500, Xu Xin <railwaycat@gmail.com> said: > Looks there's no "emacs-25.2-rc1-mac-6.2" tag in Bitbucket Git repository? Oops, I forgot to push the tag. Thanks for letting me know. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2017-02-04 5:46 ` YAMAMOTO Mitsuharu 2017-02-05 2:35 ` Xu Xin @ 2017-04-21 23:54 ` YAMAMOTO Mitsuharu 2017-05-22 3:31 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2017-04-21 23:54 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 25.2 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-25.2-mac-6.3.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git The fourteenth update of the Mac port based on Emacs 24.5 is also available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.21.tar.gz The corresponding branch in the Git repository is `mac-24'. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** call-process is slow especially when there are many/large frames. Adapt a fix for Bug#26397. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2017-04-21 23:54 ` YAMAMOTO Mitsuharu @ 2017-05-22 3:31 ` YAMAMOTO Mitsuharu 2017-07-27 4:54 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2017-05-22 3:31 UTC (permalink / raw) To: emacs-devel The first update of the Mac port based on Emacs 25.2 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-25.2-mac-6.4.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git The fifteenth update of the Mac port based on Emacs 24.5 is also available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.22.tar.gz The corresponding branch in the Git repository is `mac-24'. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** call-process(-region) hangs occasionally. This is a regression introduced in the previous version. Reported by Andreas Fuchs. *** Multi-font compositions may be displayed wrong. Apply a fix for Bug#26742. ** Improvements *** Update emoji data to UTS #51 version 5.0. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2017-05-22 3:31 ` YAMAMOTO Mitsuharu @ 2017-07-27 4:54 ` YAMAMOTO Mitsuharu 2017-08-24 1:14 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2017-07-27 4:54 UTC (permalink / raw) To: emacs-devel The second update of the Mac port based on Emacs 25.2 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-25.2-mac-6.5.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** The option --chdir is ignored when the stdin is not a tty. Reported by Mark Abney. *** SVG does not import external images specified by relative URLs. *** "Services" -> "Capture Selection From Screen" inserts a large image on a Retina display. *** Crash when some display vector is an empty string. Apply a fix for Bug#27504. *** "Show All Tabs" in the tab context menu leads to crash on macOS 10.13 Beta. ** Improvements *** New function mac-frame-tab-group-property to inspect tab group properties. Corresponding setter function is still in development. *** Pixel-based mouse wheel smooth scrolling is now snappier especially on large frames or when flipping directions. *** On OS X 10.10 and later, animation by mac-start-animation is no longer suppressed when the frame is not completely opaque. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2017-07-27 4:54 ` YAMAMOTO Mitsuharu @ 2017-08-24 1:14 ` YAMAMOTO Mitsuharu 2017-09-12 5:31 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2017-08-24 1:14 UTC (permalink / raw) To: emacs-devel The third update of the Mac port based on Emacs 25.2 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-25.2-mac-6.6.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Infinite recursion under prettify-symbols-mode and linum-mode. Apply a fix for Bug#27761. *** Crash when resizing a frame too small by mouse dragging. *** Can't resize a frame by dragging on macOS 10.13 Beta via Screen Sharing.app. ** Improvements *** The fancy splash screen look vibrant on OS X 10.10 and later. For non-Retina display users, it is recommended to replace etc/images/splash.png with the alpha-channeled version: https://bytebucket.org/mituharu/emacs-mac/raw/82af04a197db41d8b9cc3bc04127be2bf01d255f/etc/images/splash.png This effect can be turned off with "Reduce translucency" in the Accessibility pane of the System Preferences. *** On OS X 10.10 and later, if the frame background color is light, then scroll bars look slightly translucent. This effect can be turned off with "Reduce translucency" in the Accessibility pane of the System Preferences. *** On OS X 10.10 and later, if the frame background color is dark, then the title bar, the tool bar, (the tab bar on macOS 10.12), scroll bars, and popup menus look also dark. The title/tool/tab bars have already looked translucent on macOS 10.12 regardless of the frame background color types. Text smoothing in these bars for the focused frame seems to be problematic if the contents contain Core Animation layers that use Core Image filters especially with dark window background colors and non-Retina displays. A change in the last version with respect to window/view hierarchy manifested this problem, and the use of dark bars works around it. *** Magnify and rotate events now contain the :phase property. Now absence of the :phase property in a magnify event means it is a "smart magnify" event rather than what is caused by a pinch gesture. On OS X 10.10 and later, its value is either `began', `changed', or `ended'. On earlier versions, it is always `none'. *** New function mac-send-action that sends the specified Cocoa action using the responder chain for action messages. Some useful examples Cocoa actions are `zoom', `hide', `unhide', `activate', `hideOtherApplications', `unhideAllApplications', and `orderFrontCharacterPalette'. *** New function mac-frame-tab-group-property to set tab group properties. *** New menu items (mostly in the "Buffers" menu), key bindings (Control-Tab, Control-Shift-Tab) for tabbing on macOS 10.12 and later. *** On macOS 10.13 Beta, the pinch close gesture triggers tab group overview. If you want to make the text size smaller, first pinch open and then pinch close without releasing the fingers from the trackpad. Alternatively, remap the corresponding command as: (global-set-key [remap mac-magnify-text-scale-or-overview-tab-group] 'mac-magnify-text-scale) ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2017-08-24 1:14 ` YAMAMOTO Mitsuharu @ 2017-09-12 5:31 ` YAMAMOTO Mitsuharu 2017-09-13 3:46 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2017-09-12 5:31 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 25.3 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-25.3-mac-6.7.tar.gz The Git repository at bitbucket is not updated yet. I'll do that once Emacs 25.3 gets available in the repository upstream. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** The format "%x" in `org-capture-templates' does not work. ** Improvements *** Support the frame parameter `scroll-bar-background'. If it is nil, which is the default, then the frame background color is used instead. Its color also affects the appearance of other GUI parts: the title bar, the tool bar, (the tab bar on macOS 10.12 and later), scroll bars, and popup menus become light (or dark) if the color is considered light (or dark, respectively). On macOS 10.12 and later, the title/tool/tab bars look slightly colored with the value of the `scroll-bar-background' frame parameter (or the frame background color) if the frame is focused and not in fullscreen. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2017-09-12 5:31 ` YAMAMOTO Mitsuharu @ 2017-09-13 3:46 ` YAMAMOTO Mitsuharu 2017-09-26 2:28 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2017-09-13 3:46 UTC (permalink / raw) To: emacs-devel >>>>> On Tue, 12 Sep 2017 14:31:23 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > The Git repository at bitbucket is not updated yet. I'll do that > once Emacs 25.3 gets available in the repository upstream. Done. Available from https://bitbucket.org/mituharu/emacs-mac.git as usual. I also created a new branch `experimental/mac-gui-thread' in the above repository for preparation of multi-thread support in Emacs 26. The branch itself is still based on Emacs 25 to test this new design and code on top of a stable basis. It runs the Lisp REPL in a non-main thread, so the main thread is dedicated to GUI tasks, which might be requested from multiple Lisp threads if we switch to version 26. The GUI and Lisp threads run mostly cooperatively (i.e., do not run simultaneously) except in the `select' emulation. Note that the variable `main_thread' in sysdep.c no longer corresponds to the "main thread" in a usual sense. > ** Improvements > *** Support the frame parameter `scroll-bar-background'. > If it is nil, which is the default, then the frame background color is > used instead. Its color also affects the appearance of other GUI > parts: the title bar, the tool bar, (the tab bar on macOS 10.12 and > later), scroll bars, and popup menus become light (or dark) if the > color is considered light (or dark, respectively). On macOS 10.12 and > later, the title/tool/tab bars look slightly colored with the value of > the `scroll-bar-background' frame parameter (or the frame background > color) if the frame is focused and not in fullscreen. If you want light scroll bars, title bars, etc. while using a dark frame background color as it used to be, then customize the `scroll-bar-background' frame parameter to "white", for example. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2017-09-13 3:46 ` YAMAMOTO Mitsuharu @ 2017-09-26 2:28 ` YAMAMOTO Mitsuharu 2017-10-12 8:12 ` YAMAMOTO Mitsuharu 2018-04-15 7:55 ` YAMAMOTO Mitsuharu 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2017-09-26 2:28 UTC (permalink / raw) To: emacs-devel The first update of the Mac port based on Emacs 25.3 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-25.3-mac-6.8.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git Courageous users are invited to try the `experimental/mac-gui-thread' branch in the above repository. >>>>> On Wed, 13 Sep 2017 12:46:51 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > I also created a new branch `experimental/mac-gui-thread' in the > above repository for preparation of multi-thread support in Emacs > 26. The branch itself is still based on Emacs 25 to test this new > design and code on top of a stable basis. > It runs the Lisp REPL in a non-main thread, so the main thread is > dedicated to GUI tasks, which might be requested from multiple Lisp > threads if we switch to version 26. The GUI and Lisp threads run > mostly cooperatively (i.e., do not run simultaneously) except in the > `select' emulation. Note that the variable `main_thread' in > sysdep.c no longer corresponds to the "main thread" in a usual > sense. In addition to the usual configure options for debugging, I'd recommend using "the Main Thread Checker" introduced in Xcode 9 by setting the environment variable DYLD_INSERT_LIBRARIES to /Applications/Xcode.app/Contents/Developer/usr/lib/libMainThreadChecker.dylib If you are using lldb, then you can set it as follows: (lldb) settings set target.env-vars DYLD_INSERT_LIBRARIES=/Applications/Xcode.app/Contents/Developer/usr/lib/libMainThreadChecker.dylib YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Frame parameter `alpha' does not work in tooltip-frame-parameters. *** Switching to/from `fullboth' frame does not preserve tool bar. *** Hourglass (progress indicator) on a dark title bar is invisible. *** Live resize transition animation does not respect internal border. *** Some input methods (e.g., Japanese one) on macOS 10.13 do not recognize Control+Space even if it is unchecked in the system-wide short cut settings. This issue is registered in the Apple Bug Reporter as rdar://33842041, but still open. A workaround is added. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2017-09-26 2:28 ` YAMAMOTO Mitsuharu @ 2017-10-12 8:12 ` YAMAMOTO Mitsuharu 2018-04-15 7:55 ` YAMAMOTO Mitsuharu 1 sibling, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2017-10-12 8:12 UTC (permalink / raw) To: emacs-devel The bare development branch of the Mac port is now based on Emacs 26.0.90 pretest: https://bitbucket.org/mituharu/emacs-mac.git The branch name is "work". It should be considered as experimental/hackers-only. At the moment, the new frame parameters `parent-frame' and `undecorated' are not supported yet. I have some premature code internally, but not included in the repository above. In order to support concurrency on Emacs 26 properly, I've redesigned the `select' emulation code. It runs the Lisp REPL in a non-main thread, so the main thread is dedicated to GUI tasks, which might be requested from multiple Lisp threads. The GUI and Lisp threads run mostly cooperatively (i.e., do not run simultaneously) except in the `select' emulation. Note that the variable `main_thread_id' in sysdep.c no longer corresponds to the "main thread" in a usual sense. Thanks to this new design, all the following examples can work without hang or crash: (make-thread (lambda () (let (last-nonmenu-event) (setq test (y-or-n-p-with-timeout "test" 2 'timeout))))) (make-thread 'buffer-menu-open) (make-thread (lambda () (let (last-nonmenu-event) (call-interactively 'find-file)))) (make-thread (lambda () (setq test (x-select-font)))) In addition to the usual configure options for debugging, I'd recommend using "the Main Thread Checker" introduced in Xcode 9 by setting the environment variable DYLD_INSERT_LIBRARIES to /Applications/Xcode.app/Contents/Developer/usr/lib/libMainThreadChecker.dylib If you are using lldb, then you can set it as follows: (lldb) settings set target.env-vars DYLD_INSERT_LIBRARIES=/Applications/Xcode.app/Contents/Developer/usr/lib/libMainThreadChecker.dylib YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2017-09-26 2:28 ` YAMAMOTO Mitsuharu 2017-10-12 8:12 ` YAMAMOTO Mitsuharu @ 2018-04-15 7:55 ` YAMAMOTO Mitsuharu 2018-05-29 3:45 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2018-04-15 7:55 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 26.1 release candidate 1 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.1-rc1-mac-6.90.tar.gz ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-hires-icons-3.0.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git Get it from the "master" branch. The "work" branch is for bare development and not for release (candidate) versions. The second update of the Mac port based on Emacs 25.3 is also available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-25.3-mac-6.9.tar.gz ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-hires-icons-3.0.tar.gz (Hiresolution icons are the same as those for emacs-26.1-rc1-mac-6.90) The corresponding branch in the Git repository is "mac-25". YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** The function `get-free-disk-space' gives free inode count rather than free data block space on OS X 10.8 and later (Bug#28639). *** Crash on macOS 10.13 with pinch close to invoke tab overview over some highlighted text and then clicking the input source menu in the menu bar. *** On macOS 10.13.1, pinch close gesture with shift key causes exit and then enter fullboth. *** Making frame fullboth is slow on macOS 10.13.1. *** Crash when showing menu help strings while minibuffer is invisible. Reported by Konrad Podczeck. *** Entering fullboth from a fullscreen frame makes it maximized. This is a regression introduced in 5.90. *** Entering and then exiting from fullboth makes the frame shorter. *** Space width for monospace fonts may be wrong. This is a regression introduced in 6.1 as "ligature glyph width adjustment". ** Improvements *** Adopt CFBundleDocumentTypes part from the NS port. Contributed by Xin Xu. *** Update emoji data to UTS #51 version 11.0. *** On macOS 10.13, the pinch close gesture makes the text shrunken (rather than triggering tab group overview) if the text is magnified. *** New variable `mac-ignore-accessibility'. Emacspeak users may want to set this variable so it may not interfere with the system accessibility services such as VoiceOver. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2018-04-15 7:55 ` YAMAMOTO Mitsuharu @ 2018-05-29 3:45 ` YAMAMOTO Mitsuharu 2018-06-10 6:09 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2018-05-29 3:45 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 26.1 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.1-mac-7.0.tar.gz ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-hires-icons-3.0.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Circular dependency in mac/Emacs.app/Contents for in-tree build. Contributed by Jose Arroyo. *** Symlinks autocomplete as directories on OS X 10.9 and earlier (Bug#31305). A workaround is added. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2018-05-29 3:45 ` YAMAMOTO Mitsuharu @ 2018-06-10 6:09 ` YAMAMOTO Mitsuharu 2018-09-09 1:11 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2018-06-10 6:09 UTC (permalink / raw) To: emacs-devel The first update of the Mac port based on Emacs 26.1 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.1-mac-7.1.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git This is an urgent bug fix release. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** mouse-wheel-flip-direction does not have any effect. Reported by Yuen Ho Wang. *** C-g does not quit call-process. Reported by xristos. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2018-06-10 6:09 ` YAMAMOTO Mitsuharu @ 2018-09-09 1:11 ` YAMAMOTO Mitsuharu 2018-10-24 3:58 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2018-09-09 1:11 UTC (permalink / raw) To: emacs-devel The second update of the Mac port based on Emacs 26.1 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.1-mac-7.2.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Buffer contents are not displayed on macOS 10.14. This is mainly because now NSViews are backed by Core Animation Layer (layer-backed) by default and non-deferred drawing into views no longer works. Instead of switching to deferred drawing (i.e., draw only inside -[NSView drawRect:]), we draw into our own backing bitmap in a non-deferred way as before, and update the view contents with the resulting image via -[NSView updateLayer]. This "application-side double buffering" is also available on OS X 10.8 - macOS 10.13 if you set the frame parameter `inhibit-double-buffering' to nil when creating a frame. Just like on macOS 10.14, such a frame does not do LCD smoothing. *** Screenshot grabbed via Services is displayed in wrong size when we have display mirroring between Retina and non-Retina displays. *** Cursor movement just after frame resize sometimes leaves garbage. *** Crash by the Fall_threads call from the GUI thread at the select emulation when there are multiple Lisp threads. *** Info title has ASCII underline unlike other window systems. *** Vertical scroll bar is created as horizontal if frame font height is short. ** Improvements *** macOS 10.14 adds property :appearance to (mac-application-state). The value may be "NSAppearanceNameAqua" or "NSAppearanceNameDarkAqua". *** Add new color format "mac:COLOR-LIST-NAME:COLOR-NAME" and "mac:COLOR-NAME" (shorthand for "mac:System:COLOR-NAME"). The actual color may be different depending on the global appearance setting on macOS 10.14. For example, "mac:textColor" is black on the Light Mode but is white on the Dark Mode. *** Default frame colors respect appearance setting on macOS 10.14. Now the default frame foreground/background color is "mac:textColor"/"mac:textBackgroundColor", respectively. Changes of the system setting of the global appearance are dynamically reflected. *** New function `mac-color-list-alist' to get the available combinations of COLOR-LIST-NAMEs and COLOR-NAMEs. Note that this value is dependent on user environment and OS version. Also, some combinations may represent image patterns rather than colors. For the former cases, `(color-values "mac:COLOR-LIST-NAME:COLOR-NAME")' returns nil. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2018-09-09 1:11 ` YAMAMOTO Mitsuharu @ 2018-10-24 3:58 ` YAMAMOTO Mitsuharu 2018-11-06 7:51 ` YAMAMOTO Mitsuharu 2018-11-16 9:56 ` YAMAMOTO Mitsuharu 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2018-10-24 3:58 UTC (permalink / raw) To: emacs-devel The third update of the Mac port based on Emacs 26.1 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.1-mac-7.3.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git The third update of the Mac port based on Emacs 25.3 is also available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-25.3-mac-6.10.tar.gz The corresponding branch in the Git repository is "mac-25". YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp * emacs-26.1-mac-7.3 (2018-10-24) ** Fixed bugs *** Underline for converted text is invisible on dark background. *** Possible stack overflow (Bug#31995 and Bug#32338). *** Changing tool bar style (either via the variable tool-bar-style or tool bar context menu) may make the frame blank with application-side double buffering, which is forced on macOS 10.14. *** CPU load is high if application-side double buffering is used. This is mainly caused by the use of layer-backed views together with other CALayers involving Core Image filters, and that seems to lead to excessive CPU time consumption by the CVDisplayLink thread. Now overlay views, which host CALayers that use Core Image filters for several animation effects and drag-and-drop highlighting, are added into the view hierarchy in an on-demand way to avoid this phenomenon. *** Drag-and-drop into Emacs frame does not work on Mac OS X 10.6. This is a regression introduced in 7.2. *** U+1F9B5 and U+1F9B6 are missing from list of emoji modifier bases. *** Frames that use application-side double buffering cannot do LCD font smoothing even on OS X 10.8 - macOS 10.13. On macOS 10.14, LCD font smoothing is globally disabled by default. You need to execute "$ defaults write org.gnu.Emacs CGFontRenderingFontSmoothingDisabled -bool NO" to enable it. *** Sending Apple Events to other applications causes an error on macOS 10.14. *** Fail to launch on OS X 10.8. This is a regression introduced in 7.2. ** Improvement *** In addition to TIFF, PDF is accepted as pasteboard image data. Now "Scan Documents" in the context menu on macOS 10.14 can insert PDF data scanned by your nearby iOS devices (Continuity Camera). *** New experimental configure option `--with-mac-metal' to use GPU for pixel copy operations in the frames using application-side double buffering on OS X 10.11 or later with supported hardware (see https://support.apple.com/HT205073). If you are using this feature in the selected frame, then the expression below will be evaluated to t: (and (frame-monitor-attribute 'metal-device-name) (not (frame-parameter nil 'inhibit-double-buffering))) On the Mac port, setting the value of the frame parameter `inhibit-double-buffering' is only effective at the frame creation time. So on OS X 10.11 - macOS 10.13, you need to specify it either as (make-frame '((inhibit-double-buffering))), by default-frame-alist, or by X resources emulation via Preferences system (see Mac port section in Info). On macOS 10.14, there is no choice other than application-side double buffering, so you don't need to care about it. Currently this feature is only tested in very limited environments. In particular, I can't test it with dynamic switching between integrated and discrete GPUs. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2018-10-24 3:58 ` YAMAMOTO Mitsuharu @ 2018-11-06 7:51 ` YAMAMOTO Mitsuharu 2018-11-16 9:56 ` YAMAMOTO Mitsuharu 1 sibling, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2018-11-06 7:51 UTC (permalink / raw) To: emacs-devel > The third update of the Mac port based on Emacs 26.1 is now available > The third update of the Mac port based on Emacs 25.3 is also available I received a report that SVG rendering via WebKit has become so slow. This happens both with the Mac port version 7.2/7.3 based on Emacs 26.1 and with version 6.10 based on Emacs 25.3 when built on macOS 10.13 or later. I'll address this issue in the next release. For the moment, please build the executable with $ make CFLAGS="-g3 -O2 -DWK_API_ENABLED=0" if SVG rendering performance is crucial for you. It will show some deprecation warnings on macOS 10.14, but still usable. Sorry for the inconvenience. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2018-10-24 3:58 ` YAMAMOTO Mitsuharu 2018-11-06 7:51 ` YAMAMOTO Mitsuharu @ 2018-11-16 9:56 ` YAMAMOTO Mitsuharu 2018-12-21 22:28 ` Leo Liu 2019-03-22 5:28 ` YAMAMOTO Mitsuharu 1 sibling, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2018-11-16 9:56 UTC (permalink / raw) To: emacs-devel The fourth update of the Mac port based on Emacs 26.1 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.1-mac-7.4.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git If you see the error message like error: no type or protocol named 'NSMenuItemValidation' when compiling it on macOS 10.14.1, then you have most likely (unconsciously) installed Command Line Tools (macOS 10.13) for Xcode 10.1. Please check your installations with the following command: $ softwareupdate --history --all | grep Command This can reportedly be fixed by downloading Command Line Tools (macOS 10.14) for Xcode 10.1 from https://developer.apple.com/download/more/ and installing it manually. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp * emacs-26.1-mac-7.4 (2018-11-16) Turn on the configure option `--with-mac-metal' by default. ** Fixed bugs *** Crash when clicking on the menu bar on some environments. Reported by John Nicola and Darren Hoo. *** Redraw needlessly on mouse movement if application-side double buffering is used. *** Synthetic bold is stronger on Retina display if application-side double buffering is used. *** Animation effect is displayed with wrong colors if application-side double buffering is used with Metal. *** SVG rendering via WebKit is slow if built on macOS 10.13 or later. Reported by Bibek Pokharel. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2018-11-16 9:56 ` YAMAMOTO Mitsuharu @ 2018-12-21 22:28 ` Leo Liu 2018-12-21 22:59 ` Tim Cross 2018-12-22 7:31 ` Eli Zaretskii 2019-03-22 5:28 ` YAMAMOTO Mitsuharu 1 sibling, 2 replies; 320+ messages in thread From: Leo Liu @ 2018-12-21 22:28 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel On 2018-11-16 18:56 +0900, YAMAMOTO Mitsuharu wrote: > The fourth update of the Mac port based on Emacs 26.1 is now available > from > > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.1-mac-7.4.tar.gz After upgrade to mojave 10.14.2 (from 10.12) I have noticed one rather inconvenient change from the OS. M-% is now intercepted by the OS to capture screen. Is there any workaround for this? Thanks, Leo ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2018-12-21 22:28 ` Leo Liu @ 2018-12-21 22:59 ` Tim Cross 2018-12-23 3:40 ` Leo Liu 2018-12-22 7:31 ` Eli Zaretskii 1 sibling, 1 reply; 320+ messages in thread From: Tim Cross @ 2018-12-21 22:59 UTC (permalink / raw) To: Leo Liu; +Cc: YAMAMOTO Mitsuharu, Emacs developers [-- Attachment #1: Type: text/plain, Size: 834 bytes --] Nothing Emacs can do here as it never sees the key press. You need to modify your keyboard shortcut preferences in macOS using System Preferences -> keyboard -> shortcuts. You will likely find other useful Emacs bindings which have been stolen by macOS and which will also need to be adjusted/removed On Sat, 22 Dec 2018 at 09:29, Leo Liu <sdl.web@gmail.com> wrote: > On 2018-11-16 18:56 +0900, YAMAMOTO Mitsuharu wrote: > > The fourth update of the Mac port based on Emacs 26.1 is now available > > from > > > > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.1-mac-7.4.tar.gz > > After upgrade to mojave 10.14.2 (from 10.12) I have noticed one rather > inconvenient change from the OS. M-% is now intercepted by the OS to > capture screen. Is there any workaround for this? > > Thanks, > Leo > > -- regards, Tim -- Tim Cross [-- Attachment #2: Type: text/html, Size: 1451 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2018-12-21 22:59 ` Tim Cross @ 2018-12-23 3:40 ` Leo Liu 0 siblings, 0 replies; 320+ messages in thread From: Leo Liu @ 2018-12-23 3:40 UTC (permalink / raw) To: emacs-devel On 2018-12-22 09:59 +1100, Tim Cross wrote: > Nothing Emacs can do here as it never sees the key press. You need to > modify your keyboard shortcut preferences in macOS using System Preferences > -> keyboard -> shortcuts. You will likely find other useful Emacs bindings > which have been stolen by macOS and which will also need to be > adjusted/removed > Thanks for the info. On 2018-12-22 09:31 +0200, Eli Zaretskii wrote: > > A (somewhat inconvenient) workaround is to use "ESC %" instead. > Yeah I already use this as a workaround it is a bit slower to type. I suppose I have to move the system key to somewhere else. Thanks for suggesting. Leo ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2018-12-21 22:28 ` Leo Liu 2018-12-21 22:59 ` Tim Cross @ 2018-12-22 7:31 ` Eli Zaretskii 1 sibling, 0 replies; 320+ messages in thread From: Eli Zaretskii @ 2018-12-22 7:31 UTC (permalink / raw) To: Leo Liu; +Cc: mituharu, emacs-devel > From: Leo Liu <sdl.web@gmail.com> > Date: Sat, 22 Dec 2018 06:28:18 +0800 > Cc: emacs-devel@gnu.org > > After upgrade to mojave 10.14.2 (from 10.12) I have noticed one rather > inconvenient change from the OS. M-% is now intercepted by the OS to > capture screen. Is there any workaround for this? A (somewhat inconvenient) workaround is to use "ESC %" instead. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2018-11-16 9:56 ` YAMAMOTO Mitsuharu 2018-12-21 22:28 ` Leo Liu @ 2019-03-22 5:28 ` YAMAMOTO Mitsuharu 2019-03-22 9:43 ` Konstantin Kharlamov 2019-04-14 6:32 ` YAMAMOTO Mitsuharu 1 sibling, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2019-03-22 5:28 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 26.2 release candidate 1 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.2-rc1-mac-7.5.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Rare crash when popping up a dialog. *** Rare crash when drawing into a tooltip frame. *** Fail to insert Apple logo if mac-system-coding-system is mac-roman. *** The name attribute is missing in display-monitor-attributes-list if the display serial number value is negative in signed int. ** Improvements *** Update emoji data to UTS #51 version 12.0. *** Add stipple support. The "@2x" file name convention and the `:data-2x' text property at the first byte of the data are also available to support optional 2x bitmaps for Retina display. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-03-22 5:28 ` YAMAMOTO Mitsuharu @ 2019-03-22 9:43 ` Konstantin Kharlamov 2019-03-22 18:11 ` Stefan Monnier 2019-04-14 6:32 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: Konstantin Kharlamov @ 2019-03-22 9:43 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel Thanks! I have a silly question: why are these improvements is a separate project instead of being in upstream? I've read the overview, and tried searching around a bit, but don't see. On Пт, Mar 22, 2019 at 08:28:09, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> wrote: > The Mac port based on Emacs 26.2 release candidate 1 is now available > from > > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.2-rc1-mac-7.5.tar.gz > > and Git repository is also available at > > https://bitbucket.org/mituharu/emacs-mac.git > > YAMAMOTO Mitsuharu > mituharu@math.s.chiba-u.ac.jp > > ** Fixed bugs > > *** Rare crash when popping up a dialog. > > *** Rare crash when drawing into a tooltip frame. > > *** Fail to insert Apple logo if mac-system-coding-system is > mac-roman. > > *** The name attribute is missing in display-monitor-attributes-list > if the display serial number value is negative in signed int. > > ** Improvements > > *** Update emoji data to UTS #51 version 12.0. > > *** Add stipple support. The "@2x" file name convention and the > `:data-2x' text property at the first byte of the data are also > available to support optional 2x bitmaps for Retina display. > ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-03-22 9:43 ` Konstantin Kharlamov @ 2019-03-22 18:11 ` Stefan Monnier 2019-03-22 23:14 ` Van L 2019-03-23 0:15 ` Jean-Christophe Helary 0 siblings, 2 replies; 320+ messages in thread From: Stefan Monnier @ 2019-03-22 18:11 UTC (permalink / raw) To: emacs-devel > Thanks! I have a silly question: why are these improvements is a separate > project instead of being in upstream? I've read the overview, and tried > searching around a bit, but don't see. Here was my explanation last time this came up (it was on reddit, hidden within a discussion about Helm): FWIW, the reason the mac port is separate has nothing to do with the policy of not supporting features specific to proprietary code. It's mostly a historical accident: when the old Carbon code for "Emacs on Mac" had to be replaced, the only established option was the "Emacs.app" port. Yamamoto's mac port was announced but not really materialized yet, and the Emacs.app promised to also work on GNUstep which was a great side benefit. So the Emacs.app code was integrated. Since then the GNUstep promise has not really materialized (tho it's been just usable enough to be able to fix a handful of MacOS bugs, IIUC), and the Emacs.app (aka "cocoa") code did not get much support (as a general rule, while Emacs has many MacOS users, it seems very few of them are interested in contributing to fix bugs and improve the code :-( ). I don't think there'd be much resistance to switching the MacOS support code to the one in the mac port (it might support MacOS-only features, but so did the Emacs.app port: it's not a reason to reject it) if that port was significantly better, but from what I hear the difference is not large enough to motivate such a switch. -- Stefan ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-03-22 18:11 ` Stefan Monnier @ 2019-03-22 23:14 ` Van L 2019-03-23 0:15 ` Jean-Christophe Helary 1 sibling, 0 replies; 320+ messages in thread From: Van L @ 2019-03-22 23:14 UTC (permalink / raw) To: emacs-devel > did not get much support (as a general rule, while Emacs has many > MacOS users, it seems very few of them are interested in > contributing to fix bugs and improve the code :-( ). I don't think > there'd be much resistance to switching the MacOS support code to > the one in the mac port (it might support MacOS-only features, but > so did the Emacs.app port: it's not a reason to reject it) if that The mac port's daemon-server for gui/tty doesn't just work. A fix there is sorely wanting. IME the mac port's configure, make is able to find the image library directory whereas the source at origin complains they are missing. Here is an opportunity for help both ways. -- © 2019 Van L gpg using EEF2 37E9 3840 0D5D 9183 251E 9830 384E 9683 B835 "The beauty of astronomy is that if you have a wrong idea you can realise it because it is not just a factor of three off it's like a factor 10 to the 24 off." - Massimo Stiavelli ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-03-22 18:11 ` Stefan Monnier 2019-03-22 23:14 ` Van L @ 2019-03-23 0:15 ` Jean-Christophe Helary 2019-03-23 11:57 ` Alan Third 2019-03-24 1:44 ` Richard Stallman 1 sibling, 2 replies; 320+ messages in thread From: Jean-Christophe Helary @ 2019-03-23 0:15 UTC (permalink / raw) To: Emacs developers > On Mar 23, 2019, at 3:11, Stefan Monnier <monnier@iro.umontreal.ca> wrote: > > (as a general rule, while Emacs has many > MacOS users, it seems very few of them are interested in > contributing to fix bugs and improve the code :-( Which is really too bad. Even though I am not a programmer by any stretch of the imagination, my very first contribution to Emacs (and my first code in lisp too) was fixing a bug that involved the macOS Services dispatched from Emacs. Regarding the macOS port, could Mitsuharu provide a list of items that he thinks should be ported to the mac port so as to remove the need for his current port ? Jean-Christophe Helary ----------------------------------------------- http://mac4translators.blogspot.com @brandelune ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-03-23 0:15 ` Jean-Christophe Helary @ 2019-03-23 11:57 ` Alan Third 2019-03-27 19:40 ` Charles A. Roelli 2019-03-24 1:44 ` Richard Stallman 1 sibling, 1 reply; 320+ messages in thread From: Alan Third @ 2019-03-23 11:57 UTC (permalink / raw) To: Jean-Christophe Helary; +Cc: Emacs developers On Sat, Mar 23, 2019 at 09:15:32AM +0900, Jean-Christophe Helary wrote: > > > > On Mar 23, 2019, at 3:11, Stefan Monnier <monnier@iro.umontreal.ca> wrote: > > > > (as a general rule, while Emacs has many > > MacOS users, it seems very few of them are interested in > > contributing to fix bugs and improve the code :-( My suspicion is that Objective C coders on Mac all use XCode, and the people using Emacs are web developers and so on. > Regarding the macOS port, could Mitsuharu provide a list of items > that he thinks should be ported to the mac port so as to remove the > need for his current port ? I don’t know the Mac port code base very well, so apologies in advance if I accidentally slander it, but I think the NS port has the potential to be a leaner, simpler port than the Mac port. To get there it needs a lot of refactoring, and ideally it would drop support for GNUstep, and possibly some older macOS versions. I’m finding it increasingly difficult to maintain backwards compatibility, particularly with things like fullscreen. OTOH, WRT the massive refactoring: if it aint broke don’t fix it. And if we did drop GNUstep it would, IMO, defeat the purpose, and we’d be as well switching to the Mac port because... The Mac port has a better maintainer than me, who knows the toolkit and things better than I could ever hope to. It ties into macOS better (I use very little macOS specific software, and the whole ‘services’ thing is a mystery to me, for example). It doesn’t have the Mojave redraw problems that have me completely scunnered at the moment. It handles concurrency better. It is simply better maintained. But then again, the Mac port makes use of things that gcc doesn’t support, like ObjC blocks, so that would probably rule it out as an official port immediately. The duplication of effort to maintain two ports seems like a waste to me, but there are definitely barriers to joining forces and having only one, official, port. But Apple may solve this one for us anyway: https://www.theregister.co.uk/2019/03/20/macos_clampdown_rumors/ ;) -- Alan Third ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-03-23 11:57 ` Alan Third @ 2019-03-27 19:40 ` Charles A. Roelli 0 siblings, 0 replies; 320+ messages in thread From: Charles A. Roelli @ 2019-03-27 19:40 UTC (permalink / raw) To: Alan Third; +Cc: brandelune, emacs-devel > Date: Sat, 23 Mar 2019 11:57:14 +0000 > From: Alan Third <alan@idiocy.org> > > I don’t know the Mac port code base very well, so apologies in advance > if I accidentally slander it, but I think the NS port has the > potential to be a leaner, simpler port than the Mac port. To get there > it needs a lot of refactoring, and ideally it would drop support for > GNUstep, and possibly some older macOS versions. I’m finding it > increasingly difficult to maintain backwards compatibility, > particularly with things like fullscreen. I hope we can do at least one more release (Emacs 27) that supports older macOS versions, since recent improvements (like your native image scaling) work well on these versions. We could then drop support for the older macOS versions in Emacs 28. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-03-23 0:15 ` Jean-Christophe Helary 2019-03-23 11:57 ` Alan Third @ 2019-03-24 1:44 ` Richard Stallman 2019-03-24 6:10 ` Van L 1 sibling, 1 reply; 320+ messages in thread From: Richard Stallman @ 2019-03-24 1:44 UTC (permalink / raw) To: Jean-Christophe Helary; +Cc: emacs-devel [[[ To any NSA and FBI agents reading my email: please consider ]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] > > (as a general rule, while Emacs has many > > MacOS users, it seems very few of them are interested in > > contributing to fix bugs and improve the code :-( > Which is really too bad. We could encourage MacOS users to run Emacs, but that is not ideal. What we really ought to encourage is that they switch from MacOS to GNU/Linux. -- Dr Richard Stallman President, Free Software Foundation (https://gnu.org, https://fsf.org) Internet Hall-of-Famer (https://internethalloffame.org) ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-03-24 1:44 ` Richard Stallman @ 2019-03-24 6:10 ` Van L 0 siblings, 0 replies; 320+ messages in thread From: Van L @ 2019-03-24 6:10 UTC (permalink / raw) To: emacs-devel > We could encourage MacOS users to run Emacs, but that is not ideal. > What we really ought to encourage is that they switch from MacOS > to GNU/Linux. A way to reach out is to draw inspiration from the Hackers(1995) clip of the scene where risc-v architecture is mentioned and on the table is Emacs/i3wm demonstrated in 30 seconds. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-03-22 5:28 ` YAMAMOTO Mitsuharu 2019-03-22 9:43 ` Konstantin Kharlamov @ 2019-04-14 6:32 ` YAMAMOTO Mitsuharu 2019-08-23 5:50 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2019-04-14 6:32 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 26.2 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.2-mac-7.6.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git The fourth update of the Mac port based on Emacs 25.3 is also available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-25.3-mac-6.11.tar.gz The corresponding branch in the Git repository is "mac-25". YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp * emacs-26.2-mac-7.6 (2019-04-14) Based on Emacs 26.2. ** Fixed bugs *** Candidates window for input methods is often misplaced. Add heuristics so it works in many cases including candidates windows popped up during isearch. We cannot make this placement strictly correct because of a timing problem: the system asks for the cursor position while there are still some pending Lisp events and the redisplay is not completed yet. *** New Space is created when making a child frame visible while a fullscreen frame is focused. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-04-14 6:32 ` YAMAMOTO Mitsuharu @ 2019-08-23 5:50 ` YAMAMOTO Mitsuharu 2019-08-29 0:54 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2019-08-23 5:50 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 26.3 release candidate 1 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.3-rc1-mac-7.7.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** The command move-tab-to-new-frame hangs. Reported by JD Smith. *** Dired on non-ASCII directories may cause an error if file-name-coding-system set to utf-8-hfs-unix. Reported by Sungbin Jo. This is a regression introduced in 6.9. *** (set-mouse-color "black") on Dark Mode makes the mouse pointer invisible. ** Improvements *** OpenType-SVG color fonts are drawn on macOS 10.14 and later. *** New configure option --enable-mac-self-contained to have "make install" create a self-contained bundle under the "mac" subdirectory. (or the directory specified by --enable-mac-app[=DIR]). The default is off. Contributed by Xin Xu. \f * emacs-26.2-mac-7.6 (2019-04-14) Based on Emacs 26.2. https://lists.gnu.org/r/emacs-devel/2019-04/msg00582.html ** Fixed bugs *** Candidates window for input methods is often misplaced. Add heuristics so it works in many cases including candidates windows popped up during isearch. We cannot make this placement strictly correct because of a timing problem: the system asks for the cursor position while there are still some pending Lisp events and the redisplay is not completed yet. *** New Space is created when making a child frame visible while a fullscreen frame is focused. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-08-23 5:50 ` YAMAMOTO Mitsuharu @ 2019-08-29 0:54 ` YAMAMOTO Mitsuharu 2019-10-08 3:40 ` YAMAMOTO Mitsuharu 2019-12-03 8:10 ` YAMAMOTO Mitsuharu 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2019-08-29 0:54 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 26.3 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.3-mac-7.7.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git No updates from the previous emacs-26.3-rc1-mac-7.7 other than release notes. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-08-29 0:54 ` YAMAMOTO Mitsuharu @ 2019-10-08 3:40 ` YAMAMOTO Mitsuharu 2019-12-03 8:10 ` YAMAMOTO Mitsuharu 1 sibling, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2019-10-08 3:40 UTC (permalink / raw) To: emacs-devel On Thu, 29 Aug 2019 09:54:55 +0900, YAMAMOTO Mitsuharu wrote: > > The Mac port based on Emacs 26.3 is now available from > > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.3-mac-7.7.tar.gz > > and Git repository is also available at > > https://bitbucket.org/mituharu/emacs-mac.git > > No updates from the previous emacs-26.3-rc1-mac-7.7 other than release > notes. As far as I tested, the Mac port can be built and executed on macOS 10.15 Catalina, but you'll observe several glitches in animation effects for unknown reasons (unlike previous releases, we don't have AppKit Release Notes for macOS 10.15 yet). A temporary workaround is either to build it on macOS 10.14 (make sure you have the Command Line Developer Tools installed if you use Xcode 11) and use the resulting executable on macOS 10.15, or to specify a fake linker option as $ make LD_SWITCH_SYSTEM=-Wl,-platform_version,macos,10.15.0,10.14 YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-08-29 0:54 ` YAMAMOTO Mitsuharu 2019-10-08 3:40 ` YAMAMOTO Mitsuharu @ 2019-12-03 8:10 ` YAMAMOTO Mitsuharu 2019-12-03 9:02 ` Pankaj Jangid 2020-03-23 5:34 ` YAMAMOTO Mitsuharu 1 sibling, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2019-12-03 8:10 UTC (permalink / raw) To: emacs-devel The first update of the Mac port based on Emacs 26.3 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.3-mac-7.8.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git The fifth update of the Mac port based on Emacs 25.3 is also available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-25.3-mac-6.12.tar.gz The corresponding branch in the Git repository is "mac-25". YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp * emacs-26.3-mac-7.8 (2019-12-03) ** Fixed bugs *** mac-auto-operator-composition-mode does not compose sequences containing "\". *** Several animation effect glitches for executables linked on 10.15. *** Can't switch application in Split View after resizing on macOS 10.14 and later. *** Clicking "+" in tab group overview creates a new frame instead of tab on macOS 10.15. *** High CPU load on dialog display. Reported by Konrad Podczeck. *** Mouse pointer color is inverted on Dark Mode. Though the old behavior is consistent with emacs -rv on X11, it was actually introduced in version 7.2 as a workaround for the (set-mouse-color "black") bug, which was fixed in the previous version. So the workaround is no longer necessary. ** Improvements *** Resize transition is also in effect for unfocused frames in Split View on macOS 10.15. *** Improve typing response on application-side double buffering. *** Recognize three-finger editing gestures in Sidecar on macOS 10.15. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-12-03 8:10 ` YAMAMOTO Mitsuharu @ 2019-12-03 9:02 ` Pankaj Jangid 2019-12-04 1:08 ` YAMAMOTO Mitsuharu 2020-03-23 5:34 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: Pankaj Jangid @ 2019-12-03 9:02 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes: > The first update of the Mac port based on Emacs 26.3 is now available > from > > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.3-mac-7.8.tar.gz > Does it solve the problem of iCloud Directory permissions? This issue - https://github.com/caldwell/build-emacs/issues/84 Regards, -- Pankaj Jangid ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-12-03 9:02 ` Pankaj Jangid @ 2019-12-04 1:08 ` YAMAMOTO Mitsuharu 2019-12-04 10:45 ` VanL 2019-12-04 12:09 ` Pankaj Jangid 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2019-12-04 1:08 UTC (permalink / raw) To: Pankaj Jangid; +Cc: emacs-devel On Tue, 03 Dec 2019 18:02:31 +0900, Pankaj Jangid wrote: > > YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes: > > The first update of the Mac port based on Emacs 26.3 is now available > > from > > > > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.3-mac-7.8.tar.gz > > > > Does it solve the problem of iCloud Directory permissions? This issue - > https://github.com/caldwell/build-emacs/issues/84 Regards, I've never seen this issue on the Mac port. It pops up a dialog asking for permission to access the directory on the first attempt. Did you experience this issue on some older version of the Mac port? YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-12-04 1:08 ` YAMAMOTO Mitsuharu @ 2019-12-04 10:45 ` VanL 2019-12-05 0:44 ` YAMAMOTO Mitsuharu 2019-12-04 12:09 ` Pankaj Jangid 1 sibling, 1 reply; 320+ messages in thread From: VanL @ 2019-12-04 10:45 UTC (permalink / raw) To: emacs-devel An earlier version of emacs-mac-app had the ability to fill ½-fullscreen on long press of the maximize button. The current version does not do that. ---> Installing emacs-mac-app @7.8_1+rsvg ---> Activating emacs-mac-app @7.8_1+rsvg ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-12-04 10:45 ` VanL @ 2019-12-05 0:44 ` YAMAMOTO Mitsuharu 2019-12-05 5:16 ` VanL 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2019-12-05 0:44 UTC (permalink / raw) To: VanL; +Cc: emacs-devel On Wed, 04 Dec 2019 19:45:36 +0900, VanL wrote: > > > An earlier version of emacs-mac-app had the ability to fill > ½-fullscreen on long press of the maximize button. The current > version does not do that. > > ---> Installing emacs-mac-app @7.8_1+rsvg > ---> Activating emacs-mac-app @7.8_1+rsvg Works here. Which version of macOS are you using? Is it reproducible without any customizations? (say, $ open /Applications/MacPorts/EmacsMac.app --args -Q) If so, please describe concrete steps to reproduce, together with expected and actual results. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-12-05 0:44 ` YAMAMOTO Mitsuharu @ 2019-12-05 5:16 ` VanL 2019-12-05 7:03 ` VanL 0 siblings, 1 reply; 320+ messages in thread From: VanL @ 2019-12-05 5:16 UTC (permalink / raw) To: emacs-devel [-- Attachment #1: Type: text/plain, Size: 758 bytes --] YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes: >> An earlier version of emacs-mac-app had the ability to fill >> ½-fullscreen on long press of the maximize button. The current >> version does not do that. >> >> ---> Installing emacs-mac-app @7.8_1+rsvg >> ---> Activating emacs-mac-app @7.8_1+rsvg > > Works here. Which version of macOS are you using? > Is it reproducible without any customizations? > (say, $ open /Applications/MacPorts/EmacsMac.app --args -Q) Starting EmacsMac.app as suggested allows the expected, desired behavior. The macOS version string is GNU Emacs 26.3 (build 1, x86_64-apple-darwin15.6.0, Carbon Version 157 AppKit 1404.47) of 2019-12-04 Something in my customization has introduced the undesired behavior. [-- Attachment #2: undesired behavior introduced in emacs customization --] [-- Type: application/emacs-lisp, Size: 4894 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-12-05 5:16 ` VanL @ 2019-12-05 7:03 ` VanL 0 siblings, 0 replies; 320+ messages in thread From: VanL @ 2019-12-05 7:03 UTC (permalink / raw) To: emacs-devel VanL <van@scratch.space> writes: >> (say, $ open /Applications/MacPorts/EmacsMac.app --args -Q) > > Starting EmacsMac.app as suggested allows the expected, desired > behavior. > > Something in my customization has introduced the undesired behavior. Commenting out '(menu-bar-mode nil) returns the expected, desired behavior. #+BEGIN_SRC emacs-lisp (custom-set-variables ;; custom-set-variables was added by Custom. ;; If you edit it by hand, you could mess it up, so be careful. ;; Your init file should contain only one such instance. ;; If there is more than one, they won't work right. '(canlock-password "600dcbcafd9de585fe73fa9e0b97b5bec1f2dab1") '(display-buffer-reuse-frames t) '(electric-indent-mode nil) '(epa-pinentry-mode (quote loopback)) '(gnus-summary-line-format "%U%R%z%I%(%[%4L: %-2,2f%]%) %s ") '(mac-command-modifier (quote alt)) '(mac-option-modifier (quote meta)) '(mac-right-command-modifier (quote super)) '(mac-right-option-modifier (quote hyper)) ;; '(menu-bar-mode nil) ;; xxx '(org-return-follows-link t) '(ring-bell-function (quote ignore)) '(safe-local-variable-values (quote ((eval auto-revert-mode t)))) '(same-window-buffer-names (quote ("*vc-diff*" "*vc-change-log*"))) '(scroll-bar-mode nil) '(tool-bar-mode nil)) #+END_SRC ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-12-04 1:08 ` YAMAMOTO Mitsuharu 2019-12-04 10:45 ` VanL @ 2019-12-04 12:09 ` Pankaj Jangid 2019-12-05 1:01 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: Pankaj Jangid @ 2019-12-04 12:09 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes: >> > The first update of the Mac port based on Emacs 26.3 is now >> > available from >> > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.3-mac-7.8.tar.gz >> Does it solve the problem of iCloud Directory permissions? This issue >> - https://github.com/caldwell/build-emacs/issues/84 Regards, > > I've never seen this issue on the Mac port. It pops up a dialog > asking for permission to access the directory on the first attempt. > > Did you experience this issue on some older version of the Mac port? Actually, I was confused. I was talking about the build which is distributed via [[https://emacsformacosx.com/]] website. This build uses ruby wrappers and the issue occurs because of that. Your build is plain emacs build directly from the official emacs git repository. This build works fine. Regards, -- Pankaj Jangid ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-12-04 12:09 ` Pankaj Jangid @ 2019-12-05 1:01 ` YAMAMOTO Mitsuharu 2019-12-05 4:07 ` Pankaj Jangid 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2019-12-05 1:01 UTC (permalink / raw) To: Pankaj Jangid; +Cc: emacs-devel On Wed, 04 Dec 2019 21:09:20 +0900, Pankaj Jangid wrote: > > YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes: > >> > The first update of the Mac port based on Emacs 26.3 is now > >> > available from > >> > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.3-mac-7.8.tar.gz > >> Does it solve the problem of iCloud Directory permissions? This issue > >> - https://github.com/caldwell/build-emacs/issues/84 Regards, > > > > I've never seen this issue on the Mac port. It pops up a dialog > > asking for permission to access the directory on the first attempt. > > > > Did you experience this issue on some older version of the Mac port? > > Actually, I was confused. I was talking about the build which is > distributed via [[https://emacsformacosx.com/]] website. This build uses > ruby wrappers and the issue occurs because of that. > > Your build is plain emacs build directly from the official emacs git > repository. This build works fine. No. You are referring to the NS port. The Mac port is not a modified version of the NS port, but a different GUI implementation on macOS. They have different designs, policies, and histories. NS port-specific Obj-C files and LOC (as of Emacs 26.3): 1514 nsfont.m 197 nsgui.h 513 nsimage.m 1893 nsmenu.m 511 nsselect.m 1323 nsterm.h 9460 nsterm.m 18754 total Mac port-specific C/Obj-C files and LOC (as of Emacs 26.3 Mac 7.8): 3237 mac.c 1436 macappkit.h 17097 macappkit.m 5434 macfns.c 279 macgui.h 896 macmenu.c 1141 macselect.c 6326 macterm.c 793 macterm.h 36639 total YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-12-05 1:01 ` YAMAMOTO Mitsuharu @ 2019-12-05 4:07 ` Pankaj Jangid 0 siblings, 0 replies; 320+ messages in thread From: Pankaj Jangid @ 2019-12-05 4:07 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes: > No. You are referring to the NS port. The Mac port is not a modified > version of the NS port, but a different GUI implementation on macOS. > They have different designs, policies, and histories. > > NS port-specific Obj-C files and LOC (as of Emacs 26.3): > > 1514 nsfont.m > 197 nsgui.h > 513 nsimage.m > 1893 nsmenu.m > 511 nsselect.m > 1323 nsterm.h > 9460 nsterm.m > 18754 total > > Mac port-specific C/Obj-C files and LOC (as of Emacs 26.3 Mac 7.8): > > 3237 mac.c > 1436 macappkit.h > 17097 macappkit.m > 5434 macfns.c > 279 macgui.h > 896 macmenu.c > 1141 macselect.c > 6326 macterm.c > 793 macterm.h > 36639 total Okay I didn't know this as well. But the problem that I was referring to was specific to the build distributed from [[https://emacsformacosx.com/]]. This is NS build with some ruby wrappers. I have built my own NS build and that works as expected with the new MacOS permissions. Regards, -- Pankaj Jangid ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2019-12-03 8:10 ` YAMAMOTO Mitsuharu 2019-12-03 9:02 ` Pankaj Jangid @ 2020-03-23 5:34 ` YAMAMOTO Mitsuharu 2020-03-24 3:25 ` YAMAMOTO Mitsuharu 2020-08-11 4:17 ` YAMAMOTO Mitsuharu 1 sibling, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2020-03-23 5:34 UTC (permalink / raw) To: emacs-devel The second update of the Mac port based on Emacs 26.3 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.3-mac-7.9.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git The sixth update of the Mac port based on Emacs 25.3 is also available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-25.3-mac-6.13.tar.gz The corresponding branch in the Git repository is "mac-25". YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp * emacs-26.3-mac-7.9 (2020-03-23) ** Fixed bugs *** Crash by a file descriptor that is greater than or equal to FD_SETSIZE. *** Can't unexec on macOS 10.15.4. *** Crash when editing iCloud Drive files on macOS 10.15 - 10.15.3. This is due to Mach port leaks on these versions. A workaround is added, and proxy icons are not shown for iCloud Drive files. *** Selecting a menu item having submenus generates a prefix event. Reported by Konrad Podczeck. ** Improvements *** Update emoji data to version 13.0. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2020-03-23 5:34 ` YAMAMOTO Mitsuharu @ 2020-03-24 3:25 ` YAMAMOTO Mitsuharu 2020-04-04 11:22 ` HaiJun Zhang 2020-08-11 4:17 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2020-03-24 3:25 UTC (permalink / raw) To: emacs-devel On Mon, 23 Mar 2020 14:34:57 +0900, YAMAMOTO Mitsuharu wrote: > > The second update of the Mac port based on Emacs 26.3 is now available > from > > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.3-mac-7.9.tar.gz > > and Git repository is also available at > > https://bitbucket.org/mituharu/emacs-mac.git The "work" branch of the repository is now based on Emacs 27.0.90. Still in early development. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2020-03-24 3:25 ` YAMAMOTO Mitsuharu @ 2020-04-04 11:22 ` HaiJun Zhang 2020-04-04 11:33 ` Eli Zaretskii 0 siblings, 1 reply; 320+ messages in thread From: HaiJun Zhang @ 2020-04-04 11:22 UTC (permalink / raw) To: emacs-devel, YAMAMOTO Mitsuharu [-- Attachment #1: Type: text/plain, Size: 726 bytes --] It seems that “—without-makeinfo” for configure doesn’t has effect while It works well for the origin emacs-26. 在 2020年3月24日 +0800 AM11:26,YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>,写道: > On Mon, 23 Mar 2020 14:34:57 +0900, > YAMAMOTO Mitsuharu wrote: > > > > The second update of the Mac port based on Emacs 26.3 is now available > > from > > > > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-26.3-mac-7.9.tar.gz > > > > and Git repository is also available at > > > > https://bitbucket.org/mituharu/emacs-mac.git > > The "work" branch of the repository is now based on Emacs 27.0.90. > Still in early development. > > YAMAMOTO Mitsuharu > mituharu@math.s.chiba-u.ac.jp > [-- Attachment #2: Type: text/html, Size: 1350 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2020-04-04 11:22 ` HaiJun Zhang @ 2020-04-04 11:33 ` Eli Zaretskii 2020-04-04 11:46 ` HaiJun Zhang 0 siblings, 1 reply; 320+ messages in thread From: Eli Zaretskii @ 2020-04-04 11:33 UTC (permalink / raw) To: HaiJun Zhang; +Cc: mituharu, emacs-devel > Date: Sat, 4 Apr 2020 19:22:33 +0800 > From: HaiJun Zhang <netjune@outlook.com> > > It seems that “—without-makeinfo” for configure doesn’t has effect while It works well for the origin > emacs-26. Why do you need that option? If the manuals in the Info format are part of the tarball, you will not need to run makeinfo anyway. And please also show the error messages or any other manifestations of the problem. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2020-04-04 11:33 ` Eli Zaretskii @ 2020-04-04 11:46 ` HaiJun Zhang 2020-04-04 12:02 ` HaiJun Zhang 0 siblings, 1 reply; 320+ messages in thread From: HaiJun Zhang @ 2020-04-04 11:46 UTC (permalink / raw) To: Eli Zaretskii; +Cc: mituharu, emacs-devel [-- Attachment #1: Type: text/plain, Size: 1030 bytes --] Sorry. Please ignore the it. It is because my manual configure failed. The configure command: ./configure —with-mac --with-modules --disable-acl --without-makeinfo CFLAGS="-O2 -g0" The error message: ———————————————— config.status: creating src/config.h config.status: executing src/epaths.h commands make: *** No rule to make target `epaths-force’. Stop. config.status: error: ‘src/epaths.h’ could not be made. ————————————————- 在 2020年4月4日 +0800 PM7:34,Eli Zaretskii <eliz@gnu.org>,写道: > > Date: Sat, 4 Apr 2020 19:22:33 +0800 > > From: HaiJun Zhang <netjune@outlook.com> > > > > It seems that “—without-makeinfo” for configure doesn’t has effect while It works well for the origin > > emacs-26. > > Why do you need that option? If the manuals in the Info format are > part of the tarball, you will not need to run makeinfo anyway. > It is because the makeinfo command on macOS is too old to make. [-- Attachment #2: Type: text/html, Size: 1960 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2020-04-04 11:46 ` HaiJun Zhang @ 2020-04-04 12:02 ` HaiJun Zhang 0 siblings, 0 replies; 320+ messages in thread From: HaiJun Zhang @ 2020-04-04 12:02 UTC (permalink / raw) To: Eli Zaretskii; +Cc: mituharu, emacs-devel [-- Attachment #1: Type: text/plain, Size: 1436 bytes --] 在 2020年4月4日 +0800 PM7:46,HaiJun Zhang <netjune@outlook.com>,写道: > Sorry. Please ignore the it. It is because my manual configure failed. The configure command: > > ./configure —with-mac --with-modules --disable-acl --without-makeinfo CFLAGS="-O2 -g0" > > The error message: > ———————————————— > config.status: creating src/config.h > config.status: executing src/epaths.h commands > make: *** No rule to make target `epaths-force’. Stop. > config.status: error: ‘src/epaths.h’ could not be made. > ————————————————- > [You can ignore this message.] Things just happened: My manual configure failed and the error message was not noticable so I didn’t notice it. Then I run ‘make’. It triggered the default configure without “—without-makeinfo” and the makeinfo on macOS is too old. So the configure failed again with following message: —————————————————- configure: error: You do not seem to have makeinfo >= 4.13, and your source tree does not seem to have pre-built manuals in the ‘info’ directory. Either install a suitable version of makeinfo, or re-run configure with the ‘—without-makeinfo’ option to build without the manuals. —————————————————— This made me thought that “—without-makeinfo” has no effect. [-- Attachment #2: Type: text/html, Size: 2589 bytes --] ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2020-03-23 5:34 ` YAMAMOTO Mitsuharu 2020-03-24 3:25 ` YAMAMOTO Mitsuharu @ 2020-08-11 4:17 ` YAMAMOTO Mitsuharu 2020-11-12 8:09 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2020-08-11 4:17 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 27.1 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-27.1-mac-8.0.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Raising a child frame is no-op and lowering it lowers the parent. *** Crash when creating a GUI frame on macOS Big Sur Beta. ** Improvements *** image-multi-frame-p also works for HEIC Sequences (macOS 10.15 and later) and WebP animations (macOS 11.0 and later). ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2020-08-11 4:17 ` YAMAMOTO Mitsuharu @ 2020-11-12 8:09 ` YAMAMOTO Mitsuharu 2020-11-12 8:34 ` Jean Louis 2021-03-27 7:59 ` YAMAMOTO Mitsuharu 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2020-11-12 8:09 UTC (permalink / raw) To: emacs-devel The first update of the Mac port based on Emacs 27.1 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-27.1-mac-8.1.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Crash when emacs --daemon is connected from emacsclient -t. Reported by Akinori MUSHA. *** Hang when preparing the menu bar on macOS Big Sur. ** Improvements *** Use system symbols as tool bar icons on macOS Big Sur. *** Update emoji data to version 13.1. *** The image type `image-io' (and its `imagemagick' fallback) now supports SVG with scaling, cropping, and arbitrary rotation. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2020-11-12 8:09 ` YAMAMOTO Mitsuharu @ 2020-11-12 8:34 ` Jean Louis 2020-11-12 9:35 ` YAMAMOTO Mitsuharu 2021-03-27 7:59 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: Jean Louis @ 2020-11-12 8:34 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel * YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> [2020-11-12 11:10]: > *** The image type `image-io' (and its `imagemagick' fallback) now > supports SVG with scaling, cropping, and arbitrary rotation. That sounds good. Is that something you will bring to main stream Emacs too? Or maybe as a package? ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2020-11-12 8:34 ` Jean Louis @ 2020-11-12 9:35 ` YAMAMOTO Mitsuharu 0 siblings, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2020-11-12 9:35 UTC (permalink / raw) To: Jean Louis; +Cc: emacs-devel On Thu, 12 Nov 2020 17:34:32 +0900, Jean Louis wrote: > > * YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> [2020-11-12 11:10]: > > *** The image type `image-io' (and its `imagemagick' fallback) now > > supports SVG with scaling, cropping, and arbitrary rotation. > > That sounds good. Is that something you will bring to main stream > Emacs too? Or maybe as a package? The mainstream Emacs already supports it if compiled with the ImageMagick support (though it is no longer the default). YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2020-11-12 8:09 ` YAMAMOTO Mitsuharu 2020-11-12 8:34 ` Jean Louis @ 2021-03-27 7:59 ` YAMAMOTO Mitsuharu 2021-11-13 7:51 ` YAMAMOTO Mitsuharu 1 sibling, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2021-03-27 7:59 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 27.2 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-27.2-mac-8.2.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git If you build from the repository on M1 Mac with newer autoconf, then you will need to do "git restore build-aux" after "./autogen.sh". YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp The configure option --with-mac-metal is disabled by default. I originally turned it on because it lowered the CPU load. But I recently realized that it was caused by its lower frame rate. M1 Mac accomplishes 60fps with or without Metal even with large frames, and the CPU load does not get an advantage from the use of Metal there. ** Fixed bugs *** Some light weight fonts are not recognized on Big Sur. Contributed by Frank Patz-Brockmann. *** Crash when displaying multiple SVG images on High Sierra/Mojave. Reported by Adam Sneller. *** Unintended frame switch when showing hourglasses. Reported by JD Smith. *** Crash if the stack size limit is not a multiple of page size. Reported by Christos Kalkanis. *** Scroll by scroll bar slot press is too fast on Catalina and later. *** org-protocol does not open file when there is file-path returned. Contributed by Shi Schspa. *** Sometimes hexadecimal color name is not recognized. Reported by Nicolas P. Rougier. *** Changing tool bar icon size from context menu clobbers display. ** Improvements *** New hook mac-effective-appearance-change-hook. Contributed by Peter Hardy. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2021-03-27 7:59 ` YAMAMOTO Mitsuharu @ 2021-11-13 7:51 ` YAMAMOTO Mitsuharu 2021-11-13 12:22 ` Jean-Christophe Helary ` (2 more replies) 0 siblings, 3 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2021-11-13 7:51 UTC (permalink / raw) To: emacs-devel The first update of the Mac port based on Emacs 27.2 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-27.2-mac-8.3.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git If you build from the repository on M1 Mac with newer autoconf, then you will need to do "git restore build-aux" after "./autogen.sh". YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ** Fixed bugs *** Frame may become blank with rapid repetitive zoomings. *** Frame may become blank with isearch if the executable is compiled with SDK 10.15 or earlier and runs on some later versions of macOS 11, or NSWindowSupportsAutomaticInlineTitle is set to NO on macOS 11. Note: NSWindowSupportsAutomaticInlineTitle has no effect on macOS 12. ** Improvements *** Incorporate process creation code that uses posix_spawn. This is a workaround for slow process creation on macOS 12, where vfork is declared deprecated and mostly identical to fork. The new process creation code is incorporated from the posix-spawn-no-gnulib branch upstream, and enabled by default on macOS 10.15 and later. If you have a problem with this new code, then set the variable darwin-try-posix-spawn to nil so as to revert to the original one. *** Avoid copying whole bitmap in application-side double buffering. *** Update emoji data to version 14.0. *** Live resize transition animation takes account of tab bar area. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2021-11-13 7:51 ` YAMAMOTO Mitsuharu @ 2021-11-13 12:22 ` Jean-Christophe Helary 2021-11-22 13:33 ` Po Lu 2022-04-06 8:12 ` YAMAMOTO Mitsuharu 2 siblings, 0 replies; 320+ messages in thread From: Jean-Christophe Helary @ 2021-11-13 12:22 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel It looks like make && make install does require a few sudos. Is that expected ? Jean-Christophe > On Nov 13, 2021, at 16:51, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> wrote: > > The first update of the Mac port based on Emacs 27.2 is now available > from > > ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-27.2-mac-8.3.tar.gz > > and Git repository is also available at > > https://bitbucket.org/mituharu/emacs-mac.git ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2021-11-13 7:51 ` YAMAMOTO Mitsuharu 2021-11-13 12:22 ` Jean-Christophe Helary @ 2021-11-22 13:33 ` Po Lu 2021-11-22 14:55 ` Eli Zaretskii 2022-04-06 8:12 ` YAMAMOTO Mitsuharu 2 siblings, 1 reply; 320+ messages in thread From: Po Lu @ 2021-11-22 13:33 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes: > The first update of the Mac port based on Emacs 27.2 is now available > from Hello, Yamamoto. I recently implemented support for pixel deltas in wheel events on X, and I've been trying to implement pixel scrolling support based on that. I haven't been able to write or find any Lisp code for that which runs faster than the code in mac-term.el, but AFAIU it hasn't undergone copyright assignment and can't be included in Emacs. Would you be interested in contributing that code to Emacs proper? Thanks! ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2021-11-22 13:33 ` Po Lu @ 2021-11-22 14:55 ` Eli Zaretskii 2021-11-23 6:16 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: Eli Zaretskii @ 2021-11-22 14:55 UTC (permalink / raw) To: Po Lu; +Cc: mituharu, emacs-devel > From: Po Lu <luangruo@yahoo.com> > Cc: emacs-devel@gnu.org > Date: Mon, 22 Nov 2021 21:33:35 +0800 > > YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes: > > > The first update of the Mac port based on Emacs 27.2 is now available > > from > > Hello, Yamamoto. > > I recently implemented support for pixel deltas in wheel events on X, > and I've been trying to implement pixel scrolling support based on that. > > I haven't been able to write or find any Lisp code for that which runs > faster than the code in mac-term.el, but AFAIU it hasn't undergone > copyright assignment and can't be included in Emacs. Yamamoto-san has a copyright assignment on file, so if he wrote that file, it can be included in Emacs with no problems. > Would you be interested in contributing that code to Emacs proper? We do want the confirmation of the contribution, though. TIA ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2021-11-22 14:55 ` Eli Zaretskii @ 2021-11-23 6:16 ` YAMAMOTO Mitsuharu 2021-11-23 7:08 ` Po Lu 2021-11-23 12:33 ` Eli Zaretskii 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2021-11-23 6:16 UTC (permalink / raw) To: Eli Zaretskii; +Cc: Po Lu, emacs-devel On Mon, 22 Nov 2021 23:55:51 +0900, Eli Zaretskii wrote: > > > From: Po Lu <luangruo@yahoo.com> > > Cc: emacs-devel@gnu.org > > Date: Mon, 22 Nov 2021 21:33:35 +0800 > > > > YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes: > > > > > The first update of the Mac port based on Emacs 27.2 is now available > > > from > > > > Hello, Yamamoto. > > > > I recently implemented support for pixel deltas in wheel events on X, > > and I've been trying to implement pixel scrolling support based on that. > > > > I haven't been able to write or find any Lisp code for that which runs > > faster than the code in mac-term.el, but AFAIU it hasn't undergone > > copyright assignment and can't be included in Emacs. > > Yamamoto-san has a copyright assignment on file, so if he wrote that > file, it can be included in Emacs with no problems. > > > Would you be interested in contributing that code to Emacs proper? > > We do want the confirmation of the contribution, though. No contribution from others for the pixel-based mouse wheel smooth scrolling code in the Mac port. So, feel free to use it. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2021-11-23 6:16 ` YAMAMOTO Mitsuharu @ 2021-11-23 7:08 ` Po Lu 2021-11-23 12:33 ` Eli Zaretskii 1 sibling, 0 replies; 320+ messages in thread From: Po Lu @ 2021-11-23 7:08 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: Eli Zaretskii, emacs-devel YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes: > No contribution from others for the pixel-based mouse wheel smooth > scrolling code in the Mac port. So, feel free to use it. Thanks! ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2021-11-23 6:16 ` YAMAMOTO Mitsuharu 2021-11-23 7:08 ` Po Lu @ 2021-11-23 12:33 ` Eli Zaretskii 1 sibling, 0 replies; 320+ messages in thread From: Eli Zaretskii @ 2021-11-23 12:33 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: luangruo, emacs-devel > Date: Tue, 23 Nov 2021 15:16:21 +0900 > From: YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> > Cc: Po Lu <luangruo@yahoo.com>, emacs-devel@gnu.org > > > We do want the confirmation of the contribution, though. > > No contribution from others for the pixel-based mouse wheel smooth > scrolling code in the Mac port. So, feel free to use it. Thank you. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2021-11-13 7:51 ` YAMAMOTO Mitsuharu 2021-11-13 12:22 ` Jean-Christophe Helary 2021-11-22 13:33 ` Po Lu @ 2022-04-06 8:12 ` YAMAMOTO Mitsuharu 2022-09-13 2:19 ` YAMAMOTO Mitsuharu 2 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2022-04-06 8:12 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 28.1 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-28.1-mac-9.0.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git The second update of the Mac port based on Emacs 27.2 is also available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-27.2-mac-8.4.tar.gz The corresponding branch in the Git repository is `mac-27'. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp Drop support for Mac OS X 10.6 - OS X 10.9. Emoji composition handling is aligned with upstream. You may find some incompatibilities with the previous versions. ** Fixed bugs *** Rotated SVG is clipped when dimension is specified by percentage. *** Typing F10 on a full-screen frame causes hang on Monterey. Reported by Brandon Bremen. It no longer hangs, but still F10 does not activate the menu bar for a full-screen frame on Monterey if the "Automatically hide and show the menu bar in full screen" setting is checked (default). *** When posix_spawn is used, emacs-gdb doesn't work properly. Apply a fix for Bug#54667. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2022-04-06 8:12 ` YAMAMOTO Mitsuharu @ 2022-09-13 2:19 ` YAMAMOTO Mitsuharu 2023-08-05 9:05 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2022-09-13 2:19 UTC (permalink / raw) To: emacs-devel The Mac port based on Emacs 28.2 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-28.2-mac-9.1.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp Based on Emacs 28.2. ** Fixed bugs *** DJVU to TIFF converter in DocView does not properly support @2x. *** SVG rendering via WebKit 2 does not support local file references. Reported by Howard Melman. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2022-09-13 2:19 ` YAMAMOTO Mitsuharu @ 2023-08-05 9:05 ` YAMAMOTO Mitsuharu 0 siblings, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2023-08-05 9:05 UTC (permalink / raw) To: emacs-devel ********************************************************************** This is an announcement of the release of the Mac port of GNU Emacs. It is not provided by the official Emacs project, unlike the macOS GUI support via the NextStep port. They are different in feature sets, development policy, design, and history. ********************************************************************** The Mac port based on Emacs 29.1 is now available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-29.1-mac-10.0.tar.gz and Git repository is also available at https://bitbucket.org/mituharu/emacs-mac.git The Mac port based on Emacs 28.3 Release Candidate 1 is also available from ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-28.3-rc1-mac-9.2.tar.gz The corresponding branch in the Git repository is `mac-28'. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp * emacs-29.1-mac-10.0 (2023-08-05) Based on Emacs 29.1. Currently, pixel-based mouse wheel smooth scrolling and pinch gesture are supported via traditional Mac port code rather than newly-added upstream one. This may change in a future version. WebP image support does not require libwebp on macOS 11 and later. ** Fixed bugs *** Wrong live resize transition and export to PDF on macOS 14 Beta. * emacs-28.3-rc1-mac-9.2 (2023-08-02) Based on Emacs 28.3 Release Candidate. ** Fixed bugs *** mouse-drag-and-drop-region across frames does not work. *** Selection is not properly converted to filename pasteboard data. *** Wrong sign extension in converting Apple Event bytes to integer. *** Freeze on macOS 12 and later when waking up from sleep with a fullscreen frame on a secondary display. Reported by Willem Leitso. *** Wrong animation effect on macOS 13. ^ permalink raw reply [flat|nested] 320+ messages in thread
* Current HEAD doesn't build on OSX 2013-03-05 6:02 ` YAMAMOTO Mitsuharu 2013-03-11 3:41 ` YAMAMOTO Mitsuharu @ 2013-03-11 18:58 ` Randal L. Schwartz 2013-03-11 19:43 ` Randal L. Schwartz 2013-03-12 10:44 ` Darren Hoo 1 sibling, 2 replies; 320+ messages in thread From: Randal L. Schwartz @ 2013-03-11 18:58 UTC (permalink / raw) To: emacs-devel The current emacs HEAD, corresponding to this commit: Author: Thierry Volpiatto <thierry.volpiatto@gmail.com> Date: Mon Mar 11 14:30:49 2013 -0400 * lisp/net/net-utils.el (net-utils-remove-ctrl-m-filter): Use with-current-buffer and don't move point. (net-utils-run-simple): Remove useless code. (net-utils-remove-ctl-m): Remove unused custom. is failing to build on OSX, ending with: Loading loadup.el (source)... Using load-path (/Users/merlyn/MIRROR/emacs-GIT/lisp /Users/merlyn/MIRROR/emacs-GIT/lisp/emacs-lisp /Users/merlyn/MIRROR/emacs-GIT/lisp/language /Users/merlyn/MIRROR/emacs-GIT/lisp/international /Users/merlyn/MIRROR/emacs-GIT/lisp/textmodes) Loading emacs-lisp/byte-run (source)... Symbol's function definition is void: \` make[1]: *** [bootstrap-emacs] Error 1 make: *** [src] Error 2 Is this a known problem, or would someone like me to bisect with my last known good version, which appears to be: Author: Dmitry Gutov <dgutov@yandex.ru> Date: Thu Mar 7 20:08:33 2013 +0400 * lisp/progmodes/js.el (js--multi-line-declaration-indentation): Merge from js2-mode (https://github.com/mooz/js2-mode/issues/89). Please let me know if you need more info. -- Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095 <merlyn@stonehenge.com> <URL:http://www.stonehenge.com/merlyn/> Smalltalk/Perl/Unix consulting, Technical writing, Comedy, etc. etc. See http://methodsandmessages.posterous.com/ for Smalltalk discussion ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Current HEAD doesn't build on OSX 2013-03-11 18:58 ` Current HEAD doesn't build on OSX Randal L. Schwartz @ 2013-03-11 19:43 ` Randal L. Schwartz 2013-03-12 10:44 ` Darren Hoo 1 sibling, 0 replies; 320+ messages in thread From: Randal L. Schwartz @ 2013-03-11 19:43 UTC (permalink / raw) To: emacs-devel >>>>> "Randal" == Randal L Schwartz <merlyn@stonehenge.com> writes: Randal> The current emacs HEAD, corresponding to this commit: Randal> Author: Thierry Volpiatto <thierry.volpiatto@gmail.com> Randal> Date: Mon Mar 11 14:30:49 2013 -0400 Randal> * lisp/net/net-utils.el (net-utils-remove-ctrl-m-filter): Randal> Use with-current-buffer and don't move point. Randal> (net-utils-run-simple): Remove useless code. Randal> (net-utils-remove-ctl-m): Remove unused custom. Randal> is failing to build on OSX, ending with: Randal> Loading loadup.el (source)... Randal> Using load-path (/Users/merlyn/MIRROR/emacs-GIT/lisp /Users/merlyn/MIRROR/emacs-GIT/lisp/emacs-lisp /Users/merlyn/MIRROR/emacs-GIT/lisp/language /Users/merlyn/MIRROR/emacs-GIT/lisp/international /Users/merlyn/MIRROR/emacs-GIT/lisp/textmodes) Randal> Loading emacs-lisp/byte-run (source)... Randal> Symbol's function definition is void: \` Randal> make[1]: *** [bootstrap-emacs] Error 1 Randal> make: *** [src] Error 2 Randal> Is this a known problem, or would someone like me to bisect with my last Randal> known good version, which appears to be: Randal> Author: Dmitry Gutov <dgutov@yandex.ru> Randal> Date: Thu Mar 7 20:08:33 2013 +0400 Randal> * lisp/progmodes/js.el (js--multi-line-declaration-indentation): Randal> Merge Randal> from js2-mode (https://github.com/mooz/js2-mode/issues/89). Randal> Please let me know if you need more info. Here's the bad commit: 3cf6bbda579e3cf3136ca0a199578a6ad0d278b6 is the first bad commit commit 3cf6bbda579e3cf3136ca0a199578a6ad0d278b6 Author: Stefan Monnier <monnier@iro.umontreal.ca> Date: Sun Mar 10 17:40:55 2013 -0400 * lisp/emacs-lisp/byte-run.el (dont-compile): Declare obsolete. (with-no-warnings): Use `declare'. -- Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095 <merlyn@stonehenge.com> <URL:http://www.stonehenge.com/merlyn/> Smalltalk/Perl/Unix consulting, Technical writing, Comedy, etc. etc. See http://methodsandmessages.posterous.com/ for Smalltalk discussion ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Current HEAD doesn't build on OSX 2013-03-11 18:58 ` Current HEAD doesn't build on OSX Randal L. Schwartz 2013-03-11 19:43 ` Randal L. Schwartz @ 2013-03-12 10:44 ` Darren Hoo 2013-03-12 11:55 ` Dmitry Gutov 2013-03-12 16:04 ` Glenn Morris 1 sibling, 2 replies; 320+ messages in thread From: Darren Hoo @ 2013-03-12 10:44 UTC (permalink / raw) To: emacs-devel merlyn@stonehenge.com (Randal L. Schwartz) writes: > Is this a known problem, or would someone like me to bisect with my last > known good version, which appears to be: > > Author: Dmitry Gutov <dgutov@yandex.ru> > Date: Thu Mar 7 20:08:33 2013 +0400 forgive me for being off-topic, but how can you guys do bisect using bzr? I once used bzr bisect and got really frustrated with it. Can you give a recipie how to do it? ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Current HEAD doesn't build on OSX 2013-03-12 10:44 ` Darren Hoo @ 2013-03-12 11:55 ` Dmitry Gutov 2013-03-12 13:52 ` Tassilo Horn 2013-03-12 16:04 ` Glenn Morris 1 sibling, 1 reply; 320+ messages in thread From: Dmitry Gutov @ 2013-03-12 11:55 UTC (permalink / raw) To: Darren Hoo; +Cc: emacs-devel Darren Hoo <darren.hoo@gmail.com> writes: > merlyn@stonehenge.com (Randal L. Schwartz) writes: > >> Is this a known problem, or would someone like me to bisect with my last >> known good version, which appears to be: >> >> Author: Dmitry Gutov <dgutov@yandex.ru> >> Date: Thu Mar 7 20:08:33 2013 +0400 > > forgive me for being off-topic, but how can you guys do bisect using > bzr? I once used bzr bisect and got really frustrated with it. I've used it a few times, and it works similarly enough to git bisect. It feels kinda clunky, but I haven't encountered any real problems with it, on GNU/Linux or MS Windows. > Can you give a recipie how to do it? http://doc.bazaar.canonical.com/plugins/en/bisect-plugin.html ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Current HEAD doesn't build on OSX 2013-03-12 11:55 ` Dmitry Gutov @ 2013-03-12 13:52 ` Tassilo Horn 2013-03-12 15:02 ` Randal L. Schwartz 0 siblings, 1 reply; 320+ messages in thread From: Tassilo Horn @ 2013-03-12 13:52 UTC (permalink / raw) To: Dmitry Gutov; +Cc: emacs-devel, Darren Hoo Dmitry Gutov <dgutov@yandex.ru> writes: >>> Is this a known problem, or would someone like me to bisect with my >>> last known good version, which appears to be: >>> >>> Author: Dmitry Gutov <dgutov@yandex.ru> >>> Date: Thu Mar 7 20:08:33 2013 +0400 >> >> forgive me for being off-topic, but how can you guys do bisect using >> bzr? I once used bzr bisect and got really frustrated with it. > > I've used it a few times, and it works similarly enough to git bisect. > > It feels kinda clunky, but I haven't encountered any real problems with > it, on GNU/Linux or MS Windows. I've tried that once, and it didn't work that well for me. Since then, I simply bisect using the git mirror. Bye, Tassilo ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Current HEAD doesn't build on OSX 2013-03-12 13:52 ` Tassilo Horn @ 2013-03-12 15:02 ` Randal L. Schwartz 0 siblings, 0 replies; 320+ messages in thread From: Randal L. Schwartz @ 2013-03-12 15:02 UTC (permalink / raw) To: emacs-devel >>>>> "Tassilo" == Tassilo Horn <tsdh@gnu.org> writes: Tassilo> I've tried that once, and it didn't work that well for me. Tassilo> Since then, I simply bisect using the git mirror. As do I. I'm tracking via git, which is why I don't talk about commits via some bzr tag. -- Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095 <merlyn@stonehenge.com> <URL:http://www.stonehenge.com/merlyn/> Smalltalk/Perl/Unix consulting, Technical writing, Comedy, etc. etc. See http://methodsandmessages.posterous.com/ for Smalltalk discussion ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Current HEAD doesn't build on OSX 2013-03-12 10:44 ` Darren Hoo 2013-03-12 11:55 ` Dmitry Gutov @ 2013-03-12 16:04 ` Glenn Morris 1 sibling, 0 replies; 320+ messages in thread From: Glenn Morris @ 2013-03-12 16:04 UTC (permalink / raw) To: Darren Hoo; +Cc: emacs-devel Darren Hoo wrote: > forgive me for being off-topic, but how can you guys do bisect using > bzr? I once used bzr bisect and got really frustrated with it. > > Can you give a recipie how to do it? In Emacs: admin/notes/bzr ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port
@ 2016-04-23 13:03 Angelo Graziosi
2016-04-24 19:40 ` Angelo Graziosi
0 siblings, 1 reply; 320+ messages in thread
From: Angelo Graziosi @ 2016-04-23 13:03 UTC (permalink / raw)
To: Emacs developers; +Cc: YAMAMOTO Mitsuharu
YAMAMOTO Mitsuharu wrote:
> The ninth update of the Mac port based on Emacs 24.5 is available from
>
> ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.16.tar.gz
>
> and Git repository is also available at
>
> https://bitbucket.org/mituharu/emacs-mac.git
>
> A bare development branch (no documentation updates yet) based on the
> pretest versions of Emacs 25.1 is also available from the "work"
> branch of the above repository.
If I understand, the Mac port build, by default, installs things both in
Emacs.app and in /usr/local.
How can we setup the build so all things go in Emacs.app (so that we can
move all the Emacs.app tree in /Applications or /opt)?
I see that MacPorts people do this manually
(https://trac.macports.org/browser/trunk/dports/aqua/emacs-mac-app/Portfile)
instead it would be useful that we can have a choice.
Maybe Mac port build needs a mac/INSTALL.MAC
Angelo
^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-04-23 13:03 Emacs Mac port Angelo Graziosi @ 2016-04-24 19:40 ` Angelo Graziosi 2016-04-25 0:30 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: Angelo Graziosi @ 2016-04-24 19:40 UTC (permalink / raw) To: Emacs developers; +Cc: YAMAMOTO Mitsuharu BTW, I downloaded https://bitbucket.org/mituharu/emacs-mac/get/master.tar.gz and build it. I find "make install" puts things in share/emacs/24.5/... But is it to be expected a '24.5' version number for master? On GNU/Linux and Windows I find '25.1.50', which I think is the right value.. Angelo Il 23/04/2016 15:03, Angelo Graziosi ha scritto: > YAMAMOTO Mitsuharu wrote: >> The ninth update of the Mac port based on Emacs 24.5 is available from >> >> ftp://ftp.math.s.chiba-u.ac.jp/emacs/emacs-24.5-mac-5.16.tar.gz >> >> and Git repository is also available at >> >> https://bitbucket.org/mituharu/emacs-mac.git >> >> A bare development branch (no documentation updates yet) based on the >> pretest versions of Emacs 25.1 is also available from the "work" >> branch of the above repository. > > If I understand, the Mac port build, by default, installs things both in > Emacs.app and in /usr/local. > > How can we setup the build so all things go in Emacs.app (so that we can > move all the Emacs.app tree in /Applications or /opt)? > > I see that MacPorts people do this manually > (https://trac.macports.org/browser/trunk/dports/aqua/emacs-mac-app/Portfile) > instead it would be useful that we can have a choice. > > Maybe Mac port build needs a mac/INSTALL.MAC > > > Angelo ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2016-04-24 19:40 ` Angelo Graziosi @ 2016-04-25 0:30 ` YAMAMOTO Mitsuharu 0 siblings, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2016-04-25 0:30 UTC (permalink / raw) To: Angelo Graziosi; +Cc: Emacs developers >>>>> On Sun, 24 Apr 2016 21:40:37 +0200, Angelo Graziosi <angelo.graziosi@alice.it> said: > BTW, I downloaded > https://bitbucket.org/mituharu/emacs-mac/get/master.tar.gz > and build it. I find "make install" puts things in > share/emacs/24.5/... > But is it to be expected a '24.5' version number for master? Yes. The master branch of the emacs-mac repository is for (the latest major) release versions. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port @ 2017-10-16 16:01 Konrad Podczeck 2017-10-17 1:41 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: Konrad Podczeck @ 2017-10-16 16:01 UTC (permalink / raw) To: emacs-devel First, of course, thanks for your work with the Emacs Macport. With the new version, I see the following two problems: (1) (a) Open some larger file, which contains some word, foo say, rather often. (b) Do: customize-variable -> special-display-regexps ->*occur* (c) In the Buffer containing the original file do: occor->foo (d) Switch to the frame containing the occur-buffer and do: next-error-follow-minor-mode (e) Now go up and down in the occur-buffer frame by the arrow keys, and an annoying flicker in the frame showing the original frame happens; the effect is actually more drastic if I press and hold down some arrow key. This is not the case with the master-version and not with the work-versions up to and including 79dba490b3bc. (2) Putting the mouse over a tool-bar button, so that the corresponding tooltip appear, and then quickly dragging the frame with the mouse to another place on the screen, the tooltip is still shown for some time at the original screen position. Konrad ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2017-10-16 16:01 Konrad Podczeck @ 2017-10-17 1:41 ` YAMAMOTO Mitsuharu 2017-10-30 7:38 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2017-10-17 1:41 UTC (permalink / raw) To: Konrad Podczeck; +Cc: emacs-devel >>>>> On Mon, 16 Oct 2017 18:01:16 +0200, Konrad Podczeck <konrad.podczeck@univie.ac.at> said: > With the new version, I see the following two problems: > (1) (a) Open some larger file, which contains some word, foo say, rather often. > (b) Do: customize-variable -> special-display-regexps ->*occur* > (c) In the Buffer containing the original file do: occor->foo > (d) Switch to the frame containing the occur-buffer and do: > next-error-follow-minor-mode > (e) Now go up and down in the occur-buffer frame by the arrow keys, and an annoying flicker in the > frame showing the original frame happens; the effect is actually more drastic if I press and > hold down some arrow key. > This is not the case with the master-version and not with the work-versions up to and > including 79dba490b3bc. Thanks for reporting. I've updated the repository so the Mac port based on Emacs 26.0.90 behaves like the version based on Emacs 25.3 with respect to frame raising. Note that the flicker/flutter happens even with X11, and with the Mac port based on Emacs 25.3 running on older versions (< 10.11) of macOS. Probably newer versions of macOS do some coalescing. > (2) Putting the mouse over a tool-bar button, so that the corresponding tooltip appear, and then quickly dragging the frame with the mouse to another place on the screen, the tooltip is still shown for some time at the original screen position. I'll look into it later. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2017-10-17 1:41 ` YAMAMOTO Mitsuharu @ 2017-10-30 7:38 ` YAMAMOTO Mitsuharu 2017-10-30 8:25 ` martin rudalics 2017-10-30 12:43 ` Konrad Podczeck 0 siblings, 2 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2017-10-30 7:38 UTC (permalink / raw) To: Konrad Podczeck; +Cc: emacs-devel >>>>> On Tue, 17 Oct 2017 10:41:11 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: >> (2) Putting the mouse over a tool-bar button, so that the >> corresponding tooltip appear, and then quickly dragging the frame >> with the mouse to another place on the screen, the tooltip is still >> shown for some time at the original screen position. > I'll look into it later. I think I could find the cause of this problem finally. It took a long time because it was in the platform-independent part. I'm still not sure if the patch below is the right way, but could you check if this also works for your case? YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp diff --git a/src/xdisp.c b/src/xdisp.c index 45eabb10d7..e5e1319e18 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -31029,9 +31029,6 @@ note_mouse_highlight (struct frame *f, int x, int y) && part != ON_HEADER_LINE)) clear_mouse_face (hlinfo); - /* Reset help_echo_string. It will get recomputed below. */ - help_echo_string = Qnil; - #ifdef HAVE_WINDOW_SYSTEM /* If the cursor is on the internal border of FRAME and FRAME's internal border is draggable, provide some visual feedback. */ @@ -31090,6 +31087,9 @@ note_mouse_highlight (struct frame *f, int x, int y) if (!WINDOWP (window)) return; + /* Reset help_echo_string. It will get recomputed below. */ + help_echo_string = Qnil; + /* Convert to window-relative pixel coordinates. */ w = XWINDOW (window); frame_to_window_pixel_xy (w, &x, &y); ^ permalink raw reply related [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2017-10-30 7:38 ` YAMAMOTO Mitsuharu @ 2017-10-30 8:25 ` martin rudalics 2017-10-30 8:57 ` YAMAMOTO Mitsuharu 2017-10-30 12:43 ` Konrad Podczeck 1 sibling, 1 reply; 320+ messages in thread From: martin rudalics @ 2017-10-30 8:25 UTC (permalink / raw) To: YAMAMOTO Mitsuharu, Konrad Podczeck; +Cc: emacs-devel >>> (2) Putting the mouse over a tool-bar button, so that the >>> corresponding tooltip appear, and then quickly dragging the frame >>> with the mouse to another place on the screen, the tooltip is still >>> shown for some time at the original screen position. How can you reproduce that? Here the tooltip disappears immediately when moving the mouse from the tool bar button to the frame border. > I think I could find the cause of this problem finally. It took a > long time because it was in the platform-independent part. I'm still > not sure if the patch below is the right way, but could you check if > this also works for your case? You mean that the help_echo_string built by if (cursor != FRAME_X_OUTPUT (f)->nontext_cursor) { /* Do we really want a help echo here? */ help_echo_string = build_string ("drag-mouse-1: resize frame"); goto set_cursor; should be immediately erased when we "have a window" and be left as is when we just "have a frame"? Or am I missing something else? martin ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2017-10-30 8:25 ` martin rudalics @ 2017-10-30 8:57 ` YAMAMOTO Mitsuharu 2017-10-31 8:41 ` martin rudalics 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2017-10-30 8:57 UTC (permalink / raw) To: martin rudalics; +Cc: Konrad Podczeck, emacs-devel >>>>> On Mon, 30 Oct 2017 09:25:46 +0100, martin rudalics <rudalics@gmx.at> said: >>>> (2) Putting the mouse over a tool-bar button, so that the >>>> corresponding tooltip appear, and then quickly dragging the frame >>>> with the mouse to another place on the screen, the tooltip is still >>>> shown for some time at the original screen position. > How can you reproduce that? Here the tooltip disappears immediately > when moving the mouse from the tool bar button to the frame border. The Mac port is a bit special in the sense that the tooltip for a toolkit tool bar button is not shown by the toolkit but as a Emacs tip frame. Also, unlike the case of GTK+ (with x-gtk-use-system-tooltips = nil) which has callbacks to show/hide tooltips, it is processed by the callback for mouse movement events as in non-toolkit tool bars on X11. >> I think I could find the cause of this problem finally. It took a >> long time because it was in the platform-independent part. I'm still >> not sure if the patch below is the right way, but could you check if >> this also works for your case? > You mean that the help_echo_string built by > if (cursor != FRAME_X_OUTPUT (f)->nontext_cursor) > { > /* Do we really want a help echo here? */ > help_echo_string = build_string ("drag-mouse-1: resize frame"); > goto set_cursor; > should be immediately erased when we "have a window" and be left as is > when we just "have a frame"? Or am I missing something else? As I said in the previous mail, I'm still not sure this is the right way (especially about the tooltip for internal border resizing). I just tried reverting a part of change between Emacs 25.3, which does not show the problem the OP described, and Emacs 26.0.90. I think the problem is that help_echo_string can be set to nil without hiding the tooltip, if returning early (i.e., when !WINDOWP (window)) from note_mouse_highlight. The code to show/hide tooltip for the tool bar in the Mac port is similar to the one on X11 below: 8568 case MotionNotify: 8569 { 8570 x_display_set_last_user_time (dpyinfo, event->xmotion.time); 8571 previous_help_echo_string = help_echo_string; 8572 help_echo_string = Qnil; : 8648 /* If the contents of the global variable help_echo_string 8649 has changed, generate a HELP_EVENT. */ 8650 if (!NILP (help_echo_string) 8651 || !NILP (previous_help_echo_string)) 8652 do_help = 1; 8653 goto OTHER; 8654 } If help_echo_string = nil at Line 8572 but the tooltip is actually shown, and the lines between 8573 and 8648 do not set help_echo_string (as no help string to show), then the do_help is not set and thus the tooltip is not hidden. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2017-10-30 8:57 ` YAMAMOTO Mitsuharu @ 2017-10-31 8:41 ` martin rudalics 0 siblings, 0 replies; 320+ messages in thread From: martin rudalics @ 2017-10-31 8:41 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: Konrad Podczeck, emacs-devel > I think the problem is that help_echo_string can be set to nil without > hiding the tooltip, if returning early (i.e., when !WINDOWP (window)) > from note_mouse_highlight. The code to show/hide tooltip for the tool > bar in the Mac port is similar to the one on X11 below: Thanks for the explanation, martin ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2017-10-30 7:38 ` YAMAMOTO Mitsuharu 2017-10-30 8:25 ` martin rudalics @ 2017-10-30 12:43 ` Konrad Podczeck 1 sibling, 0 replies; 320+ messages in thread From: Konrad Podczeck @ 2017-10-30 12:43 UTC (permalink / raw) To: YAMAMOTO Mitsuharu; +Cc: emacs-devel Together with this second patch, the 26-based Mac port work for me as great as the 25-based one. Thanks for all your effort. Konrad > Am 30.10.2017 um 08:38 schrieb YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>: > >>>>>> On Tue, 17 Oct 2017 10:41:11 +0900, YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> said: > >>> (2) Putting the mouse over a tool-bar button, so that the >>> corresponding tooltip appear, and then quickly dragging the frame >>> with the mouse to another place on the screen, the tooltip is still >>> shown for some time at the original screen position. > >> I'll look into it later. > > I think I could find the cause of this problem finally. It took a > long time because it was in the platform-independent part. I'm still > not sure if the patch below is the right way, but could you check if > this also works for your case? > > YAMAMOTO Mitsuharu > mituharu@math.s.chiba-u.ac.jp > > diff --git a/src/xdisp.c b/src/xdisp.c > index 45eabb10d7..e5e1319e18 100644 > --- a/src/xdisp.c > +++ b/src/xdisp.c > @@ -31029,9 +31029,6 @@ note_mouse_highlight (struct frame *f, int x, int y) > && part != ON_HEADER_LINE)) > clear_mouse_face (hlinfo); > > - /* Reset help_echo_string. It will get recomputed below. */ > - help_echo_string = Qnil; > - > #ifdef HAVE_WINDOW_SYSTEM > /* If the cursor is on the internal border of FRAME and FRAME's > internal border is draggable, provide some visual feedback. */ > @@ -31090,6 +31087,9 @@ note_mouse_highlight (struct frame *f, int x, int y) > if (!WINDOWP (window)) > return; > > + /* Reset help_echo_string. It will get recomputed below. */ > + help_echo_string = Qnil; > + > /* Convert to window-relative pixel coordinates. */ > w = XWINDOW (window); > frame_to_window_pixel_xy (w, &x, &y); ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port
@ 2018-11-19 7:21 Aaron Madlon-Kay
2018-11-20 0:35 ` YAMAMOTO Mitsuharu
0 siblings, 1 reply; 320+ messages in thread
From: Aaron Madlon-Kay @ 2018-11-19 7:21 UTC (permalink / raw)
To: mituharu, emacs-devel
In reply to https://lists.gnu.org/r/emacs-devel/2018-11/msg00246.html
> If you see the error message like
>
> error: no type or protocol named 'NSMenuItemValidation'
>
> when compiling it on macOS 10.14.1, then you have most likely
> (unconsciously) installed Command Line Tools (macOS 10.13) for Xcode
> 10.1. Please check your installations with the following command:
>
> $ softwareupdate --history --all | grep Command
>
> This can reportedly be fixed by downloading Command Line Tools (macOS
> 10.14) for Xcode 10.1 from https://developer.apple.com/download/more/
> and installing it manually.
I was unfortunately a victim of this inadvertent installation of old
CLI tools, and on both my home and work machines so I suspect it may
be widespread.
Merely reinstalling the correct Command Line Tools package was
insufficient to solve the problem for me. I had to also install the
newly-optional headers package found here:
/Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
More details on why this is necessary here:
https://github.com/macports/macports-ports/pull/3036#issuecomment-439789796
-Aaron
^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2018-11-19 7:21 Aaron Madlon-Kay @ 2018-11-20 0:35 ` YAMAMOTO Mitsuharu 2018-11-20 1:07 ` Aaron Madlon-Kay 0 siblings, 1 reply; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2018-11-20 0:35 UTC (permalink / raw) To: Aaron Madlon-Kay; +Cc: emacs-devel On Mon, 19 Nov 2018 16:21:34 +0900, Aaron Madlon-Kay wrote: > > Merely reinstalling the correct Command Line Tools package was > insufficient to solve the problem for me. I had to also install the > newly-optional headers package found here: > > /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg > It is supposed to build without /usr/include, unless some bogus pkgconfig files point there (which happens with Homebrew, see https://debbugs.gnu.org/cgi/bugreport.cgi?bug=32927). You seem to use MacPorts rather than Homebrew. Could you send me the exact error messages when building the Mac port after temporary renaming /usr/include to some other name? Also, please show me the output of the following commands: $ pkg-config --cflags --libs "libxml-2.0 > 2.6.17" $ pkg-config --variable pcfiledir "libxml-2.0 > 2.6.17" YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2018-11-20 0:35 ` YAMAMOTO Mitsuharu @ 2018-11-20 1:07 ` Aaron Madlon-Kay 2018-11-20 10:47 ` YAMAMOTO Mitsuharu 0 siblings, 1 reply; 320+ messages in thread From: Aaron Madlon-Kay @ 2018-11-20 1:07 UTC (permalink / raw) To: Mitsuharu YAMAMOTO; +Cc: emacs-devel (Resending to list as well; apologies to Mr. Yamamoto.) > It is supposed to build without /usr/include My understanding is that it's not /usr/include that was the problem, but rather headers in /System/Library/Frameworks and /System/Library/PrivateFrameworks that were bad. The High Sierra CLI tools package installs these, whereas the Mojave package does not, thus requiring macOS_SDK_headers_for_macOS_10.14.pkg to fix. > You seem to use MacPorts rather than Homebrew. Could you send me the > exact error messages when building the Mac port after temporary > renaming /usr/include to some other name? macOS's SIP (https://en.wikipedia.org/wiki/System_Integrity_Protection) prevents me from merely renaming /usr/include, and it's a pain to turn on and off, so I apologize but I'm not willing to do this. > Also, please show me the output of the following commands: Sure: $ pkg-config --cflags --libs "libxml-2.0 > 2.6.17" -I/opt/local/include/libxml2 -L/opt/local/lib -lxml2 $ pkg-config --variable pcfiledir "libxml-2.0 > 2.6.17" /opt/local/lib/pkgconfig (MacPorts as a rule requires dependencies to come from other MacPorts packages; the emacs-mac-app port depends on the libxml2 port, which would be installed in /opt/local, so as far as I can tell this output is correct.) -Aaron ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port 2018-11-20 1:07 ` Aaron Madlon-Kay @ 2018-11-20 10:47 ` YAMAMOTO Mitsuharu 0 siblings, 0 replies; 320+ messages in thread From: YAMAMOTO Mitsuharu @ 2018-11-20 10:47 UTC (permalink / raw) To: Aaron Madlon-Kay; +Cc: emacs-devel On Tue, 20 Nov 2018 10:07:11 +0900, Aaron Madlon-Kay wrote: > > > It is supposed to build without /usr/include > > My understanding is that it's not /usr/include that was the problem, > but rather headers in /System/Library/Frameworks and > /System/Library/PrivateFrameworks that were bad. The High Sierra CLI > tools package installs these, whereas the Mojave package does not, > thus requiring macOS_SDK_headers_for_macOS_10.14.pkg to fix. > > You seem to use MacPorts rather than Homebrew. Could you send me the > > exact error messages when building the Mac port after temporary > > renaming /usr/include to some other name? > > macOS's SIP (https://en.wikipedia.org/wiki/System_Integrity_Protection) > prevents me from merely renaming /usr/include, and it's a pain to turn > on and off, so I apologize but I'm not willing to do this. Oh, I thought macOS_SDK_headers_for_macOS_10.14.pkg would only install header files into /usr/include, but that is not the case actually. Thanks for clarifying this. Never mind about renaming /usr/include. I hope there is a way to uninstall Command Line Tools (macOS 10.13) for Xcode 10.1 without resorting to macOS_SDK_headers_for_macOS_10.14.pkg. > > Also, please show me the output of the following commands: > > Sure: > > $ pkg-config --cflags --libs "libxml-2.0 > 2.6.17" > -I/opt/local/include/libxml2 -L/opt/local/lib -lxml2 > $ pkg-config --variable pcfiledir "libxml-2.0 > 2.6.17" > /opt/local/lib/pkgconfig > > (MacPorts as a rule requires dependencies to come from other MacPorts > packages; the emacs-mac-app port depends on the libxml2 port, which > would be installed in /opt/local, so as far as I can tell this output > is correct.) Thanks. There seems to be no problem with them. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp ^ permalink raw reply [flat|nested] 320+ messages in thread
* Re: Emacs Mac port @ 2019-03-22 19:27 Konrad Podczeck 0 siblings, 0 replies; 320+ messages in thread From: Konrad Podczeck @ 2019-03-22 19:27 UTC (permalink / raw) To: emacs-devel The differences are not so minor: On MacOS Mojave, bug#32864 is still present with the NS port, which makes this port almost unusable, if one likes to work with menus. The Mac port, on the other hand, worked out of the box from the beginning when Mojave came out, without any problems. ^ permalink raw reply [flat|nested] 320+ messages in thread
end of thread, other threads:[~2023-08-05 9:05 UTC | newest] Thread overview: 320+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2012-06-10 9:29 Emacs Mac port YAMAMOTO Mitsuharu 2012-06-11 0:36 ` Paul Michael Reilly 2012-06-11 7:29 ` YAMAMOTO Mitsuharu 2012-07-07 18:10 ` Donald Curtis 2012-07-07 18:13 ` Donald Curtis 2012-07-08 11:15 ` Richard Stallman 2012-07-08 14:16 ` Samuel Bronson 2012-07-08 14:54 ` Stefan Monnier 2012-07-08 14:58 ` Donald Curtis 2012-07-26 9:45 ` YAMAMOTO Mitsuharu 2012-07-26 21:50 ` YAMAMOTO Mitsuharu 2012-08-08 6:01 ` YAMAMOTO Mitsuharu 2012-08-27 7:40 ` YAMAMOTO Mitsuharu 2012-09-06 1:35 ` YAMAMOTO Mitsuharu 2012-09-18 9:37 ` YAMAMOTO Mitsuharu 2012-09-20 8:51 ` YAMAMOTO Mitsuharu 2012-10-27 4:57 ` YAMAMOTO Mitsuharu 2012-11-25 7:26 ` YAMAMOTO Mitsuharu 2012-11-25 10:39 ` Leo 2012-11-25 10:59 ` chad 2012-11-25 12:05 ` Leo 2012-11-26 3:26 ` YAMAMOTO Mitsuharu 2012-11-25 19:05 ` Glenn Morris 2012-11-26 2:14 ` Leo 2012-11-26 2:46 ` John Wiegley 2012-11-26 20:38 ` Stefan Monnier 2012-11-26 21:46 ` chad 2012-11-27 2:35 ` Leo 2012-11-27 4:32 ` Jan Djärv 2012-11-27 19:33 ` chad 2012-12-01 14:04 ` Donald Curtis 2012-12-03 18:58 ` Jan Djärv 2012-11-27 2:34 ` Leo 2012-12-16 5:07 ` YAMAMOTO Mitsuharu 2013-01-11 7:28 ` YAMAMOTO Mitsuharu 2013-02-09 7:26 ` YAMAMOTO Mitsuharu 2013-02-11 12:53 ` Piotr Kalinowski 2013-02-14 12:02 ` Pavlo Martynenko 2013-02-15 15:48 ` Piotr Kalinowski 2013-02-15 16:03 ` Dmitry Antipov 2013-02-15 18:16 ` Eli Zaretskii 2013-02-15 19:27 ` Glenn Morris 2013-02-16 6:46 ` YAMAMOTO Mitsuharu 2013-02-16 8:21 ` YAMAMOTO Mitsuharu 2013-02-16 11:08 ` YAMAMOTO Mitsuharu 2013-03-05 6:02 ` YAMAMOTO Mitsuharu 2013-03-11 3:41 ` YAMAMOTO Mitsuharu 2013-04-11 9:22 ` YAMAMOTO Mitsuharu 2013-04-14 6:31 ` YAMAMOTO Mitsuharu 2013-04-14 11:49 ` Eli Zaretskii 2013-04-15 2:17 ` YAMAMOTO Mitsuharu 2013-04-15 5:44 ` Eli Zaretskii 2013-04-15 7:59 ` YAMAMOTO Mitsuharu 2013-04-15 8:55 ` Eli Zaretskii 2013-04-15 9:48 ` YAMAMOTO Mitsuharu 2013-04-15 10:57 ` Eli Zaretskii 2013-04-16 0:17 ` YAMAMOTO Mitsuharu 2013-04-16 2:11 ` YAMAMOTO Mitsuharu 2013-04-16 6:49 ` Eli Zaretskii 2013-04-16 10:15 ` YAMAMOTO Mitsuharu 2013-04-16 10:48 ` YAMAMOTO Mitsuharu 2013-04-16 13:20 ` Stefan Monnier 2013-04-16 14:38 ` Eli Zaretskii 2013-04-16 23:52 ` YAMAMOTO Mitsuharu 2013-04-17 5:08 ` Jan Djärv 2013-04-17 5:46 ` YAMAMOTO Mitsuharu 2013-04-17 6:36 ` Jan Djärv 2013-04-19 3:58 ` YAMAMOTO Mitsuharu 2013-04-19 7:08 ` Jan Djärv 2013-04-22 8:54 ` Nix 2013-04-23 3:18 ` YAMAMOTO Mitsuharu 2013-04-17 1:09 ` YAMAMOTO Mitsuharu 2013-05-11 6:43 ` YAMAMOTO Mitsuharu 2013-09-21 9:23 ` YAMAMOTO Mitsuharu 2013-10-24 8:40 ` YAMAMOTO Mitsuharu 2013-10-24 9:47 ` Leo Liu 2013-10-24 10:18 ` YAMAMOTO Mitsuharu 2013-10-25 0:56 ` YAMAMOTO Mitsuharu 2013-10-25 4:38 ` YAMAMOTO Mitsuharu 2013-10-27 6:42 ` YAMAMOTO Mitsuharu 2013-11-06 8:18 ` YAMAMOTO Mitsuharu 2013-12-27 8:29 ` YAMAMOTO Mitsuharu 2014-02-27 10:03 ` YAMAMOTO Mitsuharu 2014-04-01 1:10 ` YAMAMOTO Mitsuharu 2014-04-03 15:12 ` David Reitter 2014-04-03 17:30 ` Leo Liu 2014-04-04 0:44 ` Chris Van Dusen 2014-04-04 1:24 ` Xu Xin 2014-04-04 1:59 ` Chris Van Dusen 2014-04-04 0:07 ` YAMAMOTO Mitsuharu 2014-04-14 3:00 ` YAMAMOTO Mitsuharu 2014-04-14 8:16 ` YAMAMOTO Mitsuharu 2014-05-12 8:42 ` YAMAMOTO Mitsuharu 2014-06-27 8:24 ` YAMAMOTO Mitsuharu 2014-08-15 6:19 ` YAMAMOTO Mitsuharu 2014-10-02 3:54 ` YAMAMOTO Mitsuharu 2014-10-03 14:27 ` Angelo Graziosi 2014-10-03 21:25 ` Xin Xu 2014-10-03 23:20 ` Angelo Graziosi 2014-10-04 8:28 ` Angelo Graziosi 2014-10-06 4:21 ` Kazu Yamamoto 2014-10-06 8:21 ` YAMAMOTO Mitsuharu 2014-10-08 2:51 ` Kazu Yamamoto 2014-10-17 23:30 ` YAMAMOTO Mitsuharu 2014-10-21 4:44 ` YAMAMOTO Mitsuharu 2014-10-21 5:18 ` YAMAMOTO Mitsuharu 2014-11-03 7:08 ` YAMAMOTO Mitsuharu 2014-11-03 12:56 ` YAMAMOTO Mitsuharu 2014-11-04 3:40 ` Leo Liu 2014-11-21 4:36 ` YAMAMOTO Mitsuharu 2014-11-27 1:43 ` Kazu Yamamoto 2014-11-28 0:36 ` YAMAMOTO Mitsuharu 2014-11-28 6:14 ` Sam Steingold 2015-01-29 3:51 ` YAMAMOTO Mitsuharu 2015-02-18 10:13 ` YAMAMOTO Mitsuharu 2015-02-18 10:34 ` YAMAMOTO Mitsuharu 2015-03-09 8:45 ` YAMAMOTO Mitsuharu 2015-03-27 10:55 ` YAMAMOTO Mitsuharu 2015-03-31 18:07 ` Sam Steingold 2015-03-31 18:42 ` Steinar Bang 2015-03-31 19:00 ` John Wiegley 2015-04-01 0:06 ` YAMAMOTO Mitsuharu 2015-04-01 17:21 ` Sam Steingold 2015-04-01 20:58 ` Stefan Monnier 2015-04-02 0:04 ` YAMAMOTO Mitsuharu 2015-04-05 23:55 ` YAMAMOTO Mitsuharu 2015-04-11 1:30 ` YAMAMOTO Mitsuharu 2015-04-11 22:28 ` John Wiegley 2015-05-17 6:04 ` YAMAMOTO Mitsuharu 2015-07-13 4:29 ` YAMAMOTO Mitsuharu 2015-08-25 1:56 ` YAMAMOTO Mitsuharu 2015-09-27 8:24 ` YAMAMOTO Mitsuharu 2015-10-30 2:52 ` YAMAMOTO Mitsuharu 2015-10-31 2:39 ` YAMAMOTO Mitsuharu 2015-12-09 3:28 ` YAMAMOTO Mitsuharu 2015-12-13 4:19 ` YAMAMOTO Mitsuharu 2015-12-24 10:29 ` YAMAMOTO Mitsuharu 2015-12-24 17:28 ` John Wiegley 2015-12-28 7:51 ` YAMAMOTO Mitsuharu 2015-12-28 8:44 ` Bozhidar Batsov 2015-12-29 6:47 ` Richard Stallman 2015-12-29 9:40 ` Jean-Christophe Helary 2015-12-29 10:43 ` David Kastrup 2015-12-29 11:18 ` CHENG Gao 2015-12-30 6:09 ` Richard Stallman 2015-12-30 6:26 ` CHENG Gao 2015-12-30 6:09 ` Richard Stallman 2015-12-28 20:29 ` John Wiegley 2015-12-28 22:35 ` David Engster 2015-12-28 22:54 ` John Wiegley 2015-12-29 6:51 ` Richard Stallman 2015-12-29 13:24 ` Rasmus 2015-12-31 6:30 ` Richard Stallman 2015-12-31 19:50 ` Chad Brown 2015-12-31 21:36 ` Random832 2016-01-04 22:31 ` Xu Xin 2016-01-05 0:26 ` Andrés Ramírez 2016-01-01 2:29 ` Richard Stallman 2016-01-01 6:54 ` Daniel Colascione 2016-01-01 7:36 ` Jean-Christophe Helary 2016-01-01 7:47 ` Daniel Colascione 2016-01-01 17:01 ` Ingo Lohmar 2016-01-01 19:35 ` Bozhidar Batsov 2016-01-02 7:54 ` YAMAMOTO Mitsuharu 2016-01-02 22:21 ` John Wiegley 2016-01-03 7:13 ` YAMAMOTO Mitsuharu 2016-01-03 12:36 ` Bozhidar Batsov 2016-01-04 0:38 ` YAMAMOTO Mitsuharu 2016-01-04 0:42 ` John Wiegley 2016-01-05 1:00 ` YAMAMOTO Mitsuharu 2016-01-05 2:00 ` Chad Brown 2016-01-05 4:53 ` John Wiegley 2016-01-06 10:14 ` Alan Schmitt 2016-01-05 10:50 ` Martin Yrjölä 2016-01-05 12:37 ` João Távora 2016-01-05 13:48 ` Paul Michael Reilly 2016-01-03 22:49 ` John Wiegley 2015-12-29 17:14 ` John Wiegley 2015-12-29 17:50 ` Clément Pit--Claudel 2015-12-30 6:11 ` Richard Stallman 2015-12-30 19:57 ` John Wiegley 2015-12-30 20:54 ` Chad Brown 2015-12-31 0:41 ` YAMAMOTO Mitsuharu 2015-12-31 1:06 ` Paul Eggert 2015-12-31 8:28 ` Adrian.B.Robert 2015-12-29 18:00 ` Clément Pit--Claudel 2015-12-29 18:09 ` Dmitry Gutov 2015-12-29 18:19 ` David Kastrup 2015-12-29 19:07 ` Dmitry Gutov 2015-12-29 21:46 ` Alex Dunn 2015-12-29 22:37 ` John Wiegley 2015-12-29 22:57 ` David Kastrup 2015-12-29 23:23 ` John Wiegley 2015-12-30 9:44 ` David Kastrup 2015-12-30 6:15 ` CHENG Gao 2015-12-29 18:30 ` Clément Pit--Claudel 2015-12-29 18:57 ` Christopher W Carpenter 2015-12-29 19:03 ` Clément Pit--Claudel 2015-12-29 19:53 ` John Wiegley 2015-12-29 20:03 ` Christopher W Carpenter 2015-12-30 6:11 ` Richard Stallman 2015-12-30 10:32 ` Clément Pit--Claudel 2015-12-31 6:30 ` Richard Stallman 2015-12-30 10:39 ` David Kastrup 2016-04-22 23:51 ` YAMAMOTO Mitsuharu 2016-04-30 5:57 ` YAMAMOTO Mitsuharu 2016-05-01 9:06 ` YAMAMOTO Mitsuharu 2016-06-26 4:12 ` YAMAMOTO Mitsuharu 2016-07-25 4:44 ` YAMAMOTO Mitsuharu 2016-08-22 0:37 ` YAMAMOTO Mitsuharu 2016-08-22 7:31 ` Marius Kjeldahl 2016-08-22 10:41 ` Marius Kjeldahl 2016-08-23 0:07 ` YAMAMOTO Mitsuharu 2016-08-23 9:02 ` Alan Third 2016-08-24 1:54 ` YAMAMOTO Mitsuharu 2016-08-29 19:56 ` [PATCH] Fix synthetic bold on macOS retina displays Alan Third 2016-09-18 6:39 ` Emacs Mac port YAMAMOTO Mitsuharu 2016-09-18 7:32 ` martin rudalics 2016-09-18 7:48 ` YAMAMOTO Mitsuharu 2016-09-18 8:15 ` martin rudalics 2016-09-18 8:39 ` YAMAMOTO Mitsuharu 2016-09-18 9:52 ` martin rudalics 2016-09-18 14:46 ` Eli Zaretskii 2016-09-18 15:15 ` martin rudalics 2016-09-18 15:41 ` Eli Zaretskii 2016-09-18 17:06 ` martin rudalics 2016-09-18 17:19 ` Eli Zaretskii 2016-09-19 8:19 ` martin rudalics 2016-09-19 2:01 ` YAMAMOTO Mitsuharu 2016-09-19 8:19 ` martin rudalics 2016-09-19 8:42 ` YAMAMOTO Mitsuharu 2016-10-30 5:55 ` YAMAMOTO Mitsuharu 2017-02-04 5:46 ` YAMAMOTO Mitsuharu 2017-02-05 2:35 ` Xu Xin 2017-02-05 2:41 ` YAMAMOTO Mitsuharu 2017-04-21 23:54 ` YAMAMOTO Mitsuharu 2017-05-22 3:31 ` YAMAMOTO Mitsuharu 2017-07-27 4:54 ` YAMAMOTO Mitsuharu 2017-08-24 1:14 ` YAMAMOTO Mitsuharu 2017-09-12 5:31 ` YAMAMOTO Mitsuharu 2017-09-13 3:46 ` YAMAMOTO Mitsuharu 2017-09-26 2:28 ` YAMAMOTO Mitsuharu 2017-10-12 8:12 ` YAMAMOTO Mitsuharu 2018-04-15 7:55 ` YAMAMOTO Mitsuharu 2018-05-29 3:45 ` YAMAMOTO Mitsuharu 2018-06-10 6:09 ` YAMAMOTO Mitsuharu 2018-09-09 1:11 ` YAMAMOTO Mitsuharu 2018-10-24 3:58 ` YAMAMOTO Mitsuharu 2018-11-06 7:51 ` YAMAMOTO Mitsuharu 2018-11-16 9:56 ` YAMAMOTO Mitsuharu 2018-12-21 22:28 ` Leo Liu 2018-12-21 22:59 ` Tim Cross 2018-12-23 3:40 ` Leo Liu 2018-12-22 7:31 ` Eli Zaretskii 2019-03-22 5:28 ` YAMAMOTO Mitsuharu 2019-03-22 9:43 ` Konstantin Kharlamov 2019-03-22 18:11 ` Stefan Monnier 2019-03-22 23:14 ` Van L 2019-03-23 0:15 ` Jean-Christophe Helary 2019-03-23 11:57 ` Alan Third 2019-03-27 19:40 ` Charles A. Roelli 2019-03-24 1:44 ` Richard Stallman 2019-03-24 6:10 ` Van L 2019-04-14 6:32 ` YAMAMOTO Mitsuharu 2019-08-23 5:50 ` YAMAMOTO Mitsuharu 2019-08-29 0:54 ` YAMAMOTO Mitsuharu 2019-10-08 3:40 ` YAMAMOTO Mitsuharu 2019-12-03 8:10 ` YAMAMOTO Mitsuharu 2019-12-03 9:02 ` Pankaj Jangid 2019-12-04 1:08 ` YAMAMOTO Mitsuharu 2019-12-04 10:45 ` VanL 2019-12-05 0:44 ` YAMAMOTO Mitsuharu 2019-12-05 5:16 ` VanL 2019-12-05 7:03 ` VanL 2019-12-04 12:09 ` Pankaj Jangid 2019-12-05 1:01 ` YAMAMOTO Mitsuharu 2019-12-05 4:07 ` Pankaj Jangid 2020-03-23 5:34 ` YAMAMOTO Mitsuharu 2020-03-24 3:25 ` YAMAMOTO Mitsuharu 2020-04-04 11:22 ` HaiJun Zhang 2020-04-04 11:33 ` Eli Zaretskii 2020-04-04 11:46 ` HaiJun Zhang 2020-04-04 12:02 ` HaiJun Zhang 2020-08-11 4:17 ` YAMAMOTO Mitsuharu 2020-11-12 8:09 ` YAMAMOTO Mitsuharu 2020-11-12 8:34 ` Jean Louis 2020-11-12 9:35 ` YAMAMOTO Mitsuharu 2021-03-27 7:59 ` YAMAMOTO Mitsuharu 2021-11-13 7:51 ` YAMAMOTO Mitsuharu 2021-11-13 12:22 ` Jean-Christophe Helary 2021-11-22 13:33 ` Po Lu 2021-11-22 14:55 ` Eli Zaretskii 2021-11-23 6:16 ` YAMAMOTO Mitsuharu 2021-11-23 7:08 ` Po Lu 2021-11-23 12:33 ` Eli Zaretskii 2022-04-06 8:12 ` YAMAMOTO Mitsuharu 2022-09-13 2:19 ` YAMAMOTO Mitsuharu 2023-08-05 9:05 ` YAMAMOTO Mitsuharu 2013-03-11 18:58 ` Current HEAD doesn't build on OSX Randal L. Schwartz 2013-03-11 19:43 ` Randal L. Schwartz 2013-03-12 10:44 ` Darren Hoo 2013-03-12 11:55 ` Dmitry Gutov 2013-03-12 13:52 ` Tassilo Horn 2013-03-12 15:02 ` Randal L. Schwartz 2013-03-12 16:04 ` Glenn Morris -- strict thread matches above, loose matches on Subject: below -- 2016-04-23 13:03 Emacs Mac port Angelo Graziosi 2016-04-24 19:40 ` Angelo Graziosi 2016-04-25 0:30 ` YAMAMOTO Mitsuharu 2017-10-16 16:01 Konrad Podczeck 2017-10-17 1:41 ` YAMAMOTO Mitsuharu 2017-10-30 7:38 ` YAMAMOTO Mitsuharu 2017-10-30 8:25 ` martin rudalics 2017-10-30 8:57 ` YAMAMOTO Mitsuharu 2017-10-31 8:41 ` martin rudalics 2017-10-30 12:43 ` Konrad Podczeck 2018-11-19 7:21 Aaron Madlon-Kay 2018-11-20 0:35 ` YAMAMOTO Mitsuharu 2018-11-20 1:07 ` Aaron Madlon-Kay 2018-11-20 10:47 ` YAMAMOTO Mitsuharu 2019-03-22 19:27 Konrad Podczeck
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).