Thread (26 messages) 26 messages, 9 authors, 2016-01-14

Developing environments used for kernel development

From: Geyslan G. Bem <hidden>
Date: 2016-01-14 16:58:42

Possibly related (same subject, not in this thread)

2016-01-14 13:52 GMT-03:00 Daniel. [off-list ref]:
You may need to install irony and company from melpa, checkout this:
https://github.com/Sarcasm/irony-mode
Tks.
Also you need to install clang with your package manager or compiling it by
your self... About the window moving system, that buffer-move is nice, for
moving with window I'm just searching for a better keybind. Maybe creating
an sparse keymap and making it active with some avaible keystroke, swithing
window and desabling the keymap when first unknown key is pressed, but I
didn't have time to research on that yet :)
May you like it.

;; window move
(global-set-key (kbd "C-s-j") 'windmove-left)
(global-set-key (kbd "C-s-;") 'windmove-right)
(global-set-key (kbd "C-s-l") 'windmove-up)
(global-set-key (kbd "C-s-k") 'windmove-down)
;; buffer-move
(global-set-key (kbd "M-s-j") 'buf-move-left)
(global-set-key (kbd "M-s-;") 'buf-move-right)
(global-set-key (kbd "M-s-l") 'buf-move-up)
(global-set-key (kbd "M-s-k") 'buf-move-down)
;; window resize
(global-set-key (kbd "C-s-S-j") 'shrink-window-horizontally)
(global-set-key (kbd "C-s-:") 'enlarge-window-horizontally)
(global-set-key (kbd "C-s-S-l") 'shrink-window)
(global-set-key (kbd "C-s-S-k") 'enlarge-window)
Cheers,

2016-01-14 14:28 GMT-02:00 Daniel. [off-list ref]:
quoted
ops, forget the link:
http://pastebin.com/uQkErV46

Cheers,


2016-01-14 14:28 GMT-02:00 Daniel. [off-list ref]:
quoted
clang is used only for parsing, nothing to do with compilation :)

Here it is :)

2016-01-14 13:35 GMT-02:00 Geyslan G. Bem [off-list ref]:
quoted
2016-01-14 12:23 GMT-03:00 Daniel. [off-list ref]:
quoted
I've tried using semantic mode but it gives me ""#<buffer jiffies.h> -
Arithmetic error"*" all the time. I've also tried a ctags aproach, but
it is
quite slow on big projects, then I tried irony-mode which uses clang
to
parse sources.
Hmmm. I'm having this issue too using gtags.
quoted
I never used autocompletion before but I'm having to deal with a code
that
came from a microcontroller and
Have.Crasy.StrucsNamed.Like.This.With.ALot.Of.Useless.Members.Inside,
so I
got lines wrapping twice and lots of useless members, I never could
remember
the members names and the definition is less readable than the use so
I
really needed autocompletion to navigate
that mess. Clang parsing seems fast to me, I've tried to avoid it but,
well,
it worked fine...
Nice. Could you share your .el? So the clang is used only for compile
warnings? If yes it may differ from gcc that is what kernel uses. Let
me know more. :-)

I'm using gtags following these recipes:
http://tuhdo.github.io/c-ide.html
quoted
Regards,

2016-01-14 12:26 GMT-02:00 Geyslan G. Bem [off-list ref]:
quoted
2016-01-14 10:06 GMT-03:00 Daniel. [off-list ref]:
quoted
Thanks for the tip, I've past the last month trying vim again, but
I'll
keep
with emacs anyway. I have so much code writen in elisp and my
firgers
are
adicted to Ctrl keystrokes, so ... I could achieve autocomplete
with
company
+ irony + clang.
Why clang?
quoted
Best regards,

2016-01-13 22:37 GMT-02:00 Geyslan G. Bem [off-list ref]:
quoted
2016-01-13 21:23 GMT-03:00 Ismael Luceno
[off-list ref]:
quoted
On Thu, Dec 24, 2015 at 11:57:32AM -0200, Daniel. wrote:
quoted
I had heard about emacs server, but never tried it.. This
should fix
the
starting time, but not the learning curve :)
You can wrap emacsclient to automatically start emacs --daemon
with a
script like this:

    #!/bin/sh
    exec emacsclient -a '' -c "$@"

You may also want to pre-compile your elisp files.
Themes may not load correctly when using emacs as daemon. But you
can
fix (tweak) it with

;; theme
(defvar my:theme 'distinguished)
(defvar my:theme-window-loaded nil)
(defvar my:theme-terminal-loaded nil)

(if (daemonp)
    (add-hook 'after-make-frame-functions(lambda (frame)
                       (select-frame frame)
                       (if (window-system frame)
                           (unless my:theme-window-loaded
                         (if my:theme-terminal-loaded
                             (enable-theme my:theme)
                           (load-theme my:theme t))
                         (setq my:theme-window-loaded t))
                         (unless my:theme-terminal-loaded
                           (if my:theme-window-loaded
                           (enable-theme my:theme)
                         (load-theme my:theme t))
                           (setq my:theme-terminal-loaded t)))))
  (progn
    (load-theme my:theme t)
    (if (display-graphic-p)
    (setq my:theme-window-loaded t)
      (setq my:theme-terminal-loaded t))))
quoted
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies at kernelnewbies.org
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies


--
Regards,

Geyslan G. Bem
hackingbits.com



--
"Do or do not. There is no try"
  Yoda Master


--
Regards,

Geyslan G. Bem
hackingbits.com



--
"Do or do not. There is no try"
  Yoda Master


--
Regards,

Geyslan G. Bem
hackingbits.com



--
"Do or do not. There is no try"
  Yoda Master



--
"Do or do not. There is no try"
  Yoda Master



--
"Do or do not. There is no try"
  Yoda Master


-- 
Regards,

Geyslan G. Bem
hackingbits.com
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help