Vim M #1

900 views

Published on

VimM #1

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
900
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Vim M #1

  1. 1. 10 Vim mootoh
  2. 2. Emacs • wb-line-number • http://homepage1.nifty.com/blankspace/emacs/wb-line-number.html
  3. 3. Reading Vim
  4. 4. • • GUI • • UI • • • wc *.[ch] → 373,424
  5. 5. • buffer.c • memline.c • edit.c • move.c • eval.c • normal.c • ex_cmds.h • ops.c • ex • search.c • ex_+.c • undo.c • ex • structs.h: • • getchar.c • main.c • vim.h • mark.c • memfile.c
  6. 6. • diff.c • misc?.c • feature.h • option.[ch] • WITH_FEATUE • proto.h • fileio.c • • fold.c • quickfix.c • globals.h • regexp.[ch] • • tag.c • hardcopy.c • version.[ch] • hashtab.c • vimio.h • keymap.h • macros.h • message.c
  7. 7. • arabic.[ch] • farsi.[ch] • ascii.h • hangulin.c • charset.c • mbyte.c • digraph.c •
  8. 8. • os_* • NetBeans • DOS • nbdebug.[ch] • dosinst.[ch] • netbeans.c • uninstal.c • Sun Visual Workshop • Windows • integration.[ch] • dlldata.c • workshop.[ch] • glbl_ime.h • wsdebug.[ch] • iid_ole.c • • vimrun.c • term.[ch] • vimtbar.h • termlib.c • xpsm_w32.[ch] • pty.c
  9. 9. • GUI • UI • gui_* • screen.c • menu.c • ui.c • popupmnu.c • window.c • • if_*
  10. 10. • • Just Single Directory • • : undo.c • • misc1.c, misc2.c...
  11. 11. a
  12. 12. • GDB attach • CFLAGS = ‘-O0 -g’ • b •
  13. 13. b normal.c:8692
  14. 14. nv_edit • normal.c: L8692 • Handle "A", "a", "I", "i" and <Insert> commands. • invoke_edit()
  15. 15. invoke_edit • normal.c: L8792 • edit() • edit
  16. 16. edit • edit.c : L299 • • ESC
  17. 17. fmfm
  18. 18. • ? • backtrace
  19. 19. bt (gdb) bt #0 nv_edit (cap=0xbffff9a0) at normal.c:8696 #1 0x000cc9a0 in normal_cmd (oap=0xbffffa50, toplevel=1) at normal.c:1152 #2 0x0009202c in main_loop (cmdwin=0, noexmode=0) at main.c:1181 #3 0x00091c43 in main (argc=2, argv=0xbffffbe4) at main.c:940 (gdb) fr 1 #1 0x000cc9a0 in normal_cmd (oap=0xbffffa50, toplevel=1) at normal.c:1152 1152 (nv_cmds[idx].cmd_func)(&ca);
  20. 20. • normal.c : L220 • nv_cmds: • • normal.c: L512: find_command •
  21. 21. !
  22. 22. • Vim • ‘a’ • • undo ?

×