bodhi / markdowneditor Goto Github PK
View Code? Open in Web Editor NEWA wysiwyge (what-you-see-is-what-you-get-eventually) editor for Markdown documents
Home Page: http://keshiki.net/markdown-editor/
A wysiwyge (what-you-see-is-what-you-get-eventually) editor for Markdown documents
Home Page: http://keshiki.net/markdown-editor/
To reproduce, open any markdown file with content in it and then try editing it with MarkEdit. After a few keypresses MarkEdit will eventually crash. Here is an example backtrace from the crash dialog:
Exception Name: NSInvalidArgumentException
Description: -[OGRegularExpression type]: unrecognized selector sent to instance 0x60000174f240
User Info: (null)
0 CoreFoundation 0x00007fff3697fb57 __exceptionPreprocess + 250
1 libobjc.A.dylib 0x00007fff6f7cb5bf objc_exception_throw + 48
2 CoreFoundation 0x00007fff369febe7 -[NSObject(NSObject) __retain_OA] + 0
3 CoreFoundation 0x00007fff368e43bb ___forwarding___ + 1427
4 CoreFoundation 0x00007fff368e3d98 _CF_forwarding_prep_0 + 120
5 MarkEdit 0x000000010000402e -[MarkdownDelegate popParagraphBlocks:] + 109
6 MarkEdit 0x0000000100006535 -[MarkdownDelegate textStorageDidProcessEditing:] + 1540
7 CoreFoundation 0x00007fff368f980f __CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__ + 12
8 CoreFoundation 0x00007fff368f97a3 ___CFXRegistrationPost1_block_invoke + 63
9 CoreFoundation 0x00007fff368f9718 _CFXRegistrationPost1 + 372
10 CoreFoundation 0x00007fff368f9384 ___CFXNotificationPost_block_invoke + 80
11 CoreFoundation 0x00007fff368c94fd -[_CFXNotificationRegistrar find:object:observer:enumerator:] + 1554
12 CoreFoundation 0x00007fff368c89a9 _CFXNotificationPost + 1351
13 Foundation 0x00007fff38f46786 -[NSNotificationCenter postNotificationName:object:userInfo:] + 59
14 UIFoundation 0x00007fff679c8d93 -[NSTextStorage processEditing] + 221
15 UIFoundation 0x00007fff679d6078 -[NSTextStorage endEditing] + 134
16 AppKit 0x00007fff33dc20d2 -[NSTextView _insertText:replacementRange:] + 2622
17 AppKit 0x00007fff33fa06db -[NSTextView(NSKeyBindingCommands) insertNewline:] + 493
18 AppKit 0x00007fff33eadb14 -[NSTextView doCommandBySelector:] + 217
19 AppKit 0x00007fff33eada11 -[NSTextInputContext(NSInputContext_WithCompletion) doCommandBySelector:completionHandler:] + 244
20 AppKit 0x00007fff33dbee76 -[NSKeyBindingManager(NSKeyBindingManager_MultiClients) interpretEventAsCommand:forClient:] + 2131
21 AppKit 0x00007fff33dc8678 __84-[NSTextInputContext _handleEvent:options:allowingSyntheticEvent:completionHandler:]_block_invoke_5 + 534
22 AppKit 0x00007fff34521ded __84-[NSTextInputContext _handleEvent:options:allowingSyntheticEvent:completionHandler:]_block_invoke_3.813 + 74
23 AppKit 0x00007fff33dc843d -[NSTextInputContext tryHandleEvent_HasMarkedText_withDispatchCondition:dispatchWork:continuation:] + 87
24 AppKit 0x00007fff34521d73 __84-[NSTextInputContext _handleEvent:options:allowingSyntheticEvent:completionHandler:]_block_invoke.810 + 237
25 HIToolbox 0x00007fff355677a8 __TSMProcessRawKeyEventWithOptionsAndCompletionHandler_block_invoke_5 + 70
26 HIToolbox 0x00007fff355796e4 ___ZL23DispatchEventToHandlersP14EventTargetRecP14OpaqueEventRefP14HandlerCallRec_block_invoke + 110
27 AppKit 0x00007fff3451d346 __55-[NSTextInputContext handleTSMEvent:completionHandler:]_block_invoke.282 + 885
28 AppKit 0x00007fff33dc0c0c __55-[NSTextInputContext handleTSMEvent:completionHandler:]_block_invoke_2 + 74
29 AppKit 0x00007fff33dc0b8f -[NSTextInputContext tryHandleTSMEvent_HasMarkedText_withDispatchCondition:dispatchWork:continuation:] + 87
30 AppKit 0x00007fff33dc0197 -[NSTextInputContext handleTSMEvent:completionHandler:] + 1794
31 AppKit 0x00007fff33dbfa25 _NSTSMEventHandler + 299
32 HIToolbox 0x00007fff355078ff _ZL23DispatchEventToHandlersP14EventTargetRecP14OpaqueEventRefP14HandlerCallRec + 1254
33 HIToolbox 0x00007fff35506d8d _ZL30SendEventToEventTargetInternalP14OpaqueEventRefP20OpaqueEventTargetRefP14HandlerCallRec + 329
34 HIToolbox 0x00007fff35506c3d SendEventToEventTargetWithOptions + 45
35 HIToolbox 0x00007fff3556392b SendTSMEvent_WithCompletionHandler + 381
36 HIToolbox 0x00007fff35563dd5 __SendUnicodeTextAEToUnicodeDoc_WithCompletionHandler_block_invoke + 387
37 HIToolbox 0x00007fff35563c2d __SendFilterTextEvent_WithCompletionHandler_block_invoke + 182
38 HIToolbox 0x00007fff3556397a SendTSMEvent_WithCompletionHandler + 460
39 HIToolbox 0x00007fff35563781 SendFilterTextEvent_WithCompletionHandler + 225
40 HIToolbox 0x00007fff3556344b SendUnicodeTextAEToUnicodeDoc_WithCompletionHandler + 277
41 HIToolbox 0x00007fff355631f8 __utDeliverTSMEvent_WithCompletionHandler_block_invoke_2 + 281
42 HIToolbox 0x00007fff35563058 __utDeliverTSMEvent_WithCompletionHandler_block_invoke + 355
43 HIToolbox 0x00007fff35562ec6 TSMKeyEvent_WithCompletionHandler + 644
44 HIToolbox 0x00007fff35562c27 __TSMProcessRawKeyEventWithOptionsAndCompletionHandler_block_invoke_4 + 250
45 HIToolbox 0x00007fff35562aa6 __TSMProcessRawKeyEventWithOptionsAndCompletionHandler_block_invoke_3 + 257
46 HIToolbox 0x00007fff35562872 __TSMProcessRawKeyEventWithOptionsAndCompletionHandler_block_invoke_2 + 282
47 HIToolbox 0x00007fff35562625 __TSMProcessRawKeyEventWithOptionsAndCompletionHandler_block_invoke + 274
48 HIToolbox 0x00007fff3555115d TSMProcessRawKeyEventWithOptionsAndCompletionHandler + 3403
49 AppKit 0x00007fff34521c71 __84-[NSTextInputContext _handleEvent:options:allowingSyntheticEvent:completionHandler:]_block_invoke_3.808 + 110
50 AppKit 0x00007fff345219c3 __204-[NSTextInputContext tryTSMProcessRawKeyEvent_orSubstitution:dispatchCondition:setupForDispatch:furtherCondition:doubleSpaceSubstitutionCondition:doubleSpaceSubstitutionWork:dispatchTSMWork:continuation:]_block_invoke.765 + 120
51 AppKit 0x00007fff33dbe4df -[NSTextInputContext tryTSMProcessRawKeyEvent_orSubstitution:dispatchCondition:setupForDispatch:furtherCondition:doubleSpaceSubstitutionCondition:doubleSpaceSubstitutionWork:dispatchTSMWork:continuation:] + 245
52 AppKit 0x00007fff33dbdec5 -[NSTextInputContext _handleEvent:options:allowingSyntheticEvent:completionHandler:] + 1434
53 AppKit 0x00007fff33dbd8ee -[NSTextInputContext _handleEvent:allowingSyntheticEvent:] + 105
54 AppKit 0x00007fff33dbd7e3 -[NSView interpretKeyEvents:] + 209
55 AppKit 0x00007fff33dbd631 -[NSTextView keyDown:] + 699
56 AppKit 0x00007fff33d1ad5d -[NSWindow(NSEventRouting) _reallySendEvent:isDelayedEvent:] + 6512
57 AppKit 0x00007fff33d191c9 -[NSWindow(NSEventRouting) sendEvent:] + 349
58 AppKit 0x00007fff33d17efe -[NSApplication(NSEvent) sendEvent:] + 2826
59 AppKit 0x00007fff33b645bf -[NSApplication run] + 707
60 AppKit 0x00007fff33b36396 NSApplicationMain + 777
61 MarkEdit 0x000000010000146f main + 33
62 MarkEdit 0x000000010000102c start + 52
Nothing can be edited if the hash that starts a header is not suffixed by a space before the header name this is only tested in lion.
The same nothing can be edited state can be achieved if two newlines are added in a row. Also tested only lion.
MarkEdit windows start in the lower half of the screen on every launch, no matter where they I move them.
If you make this call in their window controller, their position and size will be saved in preferences automatically, and applied when the user opens the window again:
[self setWindowFrameAutosaveName:@"myCustomWindowIdentifier"]
p.s. MarkEdit is a useful app! Thanks for sharing it.
I really like the editor and use it constantly. Sadly, it appears not to be compatible with OS X Lion.
seconds after launch receive the following crash report:
Process: MarkEdit [4767]
Path: /Users/USER/Downloads/MarkEdit.app/Contents/MacOS/MarkEdit
Identifier: net.keshiki.MarkEdit
Version: 0.1 (0.1)
Code Type: X86-64 (Native)
Parent Process: launchd [485]
Date/Time: 2011-07-23 17:18:44.370 -0500
OS Version: Mac OS X 10.7 (11A511)
Report Version: 9
Interval Since Last Report: 151580 sec
Crashes Since Last Report: 6
Per-App Interval Since Last Report: 87 sec
Per-App Crashes Since Last Report: 3
Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: 0x000000000000000d, 0x0000000000000000
VM Regions Near 0:
-->
__TEXT 0000000100000000-0000000100009000 [ 36K] r-x/rwx SM=COW /Users/USER/Downloads/MarkEdit.app/Contents/MacOS/MarkEdit
Application Specific Information:
objc_msgSend() selector name: type
objc[4767]: garbage collection is OFF
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 libobjc.A.dylib 0x00007fff873ece8c objc_msgSend + 12
1 net.keshiki.MarkEdit 0x000000010000402e -[MarkdownDelegate popParagraphBlocks:] + 109
2 net.keshiki.MarkEdit 0x0000000100006535 -[MarkdownDelegate textStorageDidProcessEditing:] + 1540
3 com.apple.Foundation 0x00007fff88502716 __-[NSNotificationCenter addObserver:selector:name:object:]_block_invoke_1 + 47
4 com.apple.CoreFoundation 0x00007fff87cf251a _CFXNotificationPost + 2634
5 com.apple.Foundation 0x00007fff884ee9cb -[NSNotificationCenter postNotificationName:object:userInfo:] + 65
6 com.apple.AppKit 0x00007fff9270d7e9 -[NSTextStorage processEditing] + 135
7 com.apple.AppKit 0x00007fff92634431 -[NSTextStorage edited:range:changeInLength:] + 385
8 com.apple.AppKit 0x00007fff927ec659 -[NSConcreteTextStorage replaceCharactersInRange:withString:] + 81
9 com.apple.AppKit 0x00007fff92bb7027 -[NSTextView(NSPrivate) _userReplaceRange:withString:] + 189
10 com.apple.AppKit 0x00007fff92bbd096 _NSDoUserReplaceForCharRange + 366
11 com.apple.AppKit 0x00007fff92bbd177 _NSDoUserDeleteForCharRange + 40
12 com.apple.AppKit 0x00007fff92baa6f8 -[NSTextView(NSKeyBindingCommands) deleteBackward:] + 441
13 com.apple.CoreFoundation 0x00007fff87d3911d -[NSObject performSelector:withObject:] + 61
14 com.apple.AppKit 0x00007fff92ab77b5 -[NSResponder doCommandBySelector:] + 62
15 com.apple.AppKit 0x00007fff92b91bf2 -[NSTextView doCommandBySelector:] + 198
16 com.apple.AppKit 0x00007fff929ebd07 -[NSKeyBindingManager(NSKeyBindingManager_MultiClients) interpretEventAsCommand:forClient:] + 1799
17 com.apple.AppKit 0x00007fff92d3c27e -[NSTextInputContext handleEvent:] + 747
18 com.apple.AppKit 0x00007fff92c09790 -[NSView interpretKeyEvents:] + 248
19 com.apple.AppKit 0x00007fff92b81fa5 -[NSTextView keyDown:] + 691
20 com.apple.AppKit 0x00007fff92663ad2 -[NSWindow sendEvent:] + 7404
21 com.apple.AppKit 0x00007fff925fbf19 -[NSApplication sendEvent:] + 5665
22 com.apple.AppKit 0x00007fff9259242b -[NSApplication run] + 548
23 com.apple.AppKit 0x00007fff9281052a NSApplicationMain + 867
24 net.keshiki.MarkEdit 0x000000010000146f main + 33
25 net.keshiki.MarkEdit 0x000000010000102c start + 52
Be careful using image syntax ![alt](image_url)
. It might make the app crash on saving... I'll try to look into it when I have some time.
New OgreKit location is here: https://github.com/sonoisa/OgreKit
Also, Xcode has a hard time finding it once built
If I write "foo" on one line and "===" on the next, this creates a header as expected. If I while being on the second line pushes backspace, the cursor is positioned somewhere between the first and the second line.
Rebate
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.