markedit-app / markedit Goto Github PK
View Code? Open in Web Editor NEWJust like TextEdit on Mac but dedicated to Markdown.
Home Page: https://markedit.app
License: MIT License
Just like TextEdit on Mac but dedicated to Markdown.
Home Page: https://markedit.app
License: MIT License
Since 1.4.1, the keyboard shortcut for word selection – Shift–Option Arrow left/right – behaves like the cursor movement by one word to the left/right (= like Option Arrow left/right). Up to version 1.2.x the keyboard shortcut behaved in the standard MacOS way (extend the current selection by one word to the left/right).
Shift Arrow left/right and Shift-Command Arrow left/right behave like expected.
P.S.: I love this handy App. Since publishing, it became a daily companion of mine. Keep on the good work!
I'm not sure when it comes exactly, but i've met it in the follow circumstances:
The Copy Pandoc Command facility is a very good (and simple) alternative to all the work involved in exporting to different file formats (not reinventing the wheel). The EPUB and PDF exports in particular are very useful.
Personally I'd like to reduce the margins and set the page sizes for EPUB and PDF, but coding an options pane for all the possibilities is a lot of work, may miss out some helpful ones, may clutter the UI, and may include ones nobody ever uses.
A quick solution would be a simple text field (maybe in Settings, General) to specify extra arguments in the generated command, such as: -V papersize=A5 -V geometry:margin=1in --indented-code-classes=javascript -V mainfont="Palatino"
.
As these exporting commands involve installing Pandoc (and hence probably brew and basictex too), the ability bar for using them is reasonably high. Those who can get to this point are presumably somewhat technical, so this feels like a quick(ish) win that enables huge flexibility with virtually zero extra maintenance overhead for such users.
I save my markdown files as .md
. It would be really nice if MarkEdit would remember this and make the default extension .md
when I'm saving another file. Currently I have to delete .markdown
each time and replace it.
(This is obviously incredibly low priority)
I'm using MarkEdit for long-form writing (where I especially like the table of contents dropdown).
With creative writing, line numbers are normally not needed so I switch them off. However whilst when line numbers are shown there is a small left margin between the numbers and the text, when the line numbers are hidden the entire margin vanishes and the text is then completely flush with the left edge of the window.
It may purely be down to aesthetics and personal opinion, but this feels jarring in use. It may also be down to expectations when writing as opposed to coding, where it is common to have reasonably wide margins both sides to emulate writing on paper (this is not the feature request; I appreciate this is a streamlined editor).
Is it possible, please, to include a slight left margin when there are no line numbers visible (similar in appearance to when the line numbers are shown)?
Double or triple clicking a line with emoji in it causes a crash. This can be seen in the GIF below. Tested in MarkEdit 1.8.1. Reproducible every time on my Mac.
Thanks for MarkEdit! Please let me know if you require more information.
Crash report attached.
Please periodically save the buffer for each file locally (without overwriting the existing file). Similarly to how Sublime Text always backs up all buffers even if you haven't saved them. This will help protect against dataloss due to a sudden restart.
Thank you!
Hello.
There is no support for RTL documents. CodeMirror supports them.
Hi,
When using 2 space indent, in this situation in a list:
With two backspaces you end up here, i.e. at a 2 space indent, which seems to be the intended behavior:
But with 4 space indent, the first backspace is working correctly:
But the second removes 4 spaces instead of 2, which leads to a wrong 2 space indent in a 4 space indent file:
Or is this intended for a reason I'm not aware of?
Thank you
Obviously, the Mac App Store is no longer somewhere I would like to stay.
There are many reasons, the most important one is that they refuse to get my name right. Also, I don't want to publish apps to some regions where I need to get a license to do so.
Since MarkEdit is an open-source project, I don't think anyone should censor my work again and again. I started thinking about non-MAS distributions.
Related: https://github.com/MarkEdit-app/MarkEdit/wiki/Philosophy#be-a-good-macos-citizen.
We always only keep 2 latest macOS major releases, will make a xcode15
branch to bump deploy targets.
Opened #187.
I tend to declutter my writing environment as much as possible and when writing Markdown I find line numbers unnecessary. But turning it off effectively pushes the text to the left edge of the editor, without any margin :). This is quite jarring for the eyes and decreases readability; imagine reading a web page on a mobile phone with text stretched to the screen's edges.
Related: #143
I think it would be cool to have a preview mode, where you can remove all markdown syntax to see what it will look like when exported
Hi, I just updated to 1.1.0 (8) in TestFlight, and when launching the app and Active line indicator
is unchecked, the the active line is still getting highlighted.
If I then check and uncheck the setting again, it correctly does not highlight the active line until closing and relaunching the app. When relaunching the app after that, the problem still persists.
If Active line indicator
is checked, it behaves as expected on relaunch.
It seems option-esc cannot always bring up the panel. Investigated a little bit, can also reproduce using TextEdit.
Hello,
Thank you for this wonderful app. I understand the philosophy of keeping the app simple, but I think this is a feature request that you can at least consider. In any code editor, you have some sort of automatic word completion (or even words from the system dictionaries like in BBEdit or Coteditor). You most probably know what it is but for the sake of clarity: word completion is a dropdown below the current word suggesting previously typed words, that you can browse with arrow keys and select the correct completion with the tab or enter key.
It is also a somewhat built-in feature of macOS, but it does not trigger automatically (it is an annoying keyboard shortcut), so it defeats the whole purpose of saving time with text completion.
But then I believe (I'm not a developer) that it should not be too hard to implement. I think it is what Coteditor (and the paid version of BBEdit probably) uses because the wonderful thing about it is that is suggests words according to context: previously used words, but also words in the language of the current sentence, and even the most common used words according to grammar and syntax (for example, while typing "She s...", "sees" and "says" will appear!)
As MarkEdit clearly takes its roots in code editors visually and functionally, I think this feature should be carried along too as an option for people who are used to typing markdown in code editors while using this feature.
The common use case is people studying languages, or anyone dealing with complicated nouns and names, transliterations of non latin scripts and words with many accents/diacritics to type again and again. Typing them is tedious, and leads to a mistake each time. Text completion solves both issues: it is a big time saver, and foolproof!
But it can be used by anyone who does not know about this wonderful feature, and wishes to save time while writing.
Thank you for reading all this!
Yaml frontmatter is an extension frequency used in static site generators and other engines.
For example from the Publish documentation we take the following example:
---
productPrice: 250
---
# A fantastic product
...
While this does not really break MarkEdit’s markup, it makes it clear that it is not a feature that MarkEdit was designed for. Especially the leading and trailing ---
s have different formatting. It would be nice to get some syntax highlighting when it is detected. Just give everything left and right of the colon different colors and have the separators look the same.
Will need to investigate this warning:
[plugin:vite:reporter]
(!) FileA.js is dynamically imported by FileB.ts but also statically imported by FileC.js, FileD.js, dynamic import will not move module into another chunk.
It seems from vitejs/vite#12850 and doesn't affect the actual built bundle.
I don't know if this is wanted (easier MD formatting ?!?!) or not, but differently from TextEdit, MarkEdit seems not to handle quick double space as "sentence ending" (dot + space).
Hello,
When you enter some dead key state, for example "`" in the French keyboard, MarkEdit writes (wrongly) the dead key as a real character, and then enters the dead key state.
For example, if you want to write "ò" by pressing, [DEAD KEY `] + "o", but the result is "`ò" (note the double "``"). I first thought it happened with all dead keys, but it does not happen with "^" or "¨" for example, only "`" and "~" are affected by the bug (in the French keyboard at least) .
The correct macOS behavior is that after pressing the dead key, the dead key (usually a diacritic) appears with a line below, indicating that the next key press will be dependent on the dead key mapping of the keyboard. But this is not meant to be a real character in the document, it is just a useful display indicator (in order to get the "real" key as an input, you have to press SPACE after the dead key). On the other hand, MarkEdit does not show this indicator for "`" and "~", but instead inputs directly the "real" key associated to the dead key, which breaks the dead key functionality, and then enters dead key state without any indicator.
Thank you.
There's export feature through pandas based on LaTeX. But LaTeX distro size more than 1 gb, context size somewhat around 100 md. What about to switch them?
I am working on macOS 14 support and noticed that there're unfinished SDK changes, left [macOS 14]
labels in the code in order to clean them up once Apple is ready, see #185.
If I open a TextBundle file, images in the TextBundle assets folder are not displayed.
Hi. What are your thoughts on supporting more languages for syntax highlighting in code blocks?
I have a fork (https://github.com/somelinguist/MarkEdit) that enables highlighting for fsharp and ocaml using @codemirror/legacy-modes/mode/mllike
, which is already included in the app but not enabled.
Would you be open to me submitting a pull request?
Thanks for this great app!
When writing, I would like to use MarkEdit in fullscreen to be more focused. Well, on big screens the lines are way too long for this use case, so it would be nice to set a maximum line width or left and right margins. And: as I don't need the big line numbers, the text is placed too near to the window border in my opinion. Maybe this can be altered by custom themes, but I haven't found, how to add my own CSS.
When taking notes it can be very useful to have the application "Float on top" (other terms used: Pin on top / Stay on top) - keeping it above all other windows regardless of window focus. Some applications (Craft, Bike, Plain Text Editor by Sindre Sorhus) have this built in.
Dragging the scroller would lead to the entire view to be moved.
Also, if scroller style is set to always
in system settings, we will see duplicate scrollers.
It would be great to have a "live preview" feature, which would allow to see the markdown text rendered.
Currently, I do it like this:
Hello,
Shift+Tab is working as expected, which is de-indenting the current line of the cursor if no text is selected, or all the lines selected.
But Tab does not increment the same way. It just adds tabs (or spaces depending on settings) in the middle of the document if no text is selected, or replaces the text selected with tabs.
I think Tab should behave as Shift+Tab (in reverse of course), which is the common behavior in many code editors, because it is more coherent and more useful, as there is literally no usage for a tab in the middle of a markdown document line.
Thank you
It would be great it there was an option to customize margins in the editor. Something simple like a slider that changes both sides equally would do.
Or/and an option to set a maximum text body width (similar to nvALT); this way users could keep the text readable even when maximizing the editor window or running it in fullscreen (which many people like to do to achieve a distraction-free writing environment), preventing it from flowing to the editor/screen edges.
As a general rule, a readable line length should be an average of 45–90 characters per line or 2–3 lowercase alphabets.
Edit: Now that I thought about it, a setting similar to "Maximum characters per line" coupled with a healthy default margin (even non-customizable) would probably be the best option, and in keeping with "Keep the app dead simple, make settings minimum" philosophy stated in the Wiki. This solves both problems; healthy breathing margins when line numbers are disabled and the editor width is smaller than the set "Maximum characters per line", and readable text when the editor has a bigger size or is in fullscreen.
Related: #144
I love using lists in MarkEdit. It would be amazing to be able to create nested lists.
So I would be able to intend lists with tabs and keep the intent when creating a new line.
It would be nice if MarkEdit could read and write textbundle files.
Sometimes I want to select a huge amount of text. So, I place the cursor at the beginning of a paragraph and scroll down to the text where my selection should end. Typically, I would do this in macOS by holding Shift and then click behind the last character to select. In MarkEdit this does not work, as pressing Shift scrolls back to the cursor position and the last characters get out of sight before Shift-clicking. A workaround is holding Shift before scrolling, but that's out of my muscle memory. ;-)
Edit: It only happens when "keep caret in the middle" is enabled.
"Move to..." and then selecting "Other" does nothing. If I try it again, MarkEdit locks up. I am using Default Folder.
Crash report attached.
crash.odt
I appreciate the clean and focused interface of MarkEdit for editing purposes. However, as a user who is used to VIM keybindings in my workflow, I find it challenging to fully transition to MarkEdit.
Therefore, I respectfully request that you consider adding VIM keybindings functionality to MarkEdit. This addition will make your editor even more efficient for users familiar with VIM.
Additionally, there is already a plugin called codemirror-vim that implements VIM keybindings, making integration straightforward.
TextBundle file cannot be opened (error message: "The document could not be opened. The data is missing"), if the creatorIdentifier key is missing in info.json file.
However, based on the TextBundle specification, the creatorIdentifier key is optional.
Building using the macOS 14 Beta 1 SDK, I am seeing the text selection color is weird.
It would be nice to open MarkEdit from terminal using a quick command. I mad a custom
#!/bin/bash
open -a MarkEdit.app $1
in /usr/local/bin/markedit. Thus I can easily call it from terminal as markedit myfile.md
.
At least for me this is a common use case so I would appreciate an install command line extension button in the settings somewhere that creates this file with 755 permissions.
Here's an issue that prevents characters to be entered with Chinese IME, after adding spaces between any Chinese characters.
The issue could be directly reproduced when by loading /Applications/MarkEdit.app/Contents/Resources/index.html
into the Safari browser, clear the existing template text and then start entering any Chinese characters.
It's not reproducable by loading the page into other browsers including Chrome and Firefox.
I believe it's a WebKit issuse and I'll invest some time to further investigate.
MarkEdit: Version 1.13.0 (52)
macOS: 14.0 (23A344)
Safari: 17.0 (19616.1.27.211.1)
The developer is overly modest about the power of MarkEdit.
I have a 200,000-page TXT file that I use to test document editors and tried it with MarkEdit. It's about half a gigabyte in size.
MarkEdit opens it in just a few seconds. Scrolling is easy. Line wrap is on and resizing the window is instantaneous. Very few document editors can do so. This is wonderful.
My testing is done on an M1 Mac Mini with 16 GB RAM.
First of all, thank you for this fantastic app! I was already a big fan of Taio, and using this on the Mac now feels totally natural!
I did run into one issue, which may be related to macOS text handing that I'm not able to turn off, but it's capitalizing various words in source code blocks as I'm typing. For example, if I start writing CSS:
some-selector {
color: green;
}
When I type out the word color
, it automatically switches to Color
. And even outside of source code, it sometimes does weird capitalization changes I wasn't expecting. Again, I suspect this is some sort of OS-wide feature, but I'm not sure how to get around it. I'm on the latest version of macOS Ventura, BTW.
I have some suggestions/feature requests to improve working with long documents:
I've enabled "Keep caret in the middle", but when I jump to a headline from the toolbar, the caret jumps to the top until I press a key.
I tried to get MarkEdit from the Mac App store on my mid-2012 MacBook Pro but:
WE could not complete your purchase.
MarkEdit can't be installed on "Macintosh HD"
because macOS version 12 or later is required.
Alas and alack macOS 12 or later cannot be installed because it's no longer supported by Apple. So the question is, is there a reason MarkEdit cannot be re-compiled to run on the older macOS?
Hi,
I have a backlog of little bugs, sorry to dump them all at once. This one is a very specific one. Steps to reproduce:
Thank you
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.