unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Yuriy Pitometsu <pitometsu@gmail.com>
To: 25066@debbugs.gnu.org
Subject: bug#25066: 25.1; objc-mode still doesn't fontify Objective-C 2.0 keywords
Date: Tue, 13 Dec 2016 20:50:57 +0200	[thread overview]
Message-ID: <CAHL3MAWkvWA2Z9NP_39O=6a=gHh0STJVUhxJZ+UhAxCcq-RYcg@mail.gmail.com> (raw)
In-Reply-To: <CAHL3MAV8-iqiE5eTaL6Bhv5RyAmvzGY7fim9eeLfr_hbewSHuw@mail.gmail.com>

EXAMPLE from VIM implementation here ;-)
https://fossies.org/linux/vim/runtime/syntax/objc.vim

On Tue, Nov 29, 2016 at 10:32 PM, Yuriy Pitometsu <pitometsu@gmail.com> wrote:
> As noticed here
> https://lists.gnu.org/archive/html/bug-gnu-emacs/2012-08/msg00689.html,
> there some problems with modern ObjC in Emacs. Further more, that
> issue even contain patch that works at least for "properties". But
> that functionality not available in Emacs 25.1 yet, so disappointing.
>
> In addition, there's no support in font-lock for such nowadays
> features of ObjC syntax like:
> - properties (example: @property (copy, nonatomic, readonly,
> getter=getBlock, null_resettable) void (^ block)(inout
> NSDictionary<NSString *, NSError *> *_Nullable __autoreleasing
> *errorDictionary);)
> - blocks (example: ^ { void (^)(void) = ^(void) {}; }();)
> - literals (example: @{@"":@(@[@1])};)
> - lightweight generics (example: NSArray<NSNumber *> *)
> - modern keywords (example: @import, nullable, __bridge, __block, strong)
>
> --
> In GNU Emacs 25.1.1 (x86_64-apple-darwin15.6.0, NS appkit-1404.47
> Version 10.11.6 (Build 15G1004))
>  of 2016-10-22 built on Yuriys-iMac.local
> Configured using:
>  'configure --disable-dependency-tracking --disable-silent-rules
>  --enable-locallisppath=/usr/local/share/emacs/site-lisp
>  --infodir=/usr/local/Cellar/emacs/25.1/share/info/emacs
>  --prefix=/usr/local/Cellar/emacs/25.1 --without-x --with-xml2
>  --without-dbus --without-gnutls --with-imagemagick --with-rsvg
>  --with-ns --disable-ns-self-contained'
>
> Configured features:
> JPEG RSVG IMAGEMAGICK NOTIFY ACL LIBXML2 ZLIB TOOLKIT_SCROLL_BARS NS
>
> Important settings:
>   value of $LC_CTYPE: UTF-8
>   value of $LANG: en_UA.UTF-8
>   locale-coding-system: utf-8-unix
>
> Major mode: ObjC/l
>
> Minor modes in effect:
>   diff-auto-refine-mode: t
>   tooltip-mode: t
>   global-eldoc-mode: t
>   electric-indent-mode: t
>   mouse-wheel-mode: t
>   tool-bar-mode: t
>   menu-bar-mode: t
>   file-name-shadow-mode: t
>   global-font-lock-mode: t
>   font-lock-mode: t
>   auto-composition-mode: t
>   auto-encryption-mode: t
>   auto-compression-mode: t
>   line-number-mode: t
>   transient-mark-mode: t
>   abbrev-mode: t
>
> Recent messages:
> next-line: End of buffer
> Saving file /Users/netsu/Documents/Projects/Bank34/Podfile...
> Wrote /Users/netsu/Documents/Projects/Bank34/Podfile
> Quit
> Mark saved where search started
> Making completion list...
> Quit
> Making completion list...
> Quit
> Making completion list... [4 times]
>
> Load-path shadows:
> None found.
>
> Features:
> (shadow sort mail-extr emacsbug message dired format-spec rfc822 mml
> mml-sec password-cache epg epg-config gnus-util mm-decode mm-bodies
> mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail
> rfc2047 rfc2045 ietf-drums mm-util help-fns mail-prsvr mail-utils
> cl-extra help-mode cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles
> cc-align cc-engine cc-vars cc-defs cl-loaddefs pcase cl-lib misearch
> multi-isearch vc-git diff-mode easy-mmode ruby-mode smie easymenu
> term/xterm xterm time-date mule-util tooltip eldoc electric uniquify
> ediff-hook vc-hooks lisp-float-type mwheel ns-win ucs-normalize
> term/common-win tool-bar dnd fontset image regexp-opt fringe
> tabulated-list newcomment elisp-mode lisp-mode prog-mode register page
> menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock
> syntax facemenu font-core frame cl-generic cham georgian utf-8-lang
> misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms
> cp51932 hebrew greek romanian slovak czech european ethiopic indian
> cyrillic chinese charscript case-table epa-hook jka-cmpr-hook help
> simple abbrev minibuffer cl-preloaded nadvice loaddefs button faces
> cus-face macroexp files text-properties overlay sha1 md5 base64 format
> env code-pages mule custom widget hashtable-print-readable backquote
> kqueue cocoa ns multi-tty make-network-process emacs)
>
> Memory information:
> ((conses 16 228671 7694)
>  (symbols 48 22509 0)
>  (miscs 40 59 399)
>  (strings 32 23546 6369)
>  (string-bytes 1 777372)
>  (vectors 16 34183)
>  (vector-slots 8 647690 3156)
>  (floats 8 167 683)
>  (intervals 56 872 14)
>  (buffers 976 22))
>
> --
> With best regards,
> Yuriy Pitomets
> Haskell developer | Strong solution
> For beautiful ideas



-- 
With best regards,
Yuriy Pitomets
Haskell developer | Strong solution
For beautiful ideas





      reply	other threads:[~2016-12-13 18:50 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-29 20:32 bug#25066: 25.1; objc-mode still doesn't fontify Objective-C 2.0 keywords Yuriy Pitometsu
2016-12-13 18:50 ` Yuriy Pitometsu [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAHL3MAWkvWA2Z9NP_39O=6a=gHh0STJVUhxJZ+UhAxCcq-RYcg@mail.gmail.com' \
    --to=pitometsu@gmail.com \
    --cc=25066@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).